Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Draft] Make python310Packages usable #100389

Closed
wants to merge 4 commits into from

Conversation

@jonringer
Copy link
Contributor

@jonringer jonringer commented Oct 13, 2020

Motivation for this change

more "controversial" side of #100384

The python packaging toolchain doesn't support 3.10 yet, this is more opinionated changes to the package set

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.
@jonringer
Copy link
Contributor Author

@jonringer jonringer commented Oct 13, 2020

@FRidh not sure how you want to tackle this, but it appears that with 3.10 they now have an underscore between the major and minor number of the number:

tags: [<cp3_10-cp3_10-manylinux2014_x86_64 @ 140737317495360>, <cp3_10-cp3_10-manylinux2010_x86_64 @ 140737317496192>, <cp3_10-cp3_10-manylinux1_x86_64 @ 140737317496640>, <cp3_10-cp3_10-linux_x86_64 @ 140737317496512>, <cp3_10-abi3-manylinux2014_x86_64 @ 140737317497536>, <cp3_10-abi3-manylinux2010_x86_64 @ 140737317497728>, <cp3_10-abi3-manylinux1_x86_64 @ 140737317497920>, <cp3_10-abi3-linux_x86_64 @ 140737317498112>, <cp3_10-none-manylinux2014_x86_64 @ 140737317498368>, <cp3_10-none-manylinux2010_x86_64 @ 140737317478272>, <cp3_10-none-manylinux1_x86_64 @ 140737317498688>, <cp3_10-none-linux_x86_64 @ 140737317498944>, <cp39-abi3-manylinux2014_x86_64 @ 140737317494848>, <cp39-abi3-manylinux2010_x86_64 @ 140737317499200>, <cp39-abi3-manylinux1_x86_64 @ 140737317499328>, <cp39-abi3-linux_x86_64 @ 140737317499520>, <cp38-abi3-manylinux2014_x86_64 @ 140737317499712>, <cp38-abi3-manylinux2010_x86_64 @ 140737317500032>, <cp38-abi3-manylinux1_x86_64 @ 140737317500160>, <cp38-abi3-linux_x86_64 @ 140737317500352>, <cp37-abi3-manylinux2014_x86_64 @ 140737317500544>, <cp37-abi3-manylinux2010_x86_64 @ 140737317500864>, <cp37-abi3-manylinux1_x86_64 @ 140737317500992>, <cp37-abi3-linux_x86_64 @ 140737317501184>, <cp36-abi3-manylinux2014_x86_64 @ 140737317501376>, <cp36-abi3-manylinux2010_x86_64 @ 140737317501696>, <cp36-abi3-manylinux1_x86_64 @ 140737317501824>, <cp36-abi3-linux_x86_64 @ 140737317502016>, <cp35-abi3-manylinux2014_x86_64 @ 140737317502208>, <cp35-abi3-manylinux2010_x86_64 @ 140737317502528>, <cp35-abi3-manylinux1_x86_64 @ 140737317502656>, <cp35-abi3-linux_x86_64 @ 140737317502848>, <cp34-abi3-manylinux2014_x86_64 @ 140737317476544>, <cp34-abi3-manylinux2010_x86_64 @ 140737317477376>, <cp34-abi3-manylinux1_x86_64 @ 140737317476672>, <cp34-abi3-linux_x86_64 @ 140737317475072>, <cp33-abi3-manylinux2014_x86_64 @ 140737317477248>, <cp33-abi3-manylinux2010_x86_64 @ 140737317475008>, <cp33-abi3-manylinux1_x86_64 @ 140737317474880>, <cp33-abi3-linux_x86_64 @ 140737317474688>, <cp32-abi3-manylinux2014_x86_64 @ 140737317475904>, <cp32-abi3-manylinux2010_x86_64 @ 140737317443904>, <cp32-abi3-manylinux1_x86_64 @ 140737317444608>, <cp32-abi3-linux_x86_64 @ 140737317445440>, <py3_10-none-manylinux2014_x86_64 @ 140737317443968>, <py3_10-none-manylinux2010_x86_64 @ 140737317444096>, <py3_10-none-manylinux1_x86_64 @ 140737317442624>, <py3_10-none-linux_x86_64 @ 140737317442432>, <py3-none-manylinux2014_x86_64 @ 140737317495232>, <py3-none-manylinux2010_x86_64 @ 140737317442048>, <py3-none-manylinux1_x86_64 @ 140737317441728>, <py3-none-linux_x86_64 @ 140737317940992>, <py39-none-manylinux2014_x86_64 @ 140737317442816>, <py39-none-manylinux2010_x86_64 @ 140737317915392>, <py39-none-manylinux1_x86_64 @ 140737317914368>, <py39-none-linux_x86_64 @ 140737317915328>, <py38-none-manylinux2014_x86_64 @ 140737317915712>, <py38-none-manylinux2010_x86_64 @ 140737317915072>, <py38-none-manylinux1_x86_64 @ 140737317913920>, <py38-none-linux_x86_64 @ 140737317913792>, <py37-none-manylinux2014_x86_64 @ 140737317914944>, <py37-none-manylinux2010_x86_64 @ 140737317913216>, <py37-none-manylinux1_x86_64 @ 140737317912640>, <py37-none-linux_x86_64 @ 140737317854656>, <py36-none-manylinux2014_x86_64 @ 140737317913344>, <py36-none-manylinux2010_x86_64 @ 140737317503680>, <py36-none-manylinux1_x86_64 @ 140737317503936>, <py36-none-linux_x86_64 @ 140737317504128>, <py35-none-manylinux2014_x86_64 @ 140737317503552>, <py35-none-manylinux2010_x86_64 @ 140737317504512>, <py35-none-manylinux1_x86_64 @ 140737317504768>, <py35-none-linux_x86_64 @ 140737317504960>, <py34-none-manylinux2014_x86_64 @ 140737317504384>, <py34-none-manylinux2010_x86_64 @ 140737317505344>, <py34-none-manylinux1_x86_64 @ 140737317505600>, <py34-none-linux_x86_64 @ 140737317505792>, <py33-none-manylinux2014_x86_64 @ 140737317505216>, <py33-none-manylinux2010_x86_64 @ 140737317506176>, <py33-none-manylinux1_x86_64 @ 140737317506432>, <py33-none-linux_x86_64 @ 140737317506624>, <py32-none-manylinux2014_x86_64 @ 140737317506048>, <py32-none-manylinux2010_x86_64 @ 140737317507136>, <py32-none-manylinux1_x86_64 @ 140737317507328>, <py32-none-linux_x86_64 @ 140737317507520>, <py31-none-manylinux2014_x86_64 @ 140737317506880>, <py31-none-manylinux2010_x86_64 @ 140737317507904>, <py31-none-manylinux1_x86_64 @ 140737317508160>, <py31-none-linux_x86_64 @ 140737317508352>, <py30-none-manylinux2014_x86_64 @ 140737317507776>, <py30-none-manylinux2010_x86_64 @ 140737317508736>, <py30-none-manylinux1_x86_64 @ 140737317508992>, <py30-none-linux_x86_64 @ 140737317509184>, <cp310-none-any @ 140737317509440>, <py3_10-none-any @ 140737317508608>, <py3-none-any @ 140737317509696>, <py39-none-any @ 140737317509952>, <py38-none-any @ 140737317510208>, <py37-none-any @ 140737317510464>, <py36-none-any @ 140737317510720>, <py35-none-any @ 140737317510976>, <py34-none-any @ 140737317515392>, <py33-none-any @ 140737317515648>, <py32-none-any @ 140737317515904>, <py31-none-any @ 140737317516160>, <py30-none-any @ 140737317516416>]
ERROR: coverage-5.2.1-cp310-cp310-linux_x86_64.whl is not a supported wheel on this platform

