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

Support Python 3.10 #5188

Merged
merged 6 commits into from
Dec 1, 2021
Merged

Support Python 3.10 #5188

merged 6 commits into from
Dec 1, 2021

Conversation

csadorf
Copy link
Contributor

@csadorf csadorf commented Oct 20, 2021

Closes #5146 .

@csadorf csadorf added topic/dependencies dependencies Pull requests that update a dependency file labels Oct 20, 2021
@csadorf
Copy link
Contributor Author

csadorf commented Oct 20, 2021

Manual checks:

  • docker run python:3.10 pip install aiida-core
  • docker run python:3.10 pip install aiida-core[all]

@csadorf csadorf force-pushed the dependencies/issue-5146-support-py310 branch from c34222d to 6d9b318 Compare October 20, 2021 08:45
@codecov
Copy link

codecov bot commented Oct 20, 2021

Codecov Report

Merging #5188 (7db0209) into develop (0acfb2d) will decrease coverage by 0.01%.
The diff coverage is n/a.

Impacted file tree graph

@@             Coverage Diff             @@
##           develop    #5188      +/-   ##
===========================================
- Coverage    81.30%   81.30%   -0.00%     
===========================================
  Files          529      529              
  Lines        37031    37031              
===========================================
- Hits         30105    30104       -1     
- Misses        6926     6927       +1     
Flag Coverage Δ
django 76.80% <ø> (-<0.01%) ⬇️
sqlalchemy 75.75% <ø> (+0.01%) ⬆️

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

