Repository navigation
Expand file tree
/
Copy pathCargo.toml
More file actions
68 lines (64 loc) · 2.43 KB
/
Copy pathCargo.toml
File metadata and controls
68 lines (64 loc) · 2.43 KB
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
[package]
name = "colony"
version = "0.10.3"
edition = "2021"
license = "GPL-3.0-or-later"
# The real floor, and it is enforced by CI (see .github/workflows/ci.yml).
# 1.80 was declared for years and could never have worked: 70 transitive
# dependencies require more, including iced, zip, image and wgpu at 1.88, so
# cargo refuses to build at all on it. Nothing checked, because CI only ever
# ran on stable.
rust-version = "1.88"
[dependencies]
anyhow = "1.0.100"
# The shared theme, palettes, accents, labels and widgets, generated from the
# design tokens in Project-Colony-Resources.
colony-ui = "0.1.5"
iced = { version = "0.14.0", features = ["tokio", "markdown", "advanced", "image-without-codecs"] }
shell-words = "1.1.1"
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.149"
toml = "0.9.11"
reqwest = { version = "0.12", default-features = false, features = ["json", "stream", "rustls-tls", "http2", "charset", "system-proxy"] }
tokio = { version = "1", features = ["sync", "time", "rt"] }
futures = "0.3"
open = "5"
base64 = "0.23"
dirs = "6"
# apple-native / windows-native are REQUIRED, not optional: keyring 3 has no
# default feature, and without them its macOS and Windows backends resolve to
# the in-memory `mock`, whose set_password returns Ok while storing nothing.
# Colony reads that Ok as success and deletes its plaintext fallback on purpose,
# so the token was written nowhere and every restart logged the user out. Both
# are target-gated in keyring's manifest, so they add nothing to the Linux build.
keyring = { version = "3", features = [
"apple-native",
"windows-native",
"sync-secret-service",
"vendored",
] }
semver = "1"
sha2 = "0.10"
# Pure-Rust ed25519 verification for signed launcher self-updates (no openssl).
ed25519-dalek = { version = "3", default-features = false }
zip = { version = "8", default-features = false, features = ["deflate"] }
tar = "0.4"
flate2 = "1"
# PNG-only decoder for per-app icons (no other codecs); pairs with iced's
# image-without-codecs to render decoded RGBA. Keeps the image stack minimal.
image = { version = "0.25", default-features = false, features = ["png"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
[profile.release]
lto = "thin"
codegen-units = 1
strip = "symbols"
[profile.fast]
inherits = "release"
debug = "line-tables-only"
incremental = true
lto = false
codegen-units = 16
strip = false
[dev-dependencies]
tempfile = "3"