January 19, 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 2.084.0.

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.