Update @probitas/client-sql-sqlite to 0.5.1 - #110
Merged
Merged
Conversation
…dency age gate Deno refuses to resolve any version published within the last 24 hours, which is a supply-chain guard aimed at third-party code. It also applies to our own @probitas/* packages, so a release cut here cannot be adopted until the next day even when the fix is the reason the release was cut. Excluding the @probitas scope keeps the guard where it earns its keep — every third-party dependency — while letting first-party releases be picked up as soon as they are published. This is the use the object form is documented for. The age is spelled out as P1D rather than left implicit so that changing the policy later is a visible edit rather than a silent shift in Deno's default. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E6iErRVYiy7LzNGLT5Vzh1
There was a problem hiding this comment.
🟢 Approval recommended
The config change is correctly scoped to jsr:@probitas/*, and the dependency/lockfile updates are consistent with the stated intent and appear internally coherent.
Pull request overview
This PR updates the Deno dependency resolution policy to allow same-day adoption of first-party @probitas JSR releases, and bumps @probitas/client-sql-sqlite to 0.5.1 to avoid loading SQLite’s FFI at import time.
Changes:
- Configure
minimumDependencyAgeto keep the 24h age gate for third-party deps while excludingjsr:@probitas/*. - Update
@probitas/client-sql-sqlitefrom^0.5.0to^0.5.1. - Regenerate
deno.lockto reflect the new resolution (including updated JSR and npm transitive versions).
File summaries
| File | Description |
|---|---|
| deno.json | Adds minimumDependencyAge exclusion for first-party @probitas packages and bumps the SQLite client import version. |
| deno.lock | Updates resolved versions/integrities across the graph, including @probitas/client-sql-sqlite@0.5.1 and transitive dependency consolidation. |
Review details
- Files reviewed: 1/2 changed files
- Comments generated: 0
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
0.5.1 loads @db/sqlite on first use instead of at import. Until now, importing @probitas/probitas at all paid for the SQLite FFI, because the root module re-exports the SQLite client and @db/sqlite dlopens as it evaluates. A library that failed to load therefore killed scenarios that never touch SQLite, which is what took down every scenario subprocess when the nixpkgs pin moved. DENO_SQLITE_PATH still points at the nixpkgs library and should stay: it is what keeps SQLite working for scenarios that do use it. This commit is what stops everyone else from paying for it, including outside nix. The lockfile diff is far wider than one dependency. Changing any constraint in deno.json makes Deno re-resolve the whole graph to the newest satisfying versions rather than updating the entry that changed, so 25 unrelated packages move with it — @aws-sdk/client-sqs 3.965.0 to 3.1118.0 among them, which is also why the npm tree shrinks from 130 packages to 77. There is no route that avoids this: `deno outdated --update` on a single package behaves the same, and it is unrelated to the age policy — bumping @std/cli alone reproduces it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E6iErRVYiy7LzNGLT5Vzh1
lambdalisue
force-pushed
the
deps/sqlite-0.5.1
branch
from
September 7, 2026 15:01
c536142 to
1d6b4ee
Compare
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.
Summary
@probitasscope from Deno's minimum dependency age gate, so first-party releases can be adopted the day they are published.@probitas/client-sql-sqliteto0.5.1, which loads@db/sqliteon first use instead of at import.Why
The dependency. Until 0.5.1, importing
@probitas/probitasat all paid for the SQLite FFI: the root module re-exports the SQLite client (mod.ts→client.ts→sql.ts→sql/sqlite.ts) and@db/sqlitedlopens as it evaluates. A library that failed to load therefore killed scenarios that never touch SQLite, which is exactly what took down every scenario subprocess in #108 when the nixpkgs pin moved. probitas-test/probitas-packages#23 fixed that upstream; this picks it up.DENO_SQLITE_PATHstays. It is what keeps SQLite working for scenarios that actually use it under nix. 0.5.1 is what stops everyone else from paying for it, including outside nix. The two are complementary, not alternatives.The age gate. Deno refuses to resolve any version published in the last 24 hours — a supply-chain guard aimed at third-party code. It applied to our own packages too, so a release cut here could not be adopted until the next day, even when the fix was the reason for the release. The object form of
minimumDependencyAgeis documented for exactly this, so the guard now covers every third-party dependency and nothing of ours.ageis spelled out asP1Drather than left implicit, so changing the policy later is a visible edit rather than a silent shift in Deno's default.About the lockfile diff
deno.lockmoves far more than one dependency: 25 packages change version and the npm tree goes from 130 packages to 77 (@aws-sdk/client-sqs3.965.0 → 3.1118.0 is the largest jump; the shrink is mostly@smithy/*consolidation in the newer AWS SDK).That is not this change being careless. Changing any constraint in
deno.jsonmakes Deno re-resolve the entire graph to the newest satisfying versions, rather than updating the entry that changed. It is unrelated to the age policy, and there is no route around it:deno.lockdiffminimumDependencyAgeconfig only@std/cli^1.0.25→^1.0.32(nothing to do with the age gate)client-sql-sqlite^0.5.0→^0.5.1deno outdated --updateon that one packageWaiting for the age gate to open on its own would not have produced a smaller diff, and
deno outdated --updateon a single package — the purpose-built command — behaves the same.The two commits are split so this is reviewable: the policy commit carries a 3-line lock diff, and all of the churn sits in the dependency commit.
Test Plan
deno task verifyon Deno 2.9.5 — 45 passed, 0 failed🤖 Generated with Claude Code
https://claude.ai/code/session_01E6iErRVYiy7LzNGLT5Vzh1