forked from Zious11/jira-cli
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
98 lines (93 loc) · 4.15 KB
/
Copy pathCargo.toml
File metadata and controls
98 lines (93 loc) · 4.15 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
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
[package]
name = "jr"
version = "0.8.0-dev.2"
edition = "2024"
description = "A fast CLI for Jira Cloud"
repository = "https://github.com/Zious11/jira-cli"
rust-version = "1.88"
license = "MIT"
[[bin]]
name = "jr"
path = "src/main.rs"
[target.'cfg(windows)'.dependencies]
# Already present transitively via keyring's `windows-native` feature at the
# same 0.60 version (see deny.toml's windows-sys "0.60" [[bans.skip]] entry)
# — promoting it to a direct dependency here adds ZERO new dependency-graph
# nodes (ADR-0021 §5, AC-020, S-cycle4-dpapi-storage-fix). Used by
# `src/api/auth_windows_store.rs`'s `#[cfg(windows)] mod dpapi` for the
# CryptProtectData/CryptUnprotectData FFI wrapper.
windows-sys = { version = "0.61", features = ["Win32_Security_Cryptography", "Win32_Foundation"] }
[dependencies]
anyhow = "1"
clap = { version = "4", features = ["derive"] }
clap_complete = "4"
colored = "3"
# Pinned to 7.2.2 (exact, not a caret range): 7.2.2 uses let-chains (edition
# 2024, requires Rust ≥1.88) and deleted the rust-version manifest field, so a
# caret range resolves to whatever's newest without any MSRV enforcement from
# cargo. Now that this crate's own rust-version (above) is 1.88, 7.2.2's
# let-chain usage compiles cleanly — the exact pin here is retained (not
# relaxed to a caret) purely to keep future comfy-table bumps going through a
# reviewed Cargo.toml diff rather than a silent `cargo update`, mirroring the
# saphyr-parser convention below.
# See: issue #626, ADR-0025.
comfy-table = "=7.2.2"
dialoguer = "0.12"
dirs = "6"
figment = { version = "0.10", features = ["toml", "env"] }
keyring = { version = "3", features = ["apple-native", "linux-native", "windows-native"] }
open = "5"
reqwest = { version = "0.13", default-features = false, features = ["json", "multipart", "rustls", "stream"] }
tokio-util = { version = "^0.7", features = ["io-util"] }
sha1 = { version = "^0.11" }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
thiserror = "2"
tokio = { version = "1", features = ["full"] }
toml = "1"
base64 = "0.22"
chrono = { version = "0.4", features = ["serde"] }
futures = { version = "0.3", default-features = false, features = ["async-await"] }
rand = "0.10"
urlencoding = "2"
url = "2"
pulldown-cmark = { version = "0.13", default-features = false }
tracing = "0.1.41"
tracing-subscriber = { version = "0.3.19", features = ["env-filter", "fmt"] }
[dev-dependencies]
assert_cmd = "2"
predicates = "3"
tempfile = "3"
wiremock = "0.6"
insta = { version = "1", features = ["json"] }
proptest = "1"
# test-util enables tokio::time::pause() + start_paused = true for S-3.07 AC-001/AC-002
tokio = { version = "1", features = ["test-util"] }
# temp-env: scoped env-var overrides for cache-isolation tests (H-2 / S-396)
temp-env = "0.3"
# scopeguard: defer! for cleanup-on-panic in integration tests (L-7 / S-396)
scopeguard = "1"
# glob: expand examine_globs patterns for Guard 3 existence check (S-MUTANTS-SCOPE-GUARDS-1 / D-150)
glob = "0.3"
# sha1: compute batch-path prefixes in mutation-kill tests (PG-F4-10)
sha1 = { version = "^0.11" }
# saphyr-parser: event-stream-only YAML parsing for tests/ci_gate_completeness.rs (S-CIGATE-3).
# Exact-version pin (not a caret range) — 0.0.x carries no semver guarantee by convention,
# so a 0.0.x bump can be breaking; the exact pin forces any upgrade through a reviewed
# Cargo.toml diff rather than a silent `cargo update`. (Note: this crate's own MSRV sits at
# 1.85.0, below this repo's rust-version = "1.88" WITH headroom — no longer zero headroom
# now that the floor has moved. It IS enforced by the msrv CI job: as a [dev-dependencies]
# entry it now genuinely compiles and is checked under the job's widened
# `--all-targets` `cargo check` scope.) See CLAUDE.md ci-gate bullet / AC-006.
saphyr-parser = "=0.0.12"
# libc: already a resolved transitive dependency (pulled in by tokio/reqwest on
# Unix; 0.2.183 in Cargo.lock) but Rust requires an explicit Cargo.toml edge
# before `use libc::...` compiles from test code. Adds ZERO new crates to the
# dependency graph — see tests/interrupt_signal.rs (VP-MUTANTS-SCOPE-1-001).
libc = "0.2"
[profile.release]
opt-level = 3
lto = "thin"
codegen-units = 1
strip = true
panic = "abort"