-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Experimentally return treeHash
on git and github fetchers
#10344
base: master
Are you sure you want to change the base?
Conversation
We already had some `#if 0` for this, indicating a sort of "TODO" experiment. I would like to make this part of the git-hashing experimental feature.
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.
This seems similarly unprincipled to #9025.
We have at least these kinds of tree hashes:
- derived from tarball
- taken from git commit
- derived after doing whatever transformation on the source
- maybe putting a tree hash into
rev
works
Some of these may coincide, but I'm pretty sure we'll have at least two, so the attributes should be qualified.
I don't think we should commit to anything before we know more about the new github:
approach discussed in https://discourse.nixos.org/t/2024-03-25-nix-team-meeting-minutes-133/42167, especially because additions to the lock file are breaking changes.
/* If we don't have submodules and aren't doing export | ||
ignore, then the tree hash is useful info to provide. */ |
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.
- How is it useful?
getSubmodulesAttr(input)
doesn't tell us anything about whether the repo has submodules.false
doesn't imply anything, andtrue
only correlates.
Yeah I agree it is lacking in principles. I want to take incremental steps towards supporting the "no submdules, tree hash is consistent through the entire process including of CA of store object" happy path, but I am not sure how. Per the end of the call maybe it is ignoring the per-fetcher stuff and starting with |
Triaged during the Nix maintainers team meeting: Not ready yet.
|
This pull request has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/2023-04-08-nix-team-meeting-136/42963/1 |
Motivation
We already had some
#if 0
for this, indicating a sort of "TODO" experiment. I would like to make this part of the git-hashing experimental feature.Context
Priorities and Process
Add 👍 to pull requests you find important.
The Nix maintainer team uses a GitHub project board to schedule and track reviews.