{"id":13435884,"url":"https://github.com/killercup/cargo-edit","last_synced_at":"2025-05-13T21:02:35.797Z","repository":{"id":37285108,"uuid":"37652385","full_name":"killercup/cargo-edit","owner":"killercup","description":"A utility for managing cargo dependencies from the command line.","archived":false,"fork":false,"pushed_at":"2025-05-01T00:42:26.000Z","size":26088,"stargazers_count":3192,"open_issues_count":63,"forks_count":154,"subscribers_count":19,"default_branch":"master","last_synced_at":"2025-05-01T00:46:31.691Z","etag":null,"topics":["cargo","cli","rust"],"latest_commit_sha":null,"homepage":"http://killercup.github.io/cargo-edit/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/killercup.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-06-18T10:12:57.000Z","updated_at":"2025-05-01T00:42:30.000Z","dependencies_parsed_at":"2024-01-13T19:19:45.535Z","dependency_job_id":"984ddeb5-8b93-4fb3-bcff-7c78bccf93af","html_url":"https://github.com/killercup/cargo-edit","commit_stats":{"total_commits":933,"total_committers":87,"mean_commits":"10.724137931034482","dds":0.6087888531618435,"last_synced_commit":"5df7f242341e6d7edecfecdb38e6ce699bc0cfdc"},"previous_names":[],"tags_count":47,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/killercup%2Fcargo-edit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/killercup%2Fcargo-edit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/killercup%2Fcargo-edit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/killercup%2Fcargo-edit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/killercup","download_url":"https://codeload.github.com/killercup/cargo-edit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252612452,"owners_count":21776253,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cargo","cli","rust"],"created_at":"2024-07-31T03:00:40.322Z","updated_at":"2025-05-13T21:02:35.790Z","avatar_url":"https://github.com/killercup.png","language":"Rust","readme":"# cargo edit\n\nThis tool extends [Cargo](http://doc.crates.io/) to allow you to add, remove, and upgrade dependencies by modifying your `Cargo.toml` file from the command line.\n\nCurrently available subcommands:\n\n- [`cargo upgrade`](#cargo-upgrade)\n- [`cargo set-version`](#cargo-set-version)\n\n[![Build Status](https://github.com/killercup/cargo-edit/workflows/build/badge.svg)](https://github.com/killercup/cargo-edit/actions)\n[![Coverage Status](https://coveralls.io/repos/killercup/cargo-edit/badge.svg?branch=master\u0026service=github)](https://coveralls.io/github/killercup/cargo-edit?branch=master)\n[![crates.io](https://img.shields.io/crates/v/cargo-edit.svg)](https://crates.io/crates/cargo-edit)\n[![Join the chat at https://gitter.im/cargo-edit/Lobby](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/cargo-edit/Lobby)\n\n## Installation\n\n\u003ca href=\"https://repology.org/project/cargo-edit/versions\"\u003e\u003cimg align=\"right\" src=\"https://repology.org/badge/vertical-allrepos/cargo-edit.svg\" alt=\"Packaging status\"\u003e\u003c/a\u003e\n\nEnsure that you have a fairly recent version of rust/cargo installed. On Ubuntu you would also need to install `libssl-dev` and `pkg-config` packages.\n\n```console,ignore\n$ cargo install cargo-edit\n```\n\n*Compiler support: requires rustc 1.44+*\n\n(Please check [`cargo`'s documentation](http://doc.crates.io/) to learn how `cargo install` works and how to set up your system so it finds binaries installed by `cargo`.)\n\nInstall a sub-set of the commands with `cargo install -f --no-default-features --features \"\u003cCOMMANDS\u003e\"`, where `\u003cCOMMANDS\u003e` is a space-separated list of commands; i.e. `add rm upgrade` for the full set.\n\n## Available Subcommands\n\n### `cargo add`\n\n`cargo add` is now integrated into `cargo` as of v1.62.  If you want access in older versions of `cargo`, you'll need to install `cargo-edit` v0.9 or earlier.\n\nKnown differences from `cargo-edit` v0.9.1\n- `cargo add \u003cpath\u003e` is unsupported, instead use `cargo add --path \u003cpath\u003e`\n- `cargo add \u003ccrate\u003e +\u003cfeature\u003e` is unsupported, instead use `cargo add \u003ccrate\u003e -F \u003cfeature\u003e`\n  - If adding multiple crates, qualify the feature like `cargo add serde -F serde/derive serde_json`\n  - See [rust-lang/cargo#10809](https://github.com/rust-lang/cargo/issues/10809)\n\n### `cargo rm`\n\n`cargo rm` is now integrated into `cargo` as of v1.66.  If you want access in older versions of `cargo`, you'll need to install `cargo-edit` v0.11 or earlier.\n\n### `cargo upgrade`\n\nUpgrade dependencies in your `Cargo.toml` to their latest versions.\n\nTo specify a version to upgrade to, provide the dependencies in the `\u003ccrate name\u003e@\u003cversion\u003e` format,\ne.g. `cargo upgrade -p docopt@~0.9.0 -p serde@\u003e=0.9,\u003c2.0`.\n\nThis command differs from `cargo update`, which updates the dependency versions recorded in the\nlocal lock file (Cargo.lock).\n\n#### Examples\n\n```console,ignore\n# Upgrade all dependencies for the current crate\n$ cargo upgrade\n# Upgrade docopt (to ~0.9) and serde (to \u003e=0.9,\u003c2.0)\n$ cargo upgrade -p docopt@~0.9 -p serde@\u003e=0.9,\u003c2.0\n# Upgrade all dependencies except docopt and serde\n$ cargo upgrade --exclude docopt --exclude serde\n```\n\n#### Usage\n\n```console\n$ cargo-upgrade upgrade --help\nUpgrade dependency version requirements in Cargo.toml manifest files\n\nUsage: cargo upgrade [OPTIONS]\n\nOptions:\n  -n, --dry-run               Print changes to be made without making them\n      --manifest-path \u003cPATH\u003e  Path to the manifest to upgrade\n      --rust-version \u003cVER\u003e    Override `rust-version`\n      --ignore-rust-version   Ignore `rust-version` specification in packages\n      --locked                Require `Cargo.toml` to be up to date\n  -v, --verbose...            Increase logging verbosity\n  -q, --quiet...              Decrease logging verbosity\n  -Z \u003cFLAG\u003e                   Unstable (nightly-only) flags\n  -h, --help                  Print help\n  -V, --version               Print version\n\nVersion:\n      --compatible [\u003callow|ignore\u003e]    Upgrade to latest compatible version [default: allow]\n  -i, --incompatible [\u003callow|ignore\u003e]  Upgrade to latest incompatible version [default: ignore]\n      --pinned [\u003callow|ignore\u003e]        Upgrade pinned to latest incompatible version [default:\n                                       ignore]\n\nDependencies:\n  -p, --package \u003cPKGID[@\u003cVERSION\u003e]\u003e  Crate to be upgraded\n      --exclude \u003cPKGID\u003e              Crates to exclude and not upgrade\n      --recursive [\u003ctrue|false\u003e]     Recursively update locked dependencies\n\n```\n\n### `cargo set-version`\n\nSet the version in your `Cargo.toml`.\n\n#### Examples\n\n```console,ignore\n# Set the version to the version 1.0.0\n$ cargo set-version 1.0.0\n# Bump the version to the next major\n$ cargo set-version --bump major\n# Bump version to the next minor\n$ cargo set-version --bump minor\n# Bump version to the next patch\n$ cargo set-version --bump patch\n```\n\n#### Usage\n\n```console\n$ cargo-set-version set-version --help\nChange a package's version in the local manifest file (i.e. Cargo.toml)\n\nUsage: cargo set-version [OPTIONS] [TARGET]\n\nArguments:\n  [TARGET]  Version to change manifests to\n\nOptions:\n      --bump \u003cBUMP\u003e           Increment manifest version\n  -m, --metadata \u003cMETADATA\u003e   Specify the version metadata field (e.g. a wrapped libraries version)\n      --manifest-path \u003cPATH\u003e  Path to the manifest to upgrade\n  -p, --package \u003cPKGID\u003e       Package id of the crate to change the version of\n      --all                   [deprecated in favor of `--workspace`]\n      --workspace             Modify all packages in the workspace\n  -n, --dry-run               Print changes to be made without making them\n      --exclude \u003cEXCLUDE\u003e     Crates to exclude and not modify\n      --offline               Run without accessing the network\n      --locked                Require `Cargo.toml` to be up to date\n  -v, --verbose...            Increase logging verbosity\n  -q, --quiet...              Decrease logging verbosity\n  -Z \u003cFLAG\u003e                   Unstable (nightly-only) flags\n  -h, --help                  Print help\n  -V, --version               Print version\n\n```\n\nFor more on `metadata`, see the\n[semver crate's documentation](https://docs.rs/semver/1.0.4/semver/struct.BuildMetadata.html).\n\n## Related Cargo Commands\n\n- [`cargo feature`](https://github.com/Riey/cargo-feature)\n- [`cargo override`](https://github.com/eopb/cargo-override)\n\n## Contribution\n\nThanks for your interest - we gratefully welcome contributions.\n\nQuestions can be asked in [issues](https://github.com/killercup/cargo-edit/issues), or on [Gitter](https://gitter.im/cargo-edit/Lobby).\n\nTo help us help you get pull requests merged quickly and smoothly, open an issue before submitted large changes. Please keep the contents of pull requests and commits short. Commit messages should include the intent of the commit.\n\n`cargo-edit` has a moderately comprehensive test suite. Contributions that add/improve tests are awesome. Please add tests for every change.\n\n`cargo-edit` uses [`rustfmt`](https://github.com/rust-lang-nursery/rustfmt) for formatting and [`clippy`](https://github.com/rust-lang-nursery/rust-clippy) for linting.\n\n## License\n\nApache-2.0/MIT\n","funding_links":[],"categories":["HarmonyOS","Rust","Development tools"],"sub_categories":["Windows Manager","Build system"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkillercup%2Fcargo-edit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkillercup%2Fcargo-edit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkillercup%2Fcargo-edit/lists"}