I have an environment which contains a package I have added with its GitHub url which points to the master branch. Is this environment reproducible? That is, if I use the Project.toml and Manifest.toml and instantiate the project, is it ensured that the GitHub package gets added at the same commit as the original commit at which it was added (even if the master branch currently points to a different commit)?
The Manifest.toml should contain the hash of the commit, so yes.
The manifest doesn't actually contain the commit hash, but rather the content hash. As long as that content hash still exist in the repo you can instantiate it.
Thanks. I figured out I can find the the commit hash from the content hash in Manifest.toml.
The commit hash isn't necessarily uniquely determined by the tree hash though, but that's not very important since it's the tree hash that's critical for reproducibility.
Last updated: Nov 06 2024 at 04:40 UTC