On Saturday, 22 September 2018 at 20:34:50 UTC, 0xEAB wrote:
On Saturday, 22 September 2018 at 19:41:16 UTC, JN wrote:
Some code will break, sure, but it's a mechanical change that should be possible to apply by some tool.

Who will run this tool? Who's gonna merge the PRs created with this tool? Compatibility fixes would have been easy in the past in many cases - nevertheless, it needs someone to apply them. Which often did not happen in the past, unfortunately.

The demon on my shoulder is telling me to add it to dub.

Record the last used compiler in dub.selections.json. Add every incompatibility to dfix. If your project was last built with, say, 2.079.0, then dub will detect the current compiler and run dfix with the necessary upgrades when building the project. And it runs `git reset --hard` before doing any of these checks, or applies them in your project's .dub directory.

This is pretty cruddy, but it protects you somewhat from unmaintained projects.

Though honestly, having a stable compiler version and recommending that people stick with it for multiple years would also help a lot.

Reply via email to