Repository navigation
Sync plugins/uv.lock with the SQLAlchemy 2.1 range from pyproject.toml - #1257
Merged
Merged
Conversation
The root `pyproject.toml` server extra moved to `sqlalchemy[asyncio]>=2.0.51,!=2.1.0` in #1250, but `plugins/uv.lock` kept the old `<2.1` specifier, so `uv lock --check` failed inside `plugins/`. Regenerate the lock and move the resolved `sqlalchemy` from 2.0.51 to 2.1.1, the version the root `uv.lock` already resolves, so plugin tests run against the same SQLAlchemy as the core tests.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this changes
plugins/uv.lockis regenerated so it agrees with the rootpyproject.tomlagain. Only thesqlalchemyentry changes.kitarupackage'srequires-distline for the server extra now readssqlalchemy[asyncio]>=2.0.51,!=2.1.0(it still said>=2.0.51,<2.1).sqlalchemymoves from 2.0.51 to 2.1.1, the same version the rootuv.lockresolves.Why
#1250 widened the SQLAlchemy range in the root
pyproject.tomland updated the rootuv.lock, butplugins/uv.lockwas not regenerated. Two things followed:uv lock --checkfails insideplugins/.uv sync --project plugins --frozen --all-packages, and--frozeninstalls whatever the lock file says without checking it againstpyproject.toml.Reviewer Notes
This took two commands, not one, and the second is the part worth checking.
Plain
uv lockonly rewrote the stale specifier line. It left the resolved version at 2.0.51, because 2.0.51 still satisfies the new range and uv keeps an existing pin whenever it is still allowed. That alone makesuv lock --checkpass but leaves plugin CI on the old SQLAlchemy.To close the gap I ran
uv lock --project plugins --upgrade-package 'sqlalchemy==2.1.1'. I pinned 2.1.1 on purpose: an unpinned upgrade picks 2.1.2, which would put plugins one patch ahead of the version #1250 validated for core. No other package moved (155 packages before and after).One line in the diff that looks odd but is expected: the
greenletdependency with the longplatform_machinemarker disappears from thesqlalchemyentry. SQLAlchemy 2.1 no longer installsgreenletby default. Kitaru asks forsqlalchemy[asyncio], and that extra still pullsgreenletin, so it remains in the lock and in the installed environment (verified:greenlet3.5.4 imports next tosqlalchemy2.1.1).If this is wrong, the failure would show up as plugin tests that touch the server's database code breaking under 2.1.
Reproduction
On
develop:This fails with
The lockfile at uv.lock needs to be updated. On this branch the same command passes.To see the version alignment:
grep -A1 '^name = "sqlalchemy"' uv.lock plugins/uv.lockBoth files should print
version = "2.1.1".To run the plugin tests against the new resolution:
Expect
2103 passed, 2 skipped.Local checks run
just checkpasses. Plugin tests pass (2103 passed, 2 skipped).just test: 4781 passed; the only failures were 6 tests undertests/typescript/, which fail in setup atpnpm --filter @zenml-io/kitaru buildbecause my worktree has no JavaScript install. They do not exercise this change.No changelog fragment: this is not user-facing.
Not in this PR
Nothing in CI runs
uv lock --checkforplugins/, so the same drift can happen again the next time a root dependency range changes. #1258 adds that check and is stacked on this PR.