jonringer added 2 commits Oct 13, 2020
A python 3.10 wheel would produce a wheel with the
platform tag as `cp310`, which would be invalid, as
only 3_10 is accepted by the wheel package.

See: pypa/packaging#308
     pypa/wheel#354
     python/cpython#20333
@jonringer
Copy link
Contributor Author

@jonringer jonringer commented Oct 13, 2020

actually, this has been raised already:
pypa/packaging#308
python/cpython#20333

I took the patch from the pull request, filtered out all the windows specific items, and added it

@ofborg ofborg bot requested a review from FRidh Oct 13, 2020
@jonringer
Copy link
Contributor Author

@jonringer jonringer commented Oct 13, 2020

It looks like the python community doesn't have a standard way to package and install wheels with python3.10.

Seeing as the PR for fixing it at the interpreter level has been open for almost 6 months (and the PR has larger ramifications for people who rely on the behavior of _python_version_nodot); I'm guessing the wheel package will likely have to include cp310 as a valid python-tag. Even though it is ambiguous 3.10 vs 31.0 vs 3.1.0. However, (to play devil's advocate) that was true of previous versions as well 3.6 vs 36..

@FRidh
Copy link
Member

@FRidh FRidh commented Oct 13, 2020

Let's wait a bit and see what the core packages such as packaging do.

@jonringer jonringer mentioned this pull request Oct 19, 2020
10 tasks
@jonringer
Copy link
Contributor Author

@jonringer jonringer commented Nov 1, 2020

looks like they are fixing this on the cpython side.

Going to close this, and wait for the next dev release.

context: python/cpython#22858

@jonringer jonringer closed this Nov 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

2 participants