Impacted Files Coverage Δ
aiida/transports/plugins/local.py 81.41% <0.00%> (-0.25%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 0acfb2d...7db0209. Read the comment docs.

@csadorf
Copy link
Contributor Author

csadorf commented Oct 27, 2021

Status update:

  • The package is installable with pip (including extras), but some tests fail for Python 3.10.
  • The conda installation is not yet possible.

@csadorf
Copy link
Contributor Author

csadorf commented Nov 10, 2021

Status update:

  • pip installation and tests pass
  • conda installation still fails

@csadorf csadorf force-pushed the dependencies/issue-5146-support-py310 branch from 13d9f0e to 5532a8e Compare November 15, 2021 13:13
@csadorf
Copy link
Contributor Author

csadorf commented Nov 15, 2021

The issues with the conda environment are now reported here: s-weigand/setup-conda#169

@csadorf csadorf force-pushed the dependencies/issue-5146-support-py310 branch from 5532a8e to 87c9f8f Compare November 17, 2021 08:46
@csadorf
Copy link
Contributor Author

csadorf commented Nov 17, 2021

Blocked by #5231 .

@csadorf csadorf added the pr/blocked PR is blocked by another PR that should be merged first label Nov 17, 2021
@csadorf csadorf force-pushed the dependencies/issue-5146-support-py310 branch 2 times, most recently from 44af547 to 5717aeb Compare November 18, 2021 11:04
@csadorf csadorf removed the pr/blocked PR is blocked by another PR that should be merged first label Nov 18, 2021
@csadorf csadorf marked this pull request as ready for review November 18, 2021 12:03
@csadorf csadorf requested a review from chrisjsewell November 18, 2021 12:04
@csadorf csadorf enabled auto-merge (squash) November 18, 2021 12:04
@sphuber sphuber disabled auto-merge November 25, 2021 08:56
@sphuber
Copy link
Contributor

sphuber commented Nov 25, 2021

This looks to be ready to go now, right @csadorf ? One question I had is whether we should change the tests job of the ci-code.yml workflow to run against Python 3.10 instead of 3.8. I think the original idea was that we run it against the oldest and newest supported version of Python. Currently it is 3.7 and 3.8 (we forgot to change this when we added 3.9) but maybe now it would be useful to change for 3.10?

@csadorf
Copy link
Contributor Author

csadorf commented Nov 29, 2021

This looks to be ready to go now, right @csadorf ?

Yes, this is almost ready. There is an issue with circus that we should probably wait on to be resolved before merging this.

One question I had is whether we should change the tests job of the ci-code.yml workflow to run against Python 3.10 instead of 3.8. I think the original idea was that we run it against the oldest and newest supported version of Python. Currently it is 3.7 and 3.8 (we forgot to change this when we added 3.9) but maybe now it would be useful to change for 3.10?

If I remember correctly, I don't think we forgot, the issue was that the pip installation was possible with 3.9, but still took significantly longer, because some dependencies needed to be compiled since no wheels where available. We might face the same issue here, but I am going to look into updating it.

Copy link
Member

@chrisjsewell chrisjsewell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

updates

requirements/requirements-py-3.10.txt Outdated Show resolved Hide resolved
requirements/requirements-py-3.10.txt Show resolved Hide resolved
csadorf and others added 5 commits December 1, 2021 10:19
…ings.

Since version "numbers" are not actually numbers, which can lead to
bugs, e.g., when a version number like "3.10" is interpreted as a
decimal or float and is thus equal to 3.1.
Co-authored-by: Chris Sewell <chrisj_sewell@hotmail.com>
@csadorf csadorf force-pushed the dependencies/issue-5146-support-py310 branch from ee16bbe to bd6bbc8 Compare December 1, 2021 09:28
@github-actions
Copy link
Contributor

github-actions bot commented Dec 1, 2021

Please update the requirements/ files to ensure that they
are consistent with the dependencies specified in the 'setup.json' file.

Co-authored-by: csadorf <csadorf@users.noreply.github.com>
@csadorf csadorf enabled auto-merge (squash) December 1, 2021 10:45
@csadorf csadorf requested a review from chrisjsewell December 1, 2021 10:50
@csadorf
Copy link
Contributor Author

csadorf commented Dec 1, 2021

@chrisjsewell Should be ready to merge, I enabled auto-merge.

@sphuber sphuber disabled auto-merge December 1, 2021 14:15
@sphuber sphuber self-requested a review December 1, 2021 14:15
Copy link
Contributor

@sphuber sphuber left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @csadorf

@sphuber sphuber dismissed chrisjsewell’s stale review December 1, 2021 14:16

Changes were addressed

@sphuber sphuber merged commit ced1033 into develop Dec 1, 2021
@sphuber sphuber deleted the dependencies/issue-5146-support-py310 branch December 1, 2021 14:17
@ltalirz
Copy link
Member

ltalirz commented Dec 8, 2021

@csadorf Just mentioning that I'm getting

ERROR: Could not find a version that satisfies the requirement spglib==1.16.2 (from versions: 1.6.0, 1.6.0.1, 1.6.0.2, 1.6.0.3, 1.9.0.5, 1.9.0.52, 1.9.0.53, 1.9.0.54, 1.9.2.13, 1.9.3, 1.9.3.1, 1.9.3.4, 1.9.4.2, 1.9.4.3, 1.9.4.4, 1.9.5, 1.9.6, 1.9.7, 1.9.7.1, 1.9.7.9, 1.9.7.17, 1.9.8, 1.9.8.7, 1.9.8.9, 1.9.8.11, 1.9.8.15, 1.9.8.20, 1.9.9, 1.9.9.5, 1.9.9.11, 1.9.9.15, 1.9.9.18, 1.9.9.25, 1.9.9.29, 1.9.9.38, 1.9.9.44, 1.9.9.116, 1.9.9.121, 1.9.10, 1.9.10.1, 1.10.0, 1.10.0.1, 1.10.0.2, 1.10.1, 1.10.1.4, 1.10.2, 1.10.2.4, 1.10.3, 1.10.3.5, 1.10.3.12, 1.10.3.14, 1.10.3.20, 1.10.3.23, 1.10.3.33, 1.10.3.39, 1.10.3.41, 1.10.3.43, 1.10.3.50, 1.10.3.52, 1.10.3.54, 1.10.3.56, 1.10.3.62, 1.10.3.65, 1.10.3.75, 1.10.4, 1.10.4.1, 1.10.4.7, 1.10.4.11, 1.11.0.post18, 1.11.0.post19, 1.11.1.post3, 1.11.2.post0, 1.11.2.post1, 1.12.0.post3, 1.12.0.post5, 1.12.1.post0, 1.12.1.post7, 1.12.2.post0, 1.13.0.post0, 1.13.0.post1, 1.13.0.post2, 1.13.0.post3, 1.13.0.post4, 1.13.0.post5, 1.13.0.post6, 1.14.0.post0, 1.14.0.post23, 1.14.1.post0, 1.15.0, 1.15.1, 1.16.0, 1.16.1)

This is on my macbook M1 + also on @chrisjsewell 's x86 macbook.
We cannot pip install spglib==1.16.2.

It's not quite clear to my why... perhaps there is no wheel uploaded for macos?

We'll open an issue on spglib

@ltalirz
Copy link
Member

ltalirz commented Dec 8, 2021

Opened spglib/spglib#143

I'll open a PR on aiida-core to downgrade spglib

@csadorf
Copy link
Contributor Author

csadorf commented Dec 8, 2021

Indeed, likely an architecture issue. Looks like we might have to start testing on different architectures to catch this... 🙄 Thanks for the PR!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file topic/dependencies
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support Python 3.10
4 participants