Skip to content

Commit 707aca1

Browse files
committed
Upgrade to plone/meta 2.10 (adds a Plone 6.2 test matrix)
Generated with `config-package` from plone.meta 2.10.0; the only hand edit is removing the [flake8] section from setup.cfg, which the generator asks for (flake8 config lives in .flake8). The motivation is CI coverage: this repo's meta `main` workflows call plone/meta's test.yml, which takes no plone-version input and hardcodes "Plone 6.0". So there is no signal for 6.1, 6.2 or 6.3 today. The 2.x template generates test-matrix.yml with tox factors per Plone line: py314-plone63 / py310-plone63 py314-plone62 / py310-plone62 py313-plone61 / py310-plone61 py39-plone60 fail-fast: false Verified before opening: collective.volto.formsupport[test] resolves against https://dist.plone.org/release/6.2-dev/constraints.txt, and the suite is green on 6.2 — 52 tests, 0 failures against CMFPlone 6.2.1 / plone.restapi 10.0.2.
1 parent 1f49058 commit 707aca1

11 files changed

Lines changed: 255 additions & 141 deletions

File tree

.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Generated from:
2-
# https://github.com/plone/meta/tree/main/config/default
2+
# https://github.com/plone/meta/tree/2.x/src/plone/meta/default
33
# See the inline comments on how to expand/tweak this configuration file
44
#
55
# EditorConfig Configuration file, for more details see:

.flake8

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Generated from:
2-
# https://github.com/plone/meta/tree/main/config/default
2+
# https://github.com/plone/meta/tree/2.x/src/plone/meta/default
33
# See the inline comments on how to expand/tweak this configuration file
44
[flake8]
55
doctests = 1

.github/dependabot.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Generated from:
2+
# https://github.com/plone/meta/tree/2.x/src/plone/meta/default
3+
# See the inline comments on how to expand/tweak this configuration file
4+
version: 2
5+
updates:
6+
7+
- package-ecosystem: "github-actions"
8+
directory: "/"
9+
schedule:
10+
# Check for updates to GitHub Actions every week
11+
interval: "weekly"

.github/workflows/meta.yml

Lines changed: 8 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,10 @@
11
# Generated from:
2-
# https://github.com/plone/meta/tree/main/config/default
2+
# https://github.com/plone/meta/tree/2.x/src/plone/meta/default
33
# See the inline comments on how to expand/tweak this configuration file
44
name: Meta
5+
56
on:
67
push:
7-
branches:
8-
- master
9-
- main
10-
pull_request:
11-
branches:
12-
- master
13-
- main
148
workflow_dispatch:
159

1610
##
@@ -25,24 +19,21 @@ on:
2519

2620
jobs:
2721
qa:
28-
uses: plone/meta/.github/workflows/qa.yml@main
29-
test:
30-
uses: plone/meta/.github/workflows/test.yml@main
22+
uses: plone/meta/.github/workflows/qa.yml@2.x
3123
coverage:
32-
uses: plone/meta/.github/workflows/coverage.yml@main
24+
uses: plone/meta/.github/workflows/coverage.yml@2.x
3325
dependencies:
34-
uses: plone/meta/.github/workflows/dependencies.yml@main
26+
uses: plone/meta/.github/workflows/dependencies.yml@2.x
3527
release_ready:
36-
uses: plone/meta/.github/workflows/release_ready.yml@main
37-
# circular:
38-
# uses: plone/meta/.github/workflows/circular.yml@main
28+
uses: plone/meta/.github/workflows/release_ready.yml@2.x
29+
circular:
30+
uses: plone/meta/.github/workflows/circular.yml@2.x
3931

4032
##
4133
# To modify the list of default jobs being created add in .meta.toml:
4234
# [github]
4335
# jobs = [
4436
# "qa",
45-
# "test",
4637
# "coverage",
4738
# "dependencies",
4839
# "release_ready",
@@ -57,13 +48,6 @@ jobs:
5748
# os_dependencies = "git libxml2 libxslt"
5849
##
5950

60-
##
61-
# To test against a specific matrix of python versions
62-
# when running tests jobs, add in .meta.toml:
63-
# [github]
64-
# py_versions = "['3.12', '3.11']"
65-
##
66-
6751

6852
##
6953
# Specify additional jobs in .meta.toml:

