update-jj

Update jj-lib and jj-cli dependencies in Cargo.toml and validate with cargo check and test.

849|49|Updated Feb 8, 2024
One-click install
npx skills add https://github.com/gulbanana/gg --skill update-jj
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: update-jj
Source: https://github.com/gulbanana/gg/tree/main/.claude/skills/update-jj
Command: npx skills add https://github.com/gulbanana/gg --skill update-jj

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill automates updating the jj-lib and jj-cli dependencies within a gg project, ensuring you stay aligned with the latest JJ releases and maintain a reproducible build.

Core Features & Use Cases

  • Version bumps: Update Cargo.toml entries for jj-lib and jj-cli to a specific version or git branch.
  • Dependency hygiene: Re-run cargo update and cargo-dedupe to synchronize Cargo.lock and avoid version conflicts.
  • Compatibility checks: Prepare gg for potential JJ API changes and guide subsequent code adjustments.

Quick Start

Use the update-jj skill to bump the jj-lib and jj-cli versions in Cargo.toml, then run cargo update, cargo-dedupe, cargo check, and cargo test to verify everything builds.

Frequently Asked Questions about update-jj

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I update jj-lib and jj-cli dependencies in a Rust project?

Update jj-lib and jj-cli dependencies by editing Cargo.toml with the target version or git reference, running cargo update to synchronize Cargo.lock, and executing cargo check to verify compilation.

What is the safest way to handle JJ API changes when upgrading versions?

Handling JJ API changes requires running cargo check and cargo test after updating Cargo.toml to identify compilation errors and validate that your code adjustments align with the new jj-lib and jj-cli interfaces.

How does cargo-dedupe help when bumping jj-lib versions?

cargo-dedupe helps when bumping jj-lib versions by resolving version conflicts and synchronizing Cargo.lock entries, ensuring dependency hygiene across the workspace after editing Cargo.toml.

Can I update jj-cli to a specific git branch instead of a published version?

Yes, you can update jj-cli to a specific git branch by editing the Cargo.toml dependency entry to reference the git branch directly, followed by cargo update to pull the changes and cargo check to verify.

Why does cargo test fail after updating jj-lib in my gg project?

cargo test fails after updating jj-lib because new JJ releases often introduce API changes, requiring you to adjust your code to match the updated interfaces before tests pass successfully.

Do I need to manually edit Cargo.lock when upgrading jj-cli?

No, you do not need to manually edit Cargo.lock when upgrading jj-cli; instead, modify the version in Cargo.toml and run cargo update to automatically regenerate the lockfile.