[Dlang-internal] 15th Planning (national congress edition)

Martin Nowak via Dlang-internal dlang-internal at puremagic.com
Wed Nov 9 16:01:54 PST 2016


Let's just have a short planning for the upcoming 3 weeks.

Agenda:
- fix remaining 2.072 regressions
- finish scope story
- schedule for 2.073
- more CI testing
- public calendar
- <plese add your own>

Personal note, I don't have much time left over until 17th of 
Nov. Currently working fairly intensively in China (hence the 
reference in the title ;)).

====================

# fix remaining 2.072 regressions

2.072.0 was quite bumpy and we need to fixup a few more 
regressions that showed up. One reason for this is still the long 
2.071 release period, but there have been some discussions about 
fixing some underlying causes and improving on testing (see CI 
testing below).
We should get this done within the next 3 weeks, so we can polish 
2.072.

# schedule for 2.073

Obviously I want to get back to sane release cycles and smaller 
releases.
We can discuss whether 2 months are too frequent, but let's get 
back to that for now.
So let's target 2.073 to be released for mid december (2 month 
after the targeted 2.072 release). If we miss that we'd have to 
delay the beta until beg of Jan after the holiday season.

# finish scope story

We (shortly) reviewed and merged the major part of the scope 
story into the feature branch 
(https://github.com/dlang/dmd/pull/5972) after a clearing 
discussion about the scope of that feature and it's 
implementation.
The major 3 parts of scope are fairly straightforward:
- fix any escaping of scoped symbols
- add return scope to allow returning of scoped parameters
- add lots of scope inference to make it palatable

The biggest difficulty was that you can get named aliases 
(pointers or references) to scoped variables. Hence we needed all 
this (relatively simple) lifetime algebra to handle derived 
expressions.

   scope ubyte[3] buf;
   ubyte[] a = buf[]; // pointer to scoped data

In any case we should make the scope feature releasable within 
the next 4-5 weeks.
Including documentation, changelog, an introductionary article, 
and at best an RC/Unique/WeakRef prototype library on dub.

# mangling abbreviation

I hardly have time for this myself, and we don't necessarily have 
to target 2.073, but we seem to have a good proposal to fix the 
long manglings thanks to Rainer Schütze.
https://github.com/dlang/dmd/pull/5855
I'd would still require some tool support for demangling I guess 
(what about gdb?).

# more CI testing

The last release showed that we're still not testing enough, b/c 
we're still breaking too many projects.
That might be partly b/c of missing test coverage, and negligent 
when changing phobos before adding a breaking change to dmd.
To throttle the amount of introducing issues we got another 
server to test all dlang PRs with a couple of D projects.

   https://ci.dawg.eu/

All projects in their do pass their test suite with 2.071.2.

# public calendar

I created a public google calendar for anything dlang.
https://calendar.google.com/calendar/embed?src=ut29n9vq9vu3ad4kbaabeed1d8%40group.calendar.google.com
Let's please get a few more admins on this, despite me and 
Mihail, and have all D dates in their.
For now it contains the planning meetings and my proposed next 
beta/release date.

We should prolly sync all the local D meetups into this, could 
even be automated https://zapier.com/app/editor/template/4701.

====================

That's about it from my side



More information about the Dlang-internal mailing list