lib: allow sourceByRegex to be composed after cleanSourceWith #65083
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.
sourceByRegex src regexes
should include a source file if one of the regular expressionsregexes
matches the path of that file relative tosrc
.However to compute this relative path
sourceByRegex
uses:Note that
toString path
evaluates to an absolute file somewhere undersrc
and not under/nix/store
.The problem is that this doesn't work if
src
is acleanSourceWith
invocation as well becausetoString src
will then evaluate tosrc.outPath
which will evaluate tobuiltins.filterSource ...
which evaluates to a path in/nix/store
which is not a prefix ofpath
.The solution is to replace
src
withorigSrc
whereTest this by executing the following from the nixpkgs repo:
Motivation for this change
Things done
sandbox
innix.conf
on non-NixOS)nix-shell -p nix-review --run "nix-review wip"
./result/bin/
)nix path-info -S
before and after)