diff --git a/.github.cfg b/.github.cfg index 87db2cd3e..e8e7d426b 100644 --- a/.github.cfg +++ b/.github.cfg @@ -6,5 +6,5 @@ parts = code-analysis createcoverage download-cache = downloads -allow-picked-versions = false +allow-picked-versions = true auto-checkout = diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5186f090a..3d5c39f8a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -12,7 +12,9 @@ jobs: strategy: matrix: config: - - ["Py3.8-Plone5.2", "3.8"] + - ["Py3.8-Plone5.2", "3.8", "5.2"] + - ["Py3.8-Plone6.0", "3.8", "6.0"] + # - ["Py3.11-Plone6.0", "3.11", "6.0"] runs-on: ubuntu-latest name: ${{ matrix.config[0] }} steps: @@ -21,10 +23,10 @@ jobs: uses: actions/setup-python@v4 with: python-version: ${{ matrix.config[1] }} - - name: Install wkhtmltopdf + - name: Install build dependencies run: | sudo apt update - sudo apt install -y wkhtmltopdf + sudo apt install -y wkhtmltopdf libxml2-dev libxslt1-dev - name: Cache uses: actions/cache@v3 with: @@ -39,15 +41,17 @@ jobs: run: | sudo locale-gen en_US.UTF-8 nl_NL@euro python -m venv . + ln -s requirements-${{ matrix.config[2] }}.txt requirements.txt bin/pip install -r requirements.txt + ln -s versions-${{ matrix.config[2] }}.cfg versions.cfg bin/buildout -c .github.cfg - name: Pre commit uses: pre-commit/action@v2.0.0 - if: ${{ matrix.config[1] == '3.8' }} + if: ${{ matrix.config[1] == '3.11' }} - name: Code Analysis run: | bin/code-analysis - if: ${{ matrix.config[1] == '3.8' }} + if: ${{ matrix.config[1] == '3.11' }} - name: Test run: | bin/coverage run bin/test -s euphorie diff --git a/buildout.cfg b/buildout.cfg index 1f4c7e725..c2f508dee 100644 --- a/buildout.cfg +++ b/buildout.cfg @@ -2,7 +2,7 @@ extends = versions.cfg parts = instance develop = . -versions = versions +allow-unknown-extras = true show-picked-versions = true [instance] diff --git a/docs/changes.rst b/docs/changes.rst index a73e4217d..f8616b94f 100644 --- a/docs/changes.rst +++ b/docs/changes.rst @@ -7,6 +7,9 @@ Changelog - Fix obsolete import [ale-rt] +- Support Plone 6.0 + [ale-rt] + 15.1.1 (2023-12-13) ------------------- diff --git a/requirements.txt b/requirements-5.2.txt similarity index 100% rename from requirements.txt rename to requirements-5.2.txt diff --git a/requirements-6.0.txt b/requirements-6.0.txt new file mode 100644 index 000000000..12977a861 --- /dev/null +++ b/requirements-6.0.txt @@ -0,0 +1 @@ +-r https://dist.plone.org/release/6.0.9/requirements.txt diff --git a/setup.py b/setup.py index c1c9908ee..7a14a4f3b 100644 --- a/setup.py +++ b/setup.py @@ -14,9 +14,13 @@ "Environment :: Web Environment", "Framework :: Plone", "Framework :: Plone :: 5.2", + "Framework :: Plone :: 6.0", "License :: OSI Approved :: GNU General Public License (GPL)", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", "Topic :: Internet :: WWW/HTTP", "Topic :: Software Development :: Libraries :: Python Modules", ], @@ -46,8 +50,7 @@ "markdownify", "nltk", "path.py", - "plone.app.dexterity [relations]", - "plone.app.imagecropping < 3", + "plone.app.imagecropping", "plone.app.redirector", "plone.app.vocabularies", "plone.app.z3cform", diff --git a/src/euphorie/content/risk.py b/src/euphorie/content/risk.py index 9ad8d8099..437e33abc 100644 --- a/src/euphorie/content/risk.py +++ b/src/euphorie/content/risk.py @@ -24,7 +24,6 @@ from plone.autoform import directives from plone.dexterity.content import Container from plone.indexer import indexer -from plone.memoize.instance import memoize from plone.namedfile import field as filefield from plone.namedfile.interfaces import INamedBlobImageField from plone.supermodel import model @@ -660,7 +659,6 @@ def fixed_priority(self, value): self.default_priority = value @property - @memoize def _solutions(self): solutions = [] for item in self.objectValues(): diff --git a/versions.cfg b/versions-5.2.cfg similarity index 100% rename from versions.cfg rename to versions-5.2.cfg diff --git a/versions-6.0.cfg b/versions-6.0.cfg new file mode 100644 index 000000000..011279d74 --- /dev/null +++ b/versions-6.0.cfg @@ -0,0 +1,75 @@ +[buildout] +extends = https://dist.plone.org/release/6.0.9/versions.cfg + +[versions] +NuPlone = 2.2.1 + +# Version 3+ fails with: AttributeError: 'Cell' object has no attribute 'set_explicit_value' +openpyxl = 2.6.4 + +# automatically picked +alembic = 1.11.1 +anytree = 2.8.0 +argcomplete = 3.1.1 +asttokens = 2.2.1 +backcall = 0.2.0 +build = 0.10.0 +check-manifest = 0.49 +collective.recipe.supervisor = 1.0.0 +coverage = 7.2.7 +et-xmlfile = 1.1.0 +executing = 1.2.0 +ftw.upgrade = 3.3.1 +greenlet = 2.0.2 +htmllaundry = 2.2 +inflection = 0.5.1 +ipdb = 0.13.13 +ipython = 8.14.0 +iw.debug = 0.3 +jdcal = 1.4.1 +jedi = 0.18.2 +joblib = 1.2.0 +Mako = 1.2.4 +markdownify = 0.11.6 +matplotlib-inline = 0.1.6 +nltk = 3.8.1 +numpy = 1.19.5 +parso = 0.8.3 +path = 16.6.0 +path.py = 12.5.0 +perfmetrics = 3.3.0 +pexpect = 4.8.0 +pickleshare = 0.7.5 +plone.app.imagecropping = 3.0.0 +plone.recipe.zeoserver = 3.0.0 +plone.reload = 3.0.2 +Products.membrane = 6.0.0 +prompt-toolkit = 3.0.38 +psutil = 5.9.5 +psycopg2-binary = 2.9.6 +ptyprocess = 0.7.0 +pure-eval = 0.2.2 +py-bcrypt = 0.4 +pyproject-hooks = 1.0.0 +python-docx = 0.8.11 +repoze.formapi = 0.6.1 +scikit-learn = 1.2.2 +scipy = 1.10.1 +sh = 2.0.4 +slowlog = 0.9 +SQLAlchemy = 1.4.48 +stack-data = 0.6.2 +superlance = 2.0.0 +supervisor = 4.2.5 +tarjan = 0.2.4 +threadpoolctl = 3.1.0 +tomli = 2.0.1 +traitlets = 5.9.0 +ua-parser = 0.16.1 +user-agents = 2.2.0 +z3c.ptcompat = 2.3.0 +z3c.saconfig = 1.0 +z3c.schema = 1.2.0 +zope.mkzeoinstance = 5.1.1 +zope.sqlalchemy = 3.0 +ZopeUndo = 6.0