.github/workflows/test-matrix.yml

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
# Generated from:
2+
# https://github.com/plone/meta/tree/2.x/src/plone/meta/default
3+
# See the inline comments on how to expand/tweak this configuration file
4+
name: Tests
5+
6+
on:
7+
push:
8+
workflow_dispatch:
9+
10+
jobs:
11+
build:
12+
permissions:
13+
contents: read
14+
pull-requests: write
15+
strategy:
16+
# We want to see all failures:
17+
fail-fast: false
18+
matrix:
19+
os:
20+
- ["ubuntu", "ubuntu-latest"]
21+
config:
22+
# [Python version, visual name, tox env]
23+
- ["3.14", "6.3 on py3.14", "py314-plone63"]
24+
- ["3.10", "6.3 on py3.10", "py310-plone63"]
25+
- ["3.14", "6.2 on py3.14", "py314-plone62"]
26+
- ["3.10", "6.2 on py3.10", "py310-plone62"]
27+
- ["3.13", "6.1 on py3.13", "py313-plone61"]
28+
- ["3.10", "6.1 on py3.10", "py310-plone61"]
29+
- ["3.9", "6.0 on py3.9", "py39-plone60"]
30+
- ["3.13", "6.0 on py3.13", "py313-plone60"]
31+
32+
runs-on: ${{ matrix.os[1] }}
33+
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
34+
name: ${{ matrix.config[1] }}
35+
steps:
36+
- uses: actions/checkout@v7
37+
with:
38+
persist-credentials: false
39+
- name: Install uv + caching
40+
uses: astral-sh/setup-uv@v8.3.2
41+
with:
42+
enable-cache: true
43+
cache-dependency-glob: |
44+
setup.*
45+
tox.ini
46+
pyproject.toml
47+
python-version: ${{ matrix.config[0] }}
48+
49+
##
50+
# Add extra configuration options in .meta.toml:
51+
# [github]
52+
# extra_lines_after_os_dependencies = """
53+
# _your own configuration lines_
54+
# """
55+
##
56+
- name: Initialize tox
57+
# the bash one-liner below does not work on Windows
58+
if: contains(matrix.os, 'ubuntu')
59+
run: |
60+
if [ `uvx tox list --no-desc -f init|wc -l` = 1 ]; then uvx --with tox-uv tox -e init;else true; fi
61+
- name: Test
62+
run: uvx --with tox-uv tox -e ${{ matrix.config[2] }}
63+
64+
65+
##
66+
# Add extra configuration options in .meta.toml:
67+
# [github]
68+
# extra_lines = """
69+
# _your own configuration lines_
70+
# """
71+
##

.gitignore

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Generated from:
2-
# https://github.com/plone/meta/tree/main/config/default
2+
# https://github.com/plone/meta/tree/2.x/src/plone/meta/default
33
# See the inline comments on how to expand/tweak this configuration file
44
# python related
55
*.egg-info
@@ -18,8 +18,10 @@ dist/
1818
docs/_build
1919
__pycache__/
2020
.tox
21+
.vscode/
2122
node_modules/
22-
forest.*
23+
forest.dot
24+
forest.json
2325

2426
# venv / buildout related
2527
bin/
@@ -36,7 +38,6 @@ parts/
3638
pyvenv.cfg
3739
var/
3840
local.cfg
39-
.python-version
4041

4142
# mxdev
4243
/instance/
@@ -47,8 +48,6 @@ local.cfg
4748
/venv/
4849
.installed.txt
4950

50-
# visual code editor
51-
*.code-workspace
5251

5352
##
5453
# Add extra configuration options in .meta.toml:
@@ -57,8 +56,3 @@ local.cfg
5756
# _your own configuration lines_
5857
# """
5958
##
60-
temp_auto_push.bat
61-
temp_interactive_push.bat
62-
.gitignore
63-
.vscode/
64-
public/

.meta.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Generated from:
2-
# https://github.com/plone/meta/tree/main/config/default
2+
# https://github.com/plone/meta/tree/2.x/src/plone/meta/default
33
# See the inline comments on how to expand/tweak this configuration file
44
[meta]
55
template = "default"
6-
commit-id = "721299ce"
6+
commit-id = "2.10.0"

.pre-commit-config.yaml

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,26 @@
11
# Generated from:
2-
# https://github.com/plone/meta/tree/main/config/default
2+
# https://github.com/plone/meta/tree/2.x/src/plone/meta/default
33
# See the inline comments on how to expand/tweak this configuration file
44
ci:
55
autofix_prs: false
66
autoupdate_schedule: monthly
77

88
repos:
99
- repo: https://github.com/asottile/pyupgrade
10-
rev: v3.15.2
10+
rev: v3.21.2
1111
hooks:
1212
- id: pyupgrade
13-
args: [--py38-plus]
13+
args: [--py39-plus]
1414
- repo: https://github.com/pycqa/isort
15-
rev: 5.13.2
15+
rev: 9.0.0a3
1616
hooks:
1717
- id: isort
18-
- repo: https://github.com/psf/black
19-
rev: 24.4.2
18+
- repo: https://github.com/psf/black-pre-commit-mirror
19+
rev: 26.5.1
2020
hooks:
2121
- id: black
2222
- repo: https://github.com/collective/zpretty
23-
rev: 3.1.0
23+
rev: 4.0.0
2424
hooks:
2525
- id: zpretty
2626

@@ -32,7 +32,7 @@ repos:
3232
# """
3333
##
3434
- repo: https://github.com/PyCQA/flake8
35-
rev: 7.0.0
35+
rev: 7.3.0
3636
hooks:
3737
- id: flake8
3838

