diff --git a/Cargo.lock b/Cargo.lock index 9821cbd8d..db419b23c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -17,67 +17,13 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" -[[package]] -name = "aead" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fc95d1bdb8e6666b2b217308eeeb09f2d6728d104be3e31916cc74d15420331" -dependencies = [ - "generic-array 0.14.7", -] - -[[package]] -name = "aes" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "884391ef1066acaa41e766ba8f596341b96e93ce34f9a43e7d24bf0a0eaf0561" -dependencies = [ - "aes-soft", - "aesni", - "cipher", -] - -[[package]] -name = "aes-gcm" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5278b5fabbb9bd46e24aa69b2fdea62c99088e0a950a9be40e3e0101298f88da" -dependencies = [ - "aead", - "aes", - "cipher", - "ctr", - "ghash", - "subtle", -] - -[[package]] -name = "aes-soft" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be14c7498ea50828a38d0e24a765ed2effe92a705885b57d029cd67d45744072" -dependencies = [ - "cipher", - "opaque-debug 0.3.0", -] - -[[package]] -name = "aesni" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea2e11f5e94c2f7d386164cc2aa1f97823fed6f259e486940a71c174dd01b0ce" -dependencies = [ - "cipher", - "opaque-debug 0.3.0", -] - [[package]] name = "ahash" version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" dependencies = [ - "getrandom 0.2.10", + "getrandom", "once_cell", "version_check", ] @@ -178,12 +124,6 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "anyhow" -version = "1.0.72" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b13c32d80ecc7ab747b80c3784bce54ee8a7a0cc4fbda9bf4cda2cf6fe90854" - [[package]] name = "anymap2" version = "0.13.0" @@ -215,7 +155,7 @@ dependencies = [ "num-traits", "rusticata-macros", "thiserror", - "time 0.3.23", + "time 0.3.24", ] [[package]] @@ -241,17 +181,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "async-channel" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" -dependencies = [ - "concurrent-queue", - "event-listener", - "futures-core", -] - [[package]] name = "async-compression" version = "0.4.1" @@ -267,64 +196,6 @@ dependencies = [ "zstd-safe", ] -[[package]] -name = "async-executor" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fa3dc5f2a8564f07759c008b9109dc0d39de92a88d5588b8a5036d286383afb" -dependencies = [ - "async-lock", - "async-task", - "concurrent-queue", - "fastrand 1.9.0", - "futures-lite", - "slab", -] - -[[package]] -name = "async-global-executor" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1b6f5d7df27bd294849f8eec66ecfc63d11814df7a4f5d74168a2394467b776" -dependencies = [ - "async-channel", - "async-executor", - "async-io", - "async-lock", - "blocking", - "futures-lite", - "once_cell", -] - -[[package]] -name = "async-io" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" -dependencies = [ - "async-lock", - "autocfg", - "cfg-if", - "concurrent-queue", - "futures-lite", - "log", - "parking", - "polling", - "rustix 0.37.23", - "slab", - "socket2", - "waker-fn", -] - -[[package]] -name = "async-lock" -version = "2.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa24f727524730b077666307f2734b4a1a1c57acb79193127dcc8914d5242dd7" -dependencies = [ - "event-listener", -] - [[package]] name = "async-recursion" version = "1.0.4" @@ -333,41 +204,9 @@ checksum = "0e97ce7de6cf12de5d7226c73f5ba9811622f4db3a5b91b55c53e987e5f91cba" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] -[[package]] -name = "async-std" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62565bb4402e926b29953c785397c6dc0391b7b446e45008b0049eb43cec6f5d" -dependencies = [ - "async-channel", - "async-global-executor", - "async-io", - "async-lock", - "crossbeam-utils", - "futures-channel", - "futures-core", - "futures-io", - "futures-lite", - "gloo-timers", - "kv-log-macro", - "log", - "memchr", - "once_cell", - "pin-project-lite", - "pin-utils", - "slab", - "wasm-bindgen-futures", -] - -[[package]] -name = "async-task" -version = "4.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc7ab41815b3c653ccd2978ec3255c81349336702dfdf62ee6f7069b12a3aae" - [[package]] name = "async-trait" version = "0.1.72" @@ -376,24 +215,7 @@ checksum = "cc6dde6e4ed435a4c1ee4e73592f5ba9da2151af10076cc04858746af9352d09" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", -] - -[[package]] -name = "atomic-waker" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1181e1e0d1fce796a03db1ae795d67167da795f9cf4a39c37589e85ef57f26d3" - -[[package]] -name = "atty" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" -dependencies = [ - "hermit-abi 0.1.19", - "libc", - "winapi", + "syn 2.0.28", ] [[package]] @@ -414,7 +236,7 @@ dependencies = [ "nom", "openssl", "openssl-sys", - "rand 0.8.5", + "rand", "runloop", "serde", "serde_bytes", @@ -516,7 +338,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -552,12 +374,6 @@ dependencies = [ "rustc-demangle", ] -[[package]] -name = "base-x" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270" - [[package]] name = "base32" version = "0.4.0" @@ -627,7 +443,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.27", + "syn 2.0.28", "which", ] @@ -685,15 +501,6 @@ dependencies = [ "generic-array 0.12.4", ] -[[package]] -name = "block-buffer" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" -dependencies = [ - "generic-array 0.14.7", -] - [[package]] name = "block-buffer" version = "0.10.4" @@ -712,21 +519,6 @@ dependencies = [ "byte-tools", ] -[[package]] -name = "blocking" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77231a1c8f801696fc0123ec6150ce92cffb8e164a02afb9c8ddee0e9b65ad65" -dependencies = [ - "async-channel", - "async-lock", - "async-task", - "atomic-waker", - "fastrand 1.9.0", - "futures-lite", - "log", -] - [[package]] name = "boolinator" version = "2.4.0" @@ -842,15 +634,6 @@ dependencies = [ "half", ] -[[package]] -name = "cipher" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801" -dependencies = [ - "generic-array 0.14.7", -] - [[package]] name = "clang-sys" version = "1.6.1" @@ -862,18 +645,6 @@ dependencies = [ "libloading", ] -[[package]] -name = "clap" -version = "3.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123" -dependencies = [ - "bitflags 1.3.2", - "clap_lex 0.2.4", - "indexmap 1.9.3", - "textwrap", -] - [[package]] name = "clap" version = "4.3.19" @@ -893,7 +664,7 @@ checksum = "01c6a3f08f1fe5662a35cfe393aec09c4df95f60ee93b7556505260f75eee9e1" dependencies = [ "anstream", "anstyle", - "clap_lex 0.5.0", + "clap_lex", "strsim", ] @@ -903,7 +674,7 @@ version = "4.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5fc443334c81a804575546c5a8a79b4913b50e28d69232903604cada1de817ce" dependencies = [ - "clap 4.3.19", + "clap", ] [[package]] @@ -915,16 +686,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.27", -] - -[[package]] -name = "clap_lex" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5" -dependencies = [ - "os_str_bytes", + "syn 2.0.28", ] [[package]] @@ -979,15 +741,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "concurrent-queue" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62ec6771ecfa0762d24683ee5a32ad78487a3d3afdc0fb8cae19d2c5deb50b7c" -dependencies = [ - "crossbeam-utils", -] - [[package]] name = "console" version = "0.15.7" @@ -1011,29 +764,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "const_fn" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbdcdcb6d86f71c5e97409ad45898af11cbc995b4ee8112d59095a28d376c935" - -[[package]] -name = "cookie" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03a5d7b21829bc7b4bf4754a978a241ae54ea55a40f92bb20216e54096f4b951" -dependencies = [ - "aes-gcm", - "base64 0.13.1", - "hkdf", - "hmac", - "percent-encoding", - "rand 0.8.5", - "sha2 0.9.9", - "time 0.2.27", - "version_check", -] - [[package]] name = "cookie" version = "0.16.2" @@ -1041,7 +771,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e859cd57d0710d9e06c381b550c06e76992472a8c6d527aecd2fc673dcc231fb" dependencies = [ "percent-encoding", - "time 0.3.23", + "time 0.3.24", "version_check", ] @@ -1051,14 +781,14 @@ version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d606d0fba62e13cf04db20536c05cb7f13673c161cb47a47a82b9b9e7d3f1daa" dependencies = [ - "cookie 0.16.2", + "cookie", "idna 0.2.3", "log", "publicsuffix", "serde", "serde_derive", "serde_json", - "time 0.3.23", + "time 0.3.24", "url", ] @@ -1087,12 +817,6 @@ dependencies = [ "libc", ] -[[package]] -name = "cpuid-bool" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcb25d077389e53838a8158c8e99174c5a9d902dee4904320db714f3c653ffba" - [[package]] name = "crc32fast" version = "1.3.2" @@ -1104,19 +828,19 @@ dependencies = [ [[package]] name = "criterion" -version = "0.4.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7c76e09c1aae2bc52b3d2f29e13c6572553b30c4aa1b8a49fd70de6412654cb" +checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f" dependencies = [ "anes", - "atty", "cast", "ciborium", - "clap 3.2.25", + "clap", "criterion-plot", + "is-terminal", "itertools", - "lazy_static", "num-traits", + "once_cell", "oorandom", "plotters", "rayon", @@ -1226,16 +950,6 @@ dependencies = [ "typenum", ] -[[package]] -name = "crypto-mac" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bff07008ec701e8028e2ceb8f83f0e4274ee62bd2dbdc4fefff2e9a91824081a" -dependencies = [ - "generic-array 0.14.7", - "subtle", -] - [[package]] name = "csv" version = "1.2.2" @@ -1257,26 +971,18 @@ dependencies = [ "memchr", ] -[[package]] -name = "ctr" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb4a30d54f7443bf3d6191dcd486aca19e67cb3c49fa7a06a319966346707e7f" -dependencies = [ - "cipher", -] - [[package]] name = "daemon" version = "1.1.0-beta.13-dev" dependencies = [ - "clap 4.3.19", + "clap", "clap_complete", "fs2", "futures", "is-terminal", "kanidm_lib_file_permissions", "kanidm_proto", + "kanidm_utils_users", "kanidmd_core", "profiles", "reqwest", @@ -1287,7 +993,6 @@ dependencies = [ "tokio", "tokio-util", "toml", - "users", "whoami", ] @@ -1346,6 +1051,15 @@ dependencies = [ "rusticata-macros", ] +[[package]] +name = "deranged" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8810e7e2cf385b1e9b50d68264908ec367ba642c96d02edfe61c39e88e2a3c01" +dependencies = [ + "serde", +] + [[package]] name = "derive_builder" version = "0.12.0" @@ -1408,15 +1122,6 @@ dependencies = [ "generic-array 0.12.4", ] -[[package]] -name = "digest" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" -dependencies = [ - "generic-array 0.14.7", -] - [[package]] name = "digest" version = "0.10.7" @@ -1448,12 +1153,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "discard" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0" - [[package]] name = "displaydoc" version = "0.2.4" @@ -1462,7 +1161,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -1515,7 +1214,7 @@ checksum = "5e9a1f9f7d83e59740248a6e14ecf93929ade55027844dfcea78beafccc15745" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -1526,9 +1225,9 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" +checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f" dependencies = [ "errno-dragonfly", "libc", @@ -1545,12 +1244,6 @@ dependencies = [ "libc", ] -[[package]] -name = "event-listener" -version = "2.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" - [[package]] name = "fake-simd" version = "0.1.2" @@ -1586,7 +1279,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "65f0fbe245d714b596ba5802b46f937f5ce68dcae0f32f9a70b5c3b04d3c6f64" dependencies = [ "base64 0.13.1", - "cookie 0.16.2", + "cookie", "futures-core", "futures-util", "http", @@ -1595,21 +1288,12 @@ dependencies = [ "mime", "serde", "serde_json", - "time 0.3.23", + "time 0.3.24", "tokio", "url", "webdriver", ] -[[package]] -name = "fastrand" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" -dependencies = [ - "instant", -] - [[package]] name = "fastrand" version = "2.0.0" @@ -1624,7 +1308,7 @@ checksum = "3364d69f691f3903b1a71605fa04f40a7c2d259f0f0512347e36d19a63debf1f" dependencies = [ "base64 0.21.2", "byteorder", - "getrandom 0.2.10", + "getrandom", "openssl", "zeroize", ] @@ -1768,21 +1452,6 @@ version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" -[[package]] -name = "futures-lite" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" -dependencies = [ - "fastrand 1.9.0", - "futures-core", - "futures-io", - "memchr", - "parking", - "pin-project-lite", - "waker-fn", -] - [[package]] name = "futures-macro" version = "0.3.28" @@ -1791,7 +1460,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -1843,17 +1512,6 @@ dependencies = [ "version_check", ] -[[package]] -name = "getrandom" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" -dependencies = [ - "cfg-if", - "libc", - "wasi 0.9.0+wasi-snapshot-preview1", -] - [[package]] name = "getrandom" version = "0.2.10" @@ -1867,16 +1525,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "ghash" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97304e4cd182c3846f7575ced3890c53012ce534ad9114046b0a9e00bb30a375" -dependencies = [ - "opaque-debug 0.3.0", - "polyval", -] - [[package]] name = "gimli" version = "0.27.3" @@ -1885,9 +1533,9 @@ checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e" [[package]] name = "git2" -version = "0.13.25" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f29229cc1b24c0e6062f6e742aa3e256492a5323365e5ed3413599f8a5eff7d6" +checksum = "7b989d6a7ca95a362cf2cfc5ad688b3a467be1f87e480b8dad07fee8c79b0044" dependencies = [ "bitflags 1.3.2", "libc", @@ -1971,9 +1619,9 @@ dependencies = [ [[package]] name = "gloo-history" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddfd137a4b629e72b8c949ec56c71ea9bd5491cc66358a0a7787e94875feec71" +checksum = "85725d90bf0ed47063b3930ef28e863658a7905989e9929a8708aab74a1d5e7f" dependencies = [ "gloo-events", "gloo-utils", @@ -1987,9 +1635,9 @@ dependencies = [ [[package]] name = "gloo-net" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3000ef231a67d5bfee6b35f2c0f6f5c8d45b3381ef5bbbea603690ec4e539762" +checksum = "a66b4e3c7d9ed8d315fd6b97c8b1f74a7c6ecbbc2320e65ae7ed38b7068cc620" dependencies = [ "futures-channel", "futures-core", @@ -2140,7 +1788,7 @@ dependencies = [ "http", "httpdate", "mime", - "sha1 0.10.5", + "sha1", ] [[package]] @@ -2158,15 +1806,6 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" -[[package]] -name = "hermit-abi" -version = "0.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" -dependencies = [ - "libc", -] - [[package]] name = "hermit-abi" version = "0.3.2" @@ -2179,26 +1818,6 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" -[[package]] -name = "hkdf" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51ab2f639c231793c5f6114bdb9bbe50a7dbbfcd7c7c6bd8475dec2d991e964f" -dependencies = [ - "digest 0.9.0", - "hmac", -] - -[[package]] -name = "hmac" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1441c6b1e930e2817404b5046f1f989899143a12bf92de603b69f4e0aee1e15" -dependencies = [ - "crypto-mac", - "digest 0.9.0", -] - [[package]] name = "hostname-validator" version = "1.1.1" @@ -2233,28 +1852,6 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f" -[[package]] -name = "http-types" -version = "2.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e9b187a72d63adbfba487f48095306ac823049cb504ee195541e91c7775f5ad" -dependencies = [ - "anyhow", - "async-channel", - "async-std", - "base64 0.13.1", - "cookie 0.14.4", - "futures-lite", - "infer", - "pin-project-lite", - "rand 0.7.3", - "serde", - "serde_json", - "serde_qs", - "serde_urlencoded", - "url", -] - [[package]] name = "httparse" version = "1.8.0" @@ -2391,9 +1988,9 @@ dependencies = [ [[package]] name = "implicit-clone" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40fc102e70475c320b185cd18c1e48bba2d7210b63970a4d581ef903e4368ef7" +checksum = "7c6ecbd987bb94f1f3c76c6787879756cf4b6f73bfff48d79308e8c56b46f65f" dependencies = [ "indexmap 1.9.3", ] @@ -2418,12 +2015,6 @@ dependencies = [ "hashbrown 0.14.0", ] -[[package]] -name = "infer" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64e9829a50b42bb782c1df523f78d332fe371b10c661e78b7a3c34b0198e9fac" - [[package]] name = "inotify" version = "0.9.6" @@ -2444,26 +2035,6 @@ dependencies = [ "libc", ] -[[package]] -name = "instant" -version = "0.1.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "io-lifetimes" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" -dependencies = [ - "hermit-abi 0.3.2", - "libc", - "windows-sys 0.48.0", -] - [[package]] name = "ipnet" version = "2.8.0" @@ -2476,8 +2047,8 @@ version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" dependencies = [ - "hermit-abi 0.3.2", - "rustix 0.38.4", + "hermit-abi", + "rustix", "windows-sys 0.48.0", ] @@ -2520,11 +2091,12 @@ version = "1.1.0-beta.13-dev" dependencies = [ "base64urlsafedata", "chrono", - "clap 4.3.19", + "clap", "clap_complete", "cron", "kanidm_client", "kanidm_proto", + "kanidm_utils_users", "kanidmd_lib", "ldap3_client", "serde", @@ -2534,7 +2106,6 @@ dependencies = [ "tracing", "tracing-subscriber", "url", - "users", "uuid", ] @@ -2544,11 +2115,12 @@ version = "1.1.0-beta.13-dev" dependencies = [ "base64urlsafedata", "chrono", - "clap 4.3.19", + "clap", "clap_complete", "cron", "kanidm_client", "kanidm_proto", + "kanidm_utils_users", "kanidmd_lib", "ldap3_client", "serde", @@ -2558,7 +2130,6 @@ dependencies = [ "tracing", "tracing-subscriber", "url", - "users", "uuid", ] @@ -2570,7 +2141,7 @@ dependencies = [ "reqwest", "serde", "serde_json", - "time 0.3.23", + "time 0.3.24", "tokio", "toml", "tracing", @@ -2590,7 +2161,7 @@ dependencies = [ "kanidm_proto", "openssl", "openssl-sys", - "rand 0.8.5", + "rand", "serde", "sketching", "tracing", @@ -2601,7 +2172,7 @@ dependencies = [ name = "kanidm_lib_file_permissions" version = "0.1.0" dependencies = [ - "users", + "kanidm_utils_users", "whoami", ] @@ -2611,12 +2182,11 @@ version = "1.1.0-beta.13-dev" dependencies = [ "base32", "base64urlsafedata", - "last-git-commit", "num_enum", "scim_proto", "serde", "serde_json", - "time 0.3.23", + "time 0.3.24", "tracing", "url", "urlencoding", @@ -2629,7 +2199,7 @@ name = "kanidm_tools" version = "1.1.0-beta.13-dev" dependencies = [ "async-recursion", - "clap 4.3.19", + "clap", "clap_complete", "compact_jwt", "dialoguer", @@ -2637,12 +2207,13 @@ dependencies = [ "kanidm_client", "kanidm_proto", "libc", + "profiles", "qrcode", "rpassword 7.2.0", "serde", "serde_json", "shellexpand", - "time 0.3.23", + "time 0.3.24", "tokio", "tracing", "tracing-subscriber", @@ -2659,7 +2230,7 @@ dependencies = [ "async-trait", "base64urlsafedata", "bytes", - "clap 4.3.19", + "clap", "clap_complete", "csv", "futures", @@ -2668,6 +2239,7 @@ dependencies = [ "kanidm_lib_crypto", "kanidm_lib_file_permissions", "kanidm_proto", + "kanidm_utils_users", "kanidmd_core", "libc", "libsqlite3-sys", @@ -2685,11 +2257,17 @@ dependencies = [ "toml", "tracing", "tss-esapi", - "users", "uuid", "walkdir", ] +[[package]] +name = "kanidm_utils_users" +version = "1.1.0-beta.13-dev" +dependencies = [ + "libc", +] + [[package]] name = "kanidmd_core" version = "1.1.0-beta.13-dev" @@ -2707,22 +2285,20 @@ dependencies = [ "futures", "futures-util", "http", - "http-types", "hyper", - "hyper-tls", "kanidm_proto", + "kanidm_utils_users", "kanidmd_lib", "ldap3_proto", "libc", "openssl", "profiles", - "rand 0.8.5", + "rand", "regex", - "reqwest", "serde", "serde_json", "sketching", - "time 0.3.23", + "time 0.3.24", "tokio", "tokio-openssl", "tokio-util", @@ -2732,7 +2308,6 @@ dependencies = [ "tracing", "tracing-subscriber", "urlencoding", - "users", "uuid", ] @@ -2740,7 +2315,6 @@ dependencies = [ name = "kanidmd_lib" version = "1.1.0-beta.13-dev" dependencies = [ - "async-trait", "base64 0.21.2", "base64urlsafedata", "compact_jwt", @@ -2750,11 +2324,11 @@ dependencies = [ "fernet", "filetime", "futures", - "futures-util", "hashbrown 0.14.0", "idlset", "kanidm_lib_crypto", "kanidm_proto", + "kanidm_utils_users", "kanidmd_lib_macros", "lazy_static", "ldap3_proto", @@ -2765,7 +2339,7 @@ dependencies = [ "openssl", "openssl-sys", "profiles", - "rand 0.8.5", + "rand", "regex", "rusqlite", "serde", @@ -2775,7 +2349,7 @@ dependencies = [ "smartstring", "smolset", "sshkeys", - "time 0.3.23", + "time 0.3.24", "tokio", "tokio-util", "toml", @@ -2783,7 +2357,6 @@ dependencies = [ "tracing", "url", "urlencoding", - "users", "uuid", "webauthn-authenticator-rs", "webauthn-rs", @@ -2798,7 +2371,7 @@ version = "0.1.0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -2819,7 +2392,7 @@ dependencies = [ "serde_json", "sketching", "testkit-macros", - "time 0.3.23", + "time 0.3.24", "tokio", "tracing", "url", @@ -2830,7 +2403,6 @@ dependencies = [ name = "kanidmd_web_ui" version = "1.1.0-beta.13" dependencies = [ - "compact_jwt", "gloo", "js-sys", "kanidm_proto", @@ -2838,7 +2410,7 @@ dependencies = [ "serde", "serde-wasm-bindgen 0.5.0", "serde_json", - "time 0.3.23", + "time 0.3.24", "url", "uuid", "wasm-bindgen", @@ -2869,24 +2441,6 @@ dependencies = [ "libc", ] -[[package]] -name = "kv-log-macro" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0de8b303297635ad57c9f5059fd9cee7a47f8e8daa09df0fcd07dd39fb22977f" -dependencies = [ - "log", -] - -[[package]] -name = "last-git-commit" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f2e5243385b2ea0443d79fd6f5ea97b0509f2571e8f39e99d1ead2bcc1c89c0" -dependencies = [ - "git2", -] - [[package]] name = "lazy_static" version = "1.4.0" @@ -2953,9 +2507,9 @@ checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" [[package]] name = "libgit2-sys" -version = "0.12.26+1.3.0" +version = "0.15.2+1.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19e1c899248e606fbfe68dcb31d8b0176ebab833b103824af31bddf4b7457494" +checksum = "a80df2e11fb4a61f4ba2ab42dbe7f74468da143f1a75c74e11dee7c813f694fa" dependencies = [ "cc", "libc", @@ -2999,9 +2553,9 @@ dependencies = [ [[package]] name = "libssh2-sys" -version = "0.2.23" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b094a36eb4b8b8c8a7b4b8ae43b2944502be3e59cd87687595cf6b0a71b3f4ca" +checksum = "2dc8a030b787e2119a731f1951d6a773e2280c660f8ec4b0f5e1505a386e71ee" dependencies = [ "cc", "libc", @@ -3033,9 +2587,9 @@ dependencies = [ [[package]] name = "libz-sys" -version = "1.1.10" +version = "1.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24e6ab01971eb092ffe6a7d42f49f9ff42662f17604681e2843ad65077ba47dc" +checksum = "d97137b25e321a73eef1418d1d5d2eda4d77e12813f8e6dead84bc52c5870a7b" dependencies = [ "cc", "libc", @@ -3043,12 +2597,6 @@ dependencies = [ "vcpkg", ] -[[package]] -name = "linux-raw-sys" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" - [[package]] name = "linux-raw-sys" version = "0.4.3" @@ -3070,9 +2618,6 @@ name = "log" version = "0.4.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4" -dependencies = [ - "value-bag", -] [[package]] name = "lru" @@ -3109,9 +2654,9 @@ checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" [[package]] name = "matchit" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b87248edafb776e59e6ee64a79086f65890d3510f2c656c000bf2a7e8a0aea40" +checksum = "67827e6ea8ee8a7c4a72227ef4fc08957040acffdb5f122733b24fa12daff41b" [[package]] name = "mathru" @@ -3119,7 +2664,7 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a42bf938e4c9a6ad581cf528d5606eb50c5458ac759ca23719291e2f6499bec" dependencies = [ - "rand 0.8.5", + "rand", ] [[package]] @@ -3129,7 +2674,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0f88d5c34d63aad11aa4321ef55ccb064af58b3ad8091079ae22bf83e5eb75d6" dependencies = [ "libc", - "rustc_version 0.3.3", + "rustc_version", "stable_deref_trait", ] @@ -3358,7 +2903,7 @@ version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "hermit-abi 0.3.2", + "hermit-abi", "libc", ] @@ -3400,9 +2945,9 @@ checksum = "09a6e2a2b13a56ebeabba9142f911745be6456163fd6c3d361274ebcd891a80c" dependencies = [ "base64 0.13.1", "chrono", - "getrandom 0.2.10", + "getrandom", "http", - "rand 0.8.5", + "rand", "serde", "serde_json", "serde_path_to_error", @@ -3456,12 +3001,6 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c" -[[package]] -name = "opaque-debug" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" - [[package]] name = "openssl" version = "0.10.55" @@ -3485,7 +3024,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -3510,7 +3049,7 @@ dependencies = [ name = "orca" version = "1.1.0-beta.13-dev" dependencies = [ - "clap 4.3.19", + "clap", "crossbeam", "csv", "dialoguer", @@ -3522,7 +3061,7 @@ dependencies = [ "mathru", "openssl", "profiles", - "rand 0.8.5", + "rand", "serde", "serde_json", "tikv-jemallocator", @@ -3535,12 +3074,6 @@ dependencies = [ "uuid", ] -[[package]] -name = "os_str_bytes" -version = "6.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d5d9eb14b174ee9aa2ef96dc2b94637a2d4b6e7cb873c7e171f0c20c6cf3eac" - [[package]] name = "overload" version = "0.1.1" @@ -3556,12 +3089,6 @@ dependencies = [ "pkg-config", ] -[[package]] -name = "parking" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14f2252c834a40ed9bb5422029649578e63aa341ac401f74e719dd1afda8394e" - [[package]] name = "parking_lot" version = "0.12.1" @@ -3592,7 +3119,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166" dependencies = [ "base64ct", - "rand_core 0.6.4", + "rand_core", "subtle", ] @@ -3722,7 +3249,7 @@ checksum = "ec2e072ecce94ec471b13398d5402c188e76ac03cf74dd1a975161b23a3f6d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -3782,33 +3309,6 @@ dependencies = [ "plotters-backend", ] -[[package]] -name = "polling" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" -dependencies = [ - "autocfg", - "bitflags 1.3.2", - "cfg-if", - "concurrent-queue", - "libc", - "log", - "pin-project-lite", - "windows-sys 0.48.0", -] - -[[package]] -name = "polyval" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eebcc4aa140b9abd2bc40d9c3f7ccec842679cd79045ac3a7ac698c1a064b7cd" -dependencies = [ - "cpuid-bool", - "opaque-debug 0.3.0", - "universal-hash", -] - [[package]] name = "ppv-lite86" version = "0.2.17" @@ -3832,7 +3332,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c64d9ba0963cdcea2e1b2230fbae2bab30eb25a174be395c41e764bfb65dd62" dependencies = [ "proc-macro2", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -3889,6 +3389,7 @@ name = "profiles" version = "1.1.0-beta.13-dev" dependencies = [ "base64 0.21.2", + "git2", "serde", "toml", ] @@ -3951,19 +3452,6 @@ dependencies = [ "proc-macro2", ] -[[package]] -name = "rand" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" -dependencies = [ - "getrandom 0.1.16", - "libc", - "rand_chacha 0.2.2", - "rand_core 0.5.1", - "rand_hc", -] - [[package]] name = "rand" version = "0.8.5" @@ -3971,18 +3459,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha 0.3.1", - "rand_core 0.6.4", -] - -[[package]] -name = "rand_chacha" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" -dependencies = [ - "ppv-lite86", - "rand_core 0.5.1", + "rand_chacha", + "rand_core", ] [[package]] @@ -3992,16 +3470,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core 0.6.4", -] - -[[package]] -name = "rand_core" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" -dependencies = [ - "getrandom 0.1.16", + "rand_core", ] [[package]] @@ -4010,16 +3479,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.10", -] - -[[package]] -name = "rand_hc" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" -dependencies = [ - "rand_core 0.5.1", + "getrandom", ] [[package]] @@ -4068,7 +3528,7 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ - "getrandom 0.2.10", + "getrandom", "redox_syscall 0.2.16", "thiserror", ] @@ -4087,7 +3547,7 @@ checksum = "b2eae68fc220f7cf2532e4494aded17545fce192d59cd996e0fe7887f4ceb575" dependencies = [ "aho-corasick", "memchr", - "regex-automata 0.3.3", + "regex-automata 0.3.4", "regex-syntax 0.7.4", ] @@ -4102,9 +3562,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39354c10dd07468c2e73926b23bb9c2caca74c5501e38a35da70406f1d923310" +checksum = "b7b6d6190b7594385f61bd3911cd1be99dfddcfc365a4160cc2ab5bff4aed294" dependencies = [ "aho-corasick", "memchr", @@ -4132,7 +3592,7 @@ dependencies = [ "async-compression", "base64 0.21.2", "bytes", - "cookie 0.16.2", + "cookie", "cookie_store", "encoding_rs", "futures-core", @@ -4233,22 +3693,13 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" -[[package]] -name = "rustc_version" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" -dependencies = [ - "semver 0.9.0", -] - [[package]] name = "rustc_version" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" dependencies = [ - "semver 0.11.0", + "semver", ] [[package]] @@ -4260,20 +3711,6 @@ dependencies = [ "nom", ] -[[package]] -name = "rustix" -version = "0.37.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d69718bf81c6127a49dc64e44a742e8bb9213c0ff8869a22c308f84c1d4ab06" -dependencies = [ - "bitflags 1.3.2", - "errno", - "io-lifetimes", - "libc", - "linux-raw-sys 0.3.8", - "windows-sys 0.48.0", -] - [[package]] name = "rustix" version = "0.38.4" @@ -4283,7 +3720,7 @@ dependencies = [ "bitflags 2.3.3", "errno", "libc", - "linux-raw-sys 0.4.3", + "linux-raw-sys", "windows-sys 0.48.0", ] @@ -4327,7 +3764,7 @@ dependencies = [ "peg", "serde", "serde_json", - "time 0.3.23", + "time 0.3.24", "tracing", "tracing-subscriber", "url", @@ -4401,30 +3838,15 @@ dependencies = [ "walkdir", ] -[[package]] -name = "semver" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" -dependencies = [ - "semver-parser 0.7.0", -] - [[package]] name = "semver" version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" dependencies = [ - "semver-parser 0.10.2", + "semver-parser", ] -[[package]] -name = "semver-parser" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" - [[package]] name = "semver-parser" version = "0.10.2" @@ -4436,9 +3858,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.178" +version = "1.0.179" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60363bdd39a7be0266a520dab25fdc9241d2f987b08a01e01f0ec6d06a981348" +checksum = "0a5bf42b8d227d4abf38a1ddb08602e229108a517cd4e5bb28f9c7eaafdce5c0" dependencies = [ "serde_derive", ] @@ -4496,13 +3918,13 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.178" +version = "1.0.179" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f28482318d6641454cb273da158647922d1be6b5a2fcc6165cd89ebdd7ed576b" +checksum = "741e124f5485c7e60c03b043f79f320bff3527f4bbf12cf3831750dc46a0ec2c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -4526,17 +3948,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_qs" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7715380eec75f029a4ef7de39a9200e0a63823176b759d055b613f5a87df6a6" -dependencies = [ - "percent-encoding", - "serde", - "thiserror", -] - [[package]] name = "serde_urlencoded" version = "0.7.1" @@ -4549,15 +3960,6 @@ dependencies = [ "serde", ] -[[package]] -name = "sha1" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1da05c97445caa12d05e848c4a4fcbbea29e748ac28f7e80e9b010392063770" -dependencies = [ - "sha1_smol", -] - [[package]] name = "sha1" version = "0.10.5" @@ -4569,12 +3971,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "sha1_smol" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012" - [[package]] name = "sha2" version = "0.8.2" @@ -4584,20 +3980,7 @@ dependencies = [ "block-buffer 0.7.3", "digest 0.8.1", "fake-simd", - "opaque-debug 0.2.3", -] - -[[package]] -name = "sha2" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug 0.3.0", + "opaque-debug", ] [[package]] @@ -4654,7 +4037,6 @@ dependencies = [ name = "sketching" version = "1.1.0-beta.13-dev" dependencies = [ - "async-trait", "num_enum", "tracing", "tracing-forest", @@ -4733,70 +4115,12 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" -[[package]] -name = "standback" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e113fb6f3de07a243d434a56ec6f186dfd51cb08448239fe7bcae73f87ff28ff" -dependencies = [ - "version_check", -] - [[package]] name = "static_assertions" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" -[[package]] -name = "stdweb" -version = "0.4.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5" -dependencies = [ - "discard", - "rustc_version 0.2.3", - "stdweb-derive", - "stdweb-internal-macros", - "stdweb-internal-runtime", - "wasm-bindgen", -] - -[[package]] -name = "stdweb-derive" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef" -dependencies = [ - "proc-macro2", - "quote", - "serde", - "serde_derive", - "syn 1.0.109", -] - -[[package]] -name = "stdweb-internal-macros" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11" -dependencies = [ - "base-x", - "proc-macro2", - "quote", - "serde", - "serde_derive", - "serde_json", - "sha1 0.6.1", - "syn 1.0.109", -] - -[[package]] -name = "stdweb-internal-runtime" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0" - [[package]] name = "strsim" version = "0.10.0" @@ -4822,9 +4146,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.27" +version = "2.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b60f673f44a8255b9c8c657daf66a596d435f2da81a555b06dc644d080ba45e0" +checksum = "04361975b3f5e348b2189d8dc55bc942f278b2d482a6a0365de5bdd62d351567" dependencies = [ "proc-macro2", "quote", @@ -4862,9 +4186,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5486094ee78b2e5038a6382ed7645bc084dc2ec433426ca4c3cb61e2007b8998" dependencies = [ "cfg-if", - "fastrand 2.0.0", + "fastrand", "redox_syscall 0.3.5", - "rustix 0.38.4", + "rustix", "windows-sys 0.48.0", ] @@ -4874,15 +4198,9 @@ version = "0.1.0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] -[[package]] -name = "textwrap" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d" - [[package]] name = "thiserror" version = "1.0.44" @@ -4900,7 +4218,7 @@ checksum = "090198534930841fab3a5d1bb637cde49e339654e606195f8d9c76eeb081dc96" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -4915,9 +4233,9 @@ dependencies = [ [[package]] name = "tikv-jemalloc-sys" -version = "0.5.3+5.3.0-patched" +version = "0.5.4+5.3.0-patched" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a678df20055b43e57ef8cddde41cdfda9a3c1a060b67f4c5836dfb1d78543ba8" +checksum = "9402443cb8fd499b6f327e40565234ff34dbda27460c5b47db0db77443dd85d1" dependencies = [ "cc", "libc", @@ -4946,31 +4264,17 @@ dependencies = [ [[package]] name = "time" -version = "0.2.27" +version = "0.3.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4752a97f8eebd6854ff91f1c1824cd6160626ac4bd44287f7f4ea2035a02a242" -dependencies = [ - "const_fn", - "libc", - "standback", - "stdweb", - "time-macros 0.1.1", - "version_check", - "winapi", -] - -[[package]] -name = "time" -version = "0.3.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59e399c068f43a5d116fedaf73b203fa4f9c519f17e2b34f63221d3792f81446" +checksum = "b79eabcd964882a646b3584543ccabeae7869e9ac32a46f6f22b7a5bd405308b" dependencies = [ + "deranged", "itoa", "libc", "num_threads", "serde", "time-core", - "time-macros 0.2.10", + "time-macros", ] [[package]] @@ -4981,36 +4285,13 @@ checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb" [[package]] name = "time-macros" -version = "0.1.1" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "957e9c6e26f12cb6d0dd7fc776bb67a706312e7299aed74c8dd5b17ebb27e2f1" -dependencies = [ - "proc-macro-hack", - "time-macros-impl", -] - -[[package]] -name = "time-macros" -version = "0.2.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96ba15a897f3c86766b757e5ac7221554c6750054d74d5b28844fce5fb36a6c4" +checksum = "eb71511c991639bb078fd5bf97757e03914361c48100d52878b8e52b46fb92cd" dependencies = [ "time-core", ] -[[package]] -name = "time-macros-impl" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd3c141a1b43194f3f56a1411225df8646c55781d5f26db825b3d98507eb482f" -dependencies = [ - "proc-macro-hack", - "proc-macro2", - "quote", - "standback", - "syn 1.0.109", -] - [[package]] name = "tinytemplate" version = "1.2.1" @@ -5063,7 +4344,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -5225,7 +4506,7 @@ checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -5287,7 +4568,7 @@ dependencies = [ "sharded-slab", "smallvec", "thread_local", - "time 0.3.23", + "time 0.3.24", "tracing", "tracing-core", "tracing-log", @@ -5392,16 +4673,6 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" -[[package]] -name = "universal-hash" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05" -dependencies = [ - "generic-array 0.14.7", - "subtle", -] - [[package]] name = "url" version = "2.4.0" @@ -5420,16 +4691,6 @@ version = "2.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" -[[package]] -name = "users" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24cc0f6d6f267b73e5a2cadf007ba8f9bc39c6a6f9666f8cf25ea809a153b032" -dependencies = [ - "libc", - "log", -] - [[package]] name = "utf8parse" version = "0.2.1" @@ -5442,7 +4703,7 @@ version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d" dependencies = [ - "getrandom 0.2.10", + "getrandom", "serde", ] @@ -5452,12 +4713,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" -[[package]] -name = "value-bag" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d92ccd67fb88503048c01b59152a04effd0782d035a83a6d256ce6085f08f4a3" - [[package]] name = "vcpkg" version = "0.2.15" @@ -5470,12 +4725,6 @@ version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" -[[package]] -name = "waker-fn" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca" - [[package]] name = "walkdir" version = "2.3.3" @@ -5495,12 +4744,6 @@ dependencies = [ "try-lock", ] -[[package]] -name = "wasi" -version = "0.9.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" - [[package]] name = "wasi" version = "0.10.0+wasi-snapshot-preview1" @@ -5536,7 +4779,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", "wasm-bindgen-shared", ] @@ -5570,7 +4813,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -5662,7 +4905,7 @@ dependencies = [ "der-parser", "nom", "openssl", - "rand 0.8.5", + "rand", "serde", "serde_cbor_2", "serde_json", @@ -5698,13 +4941,13 @@ checksum = "9973cb72c8587d5ad5efdb91e663d36177dc37725e6c90ca86c626b0cc45c93f" dependencies = [ "base64 0.13.1", "bytes", - "cookie 0.16.2", + "cookie", "http", "log", "serde", "serde_derive", "serde_json", - "time 0.3.23", + "time 0.3.24", "unicode-segmentation", "url", ] @@ -5961,9 +5204,9 @@ checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" [[package]] name = "winnow" -version = "0.5.0" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fac9742fd1ad1bd9643b991319f72dd031016d44b77039a26977eb667141e7" +checksum = "8bd122eb777186e60c3fdf765a58ac76e41c582f1f535fbf3314434c6b58f3f7" dependencies = [ "memchr", ] @@ -5992,7 +5235,7 @@ dependencies = [ "oid-registry", "rusticata-macros", "thiserror", - "time 0.3.23", + "time 0.3.24", ] [[package]] @@ -6081,7 +5324,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.27", + "syn 2.0.28", ] [[package]] @@ -6127,5 +5370,5 @@ dependencies = [ "lazy_static", "quick-error", "regex", - "time 0.3.23", + "time 0.3.24", ] diff --git a/Cargo.toml b/Cargo.toml index 9edb330c4..8d36fc2de 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -23,7 +23,8 @@ members = [ "libs/crypto", "libs/file_permissions", "libs/profiles", - "libs/sketching" + "libs/sketching", + "libs/users" ] [workspace.package] @@ -58,7 +59,7 @@ concread = "^0.4.1" # concread = { path = "../concread" } cron = "0.12.0" crossbeam = "0.8.1" -criterion = "^0.4.0" +criterion = "^0.5.1" csv = "1.2.2" dialoguer = "0.10.4" dyn-clone = "^1.0.12" @@ -68,10 +69,10 @@ fs2 = "^0.4.3" futures = "^0.3.28" futures-concurrency = "^3.1.0" futures-util = { version = "^0.3.21", features = ["sink"] } +git2 = "0.17.2" gloo = "^0.8.1" hashbrown = { version = "0.14.0", features = ["serde", "inline-more", "ahash"] } hex = "^0.4.3" -http-types = "^2.12.0" hyper = { version = "0.14.27", features = ["full"] } hyper-tls = "0.5.0" idlset = "^0.2.4" @@ -85,7 +86,7 @@ kanidm_lib_file_permissions = { path = "./libs/file_permissions" } kanidm_client = { path = "./libs/client", version = "1.1.0-alpha.11" } kanidm_proto = { path = "./proto", version = "1.1.0-alpha.11" } kanidm_unix_int = { path = "./unix_integration" } -last-git-commit = "0.2.0" +kanidm_utils_users = { path = "./libs/users" } # REMOVE this lazy_static = "^1.4.0" ldap3_client = "^0.3.5" @@ -156,7 +157,6 @@ tss-esapi = "^7.2.0" url = "^2.4.0" urlencoding = "2.1.3" -users = "^0.11.0" uuid = "^1.4.1" wasm-bindgen = "^0.2.86" diff --git a/libs/file_permissions/Cargo.toml b/libs/file_permissions/Cargo.toml index 5d64817cf..e88efbdde 100644 --- a/libs/file_permissions/Cargo.toml +++ b/libs/file_permissions/Cargo.toml @@ -11,4 +11,4 @@ edition = "2021" whoami = {workspace = true} [target.'cfg(not(target_family = "windows"))'.dependencies] -users = {workspace = true} +kanidm_utils_users = { workspace = true } diff --git a/libs/file_permissions/src/lib.rs b/libs/file_permissions/src/lib.rs index 9686dec7f..7274bddd5 100644 --- a/libs/file_permissions/src/lib.rs +++ b/libs/file_permissions/src/lib.rs @@ -9,7 +9,7 @@ use std::os::macos::fs::MetadataExt; // #[cfg(target_os = "windows")] // use std::os::windows::fs::MetadataExt; #[cfg(target_family = "unix")] -use users::{get_current_gid, get_current_uid}; +use kanidm_utils_users::{get_current_gid, get_current_uid}; #[cfg(target_family = "unix")] /// Check a given file's metadata is read-only for the current user (true = read-only) diff --git a/libs/profiles/Cargo.toml b/libs/profiles/Cargo.toml index 8c9617013..22ae9e808 100644 --- a/libs/profiles/Cargo.toml +++ b/libs/profiles/Cargo.toml @@ -24,3 +24,4 @@ base64 = { workspace = true } [build-dependencies] base64 = { workspace = true } +git2 = { workspace = true } diff --git a/libs/profiles/build.rs b/libs/profiles/build.rs index 8ac628113..ca5ea2f6f 100644 --- a/libs/profiles/build.rs +++ b/libs/profiles/build.rs @@ -3,6 +3,18 @@ use std::{env, fs}; use base64::{engine::general_purpose, Engine as _}; +// We do this here so it's only actually run and checked once. +fn determine_git_rev() -> Option { + let path = PathBuf::from("../../"); + let repo = git2::Repository::open(&path).ok()?; + let head = repo.head().ok()?; + let commit = head.peel_to_commit().ok()?; + let mut commit_id = commit.id().to_string(); + // Now we actually want to trim this to only 10 chars? + commit_id.truncate(10); + Some(commit_id) +} + fn main() { println!("cargo:rerun-if-env-changed=KANIDM_BUILD_PROFILE"); @@ -17,6 +29,10 @@ fn main() { let contents = general_purpose::STANDARD.encode(data); + if let Some(commit_rev) = determine_git_rev() { + println!("cargo:rustc-env=KANIDM_PKG_COMMIT_REV={}", commit_rev); + } + println!("cargo:rerun-if-changed={}", profile_path.to_str().unwrap()); println!("cargo:rustc-env=KANIDM_BUILD_PROFILE={}", profile); diff --git a/libs/profiles/src/lib.rs b/libs/profiles/src/lib.rs index f9e708c4a..ac3206867 100644 --- a/libs/profiles/src/lib.rs +++ b/libs/profiles/src/lib.rs @@ -1,7 +1,6 @@ -use std::env; - use base64::{engine::general_purpose, Engine as _}; use serde::Deserialize; +use std::env; #[derive(Debug, Deserialize)] #[allow(non_camel_case_types)] @@ -74,6 +73,19 @@ pub fn apply_profile() { let profile_cfg: ProfileConfig = toml::from_slice(&data) .unwrap_or_else(|_| panic!("Failed to parse profile - {} - {}", profile, contents)); + // We have to setup for our pkg version to be passed into things correctly + // now. This relies on the profile build.rs to get the commit rev if present, but + // we combine it with the local package version + let version = env!("CARGO_PKG_VERSION"); + if let Some(commit_rev) = option_env!("KANIDM_PKG_COMMIT_REV") { + println!( + "cargo:rustc-env=KANIDM_PKG_VERSION={} {}", + version, commit_rev + ); + } else { + println!("cargo:rustc-env=KANIDM_PKG_VERSION={}", version); + }; + match profile_cfg.cpu_flags { CpuOptLevel::apple_m1 => println!("cargo:rustc-env=RUSTFLAGS=-Ctarget-cpu=apple_m1"), CpuOptLevel::none => {} diff --git a/libs/sketching/Cargo.toml b/libs/sketching/Cargo.toml index b3e213a0c..876ebca96 100644 --- a/libs/sketching/Cargo.toml +++ b/libs/sketching/Cargo.toml @@ -12,7 +12,6 @@ homepage = { workspace = true } repository = { workspace = true } [dependencies] -async-trait = { workspace = true } num_enum = { workspace = true } tracing = { workspace = true, features = ["attributes"] } tracing-subscriber = { workspace = true, features = ["env-filter"] } diff --git a/libs/users/Cargo.toml b/libs/users/Cargo.toml new file mode 100644 index 000000000..b29903977 --- /dev/null +++ b/libs/users/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "kanidm_utils_users" +version.workspace = true +authors.workspace = true +rust-version.workspace = true +edition.workspace = true +license.workspace = true +homepage.workspace = true +repository.workspace = true + +[dependencies] +libc = { workspace = true } diff --git a/libs/users/src/lib.rs b/libs/users/src/lib.rs new file mode 100644 index 000000000..0b3962ef5 --- /dev/null +++ b/libs/users/src/lib.rs @@ -0,0 +1,17 @@ +use libc::{gid_t, uid_t}; + +pub fn get_current_uid() -> uid_t { + unsafe { libc::getuid() } +} + +pub fn get_effective_uid() -> uid_t { + unsafe { libc::geteuid() } +} + +pub fn get_current_gid() -> gid_t { + unsafe { libc::getgid() } +} + +pub fn get_effective_gid() -> gid_t { + unsafe { libc::getegid() } +} diff --git a/project_docs/RELEASE_CHECKLIST.md b/project_docs/RELEASE_CHECKLIST.md index aac72166a..b2fbb28c5 100644 --- a/project_docs/RELEASE_CHECKLIST.md +++ b/project_docs/RELEASE_CHECKLIST.md @@ -3,6 +3,7 @@ ```bash cargo install cargo-audit cargo install cargo-outdated +cargo install cargo-udeps ``` ## Check List @@ -13,6 +14,7 @@ cargo install cargo-outdated ### Cargo Tasks +- [ ] cargo udeps - [ ] cargo outdated -R - [ ] cargo audit - [ ] cargo test diff --git a/proto/Cargo.toml b/proto/Cargo.toml index b872696dd..ca75ecb28 100644 --- a/proto/Cargo.toml +++ b/proto/Cargo.toml @@ -29,5 +29,3 @@ urlencoding = { workspace = true } uuid = { workspace = true, features = ["serde"] } webauthn-rs-proto = { workspace = true } -[target.'cfg(not(target_family = "wasm"))'.dependencies] -last-git-commit = { workspace = true } diff --git a/proto/src/lib.rs b/proto/src/lib.rs index 7ccc4f7f4..e4a0a294b 100644 --- a/proto/src/lib.rs +++ b/proto/src/lib.rs @@ -13,7 +13,6 @@ pub mod internal; pub mod messages; pub mod oauth2; pub mod scim_v1; -pub mod utils; pub mod v1; pub use webauthn_rs_proto as webauthn; diff --git a/proto/src/utils.rs b/proto/src/utils.rs deleted file mode 100644 index 423575bd7..000000000 --- a/proto/src/utils.rs +++ /dev/null @@ -1,15 +0,0 @@ -/// Shows the version string and current git commit status at build -pub fn show_version(name: &str) { - println!("{}", get_version(name)); -} - -pub fn get_version(name: &str) -> String { - let version = env!("CARGO_PKG_VERSION"); - #[cfg(not(target_family = "wasm"))] - match last_git_commit::LastGitCommit::new().build() { - Ok(value) => format!("{} {} {}", name, version, value.id().short()), - Err(_) => format!("{} {}", name, version), - } - #[cfg(target_family = "wasm")] - format!("{} {}", name, version) -} diff --git a/server/core/Cargo.toml b/server/core/Cargo.toml index 84665fc44..b14dc2107 100644 --- a/server/core/Cargo.toml +++ b/server/core/Cargo.toml @@ -26,9 +26,7 @@ cron = { workspace = true } futures = { workspace = true } futures-util = { workspace = true } http = "0.2.9" -http-types = { workspace = true } hyper = { workspace = true } -hyper-tls = { workspace = true } kanidm_proto = { workspace = true } kanidmd_lib = { workspace = true } ldap3_proto = { workspace = true } @@ -36,7 +34,6 @@ libc = { workspace = true } openssl = { workspace = true } rand = { workspace = true } regex = { workspace = true } -reqwest = { workspace = true } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } sketching = { workspace = true } @@ -50,7 +47,7 @@ tower-http = { version = "0.4.3", features = ["tokio", "tracing", "uuid", "compr tracing = { workspace = true, features = ["attributes"] } tracing-subscriber = { workspace = true, features = ["time", "json"] } urlencoding = { workspace = true } -users = { workspace = true } +kanidm_utils_users = { workspace = true } uuid = { workspace = true, features = ["serde", "v4" ] } [build-dependencies] diff --git a/server/core/src/admin.rs b/server/core/src/admin.rs index 39be46513..bddd5ee33 100644 --- a/server/core/src/admin.rs +++ b/server/core/src/admin.rs @@ -2,6 +2,7 @@ use crate::actors::v1_write::QueryServerWriteV1; use crate::CoreAction; use bytes::{BufMut, BytesMut}; use futures::{SinkExt, StreamExt}; +use kanidm_utils_users::get_current_uid; use serde::{Deserialize, Serialize}; use std::error::Error; use std::io; @@ -10,7 +11,6 @@ use tokio::net::{UnixListener, UnixStream}; use tokio::sync::broadcast; use tokio_util::codec::{Decoder, Encoder, Framed}; use tracing::{span, Level}; -use users::get_current_uid; use uuid::Uuid; #[derive(Serialize, Deserialize, Debug)] diff --git a/server/daemon/Cargo.toml b/server/daemon/Cargo.toml index 11f9d30ef..e22d13f7d 100644 --- a/server/daemon/Cargo.toml +++ b/server/daemon/Cargo.toml @@ -40,7 +40,7 @@ sd-notify.workspace = true whoami = { workspace = true } [target.'cfg(not(target_family = "windows"))'.dependencies] -users = { workspace = true } +kanidm_utils_users = { workspace = true } tikv-jemallocator = { workspace = true } [build-dependencies] diff --git a/server/daemon/src/main.rs b/server/daemon/src/main.rs index b45f6ed3a..851701c75 100644 --- a/server/daemon/src/main.rs +++ b/server/daemon/src/main.rs @@ -26,6 +26,8 @@ use std::process::ExitCode; use clap::{Args, Parser, Subcommand}; use futures::{SinkExt, StreamExt}; +#[cfg(not(target_family = "windows"))] // not needed for windows builds +use kanidm_utils_users::{get_current_gid, get_current_uid, get_effective_gid, get_effective_uid}; use kanidmd_core::admin::{AdminTaskRequest, AdminTaskResponse, ClientCodec}; use kanidmd_core::config::{Configuration, LogLevel, ServerConfig}; use kanidmd_core::{ @@ -39,8 +41,6 @@ use sketching::tracing_forest::util::*; use sketching::tracing_forest::{self}; use tokio::net::UnixStream; use tokio_util::codec::Framed; -#[cfg(not(target_family = "windows"))] // not needed for windows builds -use users::{get_current_gid, get_current_uid, get_effective_gid, get_effective_uid}; #[cfg(target_family = "windows")] // for windows builds use whoami; @@ -236,7 +236,7 @@ async fn main() -> ExitCode { // print the app version and bail if let KanidmdOpt::Version(_) = &opt.commands { - kanidm_proto::utils::show_version("kanidmd"); + println!("kanidmd {}", env!("KANIDM_PKG_VERSION")); return ExitCode::SUCCESS }; diff --git a/server/lib/Cargo.toml b/server/lib/Cargo.toml index 1baa8993c..13824d6b6 100644 --- a/server/lib/Cargo.toml +++ b/server/lib/Cargo.toml @@ -20,7 +20,6 @@ name = "scaling_10k" harness = false [dependencies] -async-trait = { workspace = true } base64 = { workspace = true } base64urlsafedata = { workspace = true } compact_jwt = { workspace = true, features = ["openssl"] } @@ -28,7 +27,7 @@ concread = { workspace = true } dyn-clone = { workspace = true } fernet = { workspace = true, features = ["fernet_danger_timestamps"] } filetime = { workspace = true } -futures-util = { workspace = true } +# futures-util = { workspace = true } hashbrown = { workspace = true } idlset = { workspace = true } kanidm_proto = { workspace = true } @@ -74,7 +73,7 @@ whoami = { workspace = true } [target.'cfg(not(target_family = "windows"))'.dependencies] rusqlite = { workspace = true } -users = { workspace = true } +kanidm_utils_users = { workspace = true } [features] # default = [ "libsqlite3-sys/bundled", "openssl/vendored" ] diff --git a/server/lib/src/utils.rs b/server/lib/src/utils.rs index af91ad5e5..49a68bf4a 100644 --- a/server/lib/src/utils.rs +++ b/server/lib/src/utils.rs @@ -16,7 +16,7 @@ use touch::file as touch_file; // use std::os::windows::fs::MetadataExt; use crate::prelude::*; #[cfg(target_family = "unix")] -use users::{get_current_gid, get_current_uid}; +use kanidm_utils_users::{get_current_gid, get_current_uid}; #[derive(Debug)] pub struct DistinctAlpha; diff --git a/server/web_ui/Cargo.toml b/server/web_ui/Cargo.toml index d07144f40..f09481607 100644 --- a/server/web_ui/Cargo.toml +++ b/server/web_ui/Cargo.toml @@ -18,7 +18,6 @@ repository = "https://github.com/kanidm/kanidm/" crate-type = ["cdylib", "rlib"] [dependencies] -compact_jwt = { workspace = true } gloo = { workspace = true } js-sys = { workspace = true } kanidm_proto = { workspace = true, features = ["wasm"] } @@ -28,7 +27,6 @@ serde_json = { workspace = true } serde-wasm-bindgen = { workspace = true } wasm-bindgen = { workspace = true } wasm-bindgen-futures = { workspace = true } -wasm-bindgen-test = { workspace = true } url = { workspace = true } uuid = { workspace = true } yew = { workspace = true, features = ["csr"] } @@ -65,3 +63,6 @@ features = [ "Response", "Window", ] + +[dev-dependencies] +wasm-bindgen-test = { workspace = true } diff --git a/server/web_ui/src/lib.rs b/server/web_ui/src/lib.rs index 984b04582..5f9143a92 100644 --- a/server/web_ui/src/lib.rs +++ b/server/web_ui/src/lib.rs @@ -34,11 +34,11 @@ mod views; mod components; +/// This is the entry point of the web front end. This triggers the manager app to load and begin +/// it's event loop. #[cfg_attr(target_arch = "wasm32", wasm_bindgen)] pub fn run_app() -> Result<(), JsValue> { yew::Renderer::::new().render(); - #[cfg(debug_assertions)] - gloo::console::debug!(kanidm_proto::utils::get_version("kanidmd_web_ui")); Ok(()) } diff --git a/tools/cli/Cargo.toml b/tools/cli/Cargo.toml index fe01ce90a..5cdfbd67e 100644 --- a/tools/cli/Cargo.toml +++ b/tools/cli/Cargo.toml @@ -54,6 +54,7 @@ zxcvbn = { workspace=true } [build-dependencies] clap = { workspace = true, features = ["derive"] } clap_complete = { workspace=true } +profiles = { workspace = true } uuid = { workspace=true } url = { workspace = true } diff --git a/tools/cli/build.rs b/tools/cli/build.rs index 7056682b2..51e971860 100644 --- a/tools/cli/build.rs +++ b/tools/cli/build.rs @@ -12,6 +12,8 @@ include!("src/opt/ssh_authorizedkeys.rs"); include!("src/opt/kanidm.rs"); fn main() { + profiles::apply_profile(); + let outdir = match env::var_os("OUT_DIR") { None => return, Some(outdir) => outdir, diff --git a/tools/cli/src/cli/lib.rs b/tools/cli/src/cli/lib.rs index 13e6470c7..3ff2245ff 100644 --- a/tools/cli/src/cli/lib.rs +++ b/tools/cli/src/cli/lib.rs @@ -100,7 +100,7 @@ impl KanidmClientOpt { KanidmClientOpt::System { commands } => commands.debug(), KanidmClientOpt::Recycle { commands } => commands.debug(), KanidmClientOpt::Version {} => { - kanidm_proto::utils::show_version("kanidm"); + println!("kanidm {}", env!("KANIDM_PKG_VERSION")); true } } diff --git a/tools/iam_migrations/freeipa/Cargo.toml b/tools/iam_migrations/freeipa/Cargo.toml index 1f9cd7890..ae76835d3 100644 --- a/tools/iam_migrations/freeipa/Cargo.toml +++ b/tools/iam_migrations/freeipa/Cargo.toml @@ -34,7 +34,7 @@ uuid = { workspace = true, features = ["serde"] } kanidmd_lib = { workspace = true } [target.'cfg(target_family = "unix")'.dependencies] -users = { workspace = true } +kanidm_utils_users = { workspace = true } [build-dependencies] clap = { workspace = true, features = ["derive"] } diff --git a/tools/iam_migrations/freeipa/src/main.rs b/tools/iam_migrations/freeipa/src/main.rs index c6bfd5f23..6d52d1ec6 100644 --- a/tools/iam_migrations/freeipa/src/main.rs +++ b/tools/iam_migrations/freeipa/src/main.rs @@ -55,7 +55,7 @@ use kanidm_proto::scim_v1::{ use kanidmd_lib::utils::file_permissions_readonly; #[cfg(target_family = "unix")] -use users::{get_current_gid, get_current_uid, get_effective_gid, get_effective_uid}; +use kanidm_utils_users::{get_current_gid, get_current_uid, get_effective_gid, get_effective_uid}; use ldap3_client::{ proto, proto::LdapFilter, LdapClient, LdapClientBuilder, LdapSyncRepl, LdapSyncReplEntry, diff --git a/tools/iam_migrations/ldap/Cargo.toml b/tools/iam_migrations/ldap/Cargo.toml index a65e6fa8e..85960ca3b 100644 --- a/tools/iam_migrations/ldap/Cargo.toml +++ b/tools/iam_migrations/ldap/Cargo.toml @@ -34,7 +34,7 @@ uuid = { workspace = true, features = ["serde"] } kanidmd_lib = { workspace = true } [target.'cfg(target_family = "unix")'.dependencies] -users = { workspace = true } +kanidm_utils_users = { workspace = true } [build-dependencies] clap = { workspace = true, features = ["derive"] } diff --git a/tools/iam_migrations/ldap/src/main.rs b/tools/iam_migrations/ldap/src/main.rs index 95ff33d56..def1dcc22 100644 --- a/tools/iam_migrations/ldap/src/main.rs +++ b/tools/iam_migrations/ldap/src/main.rs @@ -49,7 +49,7 @@ use kanidm_proto::scim_v1::{ use kanidmd_lib::utils::file_permissions_readonly; #[cfg(target_family = "unix")] -use users::{get_current_gid, get_current_uid, get_effective_gid, get_effective_uid}; +use kanidm_utils_users::{get_current_gid, get_current_uid, get_effective_gid, get_effective_uid}; use ldap3_client::{proto, LdapClientBuilder, LdapSyncRepl, LdapSyncReplEntry, LdapSyncStateValue}; diff --git a/tools/orca/src/main.rs b/tools/orca/src/main.rs index fd1b6dd10..1be06ce7b 100644 --- a/tools/orca/src/main.rs +++ b/tools/orca/src/main.rs @@ -233,7 +233,7 @@ async fn main() { debug!("cli -> {:?}", opt); match opt { OrcaOpt::Version(_opt) => { - println!("{}", kanidm_proto::utils::get_version("orca")); + println!("orca {}", env!("KANIDM_PKG_VERSION")); std::process::exit(0); } OrcaOpt::TestConnection(opt) => { diff --git a/unix_integration/Cargo.toml b/unix_integration/Cargo.toml index c2fc4f803..d4025eebd 100644 --- a/unix_integration/Cargo.toml +++ b/unix_integration/Cargo.toml @@ -73,7 +73,7 @@ uuid = { workspace = true } walkdir = { workspace = true } [target.'cfg(not(target_family = "windows"))'.dependencies] -users = { workspace = true } +kanidm_utils_users = { workspace = true } [dev-dependencies] kanidmd_core = { workspace = true } diff --git a/unix_integration/src/daemon.rs b/unix_integration/src/daemon.rs index e772fd340..c96f44569 100644 --- a/unix_integration/src/daemon.rs +++ b/unix_integration/src/daemon.rs @@ -33,6 +33,7 @@ use kanidm_unix_common::unix_config::KanidmUnixdConfig; use kanidm_unix_common::unix_passwd::{parse_etc_group, parse_etc_passwd}; use kanidm_unix_common::unix_proto::{ClientRequest, ClientResponse, TaskRequest, TaskResponse}; +use kanidm_utils_users::{get_current_gid, get_current_uid, get_effective_gid, get_effective_uid}; use libc::umask; use sketching::tracing_forest::traits::*; use sketching::tracing_forest::util::*; @@ -45,7 +46,6 @@ use tokio::sync::mpsc::{channel, Receiver, Sender}; use tokio::sync::oneshot; use tokio::time; use tokio_util::codec::{Decoder, Encoder, Framed}; -use users::{get_current_gid, get_current_uid, get_effective_gid, get_effective_uid}; use notify_debouncer_full::{new_debouncer, notify::RecursiveMode, notify::Watcher}; diff --git a/unix_integration/src/ssh_authorizedkeys.rs b/unix_integration/src/ssh_authorizedkeys.rs index 4c223bec6..a5ca661f1 100644 --- a/unix_integration/src/ssh_authorizedkeys.rs +++ b/unix_integration/src/ssh_authorizedkeys.rs @@ -31,10 +31,7 @@ async fn main() -> ExitCode { ::std::env::set_var("RUST_LOG", "kanidm=debug,kanidm_client=debug"); } if opt.version { - println!( - "{}", - kanidm_proto::utils::get_version("kanidm_ssh_authorizedkeys") - ); + println!("ssh_authorizedkeys {}", env!("KANIDM_PKG_VERSION")); return ExitCode::SUCCESS; } sketching::tracing_subscriber::fmt::init(); diff --git a/unix_integration/src/tasks_daemon.rs b/unix_integration/src/tasks_daemon.rs index 52ef96d98..65bdc97c6 100644 --- a/unix_integration/src/tasks_daemon.rs +++ b/unix_integration/src/tasks_daemon.rs @@ -23,6 +23,7 @@ use futures::{SinkExt, StreamExt}; use kanidm_unix_common::constants::DEFAULT_CONFIG_PATH; use kanidm_unix_common::unix_config::KanidmUnixdConfig; use kanidm_unix_common::unix_proto::{HomeDirectoryInfo, TaskRequest, TaskResponse}; +use kanidm_utils_users::{get_effective_gid, get_effective_uid}; use libc::{lchown, umask}; use sketching::tracing_forest::traits::*; use sketching::tracing_forest::util::*; @@ -31,7 +32,6 @@ use tokio::net::UnixStream; use tokio::sync::broadcast; use tokio::time; use tokio_util::codec::{Decoder, Encoder, Framed}; -use users::{get_effective_gid, get_effective_uid}; use walkdir::WalkDir; #[cfg(all(target_family = "unix", feature = "selinux"))] diff --git a/unix_integration/src/tool.rs b/unix_integration/src/tool.rs index 3e2d2133e..9e15f053c 100644 --- a/unix_integration/src/tool.rs +++ b/unix_integration/src/tool.rs @@ -212,7 +212,7 @@ async fn main() -> ExitCode { ExitCode::SUCCESS } KanidmUnixOpt::Version { debug: _ } => { - println!("{}", kanidm_proto::utils::get_version("kanidm-unix")); + println!("kanidm-unix {}", env!("KANIDM_PKG_VERSION")); ExitCode::SUCCESS } }