DIP 1006--Providing more selective control over contracts--Superseded

Mike Parker aldacron at gmail.com
Sat Jan 19 06:34:59 UTC 2019

DIP 1006, "Providing more selective control over contracts", had 
quite a bit of bad luck going through the DIP process. It started 
with my forgetting that I had scheduled it for review after DConf 
2017. From then on, there were several points along the way that 
caused progress on the DIP to stall.

The DIP was ultimately accepted in principle, but Walter objected 
to the proposed implementation. He and Andrei asked that the DIP 
be revised to propose an alternative implementation that could be 
more broadly applied to enable and disable more features than 
just contracts.

Before the revision was completed, it was superseded when Walter 
added the -check command line switch, which was released in DMD 

We discussed whether the DIP should be revised to reflect the new 
feature and decided not to do so. Instead, I've revised the 
Procedure document to add a new DIP status, "Superseded". This 
will be applied to any DIP that is made obsolete by the 
implementation of a similar/alternative feature or the acceptance 
of a similar/alternative proposal.

Thanks to Mathias Lang for authoring the DIP, and apologies for 
the amount of time it took to get to this point. The initial 
delay early in the review process was one of the motivations for 
revising the procedure and now, here at the end, this DIP has 
motivated a new addition to the procedure. So even though it 
wasn't accepted as written, it did contribute to improving the 
DIP process and was the impetus for the -check compiler switch.

More information about the Digitalmars-d-announce mailing list