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

Test against Python 3.11 #1143

Merged
merged 2 commits into from
Feb 22, 2023
Merged

Test against Python 3.11 #1143

merged 2 commits into from
Feb 22, 2023

Conversation

jwodder
Copy link
Member

@jwodder jwodder commented Oct 26, 2022

Python 3.11 was released on October 24, so it's time to start testing against it.

Note: I expect this PR to fail for the next few weeks until numpy makes a 3.11-compatible release.

@jwodder jwodder added the tests Add or improve existing tests label Oct 26, 2022
@codecov
Copy link

codecov bot commented Oct 26, 2022

Codecov Report

Base: 89.16% // Head: 89.16% // No change to project coverage 👍

Coverage data is based on head (68b538c) compared to base (7e579fb).
Patch has no changes to coverable lines.

❗ Current head 68b538c differs from pull request most recent head 2982ef5. Consider uploading reports for the commit 2982ef5 to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #1143   +/-   ##
=======================================
  Coverage   89.16%   89.16%           
=======================================
  Files          74       74           
  Lines        9421     9421           
=======================================
  Hits         8400     8400           
  Misses       1021     1021           
Flag Coverage Δ
unittests 89.16% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

@yarikoptic
Copy link
Member

yarikoptic commented Oct 31, 2022

FTR according to changes in setup.py was added in around Aug but never released yet:

 ~/proj/numpy  main ?1 ▓▒
❯ git describe --contains --tags f06a315c965898fc8c6de144e279a161e8175a36
fatal: cannot describe 'f06a315c965898fc8c6de144e279a161e8175a36'
❯ git describe --tags f06a315c965898fc8c6de144e279a161e8175a36
v1.24.0.dev0-643-gf06a315c9

edit: moved to draft since we can't act on it ATM and thus not ready for consideration

@yarikoptic yarikoptic marked this pull request as draft October 31, 2022 14:46
@jwodder jwodder force-pushed the py3.11 branch 2 times, most recently from d8d710a to 1010b25 Compare November 14, 2022 03:05
@jwodder
Copy link
Member Author

jwodder commented Dec 16, 2022

Current status: The latest version of nwbinspector requires numpy>=1.22.0,<1.23.0 (even though the latest version of numpy is 1.23.5), and the last numpy 1.22.x release does not have any Python 3.11 wheels available, and trying to build from source fails.

yarikoptic added a commit to yarikoptic/nwbinspector that referenced this pull request Dec 16, 2022
Original commit which added those bounds (f0db1aa)
provides no information on the rationale. But in my experience bounding like this is
more of causing problems (if done within setup.py, but here setup.py just reuses
what is in requirements.txt) down the road, although possibly providing momentary
problem fixing at earlier time.

ATM e.g. it complicates providing dandi-cli update for python 3.11
which @jwodder tried to accomplish, see
dandi/dandi-cli#1143 (comment)
for more detail
@bendichter
Copy link
Member

nwbinspector requires pynwb, which requires hdmf, which requires h5py, which also does not have wheels released for py3.11 last time I checked. We have an open PR for testing hdmf against py3.11 here: hdmf-dev/hdmf#803 but we will need to wait on numpy and h5py. In the meantime we are making the numpy requirements less strict on nwbinspector.

@jwodder
Copy link
Member Author

jwodder commented Feb 20, 2023

Current status: Only the the Windows + Python 3.11 tests are failing, due to the same issue affecting Windows + Python 3.10 tests described here.

@jwodder jwodder marked this pull request as ready for review February 20, 2023 14:27
@jwodder
Copy link
Member Author

jwodder commented Feb 20, 2023

@yarikoptic All tests pass now.

@yarikoptic
Copy link
Member

Thank you @jwodder ! I wonder if we are doomed to add to https://github.com/dandi/dandi-cli#installation for now the need for such system wide dance for 3.11 to preclude possible user filed issues?

@jwodder
Copy link
Member Author

jwodder commented Feb 20, 2023

@yarikoptic If you're referring to the need to install hdf5, that no longer seems to be necessary, as the latest version of h5py includes wheels for Python 3.11.

@yarikoptic
Copy link
Member

oh, great, and we are still green -- let's proceed. Thank you @jwodder ! (as for added warning ignore -- ok with me, I just upgraded botocore - seems resolved it)

@yarikoptic yarikoptic merged commit 0237e85 into master Feb 22, 2023
@yarikoptic yarikoptic deleted the py3.11 branch February 22, 2023 17:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tests Add or improve existing tests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants