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

The NEP 29 Python version support policy breaks projects #11621

Closed
return42 opened this issue Aug 19, 2023 · 3 comments
Closed

The NEP 29 Python version support policy breaks projects #11621

return42 opened this issue Aug 19, 2023 · 3 comments

Comments

@return42
Copy link

return42 commented Aug 19, 2023

Describe the bug

The Python version support policy NEP 29 (superseded by SPEC 0 ) and introduced in Sphinx by PR

breaks with python projects following the "Python Release Cycle" ... for no reasons / at least it is not clear why the motivation of scientific applications should apply to all projects using Sphinx-doc.

How to Reproduce

Build your python project on a python 3.8 (build host) / by example build process in a non scientific application:

Environment Information

Python 3.8 / EOL 2024-10

Sphinx extensions

No response

Additional context

No response

@AA-Turner
Copy link
Member

AA-Turner commented Aug 19, 2023

I don't consider this a valid bug; documentation is a development activity and thus can be on a more restricted set of Python versions than your library might support. To use the status of Python versions argument, we would be justified in only supporting active bugfix releases of Python, which would be 3.11.

Note also our policy is inspired by NEP 29, and we do not consider ourselves bound by it, or any superseeding standards.

A

@AA-Turner AA-Turner closed this as not planned Won't fix, can't repro, duplicate, stale Aug 19, 2023
@return42
Copy link
Author

I don't consider this a valid bug;

Correct, this is not a bug, it is a change request.

Note also our policy is inspired by NEP 29, and we do not consider ourselves bound by it, or any superseeding standards.

Correct, but what is the motivation behind? / Why not supporting Python versions until EOL .. like most of the packages in the Python eco system do / and most LTS do.

Are there any known issues with Sphinx 7.x python 3.8?

@AA-Turner
Copy link
Member

what is the motivation behind?

Making maintenance easier. It means we can use newer features (e.g. subscriptable generics, str.removeprefix), and there is one less version of Python to test.

A

return42 added a commit to return42/searxng that referenced this issue Aug 25, 2023
- Sphinx-doc 7.2.0 drops py3.8 support [1][2]
- last version with py3.8 support is 7.1.2

Many LTS distributions still have py3.8 which EOL is in 2024-10 [3].

To continue to support a development environment on py3.8 the rigid dependency
in the development environment is unpinned.

[1] searxng#2658 (comment)
[2] sphinx-doc/sphinx#11621
[3] https://devguide.python.org/versions/#supported-versions

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
return42 added a commit to return42/searxng that referenced this issue Aug 27, 2023
- Sphinx-doc 7.2.0 drops py3.8 support [1][2]
- last version with py3.8 support is 7.1.2

Many LTS distributions still have py3.8 which EOL is in 2024-10 [3].

To continue to support a development environment on py3.8 the rigid dependency
in the development environment is unpinned in py3.8 / environment markers [4].

To get 7.2.3. work, a fix in sphinx-notfound-page is needed.

[1] searxng#2658 (comment)
[2] sphinx-doc/sphinx#11621
[3] https://devguide.python.org/versions/#supported-versions
[4] https://peps.python.org/pep-0508/#environment-markers
[5] readthedocs/sphinx-notfound-page#219

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
return42 added a commit to return42/searxng that referenced this issue Aug 27, 2023
- Sphinx-doc 7.2.0 drops py3.8 support [1][2]
- last version with py3.8 support is 7.1.2

Many LTS distributions still have py3.8 which EOL is in 2024-10 [3].

To continue to support a development environment on py3.8 the rigid dependency
in the development environment is unpinned in py3.8 / environment markers [4].

To get 7.2.3. work, a fix in sphinx-notfound-page is needed [5][6].

[1] searxng#2658 (comment)
[2] sphinx-doc/sphinx#11621
[3] https://devguide.python.org/versions/#supported-versions
[4] https://peps.python.org/pep-0508/#environment-markers
[5] readthedocs/sphinx-notfound-page#219
[6] readthedocs/sphinx-notfound-page#219 (comment)

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
return42 added a commit to searxng/searxng that referenced this issue Aug 27, 2023
- Sphinx-doc 7.2.0 drops py3.8 support [1][2]
- last version with py3.8 support is 7.1.2

Many LTS distributions still have py3.8 which EOL is in 2024-10 [3].

To continue to support a development environment on py3.8 the rigid dependency
in the development environment is unpinned in py3.8 / environment markers [4].

To get 7.2.3. work, a fix in sphinx-notfound-page is needed [5][6].

[1] #2658 (comment)
[2] sphinx-doc/sphinx#11621
[3] https://devguide.python.org/versions/#supported-versions
[4] https://peps.python.org/pep-0508/#environment-markers
[5] readthedocs/sphinx-notfound-page#219
[6] readthedocs/sphinx-notfound-page#219 (comment)

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Sep 20, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants