Skip to content

Support Python 3.12 and pip 23.2.1#276

Closed
fghaas wants to merge 2 commits into
cleura:masterfrom
fghaas:py3.12
Closed

Support Python 3.12 and pip 23.2.1#276
fghaas wants to merge 2 commits into
cleura:masterfrom
fghaas:py3.12

Conversation

@fghaas
Copy link
Copy Markdown
Contributor

@fghaas fghaas commented Dec 20, 2023

No description provided.

@fghaas fghaas marked this pull request as draft December 20, 2023 11:14
Florian Haas added 2 commits December 20, 2023 12:35
We previously made use of the pkg_resources module to determine the
package version (as defined by setuptools-scm) in __about__.py. This
module is included in setuptools, which as of Python 3.12 has been
unbundled from Python, which means it is no longer installed by
default in a freshly initialized venv.

There are multiple ways to address this, one being to include
setuptools in the install_requires list for Python 3.12 and
later. Another, also listed in the Python Packaging User Guide, is to
instead use importlib.metadata.version. Since this approach works for
all Python versions we intend to support (that is, from 3.8 forward),
this is the better solution.

Thus, refactor __init__.py to use importlib, and add Python 3.12 to
the test matrix.

For this to work correctly, we also need to (finally) allow a version
of setuptools-scm>=6 in setup.py.

Reference:
https://packaging.python.org/en/latest/guides/single-sourcing-package-version/
As of Open edX Quince/Tutor 17, the Tutor Dockerfile installs
pip 23.2.1. Update the GitHub Actions workflow matrix to ensure that
our dependencies don't break with that pip version.
@fghaas
Copy link
Copy Markdown
Contributor Author

fghaas commented Apr 15, 2024

Closing. Superseded by #282.

@fghaas fghaas closed this Apr 15, 2024
@fghaas fghaas deleted the py3.12 branch April 15, 2024 11:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant