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 #1504

Closed
3 of 4 tasks
choldgraf opened this issue Oct 13, 2021 · 2 comments · Fixed by #1987
Closed
3 of 4 tasks

Support Python 3.10 #1504

choldgraf opened this issue Oct 13, 2021 · 2 comments · Fixed by #1987
Labels
enhancement New feature or request

Comments

@choldgraf
Copy link
Member

choldgraf commented Oct 13, 2021

Description / Summary

We are not currently testing or officially supporting Python 3.10 in Jupyter Book.
We should at least:

  • Start testing Python 3.10 in our test suite
  • Make sure our tests pass
  • Update our metadata to support the latest 3 Python versions (3.10/9/8)

We should do this after #1448 is done to reduce any potential Sphinx 2.x bugs we might hit

(originally reported in #1490)

Value / benefit

More and more people will use 3.10 over time, so we might start getting unexpected errors once this happens.

Implementation details

Metadata about python version is here: https://github.com/executablebooks/jupyter-book/blob/master/setup.cfg

Our test matrix is here:

tests:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.6, 3.7]
sphinx: [">=3,<4"]
include:
- python-version: 3.8
sphinx: ">=2,<3"

(not sure why we only test 3.8 with Sphinx 2/3 but we might as well try doing a full matrix unless we know there are incompatible versions matches)

This PR attempted to do this, but upgrading to Python 3.10 was not a super quick fix: #1509

Issues we ran into:

  • Python 3.10 isn't supported in the version of pytest we use. Upgrading to the latest pytest results in some errors in our builds, so we'll need to debug that.

Tasks to complete

@choldgraf choldgraf added the enhancement New feature or request label Oct 13, 2021
@chrisjsewell
Copy link
Member

Update our metadata to support the latest 3 Python versions (3.10/9/8)

This is not the correct way to support python. They should be supported by their end of life dates https://devguide.python.org/#status-of-python-branches

@choldgraf
Copy link
Member Author

ah very helpful list! that sounds reasonable to me - I suppose we just need to add 3.9/3.10 to the tests, and then test them as well. Is it reasonable to test the latest 3 python versions, even though we technically support versions that are earlier than those three?

I also opened up executablebooks/meta#513 to document this policy, since we might as well apply it across the other tools in the stack

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants