chore: centralize and upgrade shared Cargo dependencies

Move duplicated Cargo dependencies to the root workspace manifest, switch member crates to workspace dependencies, and align non-conflicting shared feature sets at the workspace level.

Upgrade a number of shared dependencies while consolidating versions across the workspace. This also consolidates the ldap3 dependency in response to GHSA-qcxq-75wr-5cm8: https://github.com/kanidm/ldap3/security/advisories/GHSA-qcxq-75wr-5cm8

Update frontend and migration code for dependency upgrades and clean up manifest structure.
This commit is contained in:
Valentin Tolmer
2026-04-30 23:01:22 +02:00
committed by nitnelave
parent b8465212b5
commit 40121b80b7
26 changed files with 1336 additions and 1721 deletions

View File

@@ -13,44 +13,30 @@ rust-version.workspace = true
test = []
[dependencies]
anyhow = "*"
async-trait = "0.1"
base64 = "0.21"
bincode = "1.3"
itertools = "0.10"
ldap3_proto = "0.6.0"
orion = "0.17"
serde_json = "1"
tracing = "*"
anyhow = { workspace = true }
async-trait = { workspace = true }
itertools = { workspace = true }
orion = { workspace = true }
serde_json = { workspace = true }
tracing = { workspace = true }
[dependencies.chrono]
features = ["serde"]
version = "*"
bincode = { workspace = true }
[dependencies.rand]
features = ["small_rng", "getrandom"]
version = "0.8"
base64 = { workspace = true }
[dependencies.sea-orm]
workspace = true
features = [
"macros",
"with-chrono",
"with-uuid",
"sqlx-all",
"runtime-actix-rustls",
]
chrono = { workspace = true }
[dependencies.secstr]
features = ["serde"]
version = "*"
rand = { workspace = true }
[dependencies.serde]
workspace = true
sea-orm = { workspace = true }
[dependencies.uuid]
version = "1"
features = ["v1", "v3"]
secstr = { workspace = true }
serde = { workspace = true }
uuid = { workspace = true }
ldap3_proto = { workspace = true }
[dependencies.lldap_access_control]
path = "../access-control"
@@ -79,14 +65,10 @@ features = ["test"]
path = "../test-utils"
[dev-dependencies]
log = "*"
mockall = "0.11.4"
pretty_assertions = "1"
log = { workspace = true }
mockall = { workspace = true }
pretty_assertions = { workspace = true }
[dev-dependencies.tokio]
features = ["full"]
version = "1.25"
tokio = { workspace = true }
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter", "tracing-log"]
tracing-subscriber = { workspace = true }

View File

@@ -536,7 +536,7 @@ See https://github.com/lldap/lldap/blob/main/docs/migration_guides/v0.5.md for d
Conflicting emails:
"#,
);
for (email, users) in &transaction
let duplicate_users = transaction
.query_all(
builder.build(
Query::select()
@@ -568,9 +568,8 @@ Conflicting emails:
row.try_get::<String>("", &Users::Email.to_string())
.unwrap(),
)
})
.group_by(|(_user, email)| email.to_owned())
{
});
for (email, users) in &duplicate_users.chunk_by(|(_user, email)| email.to_owned()) {
warn!("Email: {email}");
for (user, _email) in users {
warn!(" User: {}", user.as_str());