mirror of
https://github.com/rust-lang/cargo
synced 2024-07-17 11:08:08 +00:00
![bors](/assets/img/avatar_default.png)
fix(embedded): Don't create an intermediate manifest ### What does this PR try to resolve? More immediately, this is to unblock rust-lang/rust#112601 More generally, this gets us away from hackily writing out an out-of-line manifest from an embedded manifest. To parse the manifest, we have to write it out so our regular manifest loading code could handle it. This updates the manifest parsing code to handle it. This doesn't mean this will work everywhere in all cases though. For example, ephemeral workspaces parses a manifest from the SourceId and these won't have valid SourceIds. As a consequence, `Cargo.lock` and `CARGO_TARGET_DIR` are changing from being next to the temp manifest to being next to the script. This still isn't the desired behavior but stepping stones. ### How should we test and review this PR? A Commit at a time ### Additional information In production code, this does not conflict with #12255 (due to #12262) but in test code, it does.
211 lines
5.6 KiB
TOML
211 lines
5.6 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"crates/*",
|
|
"credential/*",
|
|
"benches/benchsuite",
|
|
"benches/capture",
|
|
]
|
|
exclude = [
|
|
"target/", # exclude bench testing
|
|
]
|
|
|
|
[workspace.dependencies]
|
|
anyhow = "1.0.47"
|
|
base64 = "0.21.0"
|
|
bytesize = "1.0"
|
|
cargo = { path = "" }
|
|
cargo-credential = { version = "0.2.0", path = "credential/cargo-credential" }
|
|
cargo-platform = { path = "crates/cargo-platform", version = "0.1.3" }
|
|
cargo-test-macro = { path = "crates/cargo-test-macro" }
|
|
cargo-test-support = { path = "crates/cargo-test-support" }
|
|
cargo-util = { version = "0.2.4", path = "crates/cargo-util" }
|
|
cargo_metadata = "0.14.0"
|
|
clap = "4.2.0"
|
|
core-foundation = { version = "0.9.0", features = ["mac_os_10_7_support"] }
|
|
crates-io = { version = "0.36.1", path = "crates/crates-io" }
|
|
criterion = { version = "0.3.5", features = ["html_reports"] }
|
|
curl = "0.4.44"
|
|
curl-sys = "0.4.63"
|
|
env_logger = "0.10.0"
|
|
filetime = "0.2.9"
|
|
flate2 = { version = "1.0.3", default-features = false, features = ["zlib"] }
|
|
fwdansi = "1.1.0"
|
|
git2 = "0.17.1"
|
|
git2-curl = "0.18.0"
|
|
gix = { version = "0.45.1", default-features = false, features = ["blocking-http-transport-curl", "progress-tree"] }
|
|
gix-features-for-configuration-only = { version = "0.30.0", package = "gix-features", features = [ "parallel" ] }
|
|
glob = "0.3.0"
|
|
handlebars = { version = "3.2.1", features = ["dir_source"] }
|
|
hex = "0.4.2"
|
|
hmac = "0.12.1"
|
|
home = "0.5.5"
|
|
http-auth = { version = "0.1.6", default-features = false }
|
|
humantime = "2.0.0"
|
|
ignore = "0.4.7"
|
|
im-rc = "15.0.0"
|
|
indexmap = "1"
|
|
itertools = "0.10.0"
|
|
jobserver = "0.1.26"
|
|
lazy_static = "1.3.0"
|
|
lazycell = "1.2.0"
|
|
libc = "0.2.144"
|
|
libgit2-sys = "0.15.1"
|
|
log = "0.4.17"
|
|
memchr = "2.1.3"
|
|
miow = "0.5.0"
|
|
opener = "0.5"
|
|
openssl ="0.10.50"
|
|
os_info = "3.5.0"
|
|
pasetors = { version = "0.6.4", features = ["v3", "paserk", "std", "serde"] }
|
|
pathdiff = "0.2"
|
|
percent-encoding = "2.0"
|
|
pkg-config = "0.3.19"
|
|
pretty_assertions = "1.3.0"
|
|
pretty_env_logger = "0.4"
|
|
proptest = "1.1.0"
|
|
pulldown-cmark = { version = "0.9.2", default-features = false }
|
|
rand = "0.8.5"
|
|
rustfix = "0.6.0"
|
|
same-file = "1.0.6"
|
|
security-framework = "2.0.0"
|
|
semver = { version = "1.0.3", features = ["serde"] }
|
|
serde = "1.0.123"
|
|
serde-value = "0.7.0"
|
|
serde_ignored = "0.1.0"
|
|
serde_json = "1.0.59"
|
|
sha1 = "0.10.5"
|
|
sha2 = "0.10.6"
|
|
shell-escape = "0.1.4"
|
|
snapbox = { version = "0.4.0", features = ["diff", "path"] }
|
|
strip-ansi-escapes = "0.1.0"
|
|
syn = { version = "2.0.14", features = ["extra-traits", "full"] }
|
|
tar = { version = "0.4.38", default-features = false }
|
|
tempfile = "3.1.0"
|
|
termcolor = "1.1.2"
|
|
time = { version = "0.3", features = ["parsing", "formatting"] }
|
|
toml = "0.7.0"
|
|
toml_edit = "0.19.0"
|
|
unicode-width = "0.1.5"
|
|
unicode-xid = "0.2.0"
|
|
url = "2.2.2"
|
|
varisat = "0.2.1"
|
|
walkdir = "2.3.1"
|
|
windows-sys = "0.48"
|
|
|
|
[package]
|
|
name = "cargo"
|
|
version = "0.73.0"
|
|
edition = "2021"
|
|
license = "MIT OR Apache-2.0"
|
|
homepage = "https://crates.io"
|
|
repository = "https://github.com/rust-lang/cargo"
|
|
documentation = "https://docs.rs/cargo"
|
|
readme = "README.md"
|
|
description = """
|
|
Cargo, a package manager for Rust.
|
|
"""
|
|
|
|
[lib]
|
|
name = "cargo"
|
|
path = "src/cargo/lib.rs"
|
|
|
|
[dependencies]
|
|
anyhow.workspace = true
|
|
base64.workspace = true
|
|
bytesize.workspace = true
|
|
cargo-platform.workspace = true
|
|
cargo-util.workspace = true
|
|
clap = { workspace = true, features = ["wrap_help"] }
|
|
crates-io.workspace = true
|
|
curl = { workspace = true, features = ["http2"] }
|
|
curl-sys.workspace = true
|
|
env_logger.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
|
|
log.workspace = true
|
|
memchr.workspace = true
|
|
opener.workspace = true
|
|
os_info.workspace = true
|
|
pasetors.workspace = true
|
|
pathdiff.workspace = true
|
|
pretty_env_logger = { workspace = true, optional = true }
|
|
pulldown-cmark.workspace = true
|
|
rand.workspace = true
|
|
rustfix.workspace = true
|
|
semver.workspace = true
|
|
serde = { workspace = true, features = ["derive"] }
|
|
serde-value.workspace = true
|
|
serde_ignored.workspace = true
|
|
serde_json = { workspace = true, features = ["raw_value"] }
|
|
sha1.workspace = true
|
|
shell-escape.workspace = true
|
|
strip-ansi-escapes.workspace = true
|
|
syn.workspace = true
|
|
tar.workspace = true
|
|
tempfile.workspace = true
|
|
termcolor.workspace = true
|
|
time.workspace = true
|
|
toml.workspace = true
|
|
toml_edit.workspace = true
|
|
unicode-width.workspace = true
|
|
unicode-xid.workspace = true
|
|
url.workspace = true
|
|
walkdir.workspace = true
|
|
|
|
[target.'cfg(not(windows))'.dependencies]
|
|
openssl = { workspace = true, optional = true }
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
fwdansi.workspace = true
|
|
|
|
[target.'cfg(windows)'.dependencies.windows-sys]
|
|
workspace = true
|
|
features = [
|
|
"Win32_Foundation",
|
|
"Win32_Storage_FileSystem",
|
|
"Win32_System_Console",
|
|
"Win32_System_Threading",
|
|
"Win32_System_JobObjects",
|
|
]
|
|
|
|
[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"]
|
|
pretty-env-logger = ["pretty_env_logger"]
|
|
# 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']
|