For universal2 pybis on macOS, we should always create two bin/ dirs -- one for running in x86-64 mode and one for running in arm64 mode -- and choose them appropriately when assembling an environment.
We already track which pybis need this and which mode we're in, inside ArtifactInfo objects -- the problem is just that both the x86-64 and arm64 ArtifactInfos have the same content hash, so they end up sharing the same entry in the EnvForest, so we need to make sure that if we fill in the entry for one ArtifactInfo then it's still usable for the other.
For universal2 pybis on macOS, we should always create two
bin/
dirs -- one for running in x86-64 mode and one for running in arm64 mode -- and choose them appropriately when assembling an environment.We already track which pybis need this and which mode we're in, inside
ArtifactInfo
objects -- the problem is just that both the x86-64 and arm64ArtifactInfo
s have the same content hash, so they end up sharing the same entry in theEnvForest
, so we need to make sure that if we fill in the entry for oneArtifactInfo
then it's still usable for the other.