01
Environment and Dependencies
The rationale for isolation and the install lifecycle, project metadata and locking, resolution strategies producing separate sets from the same declaration, and switching between interpreter versions.
- 01 Virtual Environments The same resolution gives five distinct outcomes across six installs on a shared site, and the project sees the set it resolved itself on only two of the six orders; on an isolated site the number drops to one, and all six orders install the same set.
- 02 Dependency Declaration The same declaration gives 2 distinct version sets when the resolution strategy changes, and a lock file drops the number to 1; when the registry view also changes, four installs made from the declaration give 3 distinct sets while the locked four stay at one set.
- 03 Package Managers When packages require each other, the same declaration gives 4 distinct sets under four strategies, and only 3 of those are consistent; once constraints tighten, two backtracking strategies find no solution and the consistent-set count drops to 0, while a lock file brings all four down to 1.
- 04 Version Management The same declaration gives 2 distinct version sets across three rig interpreter versions; of nine installs made from lock files produced on one interpreter, 6 are accepted and 3 rejected, and the same lock gives 1 distinct outcome on a fixed interpreter but produces one rejection across three interpreters.