Repository navigation
Conversation
Promotes [Unreleased] to 1.10.0 and bumps the version. A minor version: the engine moves to 4.0.0.a8 and a 1.9.0 database is upgraded in place after the user confirms, with a backup kept, so nothing a 1.9.0 user has is lost or has to be redone by hand. The section now says, for a 1.9.0 user, what the upgrade does, how long it takes, the disk it needs, and what happens on a decline or a failure, and summarizes the Python runtime from Grail c8cbc92 to 29833cd. README's "GemDB Code updates and associated data" no longer tells users to expect to lose their database on an engine change. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Oct 29, 2026
This branch has not been deployed
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.
Closes #184.
Promotes
[Unreleased]to 1.10.0 and bumps the version. This ships #180: engine 4.0.0.a8, the in-place a5 → a8 upgrade, and Grail main29833cd.Stacked on #180. Merge this after #180, never before. Its base is
feat/engine-upgrade-in-place. The repository hasdelete_branch_on_mergeon, so when #180 merges GitHub deletes that branch and retargets this PR tomainby itself. Check that the base readsmainbefore merging. If it does not, retarget it by hand.Why 1.10.0
A minor version, not 1.9.1 or 2.0.0:
gemdbAPI are unchanged. Earlier releases bumped the minor version even when users had to delete their database (1.8.0's a4 → a5, 1.9.0's Rowan image), and this change is gentler than either.What changes
package.json/package-lock.json:npm version 1.10.0 --no-git-tag-version, as CONTRIBUTING.md says.CHANGELOG.md: a dated## [1.10.0] - 2026-10-28section, an empty[Unreleased], and the link definitions. The section opens with a preface that tells a 1.9.0 user not to delete~/GemDB/db. The engine entry is now written for them: what triggers the prompt, what the upgrade does (stop, copy todb/data/extent0.dbf.pre-4.0.0.a5, upgrade, reinstall Python support and the MCP server), how long it takes, the disk space it needs (about the extent's size plus 1 GB), and what happens on a decline, a failure, an unconfirmed restore, and an auto-start or agent start. It also covers who still has to recreate their database. A new "A newer Python runtime" entry summarizes Grailc8cbc92→29833cd(176 commits, 134 PRs).README.md: "GemDB Code updates and associated data" used to say you should not expect to keep access to your data after an update that changes the engine version. It now describes the in-place upgrade. Thegemdb.engineVersionbullet is changed to match. These edits do not overlap README: split the notebook debugging bullets into a "Debug a notebook cell" section #175's README hunks onmain.npm run release:notes 1.10.0renders the section.The date: if this merges on a later day, change the heading's date to that day before merging.
Not given entries
These are on
mainsince 1.9.0, but not on #180's branch:Checks
npm test: 71 files, 1318 tests passed.lint,lint:toolchain,format:check,typecheckandtypecheck:strictare clean.npm run bundle, plus CI's packaging smoke (vsce package --target darwin-arm64), succeed.scripts/package.sh/check-vsix.shand the integration suite. Both need the Grail and MCP payloads built against the pinned engine under~/GemDB, which I left alone. CI's integration legs build, check and upload all three.vsix.Follow-ups this PR does not make
confirmGrailInstallinsrc/lifecycle.ts, and README's "How setup runs" paragraph, still say that installing newer Python support makes committed dates, decimals, tuples and instances stop working. Grail #1791 (in this pin range) rebuilds deployed modules in place to keep them working. Grail #1867 measured therelease=c8cbc92upgrade case at 243/0. So the warning now contradicts the upgrade path, which reinstalls Python support without asking. Changing that is a code change, so it belongs in its own PR.platform.ts's download and disk figures (170 MB / 470 MB) are still a5 measurements..vsix(Upgrade an a5 database to a8 in place instead of asking to delete it #180's open item) runs in the Release workflow'sscanjob.To release, after both PRs merge
main, fix the date if needed, and merge it.mainpush CI run on the merge commit to go green. It uploadsvsix-darwin-arm64,vsix-linux-x64andvsix-linux-arm64.npm run release:fetchon that commit, then installdist/gemdb-darwin-arm64-1.10.0.vsixover a 1.9.0 setup and run the upgrade once.mainwith1.10.0, ticking dry-run first (validate → collect → scan).release-approvalgate. It tagsv1.10.0, creates the GitHub Release, publishes to the Marketplace and Open VSX, then runsverify.🤖 Generated with Claude Code