diff --git a/Cargo.lock b/Cargo.lock index dd52cc794..2cd5e62e7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -24,7 +24,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if", - "getrandom", + "getrandom 0.2.15", "once_cell", "serde", "version_check", @@ -173,7 +173,7 @@ dependencies = [ "proc-macro2", "quote", "serde", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -215,7 +215,7 @@ checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "synstructure", ] @@ -227,23 +227,7 @@ checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", -] - -[[package]] -name = "assert_cmd" -version = "2.0.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc1835b7f27878de8525dc71410b5a31cdcc5f230aed5ba5df968e09c201b23d" -dependencies = [ - "anstyle", - "bstr", - "doc-comment", - "libc", - "predicates", - "predicates-core", - "predicates-tree", - "wait-timeout", + "syn 2.0.98", ] [[package]] @@ -278,18 +262,18 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "async-trait" -version = "0.1.85" +version = "0.1.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f934833b4b7233644e5848f235df3f57ed8c80f1528a26c3dfa13d2147fa056" +checksum = "644dd749086bf3771a2fbc5f256fdb982d53f011c7d5d560304eafeecebce79d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -345,7 +329,7 @@ dependencies = [ "http 1.2.0", "http-body 1.0.1", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-util", "itoa", "matchit", @@ -436,7 +420,7 @@ checksum = "57d123550fa8d071b7255cb0cc04dc302baa6c8c4a79f55701552684d8399bce" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -450,7 +434,7 @@ dependencies = [ "http 1.2.0", "http-body 1.0.1", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-util", "pin-project-lite", "tokio", @@ -542,7 +526,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.96", + "syn 2.0.98", "which", ] @@ -563,7 +547,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -651,9 +635,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.16.0" +version = "3.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" +checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" [[package]] name = "bytecount" @@ -675,15 +659,15 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" +checksum = "f61dac84819c6588b558454b194026eb1f09c293b9036ae9b159e74e73ab6cf9" [[package]] name = "cc" -version = "1.2.10" +version = "1.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13208fcbb66eaeffe09b99fffbe1af420f00a7b35aa99ad683dfc1aa76145229" +checksum = "c7777341816418c02e033934a09f20dc0ccaf65a5201ef8a450ae0105a573fda" dependencies = [ "shlex", ] @@ -743,9 +727,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.27" +version = "4.5.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "769b0145982b4b48713e01ec42d61614425f27b7058bda7180a3a41f30104796" +checksum = "3e77c3243bd94243c03672cb5154667347c457ca271254724f9f393aee1c05ff" dependencies = [ "clap_builder", "clap_derive", @@ -765,23 +749,23 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.5.42" +version = "4.5.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33a7e468e750fa4b6be660e8b5651ad47372e8fb114030b594c2d75d48c5ffd0" +checksum = "375f9d8255adeeedd51053574fd8d4ba875ea5fa558e86617b07f09f1680c8b6" dependencies = [ "clap", ] [[package]] name = "clap_derive" -version = "4.5.24" +version = "4.5.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54b755194d6389280185988721fffba69495eed5ee9feeee9a599b53db80318c" +checksum = "bf4ced95c6f4a675af3da73304b9ac4ed991640c36374e4b46795c49e17cf1ed" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -948,13 +932,13 @@ dependencies = [ [[package]] name = "cron" -version = "0.12.1" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f8c3e73077b4b4a6ab1ea5047c37c57aee77657bc8ecd6f29b0af082d0b0c07" +checksum = "5877d3fbf742507b66bc2a1945106bd30dd8504019d596901ddd012a4dd01740" dependencies = [ "chrono", - "nom", "once_cell", + "winnow 0.6.26", ] [[package]] @@ -1062,7 +1046,6 @@ dependencies = [ "prctl", "reqwest 0.12.12", "sd-notify", - "serde", "serde_json", "sketching", "tokio", @@ -1116,7 +1099,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1138,7 +1121,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core 0.20.10", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1182,7 +1165,7 @@ checksum = "8034092389675178f570469e6c3b0465d3d30b4505c294a6550db47f3c17ad18" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1254,22 +1237,17 @@ dependencies = [ [[package]] name = "dialoguer" -version = "0.10.4" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59c6f2989294b9a498d3ad5491a79c6deb604617378e1cdc4bfc1c1361fe2f87" +checksum = "658bce805d770f407bc62102fca7c2c64ceef2fbcb2b8bd19d2765ce093980de" dependencies = [ "console", "shell-words", "tempfile", + "thiserror 1.0.69", "zeroize", ] -[[package]] -name = "difflib" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8" - [[package]] name = "digest" version = "0.10.7" @@ -1309,15 +1287,9 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] -[[package]] -name = "doc-comment" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" - [[package]] name = "document-features" version = "0.2.10" @@ -1335,9 +1307,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "dyn-clone" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" +checksum = "feeef44e73baff3a26d371801df019877a9866a8c493d315ab00177843314f35" [[package]] name = "either" @@ -1386,7 +1358,7 @@ checksum = "a1ab991c1362ac86c61ab6f556cff143daa22e5a15e4e189df818b2fd19fe65b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1406,7 +1378,7 @@ checksum = "fc4caf64a58d7a6d65ab00639b046ff54399a39f5f2554728895ace4b297cd79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1482,7 +1454,7 @@ dependencies = [ "futures-util", "http 1.2.0", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-tls", "hyper-util", "mime", @@ -1515,7 +1487,7 @@ checksum = "c66b725fe9483b9ee72ccaec072b15eb8ad95a3ae63a8c798d5748883b72fd33" dependencies = [ "base64 0.22.1", "byteorder", - "getrandom", + "getrandom 0.2.15", "openssl", "zeroize", ] @@ -1622,9 +1594,9 @@ dependencies = [ [[package]] name = "fs4" -version = "0.8.4" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7e180ac76c23b45e767bd7ae9579bc0bb458618c4bc71835926e098e61d15f8" +checksum = "c29c30684418547d476f0b48e84f4821639119c483b1eccd566c8cd0cd05f521" dependencies = [ "rustix", "windows-sys 0.52.0", @@ -1695,7 +1667,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1738,16 +1710,6 @@ dependencies = [ "version_check", ] -[[package]] -name = "gethostname" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc3655aa6818d65bc620d6911f05aa7b6aeb596291e1e9f79e52df85583d1e30" -dependencies = [ - "rustix", - "windows-targets 0.52.6", -] - [[package]] name = "getrandom" version = "0.2.15" @@ -1757,10 +1719,22 @@ dependencies = [ "cfg-if", "js-sys", "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "wasm-bindgen", ] +[[package]] +name = "getrandom" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a49c392881ce6d5c3b8cb70f98717b7c07aabbdff06687b9030dbfbe2725f8" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.13.3+wasi-0.2.2", + "windows-targets 0.52.6", +] + [[package]] name = "gif" version = "0.13.1" @@ -1827,7 +1801,7 @@ dependencies = [ "gix-utils", "itoa", "thiserror 1.0.69", - "winnow 0.6.24", + "winnow 0.6.26", ] [[package]] @@ -1871,7 +1845,7 @@ dependencies = [ "smallvec", "thiserror 1.0.69", "unicode-bom", - "winnow 0.6.24", + "winnow 0.6.26", ] [[package]] @@ -2009,7 +1983,7 @@ checksum = "999ce923619f88194171a67fb3e6d613653b8d4d6078b529b15a765da0edcc17" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -2028,7 +2002,7 @@ dependencies = [ "itoa", "smallvec", "thiserror 1.0.69", - "winnow 0.6.24", + "winnow 0.6.26", ] [[package]] @@ -2111,7 +2085,7 @@ dependencies = [ "gix-validate", "memmap2", "thiserror 1.0.69", - "winnow 0.6.24", + "winnow 0.6.26", ] [[package]] @@ -2417,9 +2391,9 @@ checksum = "9171a2ea8a68358193d15dd5d70c1c10a2afc3e7e4c5bc92bc9f025cebd7359c" [[package]] name = "httparse" -version = "1.9.5" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946" +checksum = "f2d708df4e7140240a16cd6ab0ab65c972d7433ab77819ea693fde9c43811e2a" [[package]] name = "httpdate" @@ -2462,9 +2436,9 @@ dependencies = [ [[package]] name = "hyper" -version = "1.5.2" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "256fb8d4bd6413123cc9d91832d78325c48ff41677595be797d90f42969beae0" +checksum = "cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80" dependencies = [ "bytes", "futures-channel", @@ -2489,7 +2463,7 @@ checksum = "2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2" dependencies = [ "futures-util", "http 1.2.0", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-util", "rustls", "rustls-native-certs", @@ -2506,7 +2480,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b90d566bffbce6a75bd8b09a05aa8c2cb1fabb6cb348f8840c9e4c90a0d83b0" dependencies = [ - "hyper 1.5.2", + "hyper 1.6.0", "hyper-util", "pin-project-lite", "tokio", @@ -2521,7 +2495,7 @@ checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" dependencies = [ "bytes", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-util", "native-tls", "tokio", @@ -2540,7 +2514,7 @@ dependencies = [ "futures-util", "http 1.2.0", "http-body 1.0.1", - "hyper 1.5.2", + "hyper 1.6.0", "pin-project-lite", "socket2", "tokio", @@ -2686,7 +2660,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -2851,9 +2825,9 @@ dependencies = [ [[package]] name = "jsonschema" -version = "0.28.3" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b8f66fe41fa46a5c83ed1c717b7e0b4635988f427083108c8cf0a882cc13441" +checksum = "3c59cb1733c34377b6067a0419befd7f25073c5249ec3b0614a482bf499e1df5" dependencies = [ "ahash", "base64 0.22.1", @@ -2956,7 +2930,7 @@ version = "1.5.0-dev" dependencies = [ "compact_jwt", "http 1.2.0", - "hyper 1.5.2", + "hyper 1.6.0", "kanidm_lib_file_permissions", "kanidm_proto", "reqwest 0.12.12", @@ -2977,14 +2951,12 @@ name = "kanidm_device_flow" version = "1.5.0-dev" dependencies = [ "anyhow", - "base64 0.22.1", "kanidm_proto", "oauth2 5.0.0", "reqwest 0.12.12", "sketching", "tokio", "tracing", - "url", ] [[package]] @@ -3013,7 +2985,6 @@ name = "kanidm_lib_file_permissions" version = "1.5.0-dev" dependencies = [ "kanidm_utils_users", - "whoami", ] [[package]] @@ -3158,7 +3129,7 @@ dependencies = [ "filetime", "futures", "futures-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-util", "kanidm_build_profiles", "kanidm_lib_crypto", @@ -3254,14 +3225,13 @@ version = "1.5.0-dev" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "kanidmd_testkit" version = "1.5.0-dev" dependencies = [ - "assert_cmd", "compact_jwt", "escargot", "fantoccini", @@ -3618,7 +3588,7 @@ checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" dependencies = [ "libc", "log", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "windows-sys 0.48.0", ] @@ -3629,7 +3599,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "windows-sys 0.52.0", ] @@ -3739,7 +3709,6 @@ dependencies = [ "lazy_static", "libc", "libnss", - "paste", ] [[package]] @@ -3897,7 +3866,7 @@ checksum = "c38841cdd844847e3e7c8d29cef9dcfed8877f8f56f9071f77843ecf3baf937f" dependencies = [ "base64 0.13.1", "chrono", - "getrandom", + "getrandom 0.2.15", "http 0.2.12", "rand", "reqwest 0.11.27", @@ -3917,7 +3886,7 @@ checksum = "51e219e79014df21a225b1860a479e2dcd7cbd9130f4defd4bd0e191ea31d67d" dependencies = [ "base64 0.22.1", "chrono", - "getrandom", + "getrandom 0.2.15", "http 1.2.0", "rand", "reqwest 0.12.12", @@ -3958,9 +3927,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.2" +version = "1.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +checksum = "945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e" [[package]] name = "openssl" @@ -3985,7 +3954,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4237,7 +4206,6 @@ dependencies = [ "fixedbitset", "indexmap 2.7.1", "serde", - "serde_derive", ] [[package]] @@ -4277,22 +4245,22 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e2ec53ad785f4d35dac0adea7f7dc6f1bb277ad84a680c7afefeae05d1f5916" +checksum = "dfe2e71e1471fe07709406bf725f710b02927c9c54b2b5b2ec0e8087d97c327d" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d56a66c0c55993aa927429d0f8a0abfd74f084e4d9c192cffed01e418d83eefb" +checksum = "f6e859e6e5bd50440ab63c47e3ebabc90f26251f7c73c3d3e837b74a1cc3fa67" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4338,33 +4306,6 @@ dependencies = [ "nix", ] -[[package]] -name = "predicates" -version = "3.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5d19ee57562043d37e82899fade9a22ebab7be9cef5026b07fda9cdd4293573" -dependencies = [ - "anstyle", - "difflib", - "predicates-core", -] - -[[package]] -name = "predicates-core" -version = "1.0.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "727e462b119fe9c93fd0eb1429a5f7647394014cf3c04ab2c0350eeb09095ffa" - -[[package]] -name = "predicates-tree" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72dd2d6d381dfb73a193c7fca536518d7caee39fc8503f74e7dc0be0531b425c" -dependencies = [ - "predicates-core", - "termtree", -] - [[package]] name = "prettyplease" version = "0.2.29" @@ -4372,7 +4313,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6924ced06e1f7dfe3fa48d57b9f74f55d8915f5036121bef647ef4b204895fac" dependencies = [ "proc-macro2", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4444,7 +4385,7 @@ dependencies = [ "itertools 0.13.0", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4489,7 +4430,7 @@ dependencies = [ "pin-project-lite", "quinn-proto", "quinn-udp", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", "rustls", "socket2", "thiserror 2.0.11", @@ -4504,10 +4445,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d" dependencies = [ "bytes", - "getrandom", + "getrandom 0.2.15", "rand", "ring", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", "rustls", "rustls-pki-types", "slab", @@ -4567,7 +4508,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom", + "getrandom 0.2.15", ] [[package]] @@ -4585,7 +4526,7 @@ version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ - "getrandom", + "getrandom 0.2.15", "libredox", "thiserror 1.0.69", ] @@ -4607,7 +4548,7 @@ checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4618,13 +4559,14 @@ checksum = "5daffa8f5ca827e146485577fa9dba9bd9c6921e06e954ab8f6408c10f753086" [[package]] name = "referencing" -version = "0.28.3" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0dcb5ab28989ad7c91eb1b9531a37a1a137cc69a0499aee4117cae4a107c464" +checksum = "6ce52678d53e5ee37e4af0a9036ca834d0cd34b33c82457c6b06a24f8d783344" dependencies = [ "ahash", "fluent-uri", "once_cell", + "parking_lot", "percent-encoding", "serde_json", ] @@ -4727,7 +4669,7 @@ dependencies = [ "http 1.2.0", "http-body 1.0.1", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-rustls", "hyper-util", "ipnet", @@ -4777,7 +4719,7 @@ checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" dependencies = [ "cc", "cfg-if", - "getrandom", + "getrandom 0.2.15", "libc", "spin", "untrusted", @@ -4834,7 +4776,7 @@ dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.96", + "syn 2.0.98", "walkdir", ] @@ -4862,9 +4804,9 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "rustc-hash" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497" +checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" [[package]] name = "rusticata-macros" @@ -4890,9 +4832,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.21" +version = "0.23.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f287924602bf649d949c63dc8ac8b235fa5387d394020705b80c4eb597ce5b8" +checksum = "9fb9263ab4eb695e42321db096e3b8fbd715a59b154d5c88d82db2175b681ba7" dependencies = [ "once_cell", "ring", @@ -4925,9 +4867,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.10.1" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2bf47e6ff922db3825eb750c4e2ff784c6ff8fb9e13046ef6a1d1c5401b0b37" +checksum = "917ce264624a4b4db1c364dcc35bfca9ded014d0a958cd47ad3e960e988ea51c" dependencies = [ "web-time", ] @@ -4951,9 +4893,9 @@ checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" [[package]] name = "ryu" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +checksum = "6ea1a2d0a644769cc99faa24c3ad26b379b786fe7c36fd3c546254801650e6dd" [[package]] name = "same-file" @@ -5119,14 +5061,14 @@ checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "serde_json" -version = "1.0.137" +version = "1.0.138" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "930cfb6e6abf99298aaad7d29abbef7a9999a9a8806a40088f55f0dcec03146b" +checksum = "d434192e7da787e94a6ea7e9670b26a036d0ca41e0b7efb2676dd32bae872949" dependencies = [ "itoa", "memchr", @@ -5183,7 +5125,7 @@ dependencies = [ "darling 0.20.10", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5258,7 +5200,6 @@ dependencies = [ name = "sketching" version = "1.5.0-dev" dependencies = [ - "gethostname", "num_enum", "opentelemetry", "opentelemetry-otlp", @@ -5422,9 +5363,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.96" +version = "2.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80" +checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1" dependencies = [ "proc-macro2", "quote", @@ -5454,7 +5395,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5486,31 +5427,25 @@ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" [[package]] name = "tempfile" -version = "3.15.0" +version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a8a559c81686f576e8cd0290cd2a24a2a9ad80c98b3478856500fcbd7acd704" +checksum = "38c246215d7d24f48ae091a2902398798e05d978b24315d6efbc00ede9a8bb91" dependencies = [ "cfg-if", "fastrand", - "getrandom", + "getrandom 0.3.1", "once_cell", "rustix", "windows-sys 0.59.0", ] -[[package]] -name = "termtree" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f50febec83f5ee1df3015341d8bd429f2d1cc62bcba7ea2076759d315084683" - [[package]] name = "testkit-macros" version = "0.1.0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5539,7 +5474,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5550,7 +5485,7 @@ checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5645,7 +5580,7 @@ checksum = "8d9ef545650e79f30233c0003bcc2504d7efac6dad25fca40744de773fe2049c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5674,7 +5609,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5774,7 +5709,7 @@ dependencies = [ "http 1.2.0", "http-body 1.0.1", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-timeout", "hyper-util", "percent-encoding", @@ -5886,7 +5821,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -6022,9 +5957,9 @@ checksum = "7eec5d1121208364f6793f7d2e222bf75a915c19557537745b195b253dd64217" [[package]] name = "unicode-ident" -version = "1.0.15" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11cd88e12b17c6494200a9c1b683a04fcac9573ed74cd1b62aeb2727c5592243" +checksum = "a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034" [[package]] name = "unicode-normalization" @@ -6111,7 +6046,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.96", + "syn 2.0.98", "url", "uuid", ] @@ -6134,11 +6069,11 @@ dependencies = [ [[package]] name = "uuid" -version = "1.12.1" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3758f5e68192bb96cc8f9b7e2c2cfdabb435499a28499a42f8f984092adad4b" +checksum = "ced87ca4be083373936a67f8de945faa23b6b42384bd5b64434850802c6dccd0" dependencies = [ - "getrandom", + "getrandom 0.3.1", "serde", ] @@ -6177,15 +6112,6 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" -[[package]] -name = "wait-timeout" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" -dependencies = [ - "libc", -] - [[package]] name = "walkdir" version = "2.5.0" @@ -6211,6 +6137,15 @@ version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +[[package]] +name = "wasi" +version = "0.13.3+wasi-0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26816d2e1a4a36a2940b96c5296ce403917633dff8f3440e9b236ed6f6bacad2" +dependencies = [ + "wit-bindgen-rt", +] + [[package]] name = "wasite" version = "0.1.0" @@ -6239,7 +6174,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "wasm-bindgen-shared", ] @@ -6274,7 +6209,7 @@ checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -6431,9 +6366,9 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.26.7" +version = "0.26.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d642ff16b7e79272ae451b7322067cdc17cadf68c23264be9d94a32319efe7e" +checksum = "2210b291f7ea53617fbafcc4939f10914214ec15aace5ba62293a668f322c5c9" dependencies = [ "rustls-pki-types", ] @@ -6753,9 +6688,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.6.24" +version = "0.6.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8d71a593cc5c42ad7876e2c1fda56f314f3754c084128833e64f1345ff8a03a" +checksum = "1e90edd2ac1aa278a5c4599b1d89cf03074b610800f866d4026dc199d7929a28" dependencies = [ "memchr", ] @@ -6770,6 +6705,15 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "wit-bindgen-rt" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3268f3d866458b787f390cf61f4bbb563b922d091359f9608842999eaee3943c" +dependencies = [ + "bitflags 2.8.0", +] + [[package]] name = "write16" version = "1.0.0" @@ -6831,7 +6775,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "synstructure", ] @@ -6853,7 +6797,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -6873,7 +6817,7 @@ checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "synstructure", ] @@ -6894,7 +6838,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -6916,7 +6860,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index e0467c81f..b07522519 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,7 +4,7 @@ authors = [ "William Brown ", "James Hodgkinson ", ] -rust-version = "1.79" +rust-version = "1.80" edition = "2021" license = "MPL-2.0" homepage = "https://github.com/kanidm/kanidm/" @@ -165,15 +165,15 @@ clap_complete = "^4.5.42" chrono = "^0.4.39" compact_jwt = { version = "^0.4.2", default-features = false } concread = "^0.5.3" -cron = "0.12.1" +cron = "0.15.0" crossbeam = "0.8.4" csv = "1.3.1" -dialoguer = "0.10.4" +dialoguer = "0.11.0" dhat = "0.3.3" dyn-clone = "^1.0.17" fernet = "^0.2.1" filetime = "^0.2.24" -fs4 = "^0.8.3" +fs4 = "^0.12.0" futures = "^0.3.31" futures-util = { version = "^0.3.30", features = ["sink"] } gix = { version = "0.64.0", default-features = false } @@ -225,7 +225,6 @@ opentelemetry-semantic-conventions = "0.27.0" tracing-opentelemetry = "0.28.0" tracing-core = "0.1.33" -paste = "^1.0.14" peg = "0.8" pkg-config = "^0.3.31" prctl = "1.0.0" diff --git a/README.md b/README.md index 26cad6e11..544344fa5 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,6 @@ # Kanidm - Simple and Secure Identity Management -

- -

+![Kanidm Logo](artwork/logo-small.png) ## About diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index 3da725c29..363572fbe 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -1,42 +1,93 @@ -

- -

+# Kanidm Release Notes -# Getting Started +![Kanidm Logo](artwork/logo-small.png) + +## Getting Started To get started, see the [kanidm book] -# Feedback +## Feedback We value your feedback! First, please see our [code of conduct]. If you have questions please join our [gitter community channel] so that we can help. If you find a bug or issue, we'd love you to report it to our [issue tracker]. -# Release Notes +## Release Notes -## 2024-11-01 - Kanidm 1.4.0 +### 2025-02-09 - Kanidm 1.5.0 This is the latest stable release of the Kanidm Identity Management project. Every release is the combined effort of our community and we appreciate their invaluable contributions, comments, questions, feedback and support. You should review our -[support documentation](https://github.com/kanidm/kanidm/blob/master/book/src/support.md) as this +[support documentation] as this may have important effects on your distribution or upgrades in future. Before upgrading you should review -[our upgrade documentation](https://github.com/kanidm/kanidm/blob/master/book/src/server_updates.md#general-update-notes) +[our upgrade documentation] -### 1.4.0 Important Changes +#### 1.5.0 Important Changes + +- There has been a lot of tweaks to how cookies are handled in this release, if you're having issues with the login flow please clear all cookies as an initial troubleshooting step. + +#### 1.5.0 Release Highlights + +- Many updates to the UI! + - SSH Keys in Credentials Update (#3027) + - Improved error message when PassKey is missing PIN (mainly for Firefox) (#3403) + - Fix the password reset form and possible resolver issue (#3398) + - Fixed unrecoverable error page doesn't include logo or domain name (#3352) + - Add support for prefers-color-scheme using Bootstrap classes. Dark mode! (#3327) + - Automatically trigger passkeys on login view (#3307) +- Two new operating systems! + - Initial OpenBSD support (#3381) + - FreeBSD client (#3333) +- Many SCIM-related improvements + - SCIM access control (#3359) + - SCIM put (#3151) +- OAuth2 Things + - Allow OAuth2 with empty `state` parameter (#3396) + - Allow POST on oauth userinfo (#3395) + - Add OAuth2 `response_mode=fragment` (#3335) + - Add CORS headers to jwks and userinfo (#3283) +- Allowing SPN query with non-SPN structured data in LDAP (#3400) +- Correctly return that uuid2spn changed on domain rename (#3402) +- RADIUS startup fixing (#3388) +- Repaired systemd reload notifications (#3355) +- Add `ssh_publickeys` as a claim for OAuth2 (#3346) +- Allow modification of password minimum length (#3345) +- PAM on Debian, enable use_first_pass by default (#3326) +- Allow opt-in of easter eggs (#3308) +- Allow reseting account policy values to defaults (#3306) +- Ignore system users for UPG synthesiseation (#3297) +- Allow group managers to modify entry-managed-by (#3272) + +And many more! + +### 2024-11-01 - Kanidm 1.4.0 + +This is the latest stable release of the Kanidm Identity Management project. Every release is the +combined effort of our community and we appreciate their invaluable contributions, comments, +questions, feedback and support. + +You should review our +[support documentation] as this +may have important effects on your distribution or upgrades in future. + +Before upgrading you should review +[our upgrade documentation] + +#### 1.4.0 Important Changes - The web user interface has been rewritten and now supports theming. You will notice that your domain displayname is included in a number of locations on upgrade, and that you can set your own domain and OAuth2 client icons. - OAuth2 strict redirect uri is now required. Ensure you have read -[our upgrade documentation](https://github.com/kanidm/kanidm/blob/master/book/src/server_updates.md#general-update-notes). +[our upgrade documentation]. and taken the needed steps before upgrading. -### 1.4.0 Release Highlights +#### 1.4.0 Release Highlights - Improve handling of client timeouts when the server is under high load - Resolve a minor issue preventing some credential updates from saving @@ -65,20 +116,20 @@ and taken the needed steps before upgrading. - Rewrite the entire web frontend to be simpler and faster, allowing more features to be added in the future. Greatly improves user experience as the pages are now very fast to load! -## 2024-08-07 - Kanidm 1.3.0 +### 2024-08-07 - Kanidm 1.3.0 This is the latest stable release of the Kanidm Identity Management project. Every release is the combined effort of our community and we appreciate their invaluable contributions, comments, questions, feedback and support. You should review our -[support documentation](https://github.com/kanidm/kanidm/blob/master/book/src/support.md) as this +[support documentation] as this may have important effects on your distribution or upgrades in future. Before upgrading you should review -[our upgrade documentation](https://github.com/kanidm/kanidm/blob/master/book/src/server_updates.md#general-update-notes) +[our upgrade documentation] -### 1.3.0 Important Changes +#### 1.3.0 Important Changes - New GID number constraints are now enforced in this version. To upgrade from 1.2.0 all accounts and groups must adhere to these rules. See [our upgrade documentation]. about tools to help you @@ -89,7 +140,7 @@ Before upgrading you should review by PassKeys which give a better user experience. - Kanidm now supports FreeBSD and Illumos in addition to Linux -### 1.3.0 Release Highlights +#### 1.3.0 Release Highlights - TOTP update user interface improvements - Improved error messages when a load balancer is failing @@ -112,24 +163,24 @@ Before upgrading you should review - Strict redirect URI enforcement in OAuth2 - Substring indexing for improved search performance -## 2024-05-01 - Kanidm 1.2.0 +### 2024-05-01 - Kanidm 1.2.0 This is the first stable release of the Kanidm Identity Management project. We want to thank every one in our community who has supported to the project to this point with their invaluable contributions, comments, questions, feedback and support. Importantly this release makes a number of changes to our project's support processes. You should -review our [support documentation](https://github.com/kanidm/kanidm/blob/master/book/src/support.md) +review our [support documentation] as this may have important effects on your distribution or upgrades in future. -### 1.2.0 Important Changes +#### 1.2.0 Important Changes - On upgrade all OAuth2 sessions and user sessions will be reset due to changes in cryptographic key handling. This does not affect api tokens. - There is a maximum limit of 48 interactive sessions for persons where older sessions are automatically removed. -### 1.2.0 Release Highlights +#### 1.2.0 Release Highlights - The book now contains a list of supported RFCs and standards - Add code challenge methods to OIDC discovery @@ -154,7 +205,7 @@ as this may have important effects on your distribution or upgrades in future. - Migrate cryptographic key handling to an object model with future HSM support - Limit maximum active sessions on an account to 48 -## 2024-02-07 - Kanidm 1.1.0-rc.16 +### 2024-02-07 - Kanidm 1.1.0-rc.16 This is the sixteenth pre-release of the Kanidm Identity Management project. Pre-releases are to help get feedback and ideas from the community on how we can continue to make this project better. @@ -163,7 +214,7 @@ This is the final release candidate before we publish a release version. We beli server interfaces are stable and reliable enough for people to depend on, and to develop external tools to interact with Kanidm. -### 1.1.0-rc.16 Release Highlights +#### 1.1.0-rc.16 Release Highlights - Replication for two node environments is now supported - Account policy supports password minimum length @@ -182,7 +233,7 @@ tools to interact with Kanidm. - Support RFC6749 Client Credentials Grant - Support custom claim maps in OIDC -## 2023-10-31 - Kanidm 1.1.0-beta14 +### 2023-10-31 - Kanidm 1.1.0-beta14 This is the fourteenth pre-release of the Kanidm Identity Management project. Pre-releases are to help get feedback and ideas from the community on how we can continue to make this project better. @@ -191,7 +242,7 @@ At this point we believe we are on the final stretch to making something we cons ready". After this we will start to ship release candidates as our focus will now be changing to finish our production components and the stability of the API's for longer term support. -### 1.1.0-beta14 Release Highlights +#### 1.1.0-beta14 Release Highlights - Replication is in Beta! Please test carefully! - Web UI WASM has been split up, significantly improving the responsiveness. @@ -205,7 +256,7 @@ finish our production components and the stability of the API's for longer term - Removed a lot of uses of `unwrap` and `expect` to improve reliability. - Account policy framework is now in place. -## 2023-05-01 - Kanidm 1.1.0-beta13 +### 2023-05-01 - Kanidm 1.1.0-beta13 This is the thirteenth pre-release of the Kanidm Identity Management project. Pre-releases are to help get feedback and ideas from the community on how we can continue to make this project better. @@ -214,7 +265,7 @@ At this point we believe we are on the final stretch to making something we cons ready". After this we will start to ship release candidates as our focus will now be changing to finish our production components and the stability of the API's for longer term support. -### 1.1.0-beta13 Release Highlights +#### 1.1.0-beta13 Release Highlights - Replication foundations - Full implementation of replication refresh @@ -255,7 +306,7 @@ finish our production components and the stability of the API's for longer term - Improve create-reset-token user experience - Improve self-healing for some reference issues -## 2023-05-01 - Kanidm 1.1.0-alpha12 +### 2023-05-01 - Kanidm 1.1.0-alpha12 This is the twelfth alpha series release of the Kanidm Identity Management project. Alpha releases are to help get feedback and ideas from the community on how we can continue to make this project @@ -266,7 +317,7 @@ done so yet is we haven't decided if we want to commit to the current API layout There are still things we want to change there. Otherwise the server is stable and reliable for production usage. -### Release Highlights +#### 1.1.0-alpha12 Release Highlights - Allow full server content replication in testing (yes we're finally working on replication!) - Improve OAuth2 to allow scoped members to see RS they can access for UI flows @@ -286,7 +337,7 @@ production usage. - Add exclusive process lock to daemon - Allow dns/rdns in ldap search contexts -## 2023-02-01 - Kanidm 1.1.0-alpha11 +### 2023-02-01 - Kanidm 1.1.0-alpha11 This is the eleventh alpha series release of the Kanidm Identity Management project. Alpha releases are to help get feedback and ideas from the community on how we can continue to make this project @@ -296,7 +347,7 @@ The project is shaping up very nicely, and a beta will be coming soon! The main done so yet is we haven't decided if we want to commit to the current API layout and freeze it yet. There are still things we want to change there. Otherwise the server is stable and reliable. -### Release Highlights +#### 1.1.0-alpha11 Release Highlights - Support /etc/skel home dir templates in kanidm-unixd - Improve warning messages for openssl when a cryptographic routine is not supported @@ -317,7 +368,7 @@ There are still things we want to change there. Otherwise the server is stable a - Improve the access control module to evaluate access in a clearer way - Allow synced users to correct modify their local sessions -## 2022-11-01 - Kanidm 1.1.0-alpha10 +### 2022-11-01 - Kanidm 1.1.0-alpha10 This is the tenth alpha series release of the Kanidm Identity Management project. Alpha releases are to help get feedback and ideas from the community on how we can continue to make this project better @@ -325,12 +376,12 @@ for a future supported release. The project is shaping up very nicely, and a beta will be coming soon! -### Upgrade Note +#### 1.1.0-alpha10 Upgrade Note This version will _require_ TLS on all servers, even if behind a load balancer or TLS terminating proxy. You should be ready for this change when you upgrade to the latest version. -### Release Highlights +#### 1.1.0-alpha10 Release Highlights - Management and tracking of authenticated sessions - Make upgrade migrations more robust when upgrading over multiple versions @@ -352,7 +403,7 @@ proxy. You should be ready for this change when you upgrade to the latest versio - Cleanup of expired authentication sessions - Improved administration of password badlists -## 2022-08-02 - Kanidm 1.1.0-alpha9 +### 2022-08-02 - Kanidm 1.1.0-alpha9 This is the ninth alpha series release of the Kanidm Identity Management project. Alpha releases are to help get feedback and ideas from the community on how we can continue to make this project better @@ -360,7 +411,7 @@ for a future supported release. The project is shaping up very nicely, and a beta will be coming soon! -### Release Highlights +#### 1.1.0-alpha9 Release Highlights - Inclusion of a Python3 API library - Improve orca usability @@ -376,13 +427,13 @@ The project is shaping up very nicely, and a beta will be coming soon! - CTAP2+ support in Webauthn via CLI - Radius supports EAP TLS identities in addition to EAP PEAP -## 2022-05-01 - Kanidm 1.1.0-alpha8 +### 2022-05-01 - Kanidm 1.1.0-alpha8 This is the eighth alpha series release of the Kanidm Identity Management project. Alpha releases are to help get feedback and ideas from the community on how we can continue to make this project better for a future supported release. -### Release Highlights +#### 1.1.0-alpha8 Release Highlights - Foundations for cryptographic trusted device authentication - Foundations for new user onboarding and credential reset @@ -398,13 +449,13 @@ better for a future supported release. - Highlight that the WebUI is in alpha to prevent confusion - Remove sync only client paths -## 2022-01-01 - Kanidm 1.1.0-alpha7 +### 2022-01-01 - Kanidm 1.1.0-alpha7 This is the seventh alpha series release of the Kanidm Identity Management project. Alpha releases are to help get feedback and ideas from the community on how we can continue to make this project better for a future supported release. -### Release Highlights +#### 1.1.0-alpha7 Release Highlights - OAuth2 scope to group mappings - Webauthn subdomain support @@ -415,7 +466,7 @@ better for a future supported release. - Addition of email address attributes - Web UI improvements for OAuth2 -## 2021-10-01 - Kanidm 1.1.0-alpha6 +### 2021-10-01 - Kanidm 1.1.0-alpha6 This is the sixth alpha series release of the Kanidm Identity Management project. Alpha releases are to help get feedback and ideas from the community on how we can continue to make this project better @@ -424,7 +475,7 @@ for a future supported release. It's also a special release as Kanidm has just turned 3 years old! Thank you all for helping to bring the project this far! 🎉 🦀 -### Release Highlights +#### 1.1.0-alpha6 Release Highlights - Support backup codes as MFA in case of lost TOTP/Webauthn - Dynamic menus on CLI for usernames when multiple sessions exist @@ -444,13 +495,13 @@ bring the project this far! 🎉 🦀 - Improvements to performance with high cache sizes - Session tokens persist over a session restart -## 2021-07-07 - Kanidm 1.1.0-alpha5 +### 2021-07-07 - Kanidm 1.1.0-alpha5 This is the fifth alpha series release of the Kanidm Identity Management project. Alpha releases are to help get feedback and ideas from the community on how we can continue to make this project better for a future supported release. -### Release Highlights +#### 1.1.0-alpha5 Release Highlights - Fix a major defect in how backup/restore worked - Improve query performance by caching partial queries @@ -465,13 +516,13 @@ for a future supported release. - Statistical analysis of indexes to improve query optimisation - Handle broken TOTP authenticator apps -## 2021-04-01 - Kanidm 1.1.0-alpha4 +### 2021-04-01 - Kanidm 1.1.0-alpha4 This is the fourth alpha series release of the Kanidm Identity Management project. Alpha releases are to help get feedback and ideas from the community on how we can continue to make this project better for a future supported release. -### Release Highlights +#### 1.1.0-alpha4 Release Highlights - Performance Improvements - TOTP CLI enrollment @@ -485,13 +536,13 @@ better for a future supported release. - Badlist checked at login to determine account compromise - Minor Fixes for attribute display -## 2021-01-01 - Kanidm 1.1.0-alpha3 +### 2021-01-01 - Kanidm 1.1.0-alpha3 This is the third alpha series release of the Kanidm Identity Management project. Alpha releases are to help get feedback and ideas from the community on how we can continue to make this project better for a future supported release. -### Release Highlights +#### 1.1.0-alpha3 Release Highlights - Account "valid from" and "expiry" times. - Rate limiting and softlocking of account credentials to prevent bruteforcing. @@ -499,13 +550,13 @@ for a future supported release. - Rewrite of json authentication protocol components. - Unixd will cache "non-existent" items to improve nss/pam latency. -## 2020-10-01 - Kanidm 1.1.0-alpha2 +### 2020-10-01 - Kanidm 1.1.0-alpha2 This is the second alpha series release of the Kanidm Identity Management project. Alpha releases are to help get feedback and ideas from the community on how we can continue to make this project better for a future supported release. -### Release Highlights +#### 1.1.0-alpha2 Release Highlights - SIMD key lookups in container builds for datastructures - Server and Client hardening warnings for running users and file permissions @@ -517,7 +568,7 @@ better for a future supported release. - Reduction in memory footprint during searches - Change authentication from cookies to auth-bearer tokens -## 2020-07-01 - Kanidm 1.1.0-alpha1 +### 2020-07-01 - Kanidm 1.1.0-alpha1 This is the first alpha series release of the Kanidm Identity Management project. Alpha releases are to help get feedback and ideas from the community on how we can continue to make this project better @@ -536,7 +587,7 @@ people. I would especially like to thank: - Samuel Cabrero (scabrero) - Jim McDonough -### Release Highlights +#### 1.1.0-alpha1 Release Highlights - A working identity management server, including database - RADIUS authentication and docker images @@ -552,3 +603,5 @@ people. I would especially like to thank: [gitter community channel]: https://gitter.im/kanidm/community [code of conduct]: https://github.com/kanidm/kanidm/blob/master/CODE_OF_CONDUCT.md [kanidm book]: https://kanidm.github.io/kanidm/stable/ +[our upgrade documentation]: https://github.com/kanidm/kanidm/blob/master/book/src/server_updates.md#general-update-notes +[support documentation]: https://github.com/kanidm/kanidm/blob/master/book/src/support.md diff --git a/book/src/developers/release_checklist.md b/book/src/developers/release_checklist.md index 534910a39..7a45fc97b 100644 --- a/book/src/developers/release_checklist.md +++ b/book/src/developers/release_checklist.md @@ -3,57 +3,58 @@ ## Pre-Reqs ```bash -cargo install cargo-audit -cargo install cargo-outdated -cargo install cargo-udeps -cargo install cargo-machete +cargo install --force \ + cargo-audit \ + cargo-outdated \ + cargo-udeps \ + cargo-machete ``` ## Pre Release Check List ### Start a release -- [ ] git checkout -b YYYYMMDD-pre-release +- [ ] `git checkout -b "$(date +%Y%m%d)-pre-release"` ### Cargo Tasks - [ ] Update MSRV if applicable -- [ ] cargo update +- [ ] `cargo update` - [ ] `RUSTC_BOOTSTRAP=1 cargo udeps` -- [ ] `cargo machete` -- [ ] cargo outdated -R -- [ ] cargo audit -- [ ] cargo test +- [ ] `cargo machete --with-metadata` +- [ ] `cargo outdated -R` +- [ ] `cargo audit` +- [ ] `cargo test` - [ ] setup a local instance and run orca (TBD) - [ ] store a copy an an example db (TBD) ### Code Changes -- [ ] upgrade crypto policy values if required +- [ ] upgrade crypto policy values if required (see `libs/crypto/src/lib.rs` -> `CryptoPolicy`) - [ ] check for breaking db entry changes. ### Administration - [ ] Update `RELEASE_NOTES.md` - [ ] Update `README.md` -- [ ] cargo test -- [ ] git commit -a -m "Release Notes" -- [ ] git push origin YYYYMMDD-pre-release +- [ ] `cargo test` +- [ ] `git commit -a -m 'chore: Release Notes'` +- [ ] `git push origin "$(date +%Y%m%d)-pre-release"` - [ ] Merge PR ### Git Management -- [ ] git checkout master -- [ ] git pull +- [ ] `git checkout master` +- [ ] `git pull` - [ ] git checkout -b 1.x.0 (Note no v to prevent ref conflict) - [ ] update version to set pre tag in ./Cargo.toml -- [ ] git commit -m "Release 1.x.0-pre" -- [ ] git tag v1.x.0-pre +- [ ] `git commit -m "Release $(cargo metadata --format-version 1 | jq '.packages[] | select(.name=="kanidm_proto") | .version')-pre"` +- [ ] `git tag v$(cargo metadata --format-version 1 | jq '.packages[] | select(.name=="kanidm_proto") | .version')-pre` - [ ] Final inspect of the branch -- [ ] git push origin 1.x.0 --tags +- [ ] `git push origin "$(cargo metadata --format-version 1 | jq '.packages[] | select(.name=="kanidm_proto") | .version')" --tags` - [ ] github -> Ensure release branch is protected @@ -106,4 +107,3 @@ cargo install cargo-machete ### Distro - [ ] vendor and release to build.opensuse.org - diff --git a/libs/crypto/Cargo.toml b/libs/crypto/Cargo.toml index 53532f9ad..854f127a9 100644 --- a/libs/crypto/Cargo.toml +++ b/libs/crypto/Cargo.toml @@ -35,3 +35,7 @@ x509-cert = { workspace = true, features = ["pem"] } [dev-dependencies] sketching = { workspace = true } + + +[package.metadata.cargo-machete] +ignored = ["openssl-sys"] diff --git a/libs/file_permissions/Cargo.toml b/libs/file_permissions/Cargo.toml index ef08b2602..372943922 100644 --- a/libs/file_permissions/Cargo.toml +++ b/libs/file_permissions/Cargo.toml @@ -16,8 +16,5 @@ doctest = false [dependencies] -[target.'cfg(target_family = "windows")'.dependencies] -whoami = { workspace = true } - [target.'cfg(not(target_family = "windows"))'.dependencies] kanidm_utils_users = { workspace = true } diff --git a/libs/profiles/Cargo.toml b/libs/profiles/Cargo.toml index 038b582c4..7f2b630ee 100644 --- a/libs/profiles/Cargo.toml +++ b/libs/profiles/Cargo.toml @@ -28,3 +28,7 @@ toml = { workspace = true } [build-dependencies] base64 = { workspace = true } gix = { workspace = true, default-features = false } + + +[package.metadata.cargo-machete] +ignored = ["gix"] diff --git a/libs/sketching/Cargo.toml b/libs/sketching/Cargo.toml index 71d997ccd..85b0a1046 100644 --- a/libs/sketching/Cargo.toml +++ b/libs/sketching/Cargo.toml @@ -17,7 +17,6 @@ test = false doctest = false [dependencies] -gethostname = "0.5.0" num_enum = { workspace = true } opentelemetry = { workspace = true, features = ["metrics"] } opentelemetry-otlp = { workspace = true, default-features = false, features = [ diff --git a/libs/users/Cargo.toml b/libs/users/Cargo.toml index ea6e65f5e..0dd9444d0 100644 --- a/libs/users/Cargo.toml +++ b/libs/users/Cargo.toml @@ -1,13 +1,13 @@ [package] name = "kanidm_utils_users" description = "Kanidm utility crate" -version.workspace = true -authors.workspace = true -rust-version.workspace = true -edition.workspace = true -license.workspace = true -homepage.workspace = true -repository.workspace = true +version = { workspace = true } +authors = { workspace = true } +rust-version = { workspace = true } +edition = { workspace = true } +license = { workspace = true } +homepage = { workspace = true } +repository = { workspace = true } [lib] test = true diff --git a/server/core/Cargo.toml b/server/core/Cargo.toml index 094eec8bb..1c753cb44 100644 --- a/server/core/Cargo.toml +++ b/server/core/Cargo.toml @@ -45,7 +45,6 @@ ldap3_proto = { workspace = true } libc = { workspace = true } openssl = { workspace = true } opentelemetry = { workspace = true, features = ["logs"] } -# opentelemetry_api = { workspace = true, features = ["logs"] } qrcode = { workspace = true, features = ["svg"] } regex = { workspace = true } serde = { workspace = true, features = ["derive"] } @@ -94,3 +93,10 @@ kanidmd_lib = { workspace = true, features = ["test"] } [build-dependencies] kanidm_build_profiles = { workspace = true } + + +[package.metadata.cargo-machete] +ignored = [ + "opentelemetry", # feature gated + "kanidm_build_profiles", +] diff --git a/server/daemon/Cargo.toml b/server/daemon/Cargo.toml index 7895b1d09..24d710441 100644 --- a/server/daemon/Cargo.toml +++ b/server/daemon/Cargo.toml @@ -37,11 +37,11 @@ reqwest = { workspace = true } tokio = { workspace = true, features = ["rt-multi-thread", "macros", "signal"] } tokio-util = { workspace = true, features = ["codec"] } tracing = { workspace = true } -serde_json.workspace = true +serde_json = { workspace = true } [target.'cfg(target_os = "linux")'.dependencies] -sd-notify.workspace = true -prctl.workspace = true +sd-notify = { workspace = true } +prctl = { workspace = true } [target.'cfg(target_family = "windows")'.dependencies] whoami = { workspace = true } @@ -53,7 +53,10 @@ kanidm_utils_users = { workspace = true } mimalloc = { workspace = true } [build-dependencies] -serde = { workspace = true, features = ["derive"] } clap = { workspace = true, features = ["derive"] } clap_complete = { workspace = true } kanidm_build_profiles = { workspace = true } + + +[package.metadata.cargo-machete] +ignored = ["clap_complete", "kanidm_build_profiles"] diff --git a/server/daemon/src/main.rs b/server/daemon/src/main.rs index 8bec36da5..92ac418df 100644 --- a/server/daemon/src/main.rs +++ b/server/daemon/src/main.rs @@ -20,7 +20,7 @@ static ALLOC: dhat::Alloc = dhat::Alloc; use std::fs::{metadata, File}; // This works on both unix and windows. -use fs4::FileExt; +use fs4::fs_std::FileExt; use kanidm_proto::messages::ConsoleOutputMode; use sketching::otel::TracingPipelineGuard; use std::io::Read; diff --git a/server/lib/Cargo.toml b/server/lib/Cargo.toml index 7e6a0de55..aad01fb19 100644 --- a/server/lib/Cargo.toml +++ b/server/lib/Cargo.toml @@ -79,7 +79,7 @@ webauthn-rs = { workspace = true, features = [ webauthn-rs-core = { workspace = true } zxcvbn = { workspace = true } serde_with = { workspace = true, features = ["time_0_3", "base64"] } -hex.workspace = true +hex = { workspace = true } lodepng = { workspace = true } image = { workspace = true, default-features = false, features = [ "gif", @@ -113,3 +113,9 @@ mimalloc = { workspace = true } hashbrown = { workspace = true } kanidm_build_profiles = { workspace = true } regex = { workspace = true } + +[package.metadata.cargo-machete] +ignored = [ + "openssl-sys", # see note above + "whoami", # used in windows +] diff --git a/server/testkit/Cargo.toml b/server/testkit/Cargo.toml index 1c0563c21..acc107b23 100644 --- a/server/testkit/Cargo.toml +++ b/server/testkit/Cargo.toml @@ -49,7 +49,6 @@ url = { workspace = true, features = ["serde"] } kanidm_build_profiles = { workspace = true } [dev-dependencies] -assert_cmd = "2.0.16" compact_jwt = { workspace = true } escargot = "0.5.13" # used for webdriver testing @@ -59,11 +58,14 @@ oauth2_ext = { workspace = true, default-features = false, features = [ "reqwest", ] } openssl = { workspace = true } -petgraph = { version = "0.7.1", features = ["serde", "serde-1"] } +petgraph = { version = "0.7.1", features = ["serde"] } serde_json = { workspace = true } time = { workspace = true } tokio-openssl = { workspace = true } kanidm_lib_crypto = { workspace = true } uuid = { workspace = true } webauthn-authenticator-rs = { workspace = true } -jsonschema = "0.28.3" +jsonschema = "0.29.0" + +[package.metadata.cargo-machete] +ignored = ["escargot", "futures", "kanidm_build_profiles"] diff --git a/server/testkit/examples/enumerating_access.rs b/server/testkit/examples/enumerating_access.rs index c6290059b..56c4dce68 100644 --- a/server/testkit/examples/enumerating_access.rs +++ b/server/testkit/examples/enumerating_access.rs @@ -3,14 +3,13 @@ //! - @yaleman //! -use std::collections::{BTreeMap, BTreeSet}; -// use kanidm_client::KanidmClient; use kanidmd_lib::constants::entries::Attribute; use kanidmd_lib::constants::groups::{idm_builtin_admin_groups, idm_builtin_non_admin_groups}; use kanidmd_lib::prelude::{builtin_accounts, EntryInitNew}; use petgraph::graphmap::{AllEdges, GraphMap, NodeTrait}; use petgraph::Directed; use serde::{Deserialize, Serialize}; +use std::collections::{BTreeMap, BTreeSet}; use uuid::Uuid; #[derive(Clone, Deserialize, Serialize)] diff --git a/tools/cli/Cargo.toml b/tools/cli/Cargo.toml index 5d5ee7778..219a8ed82 100644 --- a/tools/cli/Cargo.toml +++ b/tools/cli/Cargo.toml @@ -58,7 +58,7 @@ tokio = { workspace = true, features = ["rt", "macros", "fs", "signal"] } url = { workspace = true, features = ["serde"] } uuid = { workspace = true } zxcvbn = { workspace = true } -lazy_static.workspace = true +lazy_static = { workspace = true } regex = { workspace = true } [dev-dependencies] @@ -119,3 +119,6 @@ assets = [ ], ] maintainer-scripts = "debian/" + +[package.metadata.cargo-machete] +ignored = ["clap_complete", "kanidm_build_profiles"] diff --git a/tools/device_flow/Cargo.toml b/tools/device_flow/Cargo.toml index 24417cd7f..1ac671ba8 100644 --- a/tools/device_flow/Cargo.toml +++ b/tools/device_flow/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "kanidm_device_flow" -description = "Kanidm Device Flow Client" +description = "Kanidm Device Flow Example Client" documentation = "https://kanidm.github.io/kanidm/stable/" version = { workspace = true } authors = { workspace = true } @@ -18,15 +18,12 @@ doctest = false [features] [dependencies] -kanidm_proto = { workspace = true } anyhow = { workspace = true } +kanidm_proto = { workspace = true } oauth2 = "5.0.0" -reqwest = { version = "0.12.12", default-features = false, features = [ +reqwest = { workspace = true, default-features = false, features = [ "rustls-tls", ] } - -tokio = { workspace = true, features = ["full"] } -url = { workspace = true } -tracing = { workspace = true } sketching = { workspace = true } -base64.workspace = true +tokio = { workspace = true, features = ["full"] } +tracing = { workspace = true } diff --git a/tools/iam_migrations/freeipa/Cargo.toml b/tools/iam_migrations/freeipa/Cargo.toml index 1a89b86a7..6eee6a97a 100644 --- a/tools/iam_migrations/freeipa/Cargo.toml +++ b/tools/iam_migrations/freeipa/Cargo.toml @@ -39,3 +39,6 @@ kanidm_utils_users = { workspace = true } [build-dependencies] clap = { workspace = true, features = ["derive"] } clap_complete = { workspace = true } + +[package.metadata.cargo-machete] +ignored = ["clap_complete"] diff --git a/tools/iam_migrations/ldap/Cargo.toml b/tools/iam_migrations/ldap/Cargo.toml index ac89a4e4e..e8d240d03 100644 --- a/tools/iam_migrations/ldap/Cargo.toml +++ b/tools/iam_migrations/ldap/Cargo.toml @@ -42,3 +42,6 @@ clap_complete = { workspace = true } [dev-dependencies] sketching = { workspace = true } + +[package.metadata.cargo-machete] +ignored = ["clap_complete"] diff --git a/tools/orca/Cargo.toml b/tools/orca/Cargo.toml index bfd42f8be..08aa6dfbc 100644 --- a/tools/orca/Cargo.toml +++ b/tools/orca/Cargo.toml @@ -42,3 +42,5 @@ mimalloc = { workspace = true } [build-dependencies] kanidm_build_profiles = { workspace = true } +[package.metadata.cargo-machete] +ignored = ["kanidm_build_profiles"] diff --git a/unix_integration/common/Cargo.toml b/unix_integration/common/Cargo.toml index ceab00183..f25ca7a43 100644 --- a/unix_integration/common/Cargo.toml +++ b/unix_integration/common/Cargo.toml @@ -37,3 +37,6 @@ tracing = { workspace = true } [build-dependencies] kanidm_build_profiles = { workspace = true } + +[package.metadata.cargo-machete] +ignored = ["kanidm_build_profiles"] diff --git a/unix_integration/nss_kanidm/Cargo.toml b/unix_integration/nss_kanidm/Cargo.toml index 17a7a89c9..4d84cfe1e 100644 --- a/unix_integration/nss_kanidm/Cargo.toml +++ b/unix_integration/nss_kanidm/Cargo.toml @@ -12,8 +12,8 @@ repository = { workspace = true } [lib] name = "nss_kanidm" -crate-type = [ "cdylib" ] -path = "src/lib.rs" +crate-type = ["cdylib"] +path = "src/lib.rs" [dependencies] kanidm_unix_common = { workspace = true } @@ -21,7 +21,6 @@ kanidm_unix_common = { workspace = true } [target.'cfg(not(target_family = "windows"))'.dependencies] libnss = { workspace = true } libc = { workspace = true } -paste = { workspace = true } lazy_static = { workspace = true } [target."cfg(target_os = \"freebsd\")".build-dependencies] @@ -37,15 +36,27 @@ depends = "" section = "network" priority = "optional" assets = [ - # Empty on purpose + # Empty on purpose ] [package.metadata.deb.variants.aarch64-unknown-linux-gnu] merge-assets.append = [ - [ "target/release/libnss_kanidm.so", "usr/lib/aarch64-linux-gnu/libnss_kanidm.so.2", "644"], + [ + "target/release/libnss_kanidm.so", + "usr/lib/aarch64-linux-gnu/libnss_kanidm.so.2", + "644", + ], ] [package.metadata.deb.variants.x86_64-unknown-linux-gnu] merge-assets.append = [ - [ "target/release/libnss_kanidm.so", "usr/lib/x86_64-linux-gnu/libnss_kanidm.so.2", "644"], + [ + "target/release/libnss_kanidm.so", + "usr/lib/x86_64-linux-gnu/libnss_kanidm.so.2", + "644", + ], ] + + +[package.metadata.cargo-machete] +ignored = ["cc", "lazy_static"] diff --git a/unix_integration/pam_kanidm/Cargo.toml b/unix_integration/pam_kanidm/Cargo.toml index 56f6ae3c9..fab00724f 100644 --- a/unix_integration/pam_kanidm/Cargo.toml +++ b/unix_integration/pam_kanidm/Cargo.toml @@ -13,8 +13,8 @@ repository = { workspace = true } [lib] name = "pam_kanidm" -crate-type = [ "cdylib" ] -path = "src/lib.rs" +crate-type = ["cdylib"] +path = "src/lib.rs" [dependencies] kanidm_unix_common = { workspace = true } @@ -37,17 +37,36 @@ section = "network" priority = "optional" maintainer-scripts = "debian/" assets = [ - # Empty on purpose + # Empty on purpose ] [package.metadata.deb.variants.aarch64-unknown-linux-gnu] merge-assets.append = [ - [ "target/release/libpam_kanidm.so", "usr/lib/aarch64-linux-gnu/security/pam_kanidm.so", "644"], - [ "debian/kanidm.pam", "usr/share/pam-configs/kanidm", "644"], + [ + "target/release/libpam_kanidm.so", + "usr/lib/aarch64-linux-gnu/security/pam_kanidm.so", + "644", + ], + [ + "debian/kanidm.pam", + "usr/share/pam-configs/kanidm", + "644", + ], ] [package.metadata.deb.variants.x86_64-unknown-linux-gnu] merge-assets.append = [ - [ "target/release/libpam_kanidm.so", "usr/lib/x86_64-linux-gnu/security/pam_kanidm.so", "644"], - [ "debian/kanidm.pam", "usr/share/pam-configs/kanidm", "644"], + [ + "target/release/libpam_kanidm.so", + "usr/lib/x86_64-linux-gnu/security/pam_kanidm.so", + "644", + ], + [ + "debian/kanidm.pam", + "usr/share/pam-configs/kanidm", + "644", + ], ] + +[package.metadata.cargo-machete] +ignored = ["pkg-config"] diff --git a/unix_integration/resolver/Cargo.toml b/unix_integration/resolver/Cargo.toml index df2d6d01c..8718d9c53 100644 --- a/unix_integration/resolver/Cargo.toml +++ b/unix_integration/resolver/Cargo.toml @@ -52,7 +52,7 @@ test = true doctest = false [dependencies] -async-trait.workspace = true +async-trait = { workspace = true } bytes = { workspace = true } clap = { workspace = true, features = ["derive", "env"] } dialoguer = { workspace = true } @@ -89,8 +89,8 @@ uuid = { workspace = true } walkdir = { workspace = true } [target.'cfg(target_os = "linux")'.dependencies] -sd-notify.workspace = true -prctl.workspace = true +sd-notify = { workspace = true } +prctl = { workspace = true } [target.'cfg(not(target_family = "windows"))'.dependencies] kanidm_utils_users = { workspace = true } @@ -135,6 +135,9 @@ assets = [ ] maintainer-scripts = "debian/" systemd-units = [ - { unit-name = "kanidm-unixd", enable = true}, + { unit-name = "kanidm-unixd", enable = true}, { unit-name = "kanidm-unixd-tasks", enable = true}, ] + +[package.metadata.cargo-machete] +ignored = ["kanidm_build_profiles", "clap_complete"]