<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 9 July 2015 at 21:09, Martin Nowak via dmd-internals <span dir="ltr"><<a href="mailto:dmd-internals@puremagic.com" target="_blank">dmd-internals@puremagic.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="">On 07/09/2015 03:45 PM, Iain Buclaw wrote:<br>
> Recently got on-board with Semaphore-CI (better platform than<br>
> Travis-CI IMO)<br>
<br>
</span>Well adding D to the list of supported PLs always helps our visibility,<br>
but then again there is way more important stuff to do than adding a<br>
Travis-CI alternative.<br>
It's also an endless job to add support for all CI systems.<br>
<a href="http://www.slant.co/topics/186/compare/~circleci_vs_shippable_vs_travis" rel="noreferrer" target="_blank">http://www.slant.co/topics/186/compare/~circleci_vs_shippable_vs_travis</a><br>
<span class=""><br></span></blockquote><div><br></div><div>It's more that Travis' constraints are more harmful and stopped me getting any work done.<br><br></div><div>- The 40 minute time limit on build+tests aren't so bad, you can achieve that with gdc if you build with parallelism, except that...<br></div><div>- The memory limit is capped at 3GB, meaning that builds will randomly die depending on whether or not two (or more) large sources are compiled at the same time.<br></div><div>- Infact, just linking the compiler is enough to hit the memory cap, meaning that wonderful build and linker hacks are needed just to keep resources down.<br></div><div>- There's also a timeout if 10 minutes go by without any logging (the testsuite typically logs nothing except for failures, and may take up to 15 minutes to run), that's fine, I can just turn on verbose logging, except that...<br></div><div>- Anything over the 1000th line is discarded by the build.<br><br>It took me about 30 attempts to build gdc + run testsuite on their platform.  Even then it failed twice every three builds for no reason other than bad races with parallel builds.<br><br></div><div>Conclusion: Travis is no good for large and/or serious projects.<br><br>Having a quick look, it appears that I'll run into similar problems with CircleCI (4GB hard memory limit, build/tests are timed out afer 180 seconds of silence) and Shippable (Again with 4GB memory, build/tests must complete in 60 minutes, cannot be silent for more than 10 minutes).<br><br></div><div>I actually had a good rant about this last month, because I can no longer wait for the broken auto-tester to start working on all platforms, but all alternates are useless offers for medium to large open source projects.<br></div><div><br></div><div>So it was quite a relief to find out that Semaphore offers:<br></div><div>- 4GB "soft" limit, doesn't actually kill your build/tests if you sometimes exceed.<br></div><div>- 60 minute limit "per command", so you could have 24 commands that each take 59 minutes and things will continue to build.<br><br></div><div>Everything I've thrown at it, it has consumed with delight and succeeded.  This makes me a happy user.<br><br></div><div>Iain.<br></div><div><br></div></div></div></div>