fix(deps): update rust crate worktrunk to 0.60.0 - #1950
Conversation
|
|
Warning Review limit reached
More reviews will be available in 59 minutes and 53 seconds. Learn how PR review limits work. Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file). ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits. 🚦 How do rate limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Code Review
This pull request updates several dependencies in Cargo.toml and Cargo.lock. Specifically, it upgrades worktrunk from 0.58.0 to 0.59.0, and updates vergen, vergen-gitcl, and vergen-lib to version 10.0.0, which replaces the derive_builder dependency with bon. There are no review comments, and I have no feedback to provide.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
There was a problem hiding this comment.
Performed full review of 6be97b6...28359f5
Analysis
• Major version jump in vergen ecosystem (9.x → 10.x) introduces build-time metadata generation changes that could affect version strings, git information formats, and build script compatibility—requires validation that generated metadata keys/format remain compatible with downstream consumers
• Significant builder pattern refactoring across transitive dependencies (derive_builder → bon) may alter code generation behavior and macro expansion—verify clean builds across all targets and feature combinations before merge
• Introduction of new procedural macro dependencies (bon, bon-macros, prettyplease) expands the macro expansion surface—run full test suite to catch behavioral changes and confirm MSRV hasn't increased unexpectedly
• Build pipeline stability risk due to underlying infrastructure modernization masked as a routine dependency update—conduct security audit (cargo audit) and validate integration tests pass completely before enabling automerge
Tip
Help
Slash Commands:
/review- Request a full code review/review latest- Review only changes since the last review/describe- Generate PR description. This will update the PR body or issue comment depending on your configuration/help- Get help with Mesa commands and configuration options
0 files reviewed | 0 comments | Edit Agent Settings • Read Docs
Mesa DescriptionTL;DRUpdated What changed?
Description generated by Mesa. Update settings |
28359f5 to
910bc96
Compare
Signed-off-by:
910bc96 to
935d268
Compare
This PR contains the following updates:
0.58.0→0.60.00.61.0Release Notes
max-sixty/worktrunk (worktrunk)
v0.60.0Compare Source
Improved
Package installs complete branch and worktree names: A plain
brew install worktrunk(or other package install) now tab-completes branch and worktree names, not just subcommands and flags.wt config shell completions <shell>emits a dynamic registration that calls the binary at completion time (the maintainedclap_complete::envpath), matching whatgh,rustup, andkubectlship. (#3105, thanks @bendrucker)wt step relocatemoves dirty linked worktrees: Relocating a linked worktree with uncommitted or untracked changes no longer skips it.git worktree movecarries those files along, so the dirty-skip was a worktrunk policy rather than a git limitation. The main worktree still skips when dirty (without--commit), since its relocation falls back togit checkout, which refuses to switch over a dirty tree. (#3104, thanks @lunaynx for reporting)--dry-runpreviews print to stdout:wt hook <type>,wt step relocate,wt step prune,wt step copy-ignored, andwt config shell install/uninstallnow send their--dry-runpreview to stdout (the command's answer) while narration stays on stderr. This matcheswt list,git clean -n, andterraform plan, and keeps previews pageable and pipeable. (Breaking: scripts reading these previews from stderr should now read stdout) (#3085)Picker gutter distinguishes local and remote branches: With
--branchesand--remotes, thewt switchpicker marks each row's kind in the gutter:/for a local branch without a worktree and|for a remote branch, alongside the existing@/^/+worktree glyphs. (#3115)wt list --format=jsongains structuredrepometadata: JSON output addsrepo(the local checkout's primary remote) andci.repo(the repositoryci.urltargets, which differs for fork PRs) objects carryinghost/owner/name/provider; the existingrepo_urlandci.repo_urlstrings remain. The provider honors the configured[forge].platformon hosts that can't be auto-detected. (#3021, thanks @jeremy0dell)wt step eval --format=json:wt step evalgains a structured{name, template, result}JSON lane on stdout, the machine-readable analog of its-vview. Text mode is unchanged. (#3106)--format=claude-coderejected where it never applied:wt listandwt config state getaccepted--format=claude-codesilently and treated it astable; the value only ever meant anything onwt list statusline. Both now fail fast withinvalid value 'claude-code'. (Breaking:wt list --format=claude-codeandwt config state get --format=claude-codenow error) (#3116)Fixed
cargo install worktrunkbuilds from crates.io: Installing from crates.io failed to compile withenvironment variable VERGEN_GIT_DESCRIBE not defined at compile time, because the package archive has no.gitfor the build script to read. The version lookup now falls back to the cargo package version when git-describe is unavailable. (#3124, fixes #3123, thanks @kerrickstaley for reporting)Tab-completion works in repos with no commits:
wt switch <TAB>andwt remove <TAB>returned nothing on a freshgit initrepo, because the unborn default branch has no entry underrefs/heads/. Completion now also draws on worktree branches, so the unbornmain(and anywt switch --createbranch on an empty repo) completes. (#3097, closes #3094)wt config state get ci-status --format=jsonhonors[forge].platform: On a self-hosted host the parser can't recognize (Gitea, Azure DevOps, GitHub Enterprise on a generic domain), this path reportedprovider: "unknown"whilewt list --format=jsonreported the configured provider. All structured-output paths now route the[forge].platformoverride through one accessor, so they stay consistent. (#3120)Documentation
wt list --helpexample tables fit the terminal: The capturedwt listexample tables in--helpchop to terminal width with a dimmed ellipsis (matching realwt list) instead of word-wrapping and shearing their columns; hand-authored command examples still wrap. (#3125)/wt-switch-createcross-repo handling reworked: The Claude Code plugin command's skill reworks how it creates and enters a worktree in another repo, built around what the harness actually does (EnterWorktreere-roots within the current repo; acdreaches another repo when it's inadditionalDirectories). The procedure dropped from five steps to three. (#3118)Help-text and docs refinements:
--formathelp renders its values inline ([possible values: table, json]) instead of an expanded block;wt switchandwt step pushhelp got smaller clarifications; and web-doc terminal blocks no longer wrap command-only lines. (#3096, #3108, #3110, #3112, #3126)v0.59.0Compare Source
Improved
Picker frees digit keys for filtering; preview tabs move to
Alt: In thewt switchpicker, plain digits now go to the filter, so a branch name with a number in it can be typed directly. Preview tabs jump withAlt-1–Alt-5or cycle withTab/Shift-Tab. (Breaking:1–5no longer switch preview tabs) (#3079)Squash templates use
commit_detailsinstead ofcommits: The squash commit-message template's{{ commits }}variable (commit subjects) is deprecated in favor of{{ commit_details }}, which renders as the bare subject when printed directly and also exposes.subjectand.body.wt config updatemigratescommitstocommit_detailsas a plain rename. (#2985)wt step eval -vlists template variables:wt step eval -vnow prints the available template variables on stderr in the gutter style, above the template-expansion view. That expansion (also shown bywt switch -v, hooks, aliases, andwt -v list) renders the template and its result as separate labeledsource/resultblocks rather than a shared gutter. The result still goes to stdout, so$(wt step eval …)is unchanged. Sinceevalmutates nothing and is experimental, its--dry-runflag (which dumped the raw variable context) is removed rather than deprecated. (#3078, #3099)Fixed
Picker no longer freezes on the first keystroke: With many worktrees, typing the first character in the
wt switchpicker locked the UI for several seconds. The fuzzy matcher shares rayon's global thread pool with worktrunk's git collection, which floods it with blocking subprocess calls, so the matcher queued behind them. Collection and preview work now run on a dedicated pool, keeping the matcher responsive. (#3087, thanks @bendrucker; fixes #2926, thanks @mahume for reporting)Tab-completion covers all hook types:
wt hook <type> <Tab>completed configured command names for only seven of the ten hook types;pre-switch,post-switch, andpost-removereturned nothing. Completion now derives the type from the canonical hook list, so every type completes its command names. (#3070)Ctrl-C on a concurrent alias reports the right exit code: Interrupting
wt step <concurrent-alias>could report exit 143 (SIGTERM) instead of 130 (SIGINT), because a per-child SIGINT → SIGTERM → SIGKILL escalation could land a SIGTERM on a child during the grace window; the escalation also serialized across process groups, so repeated Ctrl-C could wait. wt now forwards the user's signal once per process group, so a cooperative child dies from the signal actually sent (130 on Ctrl-C); a second signal kills any survivor immediately. (#3075)Documentation
Internal
Configuration
📅 Schedule: (in timezone 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 has been generated by Mend Renovate.