Conversation
freyes
left a comment
There was a problem hiding this comment.
Hi, thanks for this PR, this is something we must definitively want to have, I just left one comment inline, which prompts me to think that maybe we would need to cut a new major release (charm-tools 4.x ) to drop older versions of python
| exclude = ["*tests*"] | ||
|
|
||
| [build-system] | ||
| requires = ["setuptools>=68"] |
There was a problem hiding this comment.
this is an aspect that makes be concerned, how compatible this is with older versions of python, do you know what versions can we support with pyproject.toml ?
There was a problem hiding this comment.
Yea compatibility is determined by the build backend. If you want to stick with setuptools (the only setuptools-specific feature this currently uses is setting the dynamic version), they added initial support for pyproject.toml in 61.0.0, which supports >=3.7 and later stabilized in 68.1.0, which supports >=3.8
If you need to support even older pythons, you can pick another build backend (flit for example supported >=3 for a while but it can only read version from a static file)
What python versions do you need to support? I will note that most core packaging projects use only pyproject.toml themselves these days, including pip, setuptools, packaging, etc
There was a problem hiding this comment.
3.8 (focal) is fine, that's the oldest we support :-)
There was a problem hiding this comment.
Sounds good, added a requires-python to make that support explicit
freyes
left a comment
There was a problem hiding this comment.
Add 3.13 to the testing matrix please, - https://github.com/juju/charm-tools/blob/master/.github/workflows/tests.yml#L16 - also we need a maintainer to allow this PR to run the CI
The former was renamed due to PyPI classifying the project as critical and requiring 2FA: CheetahTemplate3/cheetah3@673259b
As shown with `python3.12 -m compileall -f $(git ls-files '*.py')`
|
What about 3.14 ? |
This PR contains a couple of fixes for python 3.13:
cheetah3has been renamed toct3, with the former no longer being updated and broken on 3.13: Release Python 3.13 support CheetahTemplate3/cheetah3#63SyntaxWarningon 3.12+: https://docs.python.org/3/whatsnew/3.12.html#other-language-changespyproject.toml(the modern replacement forsetup.pyfavoring static metadata). Now only the dynamicversionremains insetup.py.Fixes #681
Checklist
make test?