cargo/Cargo.toml
bors add15366ea Auto merge of #13230 - rust-lang:renovate/gix, r=epage
chore(deps): update gix

[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [gix](https://togithub.com/Byron/gitoxide) | workspace.dependencies | minor | `0.56.0` -> `0.57.1` |
| [gix-features-for-configuration-only](https://togithub.com/Byron/gitoxide) | workspace.dependencies | minor | `0.35.0` -> `0.37.1` |

---

### Release Notes

<details>
<summary>Byron/gitoxide (gix)</summary>

### [`v0.57.1`](https://togithub.com/Byron/gitoxide/releases/tag/gix-v0.57.1): gix v0.57.1

[Compare Source](https://togithub.com/Byron/gitoxide/compare/gix-v0.57.0...gix-v0.57.1)

##### Chore

-   change `rust-version` manifest field back to 1.65.
    They didn't actually need to be higher to work, and changing them
    unecessarily can break downstream CI.

    Let's keep this value as low as possible, and only increase it when
    more recent features are actually used.

##### Commit Statistics

-   2 commits contributed to the release.
-   1 commit was understood as [conventional](https://www.conventionalcommits.org).
-   0 issues like '(#ID)' were seen in commit messages

##### Commit Details

<csr-read-only-do-not-edit/>

<details><summary>view details</summary>

-   **Uncategorized**
    -   Merge branch 'msrv' ([`8c492d7`](https://togithub.com/Byron/gitoxide/commit/8c492d7))
    -   Change `rust-version` manifest field back to 1.65. ([`3bd09ef`](https://togithub.com/Byron/gitoxide/commit/3bd09ef))

</details>

### [`v0.57.0`](https://togithub.com/Byron/gitoxide/releases/tag/gix-v0.57.0): gix v0.57.0

[Compare Source](https://togithub.com/Byron/gitoxide/compare/gix-v0.56.0...gix-v0.57.0)

##### Chore

-   <csr-id-aea89c3ad52f1a800abb620e9a4701bdf904ff7d/> upgrade MSRV to v1.70
    Our MSRV follows the one of `helix`, which in turn follows Firefox.

##### New Features

-   `Repository::rev_parse*()` now supports `branch@{upstream|push|u|p}`.
    Previously it would be parsed, but always error as the implementation didn't exist.
    Now it will return the fetch and push tracking branches respectively.
-   Add `Reference::remote_tracking_ref_name()` and `*::remote_ref_name()`.
    These methods mirror their respective `Repository::branch_*` prefixed versions.
-   add `Repository::branch_remote_tracking_ref_name()`.
-   add `push.default` config key
-   add `config::Snapshot::trusted_program()`.
    That way it's possible to obtain an executable, program or script
    from a key in the configuration that is in a trusted section of the
    configuration.

    This goes along with a new `command` feature that brings in the `command`
    module at the top level to be able to execute such commands.
-   add `clone::PrepareFetch::with_in_memory_config_overrides()`.
    With it one can affect the repository configuration right before fetching.

##### New Features (BREAKING)

-   `Repository::remote_names|remote_default_name()` now returns `Cow<'_, BStr>` instead of `Cow<'_, str>`.
    That way information won't degenerate due to enforcement of UTF-8.

##### Bug Fixes (BREAKING)

-   rename `Repository::branch_remote_ref()` to `Repository::branch_remote_ref_name()`, add `direction` argument (also to `Repository::branch_remote_name()` and `Repository::branch_remote()`).
    This better differentiates the return value from the corresponding ref objects,
    which would require the named ref to exist in the repository.

    The `direction` argument allows to get the reference to push to as well.
    Further, it now takes a full ref name to support deriving the name of branches
    to push to.

    Regarding `Repository::branch_remote()`,  previously, this functionality
    was only available from a `Reference`,
    but now it's more generally available with just a branch name.

    The method was also adjusted to permit looking up non-symbolic remote
    names, like remotes that are specified by their URL.
-   mark `gix::interrupt::init_handler()` as unsafe
    The passed `interrupt()` argument will be called from a signal
    handler, so that needs to be documented and the call sites need to
    state that they fulfill the contract.

    Thanks to [`@&#8203;Manishearth](https://togithub.com/Manishearth)` for pointing this out.

##### Commit Statistics

-   40 commits contributed to the release over the course of 22 calendar days.
-   22 days passed between releases.
-   10 commits were understood as [conventional](https://www.conventionalcommits.org).
-   4 unique issues were worked on: [#&#8203;1158](https://togithub.com/Byron/gitoxide/issues/1158), [#&#8203;1165](https://togithub.com/Byron/gitoxide/issues/1165), [#&#8203;1178](https://togithub.com/Byron/gitoxide/issues/1178), [#&#8203;1191](https://togithub.com/Byron/gitoxide/issues/1191)

##### Thanks Clippy

[Clippy](https://togithub.com/rust-lang/rust-clippy) helped 1 time to make code idiomatic.

##### Commit Details

<csr-read-only-do-not-edit/>

<details><summary>view details</summary>

-   **[#&#8203;1158](https://togithub.com/Byron/gitoxide/issues/1158)**
    -   Remove extra-lines from changelog ([`11c9f66`](https://togithub.com/Byron/gitoxide/commit/11c9f66))
-   **[#&#8203;1165](https://togithub.com/Byron/gitoxide/issues/1165)**
    -   Complete partial note ([`8ef0538`](https://togithub.com/Byron/gitoxide/commit/8ef0538))
-   **[#&#8203;1178](https://togithub.com/Byron/gitoxide/issues/1178)**
    -   Add `config::Snapshot::trusted_program()`. ([`3f84213`](https://togithub.com/Byron/gitoxide/commit/3f84213))
-   **[#&#8203;1191](https://togithub.com/Byron/gitoxide/issues/1191)**
    -   Add note to clarify what users might want to do ([`2e04403`](https://togithub.com/Byron/gitoxide/commit/2e04403))
-   **Uncategorized**
    -   Prepare changelogs of next release ([`e78a92b`](https://togithub.com/Byron/gitoxide/commit/e78a92b))
    -   Merge branch 'maintenance' ([`4454c9d`](https://togithub.com/Byron/gitoxide/commit/4454c9d))
    -   Upgrade MSRV to v1.70 ([`aea89c3`](https://togithub.com/Byron/gitoxide/commit/aea89c3))
    -   Thanks clippy ([`d38d1cc`](https://togithub.com/Byron/gitoxide/commit/d38d1cc))
    -   Merge branch 'tracking-branch' ([`0fe20e8`](https://togithub.com/Byron/gitoxide/commit/0fe20e8))
    -   Refactor ([`530c15d`](https://togithub.com/Byron/gitoxide/commit/530c15d))
    -   `Repository::rev_parse*()` now supports `branch@{upstream|push|u|p}`. ([`3fba5b8`](https://togithub.com/Byron/gitoxide/commit/3fba5b8))
    -   Add `Reference::remote_tracking_ref_name()` and `*::remote_ref_name()`. ([`270322e`](https://togithub.com/Byron/gitoxide/commit/270322e))
    -   Add `Repository::branch_remote_tracking_ref_name()`. ([`4aa4b05`](https://togithub.com/Byron/gitoxide/commit/4aa4b05))
    -   Rename `Repository::branch_remote_ref()` to `Repository::branch_remote_ref_name()`, add `direction` argument (also to `Repository::branch_remote_name()` and `Repository::branch_remote()`). ([`404fde5`](https://togithub.com/Byron/gitoxide/commit/404fde5))
    -   `Repository::remote_names|remote_default_name()` now returns `Cow<'_, BStr>` instead of `Cow<'_, str>`. ([`5c07c76`](https://togithub.com/Byron/gitoxide/commit/5c07c76))
    -   Add `push.default` config key ([`8ac2dcc`](https://togithub.com/Byron/gitoxide/commit/8ac2dcc))
    -   Merge branch 'match_ceiling_dir_or_error' ([`cda5b51`](https://togithub.com/Byron/gitoxide/commit/cda5b51))
    -   Merge branch 'main' into fix-1183 ([`1691ba6`](https://togithub.com/Byron/gitoxide/commit/1691ba6))
    -   Release gix-ref v0.39.1 ([`c1cfe6e`](https://togithub.com/Byron/gitoxide/commit/c1cfe6e))
    -   Merge branch 'patch-1' ([`20dce42`](https://togithub.com/Byron/gitoxide/commit/20dce42))
    -   Differentiate between `Executable` and `Program` ([`56d1d09`](https://togithub.com/Byron/gitoxide/commit/56d1d09))
    -   Add `core.editor` key ([`ff71e07`](https://togithub.com/Byron/gitoxide/commit/ff71e07))
    -   Merge branch 'archive-handling' ([`7549559`](https://togithub.com/Byron/gitoxide/commit/7549559))
    -   Check all git-lfs managed files into the repository ([`35439de`](https://togithub.com/Byron/gitoxide/commit/35439de))
    -   Git-lfs might fail early; let's rely on these caches to be recreated, where possible ([`b6f2b81`](https://togithub.com/Byron/gitoxide/commit/b6f2b81))
    -   Release gix-hash v0.13.3, gix-index v0.27.1 ([`98b08f4`](https://togithub.com/Byron/gitoxide/commit/98b08f4))
    -   Merge branch 'mailmap-config-section' ([`8dda069`](https://togithub.com/Byron/gitoxide/commit/8dda069))
    -   Use new `mailmap` keys and make a few improvements. ([`7f65ffd`](https://togithub.com/Byron/gitoxide/commit/7f65ffd))
    -   Assign more suitable types to `mailmap` keys ([`1bf3e88`](https://togithub.com/Byron/gitoxide/commit/1bf3e88))
    -   Add config section for mailmap.{blob,file}. ([`86c7fa1`](https://togithub.com/Byron/gitoxide/commit/86c7fa1))
    -   Merge branch 'configure-prepare-fetch' ([`281fda0`](https://togithub.com/Byron/gitoxide/commit/281fda0))
    -   Add `clone::PrepareFetch::with_in_memory_config_overrides()`. ([`b5c36b8`](https://togithub.com/Byron/gitoxide/commit/b5c36b8))
    -   Allow overriding Git configuration when cloning. ([`9833b45`](https://togithub.com/Byron/gitoxide/commit/9833b45))
    -   Merge branch 'push-yvzxzqrkkvry' ([`4917beb`](https://togithub.com/Byron/gitoxide/commit/4917beb))
    -   Fixup new unsafe interrupt handler ([`c23bb87`](https://togithub.com/Byron/gitoxide/commit/c23bb87))
    -   Mark `gix::interrupt::init_handler()` as unsafe ([`59b8104`](https://togithub.com/Byron/gitoxide/commit/59b8104))
    -   Reduce size of unsafe block in signal handler ([`d77bc0e`](https://togithub.com/Byron/gitoxide/commit/d77bc0e))
    -   Release gix-config v0.32.1 ([`cd26fd8`](https://togithub.com/Byron/gitoxide/commit/cd26fd8))
    -   Merge branch 'adjustments-for-cargo' ([`56588a9`](https://togithub.com/Byron/gitoxide/commit/56588a9))
    -   Fix import/prevent warning ([`ec0211a`](https://togithub.com/Byron/gitoxide/commit/ec0211a))

</details>

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 5am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/rust-lang/cargo).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMDMuMSIsInVwZGF0ZWRJblZlciI6IjM3LjEwMy4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
2024-01-02 03:24:42 +00:00

255 lines
7.1 KiB
TOML

[workspace]
resolver = "2"
members = [
"crates/*",
"credential/*",
"benches/benchsuite",
"benches/capture",
]
exclude = [
"target/", # exclude bench testing
]
[workspace.package]
rust-version = "1.73" # MSRV:1
edition = "2021"
license = "MIT OR Apache-2.0"
homepage = "https://github.com/rust-lang/cargo"
repository = "https://github.com/rust-lang/cargo"
[workspace.dependencies]
anstream = "0.6.5"
anstyle = "1.0.4"
anyhow = "1.0.75"
base64 = "0.21.5"
bytesize = "1.3"
cargo = { path = "" }
cargo-credential = { version = "0.4.2", path = "credential/cargo-credential" }
cargo-credential-libsecret = { version = "0.4.2", path = "credential/cargo-credential-libsecret" }
cargo-credential-macos-keychain = { version = "0.4.2", path = "credential/cargo-credential-macos-keychain" }
cargo-credential-wincred = { version = "0.4.2", path = "credential/cargo-credential-wincred" }
cargo-platform = { path = "crates/cargo-platform", version = "0.1.4" }
cargo-test-macro = { path = "crates/cargo-test-macro" }
cargo-test-support = { path = "crates/cargo-test-support" }
cargo-util = { version = "0.2.6", path = "crates/cargo-util" }
cargo-util-schemas = { version = "0.2.0", path = "crates/cargo-util-schemas" }
cargo_metadata = "0.18.1"
clap = "4.4.10"
color-print = "0.3.5"
core-foundation = { version = "0.9.4", features = ["mac_os_10_7_support"] }
crates-io = { version = "0.39.0", path = "crates/crates-io" }
criterion = { version = "0.5.1", features = ["html_reports"] }
curl = "0.4.44"
curl-sys = "0.4.70"
filetime = "0.2.22"
flate2 = { version = "1.0.28", default-features = false, features = ["zlib"] }
git2 = "0.18.1"
git2-curl = "0.19.0"
gix = { version = "0.57.1", default-features = false, features = ["blocking-http-transport-curl", "progress-tree", "revision"] }
gix-features-for-configuration-only = { version = "0.37.1", package = "gix-features", features = [ "parallel" ] }
glob = "0.3.1"
handlebars = { version = "4.5.0", features = ["dir_source"] }
hex = "0.4.3"
hmac = "0.12.1"
home = "0.5.5"
http-auth = { version = "0.1.8", default-features = false }
humantime = "2.1.0"
ignore = "0.4.21"
im-rc = "15.1.0"
indexmap = "2"
itertools = "0.12.0"
jobserver = "0.1.27"
lazycell = "1.3.0"
libc = "0.2.150"
libgit2-sys = "0.16.1"
libloading = "0.8.1"
memchr = "2.6.4"
miow = "0.6.0"
opener = "0.6.1"
openssl = "0.10.57"
os_info = "3.7.0"
pasetors = { version = "0.6.7", features = ["v3", "paserk", "std", "serde"] }
pathdiff = "0.2"
percent-encoding = "2.3"
pkg-config = "0.3.27"
proptest = "1.4.0"
pulldown-cmark = { version = "0.9.3", default-features = false }
rand = "0.8.5"
regex = "1.10.2"
rusqlite = { version = "0.30.0", features = ["bundled"] }
rustfix = { version = "0.8.0", path = "crates/rustfix" }
same-file = "1.0.6"
security-framework = "2.9.2"
semver = { version = "1.0.20", features = ["serde"] }
serde = "1.0.193"
serde-untagged = "0.1.1"
serde-value = "0.7.0"
serde_ignored = "0.1.9"
serde_json = "1.0.108"
sha1 = "0.10.6"
sha2 = "0.10.8"
shell-escape = "0.1.5"
supports-hyperlinks = "2.1.0"
snapbox = { version = "0.4.14", features = ["diff", "path"] }
syn = { version = "2.0.39", features = ["extra-traits", "full"] }
tar = { version = "0.4.40", default-features = false }
tempfile = "3.8.1"
thiserror = "1.0.50"
time = { version = "0.3", features = ["parsing", "formatting", "serde"] }
toml = "0.8.8"
toml_edit = { version = "0.21.0", features = ["serde"] }
tracing = "0.1.40"
tracing-subscriber = { version = "0.3.18", features = ["env-filter"] }
unicase = "2.7.0"
unicode-width = "0.1.11"
unicode-xid = "0.2.4"
url = "2.5.0"
varisat = "0.2.2"
walkdir = "2.4.0"
windows-sys = "0.52"
[workspace.lints.rust]
rust_2018_idioms = "warn" # TODO: could this be removed?
[workspace.lints.rustdoc]
private_intra_doc_links = "allow"
[workspace.lints.clippy]
all = { level = "allow", priority = -1 }
dbg_macro = "warn"
disallowed_methods = "warn"
print_stderr = "warn"
print_stdout = "warn"
self_named_module_files = "warn"
[package]
name = "cargo"
version = "0.78.0"
edition.workspace = true
license.workspace = true
rust-version.workspace = true
homepage = "https://doc.rust-lang.org/cargo/index.html"
repository.workspace = true
documentation = "https://docs.rs/cargo"
description = """
Cargo, a package manager for Rust.
"""
[lib]
name = "cargo"
path = "src/cargo/lib.rs"
[dependencies]
anstream.workspace = true
anstyle.workspace = true
anyhow.workspace = true
base64.workspace = true
bytesize.workspace = true
cargo-credential.workspace = true
cargo-platform.workspace = true
cargo-util-schemas.workspace = true
cargo-util.workspace = true
clap = { workspace = true, features = ["wrap_help"] }
color-print.workspace = true
crates-io.workspace = true
curl = { workspace = true, features = ["http2"] }
curl-sys.workspace = true
filetime.workspace = true
flate2.workspace = true
git2.workspace = true
git2-curl.workspace = true
gix.workspace = true
gix-features-for-configuration-only.workspace = true
glob.workspace = true
hex.workspace = true
hmac.workspace = true
home.workspace = true
http-auth.workspace = true
humantime.workspace = true
ignore.workspace = true
im-rc.workspace = true
indexmap.workspace = true
itertools.workspace = true
jobserver.workspace = true
lazycell.workspace = true
libc.workspace = true
libgit2-sys.workspace = true
memchr.workspace = true
opener.workspace = true
os_info.workspace = true
pasetors.workspace = true
pathdiff.workspace = true
pulldown-cmark.workspace = true
rand.workspace = true
regex.workspace = true
rusqlite.workspace = true
rustfix.workspace = true
semver.workspace = true
serde = { workspace = true, features = ["derive"] }
serde-untagged.workspace = true
serde_ignored.workspace = true
serde_json = { workspace = true, features = ["raw_value"] }
sha1.workspace = true
shell-escape.workspace = true
supports-hyperlinks.workspace = true
syn.workspace = true
tar.workspace = true
tempfile.workspace = true
time.workspace = true
toml.workspace = true
toml_edit.workspace = true
tracing.workspace = true
tracing-subscriber.workspace = true
unicase.workspace = true
unicode-width.workspace = true
url.workspace = true
walkdir.workspace = true
[target.'cfg(target_os = "linux")'.dependencies]
cargo-credential-libsecret.workspace = true
[target.'cfg(target_os = "macos")'.dependencies]
cargo-credential-macos-keychain.workspace = true
[target.'cfg(not(windows))'.dependencies]
openssl = { workspace = true, optional = true }
[target.'cfg(windows)'.dependencies]
cargo-credential-wincred.workspace = true
[target.'cfg(windows)'.dependencies.windows-sys]
workspace = true
features = [
"Win32_Foundation",
"Win32_Security",
"Win32_Storage_FileSystem",
"Win32_System_IO",
"Win32_System_Console",
"Win32_System_JobObjects",
"Win32_System_Threading",
]
[dev-dependencies]
cargo-test-macro.workspace = true
cargo-test-support.workspace = true
same-file.workspace = true
snapbox.workspace = true
[build-dependencies]
flate2.workspace = true
tar.workspace = true
[[bin]]
name = "cargo"
test = false
doc = false
[features]
vendored-openssl = ["openssl/vendored"]
vendored-libgit2 = ["libgit2-sys/vendored"]
# This is primarily used by rust-lang/rust distributing cargo the executable.
all-static = ['vendored-openssl', 'curl/static-curl', 'curl/force-system-lib-on-osx', 'vendored-libgit2']
[lints]
workspace = true