letmaik / rawpy

📷 RAW image processing for Python, a wrapper for libraw
https://pypi.python.org/pypi/rawpy
MIT License
587 stars 67 forks source link

Python 3.10 wheels #150

Closed letmaik closed 2 years ago

letmaik commented 2 years ago

CI is still failing since scikit-image (test dependency) has no Python 3.10 wheels yet. Once wheels are available, this PR can be picked up again and CI re-run.

Also in here:

occamz commented 2 years ago

Hello, I was interested in the status of this so I forked the repository and ran the CI of this branch: https://github.com/boksidev/rawpy/actions/runs/1436776781

At least the macOS issue seems to be resolved with the latest numpy release: https://github.com/numpy/numpy/releases/tag/v1.21.4

For some reason all of the Windows builds failed, not really sure what to make of it as I have close to no python experience in a Windows environment...


Ignoring that, I guess the next problem in line is that nose (which seems to be unmaintained) is failing with:

AttributeError: module 'collections' has no attribute 'Callable'

This is due to the deprecated aliases to Collections Abstract Base Classes being removed from the collections module in 3.10: https://docs.python.org/3/whatsnew/3.10.html#removed Related comment: https://github.com/minio/minio-py/issues/942


I replaced nose with nose-py3, which advertises itself as a nose drop-in replacement. It seems to fix that issue: https://github.com/boksidev/rawpy/actions/runs/1436947790

Might still be worth considering a switch to pytest or nose2 instead.


Any clue on why the Windows builds are failing on my end?

letmaik commented 2 years ago

@occamz Thanks for giving this a try. Regarding nose, I opened https://github.com/letmaik/rawpy/issues/156. Are you interested in making a contribution to switch to pytest? That would be very helpful! Regarding Windows, that must be some temporary conda mishap and will probably auto-resolve itself soon... I can't decipher what exactly the problem is, but it's not the first time some package dependencies are messed up in the conda repository. EDIT: Opened an upstream issue for that: https://github.com/ContinuumIO/anaconda-issues/issues/12717

occamz commented 2 years ago

@letmaik I took a stab at it and submitted PR https://github.com/letmaik/rawpy/pull/157


Windows / Conda still failing: https://github.com/boksidev/rawpy/actions/runs/1440214710 For macOS / Ubuntu the tests seem to pass and the build completes.

letmaik commented 2 years ago

@occamz I removed reliance on conda for dependencies since it was getting ridiculous... However, scikit-image still hasn't published wheels for Python 3.10 which is the last remaining blocker.

occamz commented 2 years ago

@letmaik All right, thanks for your efforts and the update on the situation!

Seems like scikit-image has already merged changes to include 3.10 in their wheel build in this PR: https://github.com/scikit-image/scikit-image/pull/6021. So if I understand this correctly, we need to wait for them to publish a new version - which would run their new build that would produce the 3.10 wheels.