| |
| Posted by Nicholas Wilson in reply to Andrei Alexandrescu | PermalinkReply |
|
Nicholas Wilson
Posted in reply to Andrei Alexandrescu
| On Tuesday, 13 December 2016 at 21:30:05 UTC, Andrei Alexandrescu wrote:
> On 12/13/2016 02:37 PM, kinke wrote:
>> Hey all,
>>
>> on behalf of the LDC team I am proud to announce the new 1.1.0-beta6
>> release!
>> It's based on the 2.071.2 frontend and standard library and supports
>> LLVM 3.5 up to current trunk (4.0).
>
> This is awesome! Could you please tell what the expected lag time is between a dmd release and an ldc release? Also, obviously what we could do to improve that. Thanks! -- Andrei
Do you mean the time it takes for LDC master to reach DMD release parity, or do you mean e.g. LDC 1.0.0 -> 1.1.0?
The former is dependent on merging the ddmdfe in ours and the dealing with any conflicts in the changes we make to ddmdfe, (we bracket these in version(IN_LLVM) and version(IN_LLVM_MSVC) blocks to ease this). Johan is usually pretty quick, but identifying and dealing with any regressions that arise takes longer.
The latter depends on the feature set we intend to implement and bugs and regressions and user feedback. For example 1.1.0-beta3 introduced a regression with dub causing all dub projects to fail to build, we got that report but not much else because hardly anyone was using beta3.
Someone (was it you?) suggested splitting the ddmdfe off (or was it have everything under the dlang repo?), and have it be a dependency for each of the backends, so that the frontend stays in lockstep and we can identify regressions earlier, not sure how this would impact GDC. We also maintain druntime in a similar fashion to ddmdfe, although with a lot more additions for llvm features, probably less worth doing but still worth considering.
This would also have the advantage of increased cross-visibility thus reducing regression times. The same repo solution would also increase the number of people familiar with the LDC codebase and therefore likely to help report and fix issues.
|