From 1e066713f2d0be7f684da23fc9bfdb6e8fe7a8d0 Mon Sep 17 00:00:00 2001 From: Will Eaton Date: Thu, 12 Nov 2026 11:18:13 -0500 Subject: [PATCH 1/2] feat: add Python 3.15 wheels and release-please automation release-please keeps a release PR open on main; merging it tags and publishes from the same build-wheels run. Replaces the stale bumpversion config. Pin the test job to ubuntu-24.04, since setup-python has no 3.9 build for 26.04. --- .bumpversion.cfg | 10 ---------- .github/workflows/build.yaml | 21 +++++++++++++++++++-- .github/workflows/ci.yml | 2 +- .release-please-manifest.json | 3 +++ release-please-config.json | 12 ++++++++++++ 5 files changed, 35 insertions(+), 13 deletions(-) delete mode 100644 .bumpversion.cfg create mode 100644 .release-please-manifest.json create mode 100644 release-please-config.json diff --git a/.bumpversion.cfg b/.bumpversion.cfg deleted file mode 100644 index 6c6451b..0000000 --- a/.bumpversion.cfg +++ /dev/null @@ -1,10 +0,0 @@ -[bumpversion] -current_version = 0.1.54 -commit = True -tag = True - -[bumpversion:file:setup.py] - -[bumpversion:file:pyproject.toml] - -[bumpversion:file:Cargo.toml] diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 35afe60..4f682a1 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -170,10 +170,27 @@ jobs: path: wheels/ retention-days: 7 + release-please: + runs-on: ubuntu-latest + if: github.event_name == 'push' && github.ref == 'refs/heads/main' + permissions: + contents: write + pull-requests: write + outputs: + release_created: ${{ steps.release.outputs.release_created }} + steps: + - uses: googleapis/release-please-action@45996ed1f6d02564a971a2fa1b5860e934307cf7 # v5.0.0 + id: release + publish-pypi: - needs: [collect-wheels] + needs: [collect-wheels, release-please] runs-on: ubuntu-latest - if: startsWith(github.ref, 'refs/tags/v') + if: >- + ${{ + !cancelled() + && needs.collect-wheels.result == 'success' + && (startsWith(github.ref, 'refs/tags/v') || needs.release-please.outputs.release_created == 'true') + }} environment: name: pypi url: https://pypi.org/p/sqloxide diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 614a0ab..b6c72ca 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,7 +34,7 @@ jobs: run: cargo test test: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 permissions: contents: read strategy: diff --git a/.release-please-manifest.json b/.release-please-manifest.json new file mode 100644 index 0000000..2ad97f6 --- /dev/null +++ b/.release-please-manifest.json @@ -0,0 +1,3 @@ +{ + ".": "0.61.1" +} diff --git a/release-please-config.json b/release-please-config.json new file mode 100644 index 0000000..609e5a9 --- /dev/null +++ b/release-please-config.json @@ -0,0 +1,12 @@ +{ + "$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json", + "packages": { + ".": { + "release-type": "rust", + "package-name": "sqloxide", + "include-component-in-tag": false, + "bump-minor-pre-major": true, + "bump-patch-for-minor-pre-major": true + } + } +} From a31cebb25103da5ffcd7c7365135fb588e8285b9 Mon Sep 17 00:00:00 2001 From: Will Eaton Date: Thu, 12 Nov 2026 11:29:28 -0500 Subject: [PATCH 2/2] ci: pin linux wheel builds to ubuntu-24.04 On ubuntu-26.04 the i686 manylinux2014 container cannot resolve vault.centos.org, so the libatomic install fails. It passed on 24.04. --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 4f682a1..4d0b39f 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -13,7 +13,7 @@ permissions: {} jobs: linux-wheels: - runs-on: ${{ matrix.target == 'aarch64' && 'ubuntu-24.04-arm' || 'ubuntu-latest' }} + runs-on: ${{ matrix.target == 'aarch64' && 'ubuntu-24.04-arm' || 'ubuntu-24.04' }} permissions: contents: read strategy: