Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dlang update #55998

Merged
merged 4 commits into from Feb 22, 2019
Merged

Dlang update #55998

merged 4 commits into from Feb 22, 2019

Conversation

ThomasMader
Copy link
Contributor

Motivation for this change

Bring dlang versions to newest versions and refactor everything to be nicer.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Assured whether relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@ThomasMader
Copy link
Contributor Author

@GrahamcOfBorg build ldc dmd dtools dub

@ThomasMader ThomasMader changed the title Dlang update [WIP] Dlang update Feb 18, 2019
@ThomasMader ThomasMader force-pushed the dlang-update branch 2 times, most recently from d2422e7 to 3ca3a6d Compare February 18, 2019 18:38
@ThomasMader ThomasMader force-pushed the dlang-update branch 2 times, most recently from 1632aff to f6f3811 Compare February 18, 2019 20:00
@ThomasMader
Copy link
Contributor Author

Can somebody please check if the current state of this PR works on macOS?
I upgraded my machine to Mojave and dmd does not build anymore.
I would like to know it it was indeed the updgrade to Mojave.

@veprbl
Copy link
Member

veprbl commented Feb 19, 2019

dmdBuild fails for me: https://gist.github.com/4e91fbbc81327745b36d81d0bce7946d

@veprbl
Copy link
Member

veprbl commented Feb 19, 2019

@GrahamcOfBorg build ldc dmd dtools dub

@ThomasMader
Copy link
Contributor Author

Thanks!
Yes that's the problem. What version of macOS do you use?

@ThomasMader
Copy link
Contributor Author

Btw. what's going on on hydra? All darwin builds fail with "canceled by user".

@veprbl
Copy link
Member

veprbl commented Feb 19, 2019

Yes that's the problem. What version of macOS do you use?

10.13

@veprbl
Copy link
Member

veprbl commented Feb 20, 2019

Btw. what's going on on hydra? All darwin builds fail with "canceled by user".

All evaluations (even older ones) were stopped just few hours ago I would guess that they were terminated to drop current backlog. I could find a mention of an issue on IRC https://logs.nix.samueldr.com/nixos/2019-02-18#1971702;

@ThomasMader
Copy link
Contributor Author

Wow, just wow.

I found the commit which introduced the build failure for dmd: ca1062e

It's a changed documentation/comment in the make-wrapper. 😵

@ThomasMader
Copy link
Contributor Author

https://forum.dlang.org/post/diycgerwjablujwsfrcs@forum.dlang.org explains a bit the details about what is dmd trying to do.

@veprbl
Copy link
Member

veprbl commented Feb 20, 2019

@ThomasMader This is certainly a nice find, but do you have an explanation for what is going on?

@ThomasMader
Copy link
Contributor Author

Not yet but that commit seems not to be the correct one.
When I rebase my PR branch to ca1062e~1 I get the same error.
If I do the same on master branch I get a download for dmd package.
So it's probably something machine specific and I need to redo my bisect because I marked as good when a download was available.

@ThomasMader
Copy link
Contributor Author

@GrahamcOfBorg build ldc dmd dtools dub

@ThomasMader ThomasMader changed the title [WIP] Dlang update Dlang update Feb 21, 2019
@ThomasMader
Copy link
Contributor Author

Ok let's get this into master for now before the branch off. It's important to update the packages to the new versions and all the other changes make everything much more resilient.

The dmd problem with the "-run" parameter on macOS is not understood yet but I disabled the failing tests for now to get a working build and this situation is better than what is currently in master.
I was able to reproduce that I can not successfully build revisions to which there are packages on hydra from master. So it has something to do with the machine.
I will analyse the problem further and open a PR or issue depending on the outcome and link back to this PR as well.
As I did not include the error message here yet here it is:

/var/tmp/dmd_runWK6b1G: Permission denied
core.thread.ThreadError@core/thread.d(3197): Unable to load thread state

It happens when dmd is used with the -run parameter which compiles, links and runs the program without leaving any files on the machine. As it is not used as heavily and not needed at all for building other packages it's not a blocker.

@ThomasMader ThomasMader changed the title Dlang update [READY] Dlang update Feb 21, 2019
@ThomasMader
Copy link
Contributor Author

@GrahamcOfBorg build ldc

@veprbl
Copy link
Member

veprbl commented Feb 21, 2019

I've tried to rebuild this on macOS. This time I get a failure in dtools: https://gist.github.com/veprbl/3e0be30bd86142418232f6bf1ff57147

@ThomasMader
Copy link
Contributor Author

I've tried to rebuild this on macOS. This time I get a failure in dtools: https://gist.github.com/veprbl/3e0be30bd86142418232f6bf1ff57147

Sorry, forgot to build dtools on macOS. Fixed it by disabling the only test which was using the -run parameter for now.

I also changed the names you suggested.

@veprbl
Copy link
Member

veprbl commented Feb 21, 2019

I think you squashed two dub-related commits so the new commit message "dub: Disable network tests because they add impurities" doesn't mention the version bump.

@ThomasMader
Copy link
Contributor Author

No dub stayed at the same version because there is no new version yet.
I really disabled only the network tests and the rdmd test because of the -run issue.

@veprbl veprbl changed the title [READY] Dlang update Dlang update Feb 21, 2019
Copy link
Member

@veprbl veprbl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Builds on linux and darwin. dmd -run is broken on darwin on current master, so no regression here. This PR fixes dmd build on darwin and improves testing, so this is definitely an improvement.

pkgs/development/compilers/dmd/default.nix Outdated Show resolved Hide resolved
@veprbl
Copy link
Member

veprbl commented Feb 22, 2019

@ThomasMader Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants