Repository navigation
chore(deps): update dependency gastownhall/beads to v1.3.2 - #93
Merged
Merged
Conversation
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.
This PR contains the following updates:
1.3.1→1.3.2Release Notes
gastownhall/beads
v1.3.2Compare Source
Beads v1.3.2
v1.3.2 — the second patch release on the 1.3 line. Released 2026-10-24, cut from
hotfix/1.3.1at9b65b9e19. It ships exactly the code that was qualified asv1.3.2-rc.3; theonly change since that candidate is the version stamp.
There is no schema migration, and the embedded Dolt engine is unchanged (Dolt 2.2.0). Upgrading
from v1.3.1 or any v1.3.2 release candidate is a binary swap. If you are coming from v1.3.0 or
earlier, read the v1.3.1 release notes
first — everything in them applies, and this release adds to it.
This is a fix-only release. It closes two ways v1.3.1's new retention and backup paths could lose
data, makes the post-commit blocked-state recheck safe under concurrent writes, lets a
least-privilege Dolt user write again, removes an export stall on large wisp sets, and rebuilds with
Go 1.26.10 and patched dependencies. It also carries an upgrade note for every store that crossed
migration 0059 under bd 1.3.0 or later: read it before you upgrade.
Highlights
bd purgeno longer deletes the closed root of a chain that still has live work under it(#7041, fixes #7031). v1.3.1's live-dependent protection only covered a closed bead a live bead
pointed at directly, so an orchestrator's
bd purge --wisps-plane --older-than ...retentionsweep could delete a closed root above a closed child above an open grandchild, orphaning both.
Protection now propagates up the whole closed chain.
watermark is read before the sync, so a commit that lands mid-sync stays pending for the next
backup instead of being skipped as "no changes".
#7030). On the Dolt server backend, the post-commit blocked-state recheck could write rows other
sessions had just committed back to their earlier values. It now runs in its own transaction and
publishes its Dolt commit after that transaction commits.
bd create --graph,bd mol wisp,bd historyandbd recompute-blockedno longer fail withcommand deniedfor aserver user granted EXECUTE on only
dolt_add/dolt_commit.bd export --allno longer stalls on workspaces with many wisps (#7603, backport of #6444,with #7785). Bulk readers read at most 200 ids per statement, and a repeated id is read once.
x/net,x/crypto,grpcandthriftare raised past every fixable advisory that reaches the binary (#6355,#7495).
Upgrading Notes
bd recompute-blockedonce per workspace(#7037). Migration 0059, first shipped in v1.3.0, recomputes the stored
is_blockedflag with arecursive query. On Dolt servers older than 2.4.0, and on the embedded engine, a query-planner bug
(dolthub/dolt#11886, fixed in Dolt 2.4.0) drops
the query's
parent-childedge filter, so blockedness spreads across every dependency type,including
relates-to,discovered-fromandtracks. Beads that are not blocked are markedblocked and silently disappear from
bd readyandbd list --ready. The flag is stored, so thedamage persists until it is recomputed, and nothing in v1.3.2 repairs it automatically. This
applies to every workspace whose store crossed migration 0059 under bd 1.3.0 or later, which
includes a workspace now on v1.3.1 that was first created by 1.2.x or earlier. The command is
idempotent, reports
rows_corrected, and changes nothing on a workspace that was not affected.bd purgekeeps more closed beads (#7041). Every closed bead in a chain above a live bead isnow kept and counted in
live_dependent_skipped, on every backend. A retention sweep that used todelete such a root no longer does, so its purged count can drop.
bd purge --limit Nconfirmation suggests a--forcecommand that keeps--limit(#7540, fixes #7534). The suggested command used to drop
--limit, so running it as printeddeleted every eligible row instead of N. If you copied that suggestion into a script, check it.
--older-thanthat overflows is refused onbd purgeandbd prune(#7540, fixes#7524). A large negative day count, such as
--older-than=-213503d, used to wrap to a smallpositive age and purge.
bd exportfails when it cannot classify wisp-plane rows (#7603). When thewispstableexists but its membership cannot be read, export now fails with
failed to classify wisp-plane rowsinstead of silently exporting without wisp markers. Only a missingwispstable istolerated.
Fixed
bd purgekeeps the whole closed chain above a live bead (#7041, fixes #7031). Take a closedroot R, a closed child S1 and an open grandchild S2. v1.3.1 protected S1, because S2 is live, but
not R, because its only dependent S1 is closed, so purge deleted R and orphaned S1 and S2;
--dry-runreported the same deletion. Protection now propagates through closed candidates untilnothing changes, on the Dolt server, embedded and proxied backends.
Auto-backup read Dolt HEAD after the sync and recorded it as the newest commit backed up, so a
commit that landed during the sync was recorded as backed up although the snapshot lacked it, and
auto-backup then reported "no changes since last backup" until HEAD moved again. Only opted-in
auto-backup (
backup.enabled: true) was affected;bd backup syncrecords no commit watermark.#6876, fixes #7030). v1.3.1's #6716 fan-in fix minted its Dolt commit while its own SQL
transaction was still open.
DOLT_ADDstages the table from the session's BEGIN-time root, so thecommit could write
issuesrows that other sessions had just committed back to their BEGIN-timevalues. The recheck runs only when unblocking writes (closes, dependency removals, deletes) race,
which is exactly when this matters. The recompute now runs alone in its own retried transaction
and the Dolt commit is published after it. A failed trailing commit is counted as
post_tx_commit_droppedand logged, instead of being reported as a recheck failure, because theflag repair itself is already committed.
paths ran
CALL DOLT_CHECKOUTeven when the session was already on the requested branch: thefallback for the ignored-tables transaction, and the pinned connection used by long-timeout
versioned reads and the blocked recompute. A server user granted EXECUTE on only
dolt_add/dolt_commitis denied even that no-op checkout. The checkout now runs only when thesession is on a different branch.
bd export --allno longer stalls on workspaces with many wisps (#7603, backport of #6444).The bulk label, comment, dependency and issue readers sent every id in one
IN (...)list, andDolt's cost grows faster than linearly in the list length; one reported workspace stopped
completing exports past about 21k wisps. The readers now read at most 200 ids per statement, and
export reads the wisp-plane relations only for ids that are wisps. A repeated id is read once, so
batching never duplicates or drops a row (#7785).
bd purge --limit Nconfirmation and--older-thanoverflow (#7784, backport of #7540, fixes#7534 and #7524). See Upgrading Notes.
Security
compromised eMudhra intermediate CAs in
crypto/x509.release.ymluses uv 0.13.4, which shipsthe same distrust.
golang.org/x/netv0.60.0 andgolang.org/x/cryptov0.57.0 (backport of #6355), and
google.golang.org/grpcv1.83.2 andgithub.com/apache/thriftv0.24.0 (backport of #7495).
govulncheckreported 16 reachable advisories on rc.2's module setand none on rc.3's, which is the v1.3.2 module set.
Validation
9b65b9e19) differs fromv1.3.2-rc.3(
0dee73e43) only in the version stamp, the CHANGELOG, thebd infodigest, and package andplugin version metadata.
hotfix/1.3.1as acherry-pick -xPR of a commit already onmain,tested at its head. The backport PRs (#7220, #7146, #7786, #7784, #7603, #7787) and the three
RC prep PRs (#7221, #7461, #7788) each passed the full PR matrix of 120–122 checks, including the
required
CI Gate / Requiredgate that PRs intohotfix/**now run (#7198, ported in #7217). Thepromotion PR (#7809) passed 121 checks plus the Nightly Full Tests workflow by dispatch, once for
the full test suite
(40042534271) and once for the
PR Linux command suite
(40042536408).
40044707863):
verify-version-consistency, both goreleaser legs (linux and macOS), both package gates (MCP andnpm),
publish-pypi,publish-npmand release attestation. The tag-triggered Migration TestHarness (40044708076) and
Cross-Version Smoke Tests
(40044707912) also passed. 11
assets were published: linux amd64/arm64, darwin amd64/arm64, windows amd64/arm64, freebsd amd64,
android arm64, the contract corpus, an SPDX SBOM and checksums. All three release candidates also
completed their release pipelines.
hotfix/1.5.1branch, pinned to
v1.3.2-rc.3, passed its full RC Gate on the first attempt:40034407401, at
9d970f7cc8. No job failed: the Linux CI parity tiers (including the beads topologyacceptance, the bd CLI contract jobs against the current and minimum-supported bd, and a contract
radar against beads
main), acceptance A, B and C, all integration shards, tutorial goldens 1–6,the four worker-core providers, the goreleaser snapshot, and the full macOS regression set.
Installing
Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), Windows (AMD64 & ARM64),
Android/Termux (ARM64), and FreeBSD are attached to this release.
Homebrew (macOS/Linux):
Quick Install (macOS/Linux/FreeBSD):
curl -sSL https://raw.githubusercontent.com/gastownhall/beads/main/scripts/install.sh | bashWindows (PowerShell):
Manual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.
Whichever method you use, run
which -a bdafterwards. A second, olderbdearlier inPATHisthe mixed-version fleet problem described in the v1.3.0 upgrading notes. Then run
bd recompute-blockedonce per workspace if the first upgrading note applies to you.Contributors
Thanks to everyone who contributed to v1.3.2 (between
v1.3.1andv1.3.2):@bee-ghosttrack, @bourgois, @brandonmartin, @julianknutsen, @rjgeng
Full Changelog: gastownhall/beads@v1.3.1...v1.3.2
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.