[dmd-internals] Implementation change without matching spec change

Walter Bright via dmd-internals dmd-internals at puremagic.com
Thu Jun 23 23:14:19 PDT 2016


All such issues should be files as bugzilla entries and marked with the 'spec' 
keyword.

On 6/23/2016 4:55 PM, Mathias Lang via dmd-internals wrote:
> Hi everyone,
> A problem that recently became obviously painful to me is that too many P.R.
> goes in in DMD without the matching dlang.org specs change.
>
> I'll give some examples:
>
> - The changes to protection attributes (visibility attributes).
>   It was a major change to the language, one that was wanted for a long time,
> and it was
>   done quite gracefully except that it wasn't documented at all.
>   So anyone looking at https://dlang.org/spec/attribute.html#ProtectionAttribute
> will see completely outdated informations, including "Protection does not
> participate in name lookup." (gasp!).
>   An issue was raised ( https://issues.dlang.org/show_bug.cgi?id=16004 ) and a
> P.R. ( https://github.com/dlang/dlang.org/pull/1325 ) which haven't been merged
> yet. The changes have been in for 3,5 months and released since 2.5 months.
>
> - extern(C++, {class,struct}) : https://github.com/dlang/dmd/pull/5875 is not
> documented.
>   The same happened for most of the C++ enhancements, and the documentation only
> recently caught up with the implementation.
>
> - version (PlayStation) & PlayStation4 (https://github.com/dlang/dmd/pull/5850)
> are not documented as reserved
>
> - All the `@safe` improvements are going in without any documentation change,
> and Walter said he's going to review @safe specs (
> https://github.com/dlang/dmd/pull/5876#issuecomment-226985430 ), however stuff
> like this are easily forgotten, especially when there is no deadline and it is
> assigned to someone as busy as Walter.
>
> - (Not yet merged) align(n) with CT-known constant:
> https://github.com/dlang/dmd/pull/5880
>
> - Last but not least: https://github.com/dlang/dlang.org/pull/1040
>
> It seems pretty clear that we currently have a flakey process regarding spec
> changes, one that doesn't scale and rely on the core contributors knowing "what
> to do".
>
> Hence, I would suggest we start enforcing that every change that require a spec
> change must not be merged before a corresponding spec change is raised.
>
> Basically:
> - Raise dlang.org P.R. and mark as being `[Pending]`
> - Raise DMD P.R. and link to said dlang.org P.R.
> - DMD P.R. is reviewed / merged
> - dlang.org P.R. can then be unblocked and be reviewed
>
> Thoughts ?
> _______________________________________________
> dmd-internals mailing list
> dmd-internals at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-internals


More information about the dmd-internals mailing list