-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Meson functional tests #11073
Meson functional tests #11073
Conversation
Triaged in Nix team meeting:
|
This pull request has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/2024-07-10-nix-team-meeting-minutes-160/49101/1 |
4fbc4b2
to
1dc9e3f
Compare
@GoldsteinE might you be interested in helping out with this? I think I just (hackily) fixed the CI eval issue so the actual interesting failures will show up. The differences between the Meson and Make bash environments for the functional tests is...very subtle! :( It makes debugging these failures hard. |
(! nix-instantiate --restrict-eval --eval -E 'builtins.readDir ../../src/nix-channel') | ||
nix-instantiate --restrict-eval --eval -E 'builtins.readDir ../../src/nix-channel' -I src=../../src | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fishing out some non-test-suite files like this is no good with the broken-up build. If we want to test ..
we should do it a different way (e.g. make some dirs in $TEST_ROOT
and cd
inside there).
I’ll take a look, but I don’t really know Meson. Unrelated, but I think one of the end goals here should be rewriting functional tests to something that is not bash. Writing logic in bash is extremely error-prone and I think replacing it with e.g. Python would make all of this logic much less brittle. |
@GoldsteinE Thank you!!
I agree! I wrote up #10823 for this. |
The PRs that this depends on should be reviewed separately, but then it's good to go! |
a66a708
to
4c485d0
Compare
🎉 All dependencies have been resolved ! |
4c485d0
to
a149c79
Compare
It seems that the macOS failure is due to libcurl is failing to initialize:
from the last run. Restarting to see if at least Linux will finish now. Unfortunately, I could not reproduce these failures in a macOS dev shell: those tests just passed normally. |
That is a known issue. You can apply #10164 to work around it. |
a149c79
to
35c5127
Compare
@roberth Look good now? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
NixOS VM test is yet to be ported, but looking good so far.
2 suggestions.
Co-Authored-By: Qyriad <qyriad@qyriad.me> Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
88dd900
to
34fe247
Compare
This pull request has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/2024-08-14-nix-team-meeting-minutes-169/50633/1 |
Motivation
Run the functional test suite with Meson
Context
Rewrite build system in Meson #2503
Depends on Put flake functional tests in their own group #11176Depends on Change skipped test error code from 99 to 77 #11177Depends on Move
NIX_BIN_DIR
and all logic using it to the Nix executable itself #11178Depends on Misc fixes #11179
Priorities and Process
Add 👍 to pull requests you find important.
The Nix maintainer team uses a GitHub project board to schedule and track reviews.