From 0a7a1566f705c25b86b1ae6f1e1a90b20fbd5af6 Mon Sep 17 00:00:00 2001 From: Brad Macdonald Date: Wed, 27 Mar 2024 10:46:30 -0700 Subject: [PATCH 1/7] prevents scheduled workflow from turning off --- .github/workflows/ci.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c3798e2..f407cab 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -48,6 +48,10 @@ jobs: name: python-distribution-files path: dist/ retention-days: 1 + - name: Keepalive Workflow + uses: gautamkrishnar/keepalive-workflow@1.1.0 + with: + time_elapsed: 44 test: needs: prepare From 2131c3e312efe0faa061a0a67f134542b7608080 Mon Sep 17 00:00:00 2001 From: Brad Macdonald Date: Wed, 27 Mar 2024 11:01:45 -0700 Subject: [PATCH 2/7] drop 3.8 support --- .github/workflows/ci.yml | 2 +- setup.cfg | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f407cab..daf5682 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -58,7 +58,7 @@ jobs: strategy: matrix: python: - - "3.8" + - "3.9" - "3.11" # newest Python that is stable platform: - ubuntu-latest diff --git a/setup.cfg b/setup.cfg index 7969a26..19b23da 100644 --- a/setup.cfg +++ b/setup.cfg @@ -41,7 +41,7 @@ package_dir = =src # Require a min/specific Python version (comma-separated conditions) -python_requires = >=3.8 +python_requires = >=3.9 # Add here dependencies of your project (line-separated), e.g. requests>=2.2,<3.0. # Version specifiers like >=2.2,<3.0 avoid problems due to API changes in From 9164904888a6274039bd0a52d706d38ce7facd19 Mon Sep 17 00:00:00 2001 From: Brad Macdonald Date: Mon, 1 Apr 2024 09:46:11 -0600 Subject: [PATCH 3/7] updates ci for correct python versioning --- .github/workflows/ci.yml | 13 +++++++++---- setup.cfg | 2 +- tox.ini | 9 +++++++-- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index daf5682..5a85ed7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,8 +32,10 @@ jobs: with: {python-version: "3.11"} - name: Run static analysis and format checkers run: pipx run pre-commit run --all-files --show-diff-on-failure + - name: Install tox-gh plugin + run: python -m pip install tox-gh>=1.2 - name: Build package distribution files - run: pipx run --spec 'tox~=3.0' tox -e clean,build + run: tox -e clean,build - name: Record the paths of wheel and source tarball distributions id: distribution-paths run: | @@ -58,7 +60,7 @@ jobs: strategy: matrix: python: - - "3.9" + - "3.8" # oldest Python that is supported - "3.11" # newest Python that is stable platform: - ubuntu-latest @@ -74,6 +76,10 @@ jobs: - name: Retrieve pre-built distribution files uses: actions/download-artifact@v3 with: {name: python-distribution-files, path: dist/} + - name: Install tox-gh plugin + run: python -m pip install tox-gh>=1.2 + - name: Setup test suite + run: tox -vv --notest - name: Run tests (without integration tests) if: matrix.platform != 'ubuntu-latest' || matrix.python != '3.11' env: @@ -87,8 +93,7 @@ jobs: env: SYNAPSE_AUTH_TOKEN: ${{ secrets.SYNAPSE_AUTH_TOKEN }} run: >- - pipx run --spec 'tox~=3.0' tox - --installpkg '${{ needs.prepare.outputs.wheel-path }}' + tox --installpkg '${{ needs.prepare.outputs.wheel-path }}' -- -rFEx --durations 10 --color yes - name: Upload coverage to Codecov uses: codecov/codecov-action@v3 diff --git a/setup.cfg b/setup.cfg index 19b23da..4654a0c 100644 --- a/setup.cfg +++ b/setup.cfg @@ -41,7 +41,7 @@ package_dir = =src # Require a min/specific Python version (comma-separated conditions) -python_requires = >=3.9 +python_requires = >=3.8, <3.12 # Add here dependencies of your project (line-separated), e.g. requests>=2.2,<3.0. # Version specifiers like >=2.2,<3.0 avoid problems due to API changes in diff --git a/tox.ini b/tox.ini index 9541722..74f72bc 100644 --- a/tox.ini +++ b/tox.ini @@ -3,10 +3,15 @@ # THIS SCRIPT IS SUPPOSED TO BE AN EXAMPLE. MODIFY IT ACCORDING TO YOUR NEEDS! [tox] -minversion = 3.24 -envlist = default +minversion = 4.2 isolated_build = True +[gh] +python = + 3.8: py38 + 3.9: py39 + 3.10: py310 + 3.11: py311 [testenv] description = Invoke pytest to run automated tests From 7d237e01c49b46eef10a20cb3c1811d9989bd3f0 Mon Sep 17 00:00:00 2001 From: Brad Macdonald Date: Mon, 1 Apr 2024 09:48:11 -0600 Subject: [PATCH 4/7] trailing whitespace --- tox.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index 74f72bc..5a9efe3 100644 --- a/tox.ini +++ b/tox.ini @@ -7,7 +7,7 @@ minversion = 4.2 isolated_build = True [gh] -python = +python = 3.8: py38 3.9: py39 3.10: py310 From 5e07ab292141115c44da88d68113bf4545815516 Mon Sep 17 00:00:00 2001 From: Brad Macdonald Date: Mon, 1 Apr 2024 10:29:08 -0600 Subject: [PATCH 5/7] updates ci for correct environment configuration --- .github/workflows/ci.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5a85ed7..0ec49bb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -67,14 +67,16 @@ jobs: - macos-latest # TODO: Debug the Windows issues # - windows-latest + env: + OS: ${{ matrix.platform }} + PYTHON: ${{ matrix.python }} runs-on: ${{ matrix.platform }} steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: ${{ matrix.python }} - - name: Retrieve pre-built distribution files - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v3 with: {name: python-distribution-files, path: dist/} - name: Install tox-gh plugin run: python -m pip install tox-gh>=1.2 @@ -85,8 +87,7 @@ jobs: env: SYNAPSE_AUTH_TOKEN: ${{ secrets.SYNAPSE_AUTH_TOKEN }} run: >- - pipx run --spec 'tox~=3.0' tox - --installpkg '${{ needs.prepare.outputs.wheel-path }}' + tox --installpkg '${{ needs.prepare.outputs.wheel-path }}' -- -rFEx --durations 10 --color yes -m "not integration" - name: Run tests (with integration tests) if: matrix.platform == 'ubuntu-latest' && matrix.python == '3.11' From 44c15c67cc66fc522b57942082f8d3125ae50cee Mon Sep 17 00:00:00 2001 From: Brad Macdonald Date: Mon, 1 Apr 2024 10:30:47 -0600 Subject: [PATCH 6/7] pre-commit --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0ec49bb..272349c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -69,7 +69,7 @@ jobs: # - windows-latest env: OS: ${{ matrix.platform }} - PYTHON: ${{ matrix.python }} + PYTHON: ${{ matrix.python }} runs-on: ${{ matrix.platform }} steps: - uses: actions/checkout@v3 From 07f0ff2ce12be555fc798e8049b9cb1167f9bb2b Mon Sep 17 00:00:00 2001 From: Brad Macdonald Date: Mon, 1 Apr 2024 10:38:51 -0600 Subject: [PATCH 7/7] removes 3.8 support --- .github/workflows/ci.yml | 2 +- .readthedocs.yml | 2 +- setup.cfg | 2 +- tox.ini | 1 - 4 files changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 272349c..77d9c01 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -60,7 +60,7 @@ jobs: strategy: matrix: python: - - "3.8" # oldest Python that is supported + - "3.9" # oldest Python that is supported - "3.11" # newest Python that is stable platform: - ubuntu-latest diff --git a/.readthedocs.yml b/.readthedocs.yml index 21b0814..c8571ff 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -17,7 +17,7 @@ formats: - pdf python: - version: 3.8 + version: 3.9 install: - requirements: docs/requirements.txt - {path: ., method: pip} diff --git a/setup.cfg b/setup.cfg index 4654a0c..06077f4 100644 --- a/setup.cfg +++ b/setup.cfg @@ -41,7 +41,7 @@ package_dir = =src # Require a min/specific Python version (comma-separated conditions) -python_requires = >=3.8, <3.12 +python_requires = >=3.9, <3.12 # Add here dependencies of your project (line-separated), e.g. requests>=2.2,<3.0. # Version specifiers like >=2.2,<3.0 avoid problems due to API changes in diff --git a/tox.ini b/tox.ini index 5a9efe3..94a6ff0 100644 --- a/tox.ini +++ b/tox.ini @@ -8,7 +8,6 @@ isolated_build = True [gh] python = - 3.8: py38 3.9: py39 3.10: py310 3.11: py311