@@ -44,7 +44,7 @@ repos:
4444
# """
4545
##
4646
- repo: https://github.com/codespell-project/codespell
47-
rev: v2.2.6
47+
rev: v2.4.2
4848
hooks:
4949
- id: codespell
5050
additional_dependencies:
@@ -58,20 +58,20 @@ repos:
5858
# """
5959
##
6060
- repo: https://github.com/mgedmin/check-manifest
61-
rev: "0.49"
61+
rev: "0.51"
6262
hooks:
6363
- id: check-manifest
6464
- repo: https://github.com/regebro/pyroma
65-
rev: "4.2"
65+
rev: "5.0.1"
6666
hooks:
6767
- id: pyroma
6868
- repo: https://github.com/mgedmin/check-python-versions
69-
rev: "0.22.0"
69+
rev: "0.24.2"
7070
hooks:
7171
- id: check-python-versions
72-
args: ['--only', 'setup.py,pyproject.toml']
72+
args: ['--only', 'setup.py,tox.ini']
7373
- repo: https://github.com/collective/i18ndude
74-
rev: "6.2.0"
74+
rev: "6.3.0"
7575
hooks:
7676
- id: i18ndude
7777

pyproject.toml

Lines changed: 43 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,46 @@
11
# Generated from:
2-
# https://github.com/plone/meta/tree/main/config/default
2+
# https://github.com/plone/meta/tree/2.x/src/plone/meta/default
33
# See the inline comments on how to expand/tweak this configuration file
44
[build-system]
5-
requires = ["setuptools>=68.2"]
5+
requires = ["setuptools>=68.2,<82", "wheel"]
6+
7+
8+
9+
[tool.towncrier]
10+
directory = "news/"
11+
filename = "CHANGES.rst"
12+
title_format = "{version} ({project_date})"
13+
underlines = ["-", ""]
14+
15+
[[tool.towncrier.type]]
16+
directory = "breaking"
17+
name = "Breaking changes:"
18+
showcontent = true
19+
20+
[[tool.towncrier.type]]
21+
directory = "feature"
22+
name = "New features:"
23+
showcontent = true
24+
25+
[[tool.towncrier.type]]
26+
directory = "bugfix"
27+
name = "Bug fixes:"
28+
showcontent = true
29+
30+
[[tool.towncrier.type]]
31+
directory = "internal"
32+
name = "Internal:"
33+
showcontent = true
34+
35+
[[tool.towncrier.type]]
36+
directory = "documentation"
37+
name = "Documentation:"
38+
showcontent = true
39+
40+
[[tool.towncrier.type]]
41+
directory = "tests"
42+
name = "Tests:"
43+
showcontent = true
644

745
##
846
# Add extra configuration options in .meta.toml:
@@ -24,7 +62,7 @@ profile = "plone"
2462
##
2563

2664
[tool.black]
27-
target-version = ["py38"]
65+
target-version = ["py39"]
2866

2967
##
3068
# Add extra configuration options in .meta.toml:
@@ -35,7 +73,7 @@ target-version = ["py38"]
3573
##
3674

3775
[tool.codespell]
38-
ignore-words-list = "discreet,"
76+
ignore-words-list = "discreet,assertin,thet,"
3977
skip = "*.po,"
4078
##
4179
# Add extra configuration options in .meta.toml:
@@ -83,17 +121,7 @@ Zope = [
83121
'Products.CMFCore', 'Products.CMFDynamicViewFTI',
84122
]
85123
python-dateutil = ['dateutil']
86-
'souper.plone' = ['souper', 'repoze.catalog']
87-
beautifulsoup4 = ['bs4']
88-
# extra packages
89-
ignore-packages = [
90-
# these are packages defined in extras_require
91-
'collective.honeypot', 'plone.formwidget.hcaptcha', 'plone.formwidget.recaptcha',
92-
'collective.volto.blocksfield', 'collective.z3cform.norobots',
93-
'plone.app.iterate', 'plone.app.upgrade',
94-
# XXX: This is a temporary fix for make the package usable with Plone 5.2 and 6.0
95-
'plone.base', 'Products.CMFPlone',
96-
]
124+
pytest-plone = ['pytest', 'zope.pytestlayer', 'plone.testing', 'plone.app.testing']
97125

98126
##
99127
# Add extra configuration options in .meta.toml:

setup.cfg

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,3 @@ ignore =
88
[isort]
99
profile = plone
1010

11-
[flake8]
12-
# black compatible flake8 rules:
13-
ignore =
14-
W503,
15-
C812,
16-
E501
17-
T001
18-
C813
19-
# E203, E266
20-
exclude = bootstrap.py,docs,*.egg.,omelette
21-
max-line-length = 88
22-
max-complexity = 18
23-
select = B,C,E,F,W,T4,B9
24-
25-
builtins = unicode,basestring

0 commit comments

Comments
 (0)