5 releases (3 breaking)
0.4.1 | Oct 17, 2024 |
---|---|
0.4.0 | Oct 17, 2024 |
0.3.0 | Jun 3, 2024 |
0.2.0 | May 19, 2024 |
0.1.0 | May 19, 2024 |
#157 in Cargo plugins
27KB
475 lines
dependencies-patch
A simple tool to patch cargo dependencies with command line commands.
Todo List
- Support for packages from
github
- Support for packages from other URL
- Support for packages from
crates-io
- Support for packages from other registries
Installation
$ cargo install dependencies-patch
Usage
The Cargo.toml
for example_project
looks like this:
[package]
edition = "2021"
name = "project1"
version = "0.1.0"
[workspace]
[dependencies]
log = "0.4"
Then run following commands to patch the log
dependency to a git repository:
$ dependencies-patch --help
$ dependencies-patch -c /path/to/example_project -n log -t git --git-repo rust-lang/log
After running the command, the Cargo.toml
will be updated to:
[package]
edition = "2021"
name = "project1"
version = "0.1.0"
[workspace]
[dependencies]
log = "0.4"
[patch.crates-io.log]
git = "https://github.com/rust-lang//log.git"
We can also patch the package to the local path by running the following commands:
$ dependencies-patch -c . -n log -t path --patch-path ../log
And the Cargo.toml
will be updated to:
[package]
name = "helloworld"
version = "0.1.0"
edition = "2021"
[dependencies]
log = "0.4"
[patch.crates-io.log]
path = "../log"
More usages can be known by running dependencies --help
command.
Notes
The tool can only add patches to the Cargo.toml
file. It don't support removing patches.
Dependencies
~2.2–3MB
~59K SLoC