SiegeLord / Tango-D2

A port of the Tango library to D2
http://siegelord.github.com/Tango-D2/
Other
90 stars 38 forks source link

Fixes for DMD 2.084.0 #98

Closed jacob-carlborg closed 5 years ago

jacob-carlborg commented 5 years ago

Compiles with DMD 2.085.0-beta.1 as well. The first commit strips trialing whitespace. I recommend hiding whitespace changes in the diff or reviewing the commits individually.

jacob-carlborg commented 5 years ago

Travis CI supports cron jobs. It could be configured to run the tests every day, or week, or something. This would then automatically catch new errors in the latest version of DMD.

SiegeLord commented 5 years ago

Thanks!

Back in the day that wasn't a feature on Travis, and the other service that did it didn't support non-master branches. Thanks for reminding me of this, I'll give it a try again.

jacob-carlborg commented 5 years ago

To further enhance the CI pipeline dmd-beta and dmd-nightly can be cause in .travis.yml. Using dmd-nightly combined with a nightly cron job would catch changes/regressions within 24 hours after they're merged. Travis CI also now supports macOS and Windows (early release). Testing on macOS is straightforward. On Windows the D toolchain needs to be installed manually.

In addition to that, the D core team now has a CI pipeline [1] that builds and tests around 70 projects from code.dlang.org. This pipeline will run for every pull request for DMD, druntime and Phobos. This allows to catch regressions before they're merged. Anyone can add their project but it requires there's a maintainer that can respond fairly quickly, in case of any indented changes.

[1] https://github.com/dlang/ci