Skip to content

Conversation

@zanieb
Copy link
Member

@zanieb zanieb commented May 15, 2025

No description provided.

@zanieb zanieb added the enhancement New feature or improvement to existing functionality label May 15, 2025
@zanieb zanieb changed the base branch from main to zb/arch-mode May 28, 2025 14:55
@zanieb zanieb force-pushed the zb/arch-mode branch 3 times, most recently from 05782d0 to b27ef41 Compare May 28, 2025 15:42
@zanieb zanieb marked this pull request as ready for review May 28, 2025 19:04
success: true
exit_code: 0
----- stdout -----
[TEMP_DIR]/managed/cpython-3.13.3-macos-x86_64-none/bin/python3.13
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unfortunately this is wrong. We'll need to change the ordering of the managed distributions per target platform so we prefer the native builds.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this hints at a different design for #13701

Copy link
Member Author

@zanieb zanieb May 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, it might be separate? I fixed this in #13709

I worry that #13701 may still be wrong though. I'll look at it again tomorrow.


// Windows ARM64 runs emulated x86_64 binaries transparently
if cfg!(windows) && matches!(self.family, target_lexicon::Architecture::Aarch64(_)) {
// macOS aarch64 and Windows ARM64 runs emulated x86_64 binaries transparently
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will note that isn't actually strictly true for macOS: Rosetta2 is not default-installed on Apple Silicon macOS. It is auto-installed the first time you run an intel app... but only if it's a full GUI App. If it's just a random CLI binary it actually won't bother!

So if we want to be fully bullet-proof we would have to check if Rosetta2 is already on the user's system :(

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In practice it tends to be fine though. Especially since we're finding these things on their system.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh dear goodness. That's... good to know. I will at least add some commentary about that.

zanieb added a commit that referenced this pull request May 29, 2025
…tions (#13709)

Resolves
#13474 (comment)

This kind of dynamic ordering freaks me out a little, but I think it's
probably the best solution and is static at compile-time.

Currently, we're just sorting by the stringified representation! which
is just convenient for reproducibility, but we rely on these orderings
for prioritization in discovery.
zanieb added a commit that referenced this pull request May 29, 2025
Replacement for #13474 (clobbered by
a changed base)

Once these are explicitly installed, they should be discoverable and
usable. Currently, they are not.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or improvement to existing functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants