forked from kellnr/kellnr
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
119 lines (112 loc) · 4.69 KB
/
Cargo.toml
File metadata and controls
119 lines (112 loc) · 4.69 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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
[workspace]
default-members = ["crates/kellnr"]
members = ["crates/*", "crates/db/entity", "crates/db/migration"]
resolver = "3"
[workspace.package]
authors = ["kellnr.io"]
edition = "2024"
license = "MIT OR Apache-2.0"
version = "6.0.1"
description = "Kellnr is a self-hosted registry for Rust crates with support for rustdocs and crates.io caching."
homepage = "https://kellnr.io/"
repository = "https://github.com/kellnr/kellnr"
documentation = "https://kellnr.io/documentation"
readme = "README.md"
keywords = ["cargo", "registry", "crates-io", "self-hosted"]
[workspace.dependencies]
# Internal dependencies from Kellnr
kellnr-appstate = { version = "6.0.1", path = "./crates/appstate" }
kellnr-auth = { version = "6.0.1", path = "./crates/auth" }
kellnr-common = { version = "6.0.1", path = "./crates/common" }
kellnr-db = { version = "6.0.1", path = "./crates/db" }
kellnr-db-testcontainer = { version = "6.0.1", path = "./crates/db/db-testcontainer" }
kellnr-docs = { version = "6.0.1", path = "./crates/docs" }
kellnr-entity = { version = "6.0.1", path = "./crates/db/entity" }
kellnr-error = { version = "6.0.1", path = "./crates/error" }
kellnr-index = { version = "6.0.1", path = "./crates/index" }
kellnr-migration = { version = "6.0.1", path = "./crates/db/migration" }
kellnr-rustfs-testcontainer = { version = "6.0.1", path = "./crates/storage/rustfs-testcontainer" }
kellnr-registry = { version = "6.0.1", path = "./crates/registry" }
kellnr-settings = { version = "6.0.1", path = "./crates/settings" }
kellnr-storage = { version = "6.0.1", path = "./crates/storage" }
kellnr-web-ui = { version = "6.0.1", path = "./crates/web-ui" }
kellnr-webhooks = { version = "6.0.1", path = "./crates/webhooks" }
kellnr-embedded-resources = { version = "6.0.1", path = "./crates/embedded-resources" }
# External dependencies from crates.io
async-trait = "0.1.89"
axum = { version = "0.8.7", features = ["macros", "http2"] }
axum-extra = { version = "0.12.5", features = ["cookie", "cookie-private", "typed-header"] }
base64 = "0.22.1"
bytes = "1.11.1"
cargo = "0.86.0"
chrono = "0.4.41"
config = "0.15.19"
cookie = { version = "0.18.1", features = ["private", "percent-encode"] }
flate2 = "1.1.9"
flume = "0.12.0"
fs_extra = "1.3.0"
http-body-util = "0.1.3"
hyper = "1.8.1"
include_dir = "0.7.4"
mime_guess = "2.0.5"
mockall = "0.14.0"
moka = { version = "0.12.12", features = ["future"] }
object_store = { version = "0.13.1", default-features = false, features = ["aws", "fs"] }
openidconnect = "4"
quote = "1.0.44"
rand = "0.9.2"
regex = "1.12.3"
reqwest = { version = "0.13.2", features = ["json", "blocking", "gzip", "http2", "deflate"] }
rm_rf = "0.6.2"
sea-orm = { version = "2.0.0-rc.27", features = ["sqlx-postgres", "sqlx-sqlite", "runtime-tokio-rustls", "macros"] }
sea-orm-migration = { version = "2.0.0-rc.27", features = ["sqlx-postgres", "sqlx-sqlite", "runtime-tokio-rustls"] }
sea-query = "1.0.0-rc.29"
semver = "1.0.27"
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.149"
sha256 = "1.6.0"
syn = { version = "2.0.115", features = ["full"] }
tar = "0.4.44"
tempfile = "3"
testcontainers = "0.27.0"
thiserror = "2.0.18"
time = "0.3.47"
tokio = { version = "1.48.0", features = ["macros"] }
toml = "0.9.11"
tower = { version = "0.5.2", features = ["util"] }
tower-http = { version = "0.6.8", features = ["fs", "trace"] }
tracing = "0.1.43"
tracing-subscriber = { version = "0.3.22", features = ["json", "fmt"] }
url = { version = "2.5.8", features = ["serde"] }
utoipa = { version = "5", features = ["axum_extras", "chrono"] }
utoipa-axum = "0.2"
utoipa-swagger-ui = { version = "9", features = ["axum", "vendored"] }
uuid = { version = "1.21.0", features = ["v4"] }
zip = "6.0.0"
clap = { version = "4", features = ["derive"] }
clap-serde-derive = "0.2"
[profile.release]
lto = "thin"
strip = true
[workspace.lints.rust]
unsafe_code = "forbid"
unused_qualifications = "warn"
[workspace.lints.clippy]
pedantic = { level = "warn", priority = -1 }
# Decided lints to be kept disabled for now
cast_lossless = "allow"
missing_errors_doc = "allow"
must_use_candidate = "allow"
used_underscore_binding = "allow"
# This list of warnings with their counts was generated by running
# `cargo clippy --all-targets --workspace --all-features --message-format=json --quiet | jq -r '.message.code.code | select(. != null and startswith("clippy::"))' | sort | uniq -c | sort -h -r`
# Most likely some of should be permanently allowed, but they at least should be reviewed.
cast_possible_truncation = "allow" # 28
cast_sign_loss = "allow" # 20
missing_panics_doc = "allow" # 10
cast_possible_wrap = "allow" # 10
if_not_else = "allow" # 8
too_many_lines = "allow" # 6
[[workspace.metadata.k-releaser.package]]
name = "kellnr-embedded-resources"
publish_allow_dirty = true