Skip to content

Rework derivation input resolution #12567

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

Merged
merged 2 commits into from
Mar 12, 2025

Conversation

Ericson2314
Copy link
Member

@Ericson2314 Ericson2314 commented Feb 25, 2025

Motivation

I refactored the way that input resolution works in DerivationGoal. To be honest, it is probably unclear to the reader whether this new way is better or worse. I suppose intrinsic motivation, I can say that

  • the more structured use of inputGoal (a local variable) is better than the shotgrun approach with inputDrvOutputs

  • A virtual waiteeDone was a hack, and now it's gone.

Context

However, the real motivation of this is not the above things, but that it is needed for my mammoth refactors fixing #11897 and #11928, and now also removing addWantedOutputs so dyn drvs can land safely.

It is nice that this step could come first, rather than making that refactor even bigger.


Add 👍 to pull requests you find important.

The Nix maintainer team uses a GitHub project board to schedule and track reviews.

@github-actions github-actions bot added the new-cli Relating to the "nix" command label Feb 25, 2025
@Ericson2314 Ericson2314 force-pushed the slightly-rework-drv-resolution branch 2 times, most recently from 7c72198 to 071b73f Compare March 3, 2025 15:27
I refactored the way that input resolution works in `DerivationGoal`. To
be honest, it is probably unclear to the reader whether this new way is
better or worse. I suppose *intrinsic* motivation, I can say that

- the more structured use of `inputGoal` (a local variable) is better
  than the shotgrun approach with `inputDrvOutputs`

- A virtual `waiteeDone` was a hack, and now it's gone.

However, the *real* motivation of this is not the above things, but that
it is needed for my mammoth refactor fixing NixOS#11897 and NixOS#11928.

It is nice that this step could come first, rather than making that
refactor even bigger.
@Ericson2314 Ericson2314 force-pushed the slightly-rework-drv-resolution branch from 071b73f to a58e058 Compare March 3, 2025 16:02
@Mic92 Mic92 merged commit cba1a21 into NixOS:master Mar 12, 2025
14 checks passed
@Ericson2314 Ericson2314 deleted the slightly-rework-drv-resolution branch March 12, 2025 22:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new-cli Relating to the "nix" command
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants