update-gpui
Update GPUI submodule to the latest commit. Use when asked to update, bump, or upgrade the gpui dependency.
Files1
View on GitHubSKILL.md.claude/skills/update-gpui/SKILL.md
GitHubInstructions
Update GPUI only from a reviewed, supplied full 40-character commit hash. Do not select a moving ref.
Steps
Confirm target hash is exactly 40 lowercase hexadecimal characters and record current hash and package versions from root
Cargo.toml.Update every
https://github.com/BumpyClock/gpuidependency declaration in committed manifests. Keep each declaration's package alias and features, and set both itsrevand exactversion = "=X.Y.Z". This currently includesgpui(package = "bumpyclock-gpui"),gpui_platform,gpui-macros(package = "gpui_macros"), andsum-tree(package = "sum_tree"). Search allCargo.tomlfiles; do not leave a GPUI-family package on a previous revision.Update
[gpui]and every[[gpui.packages]]entry incompatibility.tomlwith same revision and exact package versions. Regenerate and verify derived document:cargo xtask compatibility generate cargo xtask compatibility checkFor coordinated source testing only, a sibling GPUI checkout may be wired through an uncommitted
.cargo/config.tomlpatch. Patch the actual packagesbumpyclock-gpui,gpui_platform,gpui_macros, andsum_tree; add further resolved GPUI packages when needed. The committed manifest's package identity must already match the checkout. Remove the override before release checks. Never place it in a committed manifest or config.Build, test, and check release plan:
cargo fmt --all -- --check cargo metadata --locked cargo check --workspace --all-targets --locked cargo test --workspace --all-targets --locked ./script/clippy --locked cargo xtask publish-plan cargo xtask release-checkReport old/new revision, package versions, compatibility result, and validation results. Version selection, tag creation, and publication need separate owner authorization.
Notes
- Committed GPUI dependencies use only canonical Git URL, full immutable revision, and exact version.
- Repository has no GPUI submodule. Local sibling source is a temporary, uncommitted development override only.