The Wayback Machine - https://web.archive.org/web/20240106182108/https://github.com/matplotlib/matplotlib/issues/20929/
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

[Bug]: PyPy Win64 wheels use incorrect version #20929

Closed
QuLogic opened this issue Aug 28, 2021 · 5 comments · Fixed by #21307
Closed

[Bug]: PyPy Win64 wheels use incorrect version #20929

QuLogic opened this issue Aug 28, 2021 · 5 comments · Fixed by #21307
Labels
Build Release critical For bugs that make the library unusable (segfaults, incorrect plots, etc) and major regressions.
Milestone

Comments

@QuLogic
Copy link
Member

QuLogic commented Aug 28, 2021

Bug summary

I didn't upload wheels for PyPy on Windows for 3.5.0b1, because the version was incorrect: matplotlib-3.6.0.dev0+g83c1a5104b.d20210824-pp37-pypy37_pp73-win_amd64.whl

Code for reproduction

n/a

Actual outcome

This appears to be the case for master as well:

  7191328  08-27-2021 23:04   matplotlib-3.5.0.dev1817+g944f06953e-cp37-cp37m-macosx_10_9_x86_64.whl
 10661571  08-27-2021 23:12   matplotlib-3.5.0.dev1817+g944f06953e-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 10001027  08-27-2021 22:53   matplotlib-3.5.0.dev1817+g944f06953e-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
 10273115  08-27-2021 22:53   matplotlib-3.5.0.dev1817+g944f06953e-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
  7183741  08-27-2021 22:50   matplotlib-3.5.0.dev1817+g944f06953e-cp37-cp37m-win_amd64.whl
  7038001  08-27-2021 22:50   matplotlib-3.5.0.dev1817+g944f06953e-cp37-cp37m-win32.whl
  7193266  08-27-2021 23:04   matplotlib-3.5.0.dev1817+g944f06953e-cp38-cp38-macosx_10_9_x86_64.whl
 10705272  08-27-2021 23:12   matplotlib-3.5.0.dev1817+g944f06953e-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 10018929  08-27-2021 22:53   matplotlib-3.5.0.dev1817+g944f06953e-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
 10302299  08-27-2021 22:53   matplotlib-3.5.0.dev1817+g944f06953e-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
  7181568  08-27-2021 22:50   matplotlib-3.5.0.dev1817+g944f06953e-cp38-cp38-win_amd64.whl
  7037218  08-27-2021 22:50   matplotlib-3.5.0.dev1817+g944f06953e-cp38-cp38-win32.whl
  7193297  08-27-2021 23:04   matplotlib-3.5.0.dev1817+g944f06953e-cp39-cp39-macosx_10_9_x86_64.whl
 10679999  08-27-2021 23:12   matplotlib-3.5.0.dev1817+g944f06953e-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 10000769  08-27-2021 22:53   matplotlib-3.5.0.dev1817+g944f06953e-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl
 10282650  08-27-2021 22:53   matplotlib-3.5.0.dev1817+g944f06953e-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl
  7180141  08-27-2021 22:50   matplotlib-3.5.0.dev1817+g944f06953e-cp39-cp39-win_amd64.whl
  7035920  08-27-2021 22:50   matplotlib-3.5.0.dev1817+g944f06953e-cp39-cp39-win32.whl
  7143689  08-27-2021 23:04   matplotlib-3.5.0.dev1817+g944f06953e-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
  7346827  08-27-2021 22:53   matplotlib-3.5.0.dev1817+g944f06953e-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl
  7329514  08-27-2021 22:53   matplotlib-3.5.0.dev1817+g944f06953e-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
  7176417  08-27-2021 22:50   matplotlib-3.5.0.dev1817+g944f06953e.d20210827-pp37-pypy37_pp73-win_amd64.whl

Expected outcome

All wheels use the same version

Operating system

No response

Matplotlib Version

master

Matplotlib Backend

No response

Python version

No response

Jupyter version

No response

Other libraries

No response

Installation

No response

Conda channel

No response

@QuLogic QuLogic added this to the v3.5.0 milestone Aug 28, 2021
@QuLogic QuLogic added Build Release critical For bugs that make the library unusable (segfaults, incorrect plots, etc) and major regressions. labels Aug 28, 2021
@QuLogic
Copy link
Member Author

QuLogic commented Sep 29, 2021

After a bunch of debugging, the problem appears to be the symlinks:

On branch master
Your branch is up to date with 'origin/master'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
	typechange: lib/matplotlib/mpl-data/images/back-symbolic.svg
	typechange: lib/matplotlib/mpl-data/images/filesave-symbolic.svg
	typechange: lib/matplotlib/mpl-data/images/forward-symbolic.svg
	typechange: lib/matplotlib/mpl-data/images/help-symbolic.svg
	typechange: lib/matplotlib/mpl-data/images/home-symbolic.svg
	typechange: lib/matplotlib/mpl-data/images/move-symbolic.svg
	typechange: lib/matplotlib/mpl-data/images/subplots-symbolic.svg
	typechange: lib/matplotlib/mpl-data/images/zoom_to_rect-symbolic.svg

no changes added to commit (use "git add" and/or "git commit -a")

but I don't understand why the tree is only dirty for building PyPy on Windows only, and not any of the other Windows wheels.

@tacaswell
Copy link
Member

My knee-jerk guess is that distutils is not synced between cpython and pypy ? Are we using the same version of git on all of the windows machines that are building the wheels? If I am understanding this correctly, it looks like something has resolved the symlinks by relpacing them with a copy of the real file?

I am a bit confused about why we have symlinks (they came in via #17539 which I do not understand).

@QuLogic
Copy link
Member Author

QuLogic commented Sep 29, 2021

With that name, it triggers symbolic icon support in GTK3, which recolours based on the theme. This doesn't work in GTK4 though, so we might need to restructure everything into an icon theme, and drop the symlinks entirely.

@tacaswell
Copy link
Member

If they do not have to be actual symlinks maybe just accept 2 copies of those files?

Is it worth raising this with the cibuildwheel folks? It might be something with how the repo is checked out?

@QuLogic
Copy link
Member Author

QuLogic commented Oct 7, 2021

See also analysis on pypa/cibuildwheel#817 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Build Release critical For bugs that make the library unusable (segfaults, incorrect plots, etc) and major regressions.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants