Repository navigation
Expand file tree
/
Copy pathCargo.toml
More file actions
96 lines (85 loc) · 3.56 KB
/
Copy pathCargo.toml
File metadata and controls
96 lines (85 loc) · 3.56 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
[package]
name = "jevgate"
version = "0.35.0"
edition = "2024"
rust-version = "1.90"
description = "Code-review gate for CI and coding agents: asks TypeSafe Jev small questions about functions, files, tests and docs, and reports maintainability, test, security and documentation findings with locations and how often findings like them were right"
repository = "https://github.com/Tech-Byte-Frontier/jevgate"
homepage = "https://tech-byte-frontier.github.io/jevgate/"
documentation = "https://tech-byte-frontier.github.io/jevgate/"
readme = "README.md"
keywords = ["code-review", "ci", "static-analysis", "maintainability", "security"]
categories = ["command-line-utilities", "development-tools"]
include = ["/src/**", "/tests/**", "/gallery/**", "/Cargo.toml", "/Cargo.lock", "/README.md", "/CHANGELOG.md", "/LICENSE-*", "/NOTICE"]
license = "MIT OR Apache-2.0"
# `cargo binstall jevgate` downloads the archives the release workflow attaches.
[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/{ name }-{ version }-{ target }{ archive-suffix }"
bin-dir = "{ name }-{ version }-{ target }/{ bin }{ binary-ext }"
pkg-fmt = "tgz"
[package.metadata.binstall.overrides.x86_64-pc-windows-msvc]
pkg-fmt = "zip"
[dependencies]
anyhow = "=1.0.104"
clap = { version = "=4.6.7", features = ["derive", "string"] }
clap_complete = "=4.6.11"
clap_mangen = "=0.3.3"
globset = "=0.4.20"
ignore = "=0.4.33"
keyring = { version = "=4.2.0", default-features = false, features = ["v1"] }
rpassword = "=7.5.4"
zeroize = "=1.9.0"
serde = { version = "=1.0.229", features = ["derive"] }
serde_json = { version = "=1.0.151", features = ["float_roundtrip", "raw_value"] }
sha2 = "=0.11.0"
toml = "=1.1.6"
tree-sitter = "=0.27.0"
tree-sitter-rust = "=0.24.2"
tree-sitter-python = "=0.25.0"
tree-sitter-javascript = "=0.25.0"
tree-sitter-typescript = "=0.23.2"
tree-sitter-go = "=0.25.0"
tree-sitter-c-sharp = "=0.23.5"
tree-sitter-ruby = "=0.23.1"
tree-sitter-php = "=0.24.2"
tree-sitter-java = "=0.23.5"
tree-sitter-bend2 = "=0.1.2"
# The generic tier (`analysis::generic`), read through tag queries only.
tree-sitter-c = "=0.24.2"
tree-sitter-cpp = "=0.23.4"
tree-sitter-kotlin-ng = "=1.1.0"
tree-sitter-swift = "=0.7.3"
tree-sitter-bash = "=0.25.1"
tree-sitter-dart = "=0.2.0"
tree-sitter-scala = "=0.26.2"
tree-sitter-elixir = "=0.3.5"
tree-sitter-lua = "=0.5.0"
ureq = { version = "=3.4.2", default-features = false, features = ["rustls", "json"] }
# The JSON Schema of jevgate.toml is generated by a test from the configuration types.
[dev-dependencies]
schemars = "=1.2.2"
[target.'cfg(unix)'.dependencies]
libc = "=0.2.189"
signal-hook = { version = "=0.4.4", default-features = false }
# Keychain reads without a terminal turn macOS's dialog off (`auth::store`).
[target.'cfg(target_os = "macos")'.dependencies]
security-framework = { version = "=3.7.0", default-features = false }
[target.'cfg(all(unix, not(any(target_os = "macos", target_os = "ios", target_os = "android"))))'.dependencies]
secret-service = { version = "=5.2.0", features = ["rt-async-io-crypto-rust"] }
zbus = "=5.19.0"
[profile.dev]
debug = 1
[profile.release]
strip = true
lto = "thin"
# Unused code is deleted and long parameter lists are grouped, never silenced
# (tests/lint_policy.rs rejects suppressing them). Any other exception must use
# `#[expect(lint, reason = "...")]`. `forbid` would reject the allows that
# derive macros emit, so these are `deny`.
[lints.rust]
unused = { level = "deny", priority = -1 }
dead_code = "deny"
[lints.clippy]
too_many_arguments = "deny"
allow_attributes = "deny"
allow_attributes_without_reason = "deny"