nix log should also work if the log didn't provide any output#6051
Merged
edolstra merged 2 commits intoNixOS:masterfrom Mar 25, 2022
Merged
nix log should also work if the log didn't provide any output#6051edolstra merged 2 commits intoNixOS:masterfrom
nix log should also work if the log didn't provide any output#6051edolstra merged 2 commits intoNixOS:masterfrom
Conversation
Ma27
added a commit
to Ma27/nix
that referenced
this pull request
Feb 20, 2022
A few notes: * The `echo hi` is needed to make sure that a file that can be read by `nix log` is properly created (i.e. some output is needed). This is known and to be fixed in NixOS#6051. * We explicitly ignore the floating-CA case here: the `$out` of `input3` depends on `$out` of `input2`. This means that there are actually two derivations - I assume that this is because at eval time (i.e. `nix-instantiate -A`) the hash of `input2` isn't known yet and the other .drv is created as soon as `input2` was built. This is another issue on its own, so we ignore the case here explicitly.
3429b18 to
082104b
Compare
Member
Author
|
@edolstra rebased onto latest master to resolve the merge-conflict. Anything else to fix here? Would love to see this bugfix being merged :) |
Ma27
added a commit
to Ma27/nix
that referenced
this pull request
Feb 27, 2022
A few notes: * The `echo hi` is needed to make sure that a file that can be read by `nix log` is properly created (i.e. some output is needed). This is known and to be fixed in NixOS#6051. * We explicitly ignore the floating-CA case here: the `$out` of `input3` depends on `$out` of `input2`. This means that there are actually two derivations - I assume that this is because at eval time (i.e. `nix-instantiate -A`) the hash of `input2` isn't known yet and the other .drv is created as soon as `input2` was built. This is another issue on its own, so we ignore the case here explicitly.
Ma27
added a commit
to Ma27/nix
that referenced
this pull request
Feb 28, 2022
A few notes: * The `echo hi` is needed to make sure that a file that can be read by `nix log` is properly created (i.e. some output is needed). This is known and to be fixed in NixOS#6051. * We explicitly ignore the floating-CA case here: the `$out` of `input3` depends on `$out` of `input2`. This means that there are actually two derivations - I assume that this is because at eval time (i.e. `nix-instantiate -A`) the hash of `input2` isn't known yet and the other .drv is created as soon as `input2` was built. This is another issue on its own, so we ignore the case here explicitly.
082104b to
a008722
Compare
tomberek
reviewed
Mar 7, 2022
| this->source = &source; | ||
|
|
||
| if (!raw) { | ||
| archive_read_support_filter_all(archive); |
Member
Author
|
Rebased onto latest master to resolve the merge conflict. May I ask if there was any other reason that this didn't land in 2.7 other than the merge-conflict?
Personally I'm not a big fan of delaying (trivial) bugfixes with these kinds of requests, especially if the fix is a single revert. But if you want me to, why not, otherwise I'd suggest to do this in a different PR. |
Member
Author
|
ping @edolstra @thufschmitt :) |
Member
Author
|
cc @edolstra @thufschmitt anything missing here? :) |
edolstra
reviewed
Mar 24, 2022
edolstra
approved these changes
Mar 24, 2022
This reverts commit 50a3586. With this change Nix fails to open bzip2 logfiles that were created from builds with no stdout/stderr.
Member
Author
|
@edolstra done! (also rebased against master) |
Member
|
Thanks! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
According to
git bisectthis was introduced by 50a3586To summarize: while trying to update Hydra to use Nix 2.6, I realized that
yath t/queue-runner/notifications.tis failing because it initially builds a derivation (and the builder doesn't write anything tostdout/stderr). After that it's checked if e.g.nix logsucceeds.While this was the case on the Nix 2.4pre rev of Hydra, it isn't the case anymore on Nix 2.6.
While bisecting I found the problem, it seems as if
init()wrongly setsarchive_read_support_filter_allifrawwould betrue.Also added a regression-test that I used for bisecting.
cc @edolstra