Skip to content

Conversation

@freakboy3742
Copy link
Member

A continuation of #103 - adds exclusions for the other binary modules, which won't be aren't available for 3.14.

PR Checklist:

  • All new features have been tested
  • All new features have been documented
  • I have read the CONTRIBUTING.md file
  • I will abide by the code of conduct

@mhsmith
Copy link
Member

mhsmith commented Dec 19, 2024

The current condition is:

(platform_system != 'iOS' and platform_system != 'Android') or python_version < '3.14'

This will enable the package on Python 3.14 on all desktop platforms, which I don't think was the intention?

Also, we don't necessarily know that mobile platforms will have packages any later than desktop platforms this time around. So what if for now we just say python_version < '3.14'? Once the packages start becoming available, we can add platform-specific conditions as necessary.

@freakboy3742
Copy link
Member Author

This will enable the package on Python 3.14 on all desktop platforms, which I don't think was the intention?

That was the intention.

Also, we don't necessarily know that mobile platforms will have packages any later than desktop platforms this time around. So what if for now we just say python_version < '3.14'? Once the packages start becoming available, we can add platform-specific conditions as necessary.

The difference is that on Desktop, source compilation is an option. With the PR that was merged yesterday, macOS successfully installs cryptography, Pillow and lru-dict under a 3.14 build, from source. I haven't tested Linux and Windows, but I suspect they will work (but we also can't turn on CI until the support packages exist - but building the support package on macOS should test binary module support).

A source build isn't possible on numpy because it specifically gates an upper Python versipn; and pandas has numpy as a requirement.

At least for now, source builds aren't possible for Android and iOS, so gating will be required until we publish wheels (either formally, or in the wheels folder of this repo).

My thinking is that until we resolve the mobile-source-install problem, we're always going to have a 2 tier gating - it's just that the upper gate may be a release that doesn't exist yet (3.15 today).

@mhsmith mhsmith merged commit 71a97e7 into main Dec 21, 2024
37 checks passed
@freakboy3742 freakboy3742 deleted the ios-3.14 branch December 22, 2024 00:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants