diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 02df32d7..1f86951d 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -15,7 +15,8 @@ jobs: - '5.0' - '5.1' - '5.2' - python-version: ['2.7', '3.6', '3.7', '3.8'] + - '6.0' + python-version: ['2.7', '3.6', '3.7', '3.8', '3.9'] layer: - Portlet_AjaxDisabled - Portlet_AjaxEnabled @@ -34,12 +35,24 @@ jobs: python-version: 3.7 - plone-version: 5.0 python-version: 3.8 + - plone-version: 5.0 + python-version: 3.9 - plone-version: 5.1 python-version: 3.6 - plone-version: 5.1 python-version: 3.7 - plone-version: 5.1 python-version: 3.8 + - plone-version: 5.1 + python-version: 3.9 + # 5.2 does not run on 3.9 + - plone-version: 5.2 + python-version: 3.9 + # 6.0 does not run on 2.7/3.6 + - plone-version: 6.0 + python-version: 2.7 + - plone-version: 6.0 + python-version: 3.6 # Save some time by not running all the robot tests - python-version: 3.6 layer: Portlet_AjaxDisabled @@ -56,7 +69,9 @@ jobs: coverage: coverage - plone-version: 5.2 coverage: no_coverage - + - plone-version: 6.0 + coverage: coverage + steps: - uses: actions/checkout@v2 - name: Set up Python @@ -94,10 +109,17 @@ jobs: echo "[buildout]" > $HOME/.buildout/default.cfg echo "download-cache = $HOME/buildout-cache/downloads" >> $HOME/.buildout/default.cfg echo "eggs-directory = $HOME/buildout-cache/eggs" >> $HOME/.buildout/default.cfg - - name: bootstrap buildout + - name: bootstrap buildout (old-school) + if: ${{ matrix.python-version == '2.7' }} run: | ./bootstrap.sh test-${{ matrix.plone-version }}.x.cfg ls -al + - name: bootstrap buildout (new-way) + if: ${{ matrix.python-version != '2.7' }} + run: | + python -m venv . + bin/pip install -r requirements-${{ matrix.plone-version }}.x.txt + ls -al - name: buildout run: | bin/buildout -t 10 -Nc test-${{ matrix.plone-version }}.x.cfg @@ -110,12 +132,12 @@ jobs: chromedriver --url-base=/wd/hub & sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & # optional sleep 3 - bin/test --all --layer ${{ matrix.layer }} --list-tests + bin/test --all --layer ${{ matrix.layer }} --list-tests bin/test --all --layer ${{ matrix.layer }} - name: test unit if: ${{ matrix.coverage != 'coverage' && matrix.layer == 'unit' }} run: | - bin/test --unit --list-tests + bin/test --unit --list-tests bin/test --unit - name: createcoverage if: ${{ matrix.coverage == 'coverage' && matrix.layer != 'unit' }} @@ -124,13 +146,13 @@ jobs: chromedriver --url-base=/wd/hub & sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & # optional sleep 3 - bin/test --all --layer ${{ matrix.layer }} --list-tests + bin/test --all --layer ${{ matrix.layer }} --list-tests bin/createcoverage -t '--all --layer ${{ matrix.layer }}' bin/coverage json -i - name: createcoverage if: ${{ matrix.coverage == 'coverage' && matrix.layer == 'unit' }} run: | - bin/test --unit --list-tests + bin/test --unit --list-tests bin/createcoverage -t '--unit' bin/coverage json -i - name: Coveralls @@ -141,11 +163,11 @@ jobs: flag-name: ${{ matrix.plone-version }}-${{ matrix.python-version }}-${{ matrix.layer }} - name: code-analysis if: always() - run: echo "${{ matrix.plone-version }}" | grep 5.1 || bin/code-analysis + run: echo "${{ matrix.plone-version }}" | grep 5.2 || bin/code-analysis - name: black - if: ${{ matrix.python-version == '3.8' }} + if: ${{ matrix.python-version == '3.9' }} run: | - pip install black + pip install "black==21.12b0" black --check src - name: Artifact Robot Test Report if: failure() diff --git a/CHANGES.rst b/CHANGES.rst index 1494dedc..6168ce0b 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -6,12 +6,15 @@ Changelog Breaking Change: -- Add idx parameter to display_modifier call, so that we can use the index name to resolve the correct translated taxonomy titles in collective.taxonomy. +- Add idx parameter to display_modifier call, so that we can use the index name to resolve the correct translated taxonomy titles in collective.taxonomy. This means that the display_modifier method in the groupby_modifier adapters needs to expect this parameter too! [MrTango] Features: +- Support and Test Plone 6. + [jensens] + - Add a module global COLLECTIONISH_TARGETS to c.c.tiles to register other tiles with collections than plone.app.standardtiles.contentlisting. [jensens] diff --git a/requirements-5.2.x.txt b/requirements-5.2.x.txt new file mode 100644 index 00000000..6fbe573d --- /dev/null +++ b/requirements-5.2.x.txt @@ -0,0 +1 @@ +-r https://dist.plone.org/release/5.2-latest/requirements.txt \ No newline at end of file diff --git a/requirements-6.0.x.txt b/requirements-6.0.x.txt new file mode 100644 index 00000000..882d130f --- /dev/null +++ b/requirements-6.0.x.txt @@ -0,0 +1 @@ +-r https://dist.plone.org/release/6.0-latest/requirements.txt \ No newline at end of file diff --git a/setup.py b/setup.py index 0bf3687c..f1d258a1 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ import os -version = "3.6.dev0" +version = "4.0.dev0" def read(*rnames): @@ -26,11 +26,14 @@ def read(*rnames): "Framework :: Plone :: 5.0", "Framework :: Plone :: 5.1", "Framework :: Plone :: 5.2", + "Framework :: Plone :: 6.0", "Framework :: Plone :: Addon", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", "Topic :: Software Development :: Libraries :: Python Modules", ], keywords="plone collection filter faceted tagcloud tags", diff --git a/test-5.0.x.cfg b/test-5.0.x.cfg index 6d5ea05d..85cf5dbc 100644 --- a/test-5.0.x.cfg +++ b/test-5.0.x.cfg @@ -28,3 +28,5 @@ plone.tiles = 2.0.0 plone.jsonserializer = 0.9.6 plone.formwidget.geolocation = < 2.2.2 # Introduced a dep on CMFPlone 5.2 + +six = 1.16.0 \ No newline at end of file diff --git a/test-5.1.x.cfg b/test-5.1.x.cfg index 197a209d..fd6394f4 100644 --- a/test-5.1.x.cfg +++ b/test-5.1.x.cfg @@ -21,3 +21,4 @@ configparser = 3.8.1 plone.formwidget.geolocation = < 2.2.2 # Introduced a dep on CMFPlone 5.2 +six = 1.16.0 \ No newline at end of file diff --git a/test-6.0.x.cfg b/test-6.0.x.cfg new file mode 100644 index 00000000..f75cd598 --- /dev/null +++ b/test-6.0.x.cfg @@ -0,0 +1,19 @@ +[buildout] +extends = + https://raw.githubusercontent.com/collective/buildout.plonetest/master/test-6.0.x.cfg + https://raw.githubusercontent.com/collective/buildout.plonetest/master/qa.cfg + base.cfg + +parts += + test + createcoverage + +parts -= + code-analysis + +package-name = collective.collectionfilter +package-extras = [test] +test-eggs = + +[versions:python3] +coverage = >=3.7