Skip to content

Commit 1cc2de7

Browse files
authored
config with pure python template 27ca14d4 (#13)
* Drop support for Python 3.9. * Add support for Python 3.14. * Configuring for buildout-recipe * Update Python version support. * Move package metadata from setup.py to pyproject.toml. * Move package metadata from setup.py to pyproject.toml. * Replace pkg_resources with importlib.metadata in recipe.py
1 parent a18d4c8 commit 1cc2de7

14 files changed

Lines changed: 116 additions & 119 deletions

File tree

.editorconfig

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
# Generated from:
2-
# https://github.com/zopefoundation/meta/tree/master/config/buildout-recipe
1+
# Generated with zope.meta (https://zopemeta.readthedocs.io/) from:
2+
# https://github.com/zopefoundation/meta/tree/master/src/zope/meta/buildout-recipe
33
#
44
# EditorConfig Configuration file, for more details see:
5-
# http://EditorConfig.org
5+
# https://EditorConfig.org
66
# EditorConfig is a convention description, that could be interpreted
77
# by multiple editors to enforce common coding conventions for specific
88
# file types
@@ -12,7 +12,7 @@
1212
root = true
1313

1414

15-
[*] # For All Files
15+
[*]
1616
# Unix-style newlines with a newline ending every file
1717
end_of_line = lf
1818
insert_final_newline = true

.github/workflows/pre-commit.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
# Generated from:
2-
# https://github.com/zopefoundation/meta/tree/master/config/buildout-recipe
1+
# Generated with zope.meta (https://zopemeta.readthedocs.io/) from:
2+
# https://github.com/zopefoundation/meta/tree/master/src/zope/meta/buildout-recipe
33
name: pre-commit
44

55
on:
@@ -21,10 +21,10 @@ jobs:
2121
name: linting
2222
runs-on: ubuntu-latest
2323
steps:
24-
- uses: actions/checkout@v4
25-
- uses: actions/setup-python@v5
24+
- uses: actions/checkout@v6
25+
- uses: actions/setup-python@v6
2626
with:
27-
python-version: 3.x
27+
python-version: '3.13'
2828
- uses: pre-commit/action@2c7b3805fd2a0fd8c1884dcaebf91fc102a13ecd #v3.0.1
2929
with:
3030
extra_args: --all-files --show-diff-on-failure

.github/workflows/tests.yml

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
# Generated from:
2-
# https://github.com/zopefoundation/meta/tree/master/config/buildout-recipe
1+
# Generated with zope.meta (https://zopemeta.readthedocs.io/) from:
2+
# https://github.com/zopefoundation/meta/tree/master/src/zope/meta/buildout-recipe
33
name: tests
44

55
on:
@@ -24,36 +24,33 @@ jobs:
2424
config:
2525
# [Python version, tox env]
2626
- ["3.11", "release-check"]
27-
- ["3.9", "py39"]
2827
- ["3.10", "py310"]
2928
- ["3.11", "py311"]
3029
- ["3.12", "py312"]
3130
- ["3.13", "py313"]
32-
- ["pypy-3.10", "pypy3"]
31+
- ["3.14", "py314"]
32+
- ["pypy-3.11", "pypy3"]
3333
- ["3.11", "coverage"]
3434

3535
runs-on: ${{ matrix.os[1] }}
3636
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
3737
name: ${{ matrix.config[1] }}
3838
steps:
39-
- uses: actions/checkout@v4
39+
- uses: actions/checkout@v6
4040
with:
4141
persist-credentials: false
4242
- name: Install uv + caching
43-
uses: astral-sh/setup-uv@v6
43+
# astral/setup-uv@8.0.0
44+
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57
4445
with:
4546
enable-cache: true
4647
cache-dependency-glob: |
4748
setup.*
4849
tox.ini
49-
python-version: ${{ matrix.matrix.config[0] }}
50+
python-version: ${{ matrix.config[0] }}
5051
github-token: ${{ secrets.GITHUB_TOKEN }}
5152
- name: Test
52-
if: ${{ !startsWith(runner.os, 'Mac') }}
5353
run: uvx --with tox-uv tox -e ${{ matrix.config[1] }}
54-
- name: Test (macOS)
55-
if: ${{ startsWith(runner.os, 'Mac') }}
56-
run: uvx --with tox-uv tox -e ${{ matrix.config[1] }}-universal2
5754
- name: Coverage
5855
if: matrix.config[1] == 'coverage'
5956
run: |

.gitignore

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
# Generated from:
2-
# https://github.com/zopefoundation/meta/tree/master/config/buildout-recipe
1+
# Generated with zope.meta (https://zopemeta.readthedocs.io/) from:
2+
# https://github.com/zopefoundation/meta/tree/master/src/zope/meta/buildout-recipe
33
*.dll
44
*.egg-info/
55
*.profraw
@@ -28,5 +28,6 @@ lib64
2828
log/
2929
parts/
3030
pyvenv.cfg
31+
share/
3132
testing.log
3233
var/

.meta.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
# Generated from:
2-
# https://github.com/zopefoundation/meta/tree/master/config/buildout-recipe
1+
# Generated with zope.meta (https://zopemeta.readthedocs.io/) from:
2+
# https://github.com/zopefoundation/meta/tree/master/src/zope/meta/buildout-recipe
33
[meta]
44
template = "buildout-recipe"
5-
commit-id = "1fe22fd9"
5+
commit-id = "27ca14d4"
66

77
[python]
88
with-pypy = true
@@ -11,9 +11,9 @@ with-future-python = false
1111
with-macos = false
1212
with-windows = false
1313
with-docs = false
14+
with-free-threaded-python = false
1415

1516
[tox]
16-
use-flake8 = true
1717
testenv-setenv = [
1818
"ZOPE_INTERFACE_STRICT_IRO=1",
1919
]

.pre-commit-config.yaml

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
# Generated from:
2-
# https://github.com/zopefoundation/meta/tree/master/config/buildout-recipe
1+
# Generated with zope.meta (https://zopemeta.readthedocs.io/) from:
2+
# https://github.com/zopefoundation/meta/tree/master/src/zope/meta/buildout-recipe
33
minimum_pre_commit_version: '3.6'
44
repos:
55
- repo: https://github.com/pycqa/isort
6-
rev: "6.0.1"
6+
rev: "8.0.1"
77
hooks:
88
- id: isort
99
- repo: https://github.com/hhatto/autopep8
@@ -12,16 +12,17 @@ repos:
1212
- id: autopep8
1313
args: [--in-place, --aggressive, --aggressive]
1414
- repo: https://github.com/asottile/pyupgrade
15-
rev: v3.19.1
15+
rev: v3.21.2
1616
hooks:
1717
- id: pyupgrade
18-
args: [--py39-plus]
18+
args: [--py310-plus]
1919
- repo: https://github.com/isidentical/teyit
2020
rev: 0.4.3
2121
hooks:
2222
- id: teyit
23+
language_version: python3.13
2324
- repo: https://github.com/PyCQA/flake8
24-
rev: "7.2.0"
25+
rev: "7.3.0"
2526
hooks:
2627
- id: flake8
2728
additional_dependencies:

CHANGES.rst

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,13 @@
55
4.1 (unreleased)
66
================
77

8-
- Nothing changed yet.
8+
- Move package metadata from setup.py to pyproject.toml.
9+
10+
- Add support for Python 3.14.
11+
12+
- Drop support for Python 3.9.
13+
14+
- Replace ``pkg_resources`` usage in ``recipe.py`` with ``importlib.metadata``.
915

1016

1117
4.0 (2025-04-14)

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<!--
2-
Generated from:
3-
https://github.com/zopefoundation/meta/tree/master/config/buildout-recipe
2+
Generated with zope.meta (https://zopemeta.readthedocs.io/) from:
3+
https://github.com/zopefoundation/meta/tree/master/src/zope/meta/buildout-recipe
44
-->
55
# Contributing to zopefoundation projects
66

MANIFEST.in

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
# Generated from:
2-
# https://github.com/zopefoundation/meta/tree/master/config/buildout-recipe
1+
# Generated with zope.meta (https://zopemeta.readthedocs.io/) from:
2+
# https://github.com/zopefoundation/meta/tree/master/src/zope/meta/buildout-recipe
33
include *.md
44
include *.rst
55
include *.txt

pyproject.toml

Lines changed: 56 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,61 @@
1-
# Generated from:
2-
# https://github.com/zopefoundation/meta/tree/master/config/buildout-recipe
3-
1+
# Generated with zope.meta (https://zopemeta.readthedocs.io/) from:
2+
# https://github.com/zopefoundation/meta/tree/master/src/zope/meta/buildout-recipe
43
[build-system]
54
requires = [
6-
"setuptools == 75.8.2",
5+
"setuptools >= 78.1.1,< 81",
76
"wheel",
87
]
98
build-backend = "setuptools.build_meta"
109

10+
11+
[project]
12+
name = "z3c.recipe.compattest"
13+
version = "4.1.dev0"
14+
description = "Buildout recipe to create testrunners for testing compatibility with other packages"
15+
license = "ZPL-2.1"
16+
classifiers = [
17+
"Framework :: Zope :: 3",
18+
"Intended Audience :: Developers",
19+
"Operating System :: OS Independent",
20+
"Programming Language :: Python",
21+
"Programming Language :: Python :: 3",
22+
"Programming Language :: Python :: 3.10",
23+
"Programming Language :: Python :: 3.11",
24+
"Programming Language :: Python :: 3.12",
25+
"Programming Language :: Python :: 3.13",
26+
"Programming Language :: Python :: 3.14",
27+
"Programming Language :: Python :: Implementation :: CPython",
28+
"Programming Language :: Python :: Implementation :: PyPy",
29+
]
30+
dynamic = ["readme"]
31+
requires-python = ">=3.10"
32+
authors = [
33+
{name = "Zope Foundation and contributors",email = "zope-dev@zope.dev"},
34+
]
35+
maintainers = [
36+
{name = "Plone Foundation and contributors",email = "zope-dev@zope.dev"},
37+
]
38+
dependencies = [
39+
"zc.buildout >= 2.0.0",
40+
"zc.recipe.testrunner >= 2.0.0",
41+
]
42+
keywords = ["zope", "setuptools", "egg", "kgs"]
43+
44+
[project.entry-points."zc.buildout"]
45+
default = "z3c.recipe.compattest.recipe:Recipe"
46+
47+
[project.optional-dependencies]
48+
test = [
49+
"zope.dottedname",
50+
"zope.testing",
51+
"manuel",
52+
]
53+
54+
[project.urls]
55+
Source = "https://github.com/zopefoundation/z3c.recipe.compattest"
56+
Issues = "https://github.com/zopefoundation/z3c.recipe.compattest/issues"
57+
Changelog = "https://raw.githubusercontent.com/zopefoundation/z3c.recipe.compattest/master/CHANGES.rst"
58+
1159
[tool.coverage.run]
1260
branch = true
1361
source = ["z3c.recipe.compattest"]
@@ -38,3 +86,7 @@ source = [
3886
".tox/*/lib/python*/site-packages/",
3987
".tox/pypy*/site-packages/",
4088
]
89+
90+
[tool.setuptools.dynamic]
91+
readme = {file = ["README.rst", "CHANGES.rst"]}
92+

0 commit comments

Comments
 (0)