Skip to content

Commit

Permalink
Add support for Python 3.12. (#74)
Browse files Browse the repository at this point in the history
  • Loading branch information
icemac authored Feb 12, 2024
1 parent de96e57 commit cf24579
Show file tree
Hide file tree
Showing 9 changed files with 107 additions and 17 deletions.
4 changes: 3 additions & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,15 @@ jobs:
- ["ubuntu", "ubuntu-20.04"]
config:
# [Python version, tox env]
- ["3.9", "release-check"]
- ["3.9", "lint"]
- ["3.7", "py37"]
- ["3.8", "py38"]
- ["3.9", "py39"]
- ["3.10", "py310"]
- ["3.11", "py311"]
- ["pypy-3.9", "pypy3"]
- ["3.12", "py312"]
- ["pypy-3.10", "pypy3"]
- ["3.9", "docs"]

runs-on: ${{ matrix.os[1] }}
Expand Down
11 changes: 10 additions & 1 deletion .meta.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# https://github.com/zopefoundation/meta/tree/master/config/toolkit
[meta]
template = "toolkit"
commit-id = "47bae5a7"
commit-id = "17113b94"

[python]
with-sphinx-doctests = false
Expand All @@ -28,3 +28,12 @@ testenv-additional = [

[coverage]
fail-under = "not applicable"

[check-manifest]
additional-ignores = [
"dependabot/*",
"docs/_build/html/*",
"docs/_build/html/*/*",
"docs/_build/html/*/*/*",
"docs/_build/html/*/*/*/*",
]
17 changes: 17 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
include *.md
include *.txt
include *.yaml
include *.yml
include buildout.cfg
include development.cfg
include tox.ini
include ztk-sources.cfg
include ztk-versions.cfg
include ztk.cfg
recursive-include docs *.bat
recursive-include docs *.css
recursive-include docs *.png
recursive-include docs *.py
recursive-include docs *.rst
recursive-include docs *.txt
recursive-include docs Makefile
2 changes: 1 addition & 1 deletion README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ The Zope Toolkit
The Zope Toolkit is a set of libraries maintained by the Zope project for
building web applications, web frameworks and application servers.

It supports Python 3.7 up to 3.11 as well as PyPy 3.
It supports Python 3.7 up to 3.12 as well as PyPy 3.

This directory contains the definition of the Zope Toolkit in the file
``ztk.cfg``. It specifies the list of packages included in the ZTK and
Expand Down
15 changes: 8 additions & 7 deletions dependabot/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ zope.cachedescriptors==5.0
zope.catalog==5.0
zope.component==6.0
zope.componentvocabulary==2.3.0
zope.configuration==5.0
zope.configuration==5.0.1
zope.container==5.2
zope.contentprovider==5.0
zope.contenttype==5.1
Expand All @@ -35,34 +35,34 @@ zope.keyreference==6.0
zope.lifecycleevent==5.0
zope.location==5.0
zope.login==3.0
zope.mimetype==3.0
zope.mimetype==3.1
zope.minmax==2.3
zope.pagetemplate==5.0
zope.pagetemplate==5.1
zope.password==4.4
zope.pluggableauth==3.0
zope.principalannotation==5.0
zope.principalregistry==5.0
zope.processlifetime==3.0
zope.proxy==5.1
zope.proxy==5.2
zope.ptresource==5.0
zope.publisher==7.0
zope.ramcache==3.0
zope.schema==7.0.1
zope.security==6.2
zope.securitypolicy==5.0
zope.sendmail==6.0
zope.sendmail==6.1
zope.session==5.1
zope.site==5.0
zope.size==5.0
zope.structuredtext==5.0
zope.tal==5.0.1
zope.tales==6.0
zope.testing==5.0.1
zope.testrunner==6.2.1
zope.testrunner==6.3.1
zope.traversing==5.0
zope.untrustedpython==6.0
zope.viewlet==5.0
BTrees==5.1
BTrees==5.2
RestrictedPython==7.0
ZConfig==4.0
ZODB==5.8.1
Expand All @@ -79,6 +79,7 @@ zodbpickle==3.1
six==1.16.0
coverage==7.4.1
manuel==1.12.4
collective.recipe.cmd==0.11
mr.developer==2.0.1
z3c.checkversions==2.1
z3c.recipe.compattest==2.0
Expand Down
5 changes: 5 additions & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,11 @@ ignore =
.editorconfig
.meta.toml
docs/_build/html/_sources/*
dependabot/*
docs/_build/html/*
docs/_build/html/*/*
docs/_build/html/*/*/*
docs/_build/html/*/*/*/*

[isort]
force_single_line = True
Expand Down
34 changes: 34 additions & 0 deletions setup.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
from setuptools import setup

version = '2.1.dev0'

with open('README.rst') as f:
README = f.read()

setup(
name='zopetoolkit',
version=version,
description='Set of libraries maintained by the Zope project.',
author='Zope team',
author_email='[email protected]',
license='ZPL',
long_description_content_type='text/x-rst',
long_description=README,
classifiers=[
"Development Status :: 5 - Production/Stable",
"License :: OSI Approved :: Zope Public License",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: Implementation :: PyPy",
"Programming Language :: Python :: Implementation :: CPython",
],
zip_safe=False,
python_requires='>=3.7',
install_requires=[],
entry_points={},
packages=[],
)
21 changes: 21 additions & 0 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,14 @@
[tox]
minversion = 3.18
envlist =
release-check
lint
py37
py38
py39
py310
py311
py312
pypy3
docs

Expand All @@ -17,6 +19,9 @@ skip_install = true
deps =
zc.buildout >= 3.0.1
wheel > 0.37
setenv =
py312: VIRTUALENV_PIP=23.1.2
py312: PIP_REQUIRE_VIRTUALENV=0
commands_pre =
{envbindir}/buildout -nc {toxinidir}/buildout.cfg buildout:directory={envdir}
commands =
Expand All @@ -40,6 +45,22 @@ commands =
deps =
flake8
isort
[testenv:release-check]
description = ensure that the distribution is ready to release
basepython = python3
skip_install = true
deps =
twine
build
check-manifest
check-python-versions >= 0.20.0
wheel
commands_pre =
commands =
check-manifest
check-python-versions --only setup.py,tox.ini,.github/workflows/tests.yml
python -m build --sdist --no-isolation
twine check dist/*

[testenv:isort-apply]
basepython = python3
Expand Down
15 changes: 8 additions & 7 deletions ztk-versions.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ zope.cachedescriptors = 5.0
zope.catalog = 5.0
zope.component = 6.0
zope.componentvocabulary = 2.3.0
zope.configuration = 5.0
zope.configuration = 5.0.1
zope.container = 5.2
zope.contentprovider = 5.0
zope.contenttype = 5.1
Expand All @@ -37,36 +37,36 @@ zope.keyreference = 6.0
zope.lifecycleevent = 5.0
zope.location = 5.0
zope.login = 3.0
zope.mimetype = 3.0
zope.mimetype = 3.1
zope.minmax = 2.3
zope.pagetemplate = 5.0
zope.pagetemplate = 5.1
zope.password = 4.4
zope.pluggableauth = 3.0
zope.principalannotation = 5.0
zope.principalregistry = 5.0
zope.processlifetime = 3.0
zope.proxy = 5.1
zope.proxy = 5.2
zope.ptresource = 5.0
zope.publisher = 7.0
zope.ramcache = 3.0
zope.schema = 7.0.1
zope.security = 6.2
zope.securitypolicy = 5.0
zope.sendmail = 6.0
zope.sendmail = 6.1
zope.session = 5.1
zope.site = 5.0
zope.size = 5.0
zope.structuredtext = 5.0
zope.tal = 5.0.1
zope.tales = 6.0
zope.testing = 5.0.1
zope.testrunner = 6.2.1
zope.testrunner = 6.3.1
zope.traversing = 5.0
zope.untrustedpython = 6.0
zope.viewlet = 5.0

# Direct dependencies
BTrees = 5.1
BTrees = 5.2
RestrictedPython = 7.0
ZConfig = 4.0
ZODB = 5.8.1
Expand All @@ -89,6 +89,7 @@ coverage = 7.4.1
manuel = 1.12.4

# ZTK buildout dependencies
collective.recipe.cmd = 0.11
mr.developer = 2.0.1
z3c.checkversions = 2.1
z3c.recipe.compattest = 2.0
Expand Down

0 comments on commit cf24579

Please sign in to comment.