Skip to content

CI: pin SQLAlchemy to an exact version - #19

Merged
lemenkov merged 1 commit into
seerdb:masterfrom
lemenkov:ci-pin-sqlalchemy
Sep 24, 2026
Merged

lemenkov merged 1 commit into
seerdb:masterfrom
lemenkov:ci-pin-sqlalchemy

Conversation

@lemenkov

Copy link
Copy Markdown
Member

Every workflow installed SQLAlchemy through the dependency floor (SQLAlchemy>=2.0), so each run took the newest release. SQLAlchemy 2.1.0 came out on 2026-09-24 and changed what the compliance suite checks, with no change here.

Change

Each workflow sets the version once, SQLALCHEMY: "2.0.54", and passes it as an exact requirement to every install:

  • compliance.yml, in both the checkout and the PyPI mode;
  • tests.yml.

released.yml and releases.yml only call compliance.yml, so they are covered. It is never a range or the newest release; a newer SQLAlchemy becomes a deliberate change of that line.

The driver repository pins the same version for its own runs of this suite (seerdb/seerdb#1199). Moving to 2.1 is tracked on both sides under sqlalchemy-2.1 and seerdb/seerdb#1203. This repository's part of it, a Boolean fix, follows as its own PR.

The user-facing dependency (SQLAlchemy>=2.0) is left as it is: which SQLAlchemy a user may install is a release decision, separate from what CI checks.

Tests

CI configuration only; the workflows run on this PR because it touches them. reuse lint passes.

🤖 Generated with Claude Code

Every workflow installed SQLAlchemy through the dependency floor
(`SQLAlchemy>=2.0`), so each run took the newest release. SQLAlchemy
2.1.0 came out on 2026-09-24 and changed what the compliance suite
checks, with no change here.

Each workflow now sets the version once, SQLALCHEMY: "2.0.54", and
passes it as an exact requirement to every install: the checkout and
the PyPI modes of compliance.yml, and the unit tests. A newer
SQLAlchemy becomes a deliberate change of that line. The driver
repository pins the same version for its own runs of this suite
(seerdb/seerdb#1199).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
@lemenkov
lemenkov merged commit 25060c8 into seerdb:master Sep 24, 2026
15 checks passed
lemenkov added a commit that referenced this pull request Sep 24, 2026
Changes since 0.2.1:

- A Boolean column's 1/0 is converted to a bool by the dialect itself
  (#20). SQLAlchemy 2.1 stopped doing it in the generic Oracle
  dialect, so before 23ai a Boolean came back as 1 or 0.
- CI pins SQLAlchemy to one exact version, 2.0.54 (#19).

The driver floor stays seerdb>=2.5.0: nothing here depends on an
unreleased driver fix.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant