From 01b1284892333d45cb7ae95f91fb4ecfd7af78c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Grzegorz=20=C5=9Aliwi=C5=84ski?= Date: Thu, 12 Dec 2024 15:18:55 +0100 Subject: [PATCH 1/2] Support Python 3.13, drop support for Python 3.8 --- .github/workflows/dockerised-postgres.yml | 2 +- .github/workflows/pr-check.yml | 4 ++-- .github/workflows/single-postgres.yml | 2 +- .github/workflows/tests.yml | 22 +++++++++++----------- newsfragments/+98311d70.feature.rst | 1 + newsfragments/+fb6c538e.break.rst | 1 + pyproject.toml | 5 ++--- 7 files changed, 19 insertions(+), 18 deletions(-) create mode 100644 newsfragments/+98311d70.feature.rst create mode 100644 newsfragments/+fb6c538e.break.rst diff --git a/.github/workflows/dockerised-postgres.yml b/.github/workflows/dockerised-postgres.yml index dfa5d5dc..0d82e736 100644 --- a/.github/workflows/dockerised-postgres.yml +++ b/.github/workflows/dockerised-postgres.yml @@ -5,7 +5,7 @@ on: inputs: python-versions: description: 'Supported python versions' - default: '["3.8", "3.9", "3.10", "3.11", "3.12"]' + default: '["3.9", "3.10", "3.11", "3.12", "3.13"]' required: false type: string postgresql: diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml index bbc207b3..b10edc0c 100644 --- a/.github/workflows/pr-check.yml +++ b/.github/workflows/pr-check.yml @@ -12,7 +12,7 @@ jobs: uses: actions/checkout@v4 - uses: fizyk/actions-reuse/.github/actions/pipenv@v2.4.8 with: - python-version: "3.12" + python-version: "3.13" command: tbump --dry-run --only-patch $(pipenv run tbump current-version)"-x" towncrier: runs-on: ubuntu-latest @@ -20,6 +20,6 @@ jobs: steps: - uses: fizyk/actions-reuse/.github/actions/pipenv@v2.4.8 with: - python-version: "3.12" + python-version: "3.13" command: towncrier check --compare-with origin/main fetch-depth: 0 \ No newline at end of file diff --git a/.github/workflows/single-postgres.yml b/.github/workflows/single-postgres.yml index 87138f3e..35e60e8d 100644 --- a/.github/workflows/single-postgres.yml +++ b/.github/workflows/single-postgres.yml @@ -5,7 +5,7 @@ on: inputs: python-versions: description: 'Supported python versions' - default: '["3.8", "3.9", "3.10", "3.11", "3.12"]' + default: '["3.9", "3.10", "3.11", "3.12", "3.13"]' required: false type: string postgresql: diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 7a5d4085..9dc7e939 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -16,46 +16,46 @@ jobs: uses: ./.github/workflows/single-postgres.yml with: postgresql: 15 - python-versions: '["3.9", "3.10", "3.11", "3.12"]' + python-versions: '["3.10", "3.11", "3.12", "3.13"]' postgresql_14: needs: [postgresql_15] uses: ./.github/workflows/single-postgres.yml with: postgresql: 14 - python-versions: '["3.10", "3.11", "3.12"]' + python-versions: '["3.11", "3.12", "3.13"]' postgresql_13: needs: [postgresql_14] uses: ./.github/workflows/single-postgres.yml with: postgresql: 13 - python-versions: '["3.12"]' + python-versions: '["3.13"]' postgresql_12: needs: [postgresql_13] uses: ./.github/workflows/single-postgres.yml with: postgresql: 12 - python-versions: '["3.12"]' + python-versions: '["3.13"]' macos_postgres_16: needs: [postgresql_16] uses: ./.github/workflows/single-postgres.yml with: postgresql: 16 os: macos-latest - python-versions: '["3.10", "3.11", "3.12"]' + python-versions: '["3.11", "3.12", "3.13"]' macos_postgres_15: needs: [postgresql_15, macos_postgres_16] uses: ./.github/workflows/single-postgres.yml with: postgresql: 15 os: macos-latest - python-versions: '["3.10", "3.11", "3.12"]' + python-versions: '["3.11", "3.12", "3.13"]' macos_postgres_14: needs: [postgresql_14, macos_postgres_15] uses: ./.github/workflows/single-postgres.yml with: postgresql: 14 os: macos-latest - python-versions: '["3.11", "3.12"]' + python-versions: '["3.12", "3.13"]' docker_postgresql_16: needs: [postgresql_16] uses: ./.github/workflows/dockerised-postgres.yml @@ -66,22 +66,22 @@ jobs: uses: ./.github/workflows/dockerised-postgres.yml with: postgresql: 15 - python-versions: '["3.9", "3.10", "3.11", "3.12"]' + python-versions: '["3.10", "3.11", "3.12", "3.13"]' docker_postgresql_14: needs: [postgresql_14, docker_postgresql_15] uses: ./.github/workflows/dockerised-postgres.yml with: postgresql: 14 - python-versions: '["3.10", "3.11", "3.12"]' + python-versions: '["3.11", "3.12", "3.13"]' docker_postgresql_13: needs: [postgresql_13, docker_postgresql_14] uses: ./.github/workflows/dockerised-postgres.yml with: postgresql: 13 - python-versions: '["3.11", "3.12"]' + python-versions: '["3.12", "3.13"]' docker_postgresql_12: needs: [postgresql_12, docker_postgresql_13] uses: ./.github/workflows/dockerised-postgres.yml with: postgresql: 12 - python-versions: '["3.12"]' + python-versions: '["3.13"]' diff --git a/newsfragments/+98311d70.feature.rst b/newsfragments/+98311d70.feature.rst new file mode 100644 index 00000000..6bcc5cb7 --- /dev/null +++ b/newsfragments/+98311d70.feature.rst @@ -0,0 +1 @@ +Mark Python 3.13 as supported. diff --git a/newsfragments/+fb6c538e.break.rst b/newsfragments/+fb6c538e.break.rst new file mode 100644 index 00000000..653396f8 --- /dev/null +++ b/newsfragments/+fb6c538e.break.rst @@ -0,0 +1 @@ +Stop supporting Python 3.8 as it already reached EOL diff --git a/pyproject.toml b/pyproject.toml index 354f534c..5003a62f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -17,11 +17,11 @@ classifiers = [ "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3 :: Only", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Software Development :: Testing", @@ -34,7 +34,7 @@ dependencies = [ "setuptools", "psycopg >= 3.0.0" ] -requires-python = ">= 3.8" +requires-python = ">= 3.9" [project.urls] "Source" = "https://github.com/ClearcodeHQ/pytest-postgresql" @@ -69,7 +69,6 @@ target-version = ['py39'] include = '.*\.pyi?$' [tool.ruff] -# Decrease the maximum line length to 79 characters. line-length = 100 select = [ "E", # pycodestyle From 1a5919e07bc267fc9ab419d31a3af75241e810d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Grzegorz=20=C5=9Aliwi=C5=84ski?= Date: Thu, 12 Dec 2024 16:58:17 +0100 Subject: [PATCH 2/2] Add PostgreSQL 17 and drop 12 from CI --- .github/workflows/tests.yml | 48 ++++++++++++++++---------------- newsfragments/+08bdc5f7.misc.rst | 1 + 2 files changed, 25 insertions(+), 24 deletions(-) create mode 100644 newsfragments/+08bdc5f7.misc.rst diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 9dc7e939..3fc06693 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -7,36 +7,43 @@ on: branches: [ main ] jobs: + postgresql_17: + uses: ./.github/workflows/single-postgres.yml + with: + postgresql: 17 postgresql_16: + needs: [postgresql_17] uses: ./.github/workflows/single-postgres.yml with: postgresql: 16 + python-versions: '["3.10", "3.11", "3.12", "3.13"]' postgresql_15: needs: [postgresql_16] uses: ./.github/workflows/single-postgres.yml with: postgresql: 15 - python-versions: '["3.10", "3.11", "3.12", "3.13"]' + python-versions: '["3.11", "3.12", "3.13"]' postgresql_14: needs: [postgresql_15] uses: ./.github/workflows/single-postgres.yml with: postgresql: 14 - python-versions: '["3.11", "3.12", "3.13"]' + python-versions: '["3.13"]' postgresql_13: needs: [postgresql_14] uses: ./.github/workflows/single-postgres.yml with: postgresql: 13 python-versions: '["3.13"]' - postgresql_12: - needs: [postgresql_13] + macos_postgres_17: + needs: [postgresql_17] uses: ./.github/workflows/single-postgres.yml with: - postgresql: 12 - python-versions: '["3.13"]' + postgresql: 17 + os: macos-latest + python-versions: '["3.11", "3.12", "3.13"]' macos_postgres_16: - needs: [postgresql_16] + needs: [postgresql_16, macos_postgres_17] uses: ./.github/workflows/single-postgres.yml with: postgresql: 16 @@ -48,40 +55,33 @@ jobs: with: postgresql: 15 os: macos-latest - python-versions: '["3.11", "3.12", "3.13"]' - macos_postgres_14: - needs: [postgresql_14, macos_postgres_15] - uses: ./.github/workflows/single-postgres.yml - with: - postgresql: 14 - os: macos-latest python-versions: '["3.12", "3.13"]' + docker_postgresql_17: + needs: [postgresql_17] + uses: ./.github/workflows/dockerised-postgres.yml + with: + postgresql: 17 docker_postgresql_16: - needs: [postgresql_16] + needs: [postgresql_16, docker_postgresql_17] uses: ./.github/workflows/dockerised-postgres.yml with: postgresql: 16 + python-versions: '["3.10", "3.11", "3.12", "3.13"]' docker_postgresql_15: - needs: [postgresql_15, docker_postgresql_16] + needs: [postgresql_15, docker_postgresql_17] uses: ./.github/workflows/dockerised-postgres.yml with: postgresql: 15 - python-versions: '["3.10", "3.11", "3.12", "3.13"]' + python-versions: '["3.11", "3.12", "3.13"]' docker_postgresql_14: needs: [postgresql_14, docker_postgresql_15] uses: ./.github/workflows/dockerised-postgres.yml with: postgresql: 14 - python-versions: '["3.11", "3.12", "3.13"]' + python-versions: '["3.12", "3.13"]' docker_postgresql_13: needs: [postgresql_13, docker_postgresql_14] uses: ./.github/workflows/dockerised-postgres.yml with: postgresql: 13 - python-versions: '["3.12", "3.13"]' - docker_postgresql_12: - needs: [postgresql_12, docker_postgresql_13] - uses: ./.github/workflows/dockerised-postgres.yml - with: - postgresql: 12 python-versions: '["3.13"]' diff --git a/newsfragments/+08bdc5f7.misc.rst b/newsfragments/+08bdc5f7.misc.rst new file mode 100644 index 00000000..1c5732ae --- /dev/null +++ b/newsfragments/+08bdc5f7.misc.rst @@ -0,0 +1 @@ +Add PostgreSQL 17 to CI and drop 12