File: Cargo.toml

package info (click to toggle)
rustup 1.27.1-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,636 kB
  • sloc: sh: 856; python: 233; javascript: 183; makefile: 27
file content (127 lines) | stat: -rw-r--r-- 3,615 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
[package]
name = "rustup"
version = "1.27.1"
edition = "2021"
description = "Manage multiple rust installations with ease"
homepage = "https://github.com/rust-lang/rustup"
keywords = ["rustup", "multirust", "install", "proxy"]
license = "MIT OR Apache-2.0"
readme = "README.md"
repository = "https://github.com/rust-lang/rustup"
build = "build.rs"

[features]
curl-backend = ["download/curl-backend"]
default = [
    "curl-backend",
    "reqwest-backend",
    "reqwest-default-tls"
]

reqwest-backend = ["download/reqwest-backend"]

reqwest-default-tls = ["download/reqwest-default-tls"]
# Include in the default set to disable self-update and uninstall.
no-self-update = []

# Exports code dependent on private interfaces for the integration test suite
test = ["dep:walkdir"]

# Sorted by alphabetic order
[dependencies]
anyhow.workspace = true
cfg-if = "1.0"
chrono = { version = "0.4", default-features = false, features = ["std"] }
clap = { version = "4", features = ["wrap_help"] }
clap_complete = "4"
download = { path = "download", default-features = false }
effective-limits = "0.5.5"
enum-map = "2.5.0"
enum_dispatch.workspace = true
flate2 = "1"
fs_at.workspace = true
git-testament = "0.2"
home = "0.5.4"
itertools = ">= 0.12, < 0.15"
libc = "0.2"
once_cell.workspace = true
opener = "0.6"
# `openssl` is used by `curl` or `reqwest` backend although it isn't imported by rustup: this
# allows controlling the vendoring status without exposing the presence of the download crate.
# HACK: We temporarily pin the OpenSSL version due to build issues encountered in
# https://github.com/rust-lang/rustup/pull/3668.
openssl = { version = "0.10", optional = true }
openssl-sys = { version = "0.9", optional = true }
pulldown-cmark = { version = "0.13", default-features = false }
rand = "0.8"
regex = "1"
remove_dir_all = { version = "0.8.1", features = ["parallel"] }
retry = { version = "2", default-features = false, features = ["random"] }
rs_tracing = { version = "1.1", features = ["rs_tracing"] }
same-file = "1"
scopeguard = "1"
semver = "1.0"
serde = { version = "1.0", features = ["derive"] }
sha2 = "0.10"
sharded-slab = "0.1.1"
strsim = "0.11"
tar = "0.4.26"
tempfile.workspace = true
termcolor.workspace = true
thiserror.workspace = true
threadpool = "1"
tokio = { workspace = true, optional = true }
toml = "0.8"
tracing-subscriber = { workspace = true, optional = true, features = ["env-filter"] }
tracing = { workspace = true, optional = true }
url.workspace = true
wait-timeout = "0.2"
walkdir = { workspace = true, optional = true }
xz2 = "0.1.3"
zstd = "0.13"

[dev-dependencies]
enum-map = "2.5.0"
proptest.workspace = true
rustup-macros.workspace = true
tokio = { workspace = true, features = ["rt-multi-thread", "macros"] }
trycmd = "0.14"

[build-dependencies]
once_cell.workspace = true
regex = "1"

[workspace]
members = ["download", "rustup-macros"]

[workspace.dependencies]
anyhow = "1.0.69"
enum_dispatch = "0.3.11"
fs_at = "0.1.6"
once_cell = "1.18.0"
proptest = "1.1.0"
rustup-macros = { path = "rustup-macros" }
tempfile = "3.8"
termcolor = "1.2"
thiserror = "1.0"
tokio = { version = "1.26.0", default-features = false, features = ["rt-multi-thread"] }
tracing = "0.1"
tracing-subscriber = "0.3.16"
url = "2.4"
walkdir = "2"

[lib]
name = "rustup"
path = "src/lib.rs"

[profile.release]
codegen-units = 1
lto = true

# Reduce build time by setting proc-macro crates non optimized.
[profile.release.build-override]
opt-level = 0

[package.metadata.cargo-all-features]
# Building with no web backend will error.
always_include_features = ["reqwest-backend", "reqwest-rustls-tls"]