[profile.release] debug = true lto = "thin" [workspace] members = [ "proto", "tools/cli", "tools/iam_migrations/freeipa", "tools/orca", "unix_integration", "unix_integration/nss_kanidm", "unix_integration/pam_kanidm", "server/web_ui", "server/daemon", "server/lib", "server/lib-macros", "server/core", "server/testkit", "server/testkit-macros", "libs/client", "libs/crypto", "libs/file_permissions", "libs/profiles", "libs/sketching" ] [workspace.package] version = "1.1.0-alpha.12-dev" authors = [ "William Brown ", "James Hodgkinson ", ] rust-version = "1.66" edition = "2021" license = "MPL-2.0" homepage = "https://github.com/kanidm/kanidm/" repository = "https://github.com/kanidm/kanidm/" [workspace.dependencies] async-trait = "^0.1.68" base32 = "^0.4.0" base64 = "^0.21.0" base64urlsafedata = "0.1.3" bytes = "^1.3.0" clap = { version = "^3.2", features = ["derive"] } clap_complete = "^3.2.5" # Forced by saffron/cron chrono = "^0.4.24" compact_jwt = { version = "^0.2.3", default-features = false } # compact_jwt = { path = "../compact_jwt" } concread = "^0.4.1" # concread = { path = "../concread" } cron = "0.12.0" crossbeam = "0.8.1" criterion = "^0.4.0" csv = "1.2.1" dialoguer = "0.10.3" dyn-clone = "^1.0.11" fernet = "^0.2.0" filetime = "^0.2.20" futures = "^0.3.28" futures-concurrency = "^3.1.0" futures-util = { version = "^0.3.21", features = ["sink"] } gloo = "^0.8.0" gloo-net = "0.2.6" hashbrown = { version = "0.12.3", features = ["serde", "inline-more", "ahash"] } hex = "^0.4.3" http-types = "^2.12.0" idlset = "^0.2.4" # idlset = { path = "../idlset" } js-sys = "^0.3.58" kanidmd_core = { path = "./server/core" } kanidmd_idm = { path = "./server/idm" } kanidmd_lib = { path = "./server/lib" } kanidmd_lib_macros = { path = "./server/lib-macros" } kanidm_lib_crypto = { path = "./libs/crypto" } kanidm_lib_file_permissions = { path = "./libs/file_permissions" } kanidmd_testkit = { path = "./server/testkit" } 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" # REMOVE this lazy_static = "^1.4.0" ldap3_client = "^0.3.2" ldap3_proto = "^0.3.2" # ldap3_client = { path = "../ldap3/client", version = "0.3.0" } # ldap3_proto = { path = "../ldap3/proto", version = "0.3.0" } # ldap3_client = { git = "https://github.com/kanidm/ldap3.git", version = "0.3.0" } # ldap3_proto = { git = "https://github.com/kanidm/ldap3.git", version = "0.3.0" } libc = "^0.2.140" libnss = "^0.4.0" libsqlite3-sys = "^0.25.0" lru = "^0.8.0" mathru = "^0.13.0" num_enum = "^0.5.11" oauth2_ext = { version = "^4.1.0", package = "oauth2", default-features = false } openssl-sys = "^0.9" openssl = "^0.10.48" paste = "^1.0.12" pkg-config = "^0.3.26" proc-macro2 = "1.0.56" profiles = { path = "./libs/profiles" } qrcode = "^0.12.0" quote = "1" r2d2 = "^0.8.9" r2d2_sqlite = "^0.21.0" rand = "^0.8.5" regex = "1.7.3" reqwest = { version = "0.11.16", default-features = false, features=["cookies", "json", "gzip", "native-tls"] } rpassword = "^7.2.0" rusqlite = "^0.28.0" scim_proto = "^0.1.1" # scim_proto = { path = "../scim/proto", version = "0.1.1" } # scim_proto = { git = "https://github.com/kanidm/scim.git", version = "0.1.1" } serde = "^1.0.158" serde_cbor = { version = "0.12.0-dev", package = "serde_cbor_2" } serde_json = "^1.0.95" serde-wasm-bindgen = "0.4" shellexpand = "^2.1.2" sketching = { path = "./libs/sketching" } smartstring = "^1.0.1" smolset = "^1.3.1" sshkeys = "^0.3.1" syn = { version = "2.0.12", features = ["full"] } testkit-macros = { path = "./server/testkit-macros" } tide = "^0.16.0" # Including brotli *very* slow, so don't do that. Including the "default" feature pulls a mime-type list from the internet on build, which isn't used. tide-compress = { version="0.10.6", default-features = false, features = [ "gzip", "regex-check" ] } tide-openssl = "^0.1.1" # Unable to increase version due to removing ability to detect # local platform time. time = "=0.2.27" tikv-jemallocator = "0.5" tokio = "^1.27.0" tokio-openssl = "^0.6.3" tokio-util = "^0.7.7" toml = "^0.5.11" touch = "^0.0.1" # tracing = { version = "^0.1.37", features = ["max_level_trace", "release_max_level_debug"] } tracing = { version = "^0.1.37" } tracing-subscriber = { version = "^0.3.16", features = ["env-filter"] } # tracing-forest = { path = "/Users/william/development/tracing-forest/tracing-forest" } tracing-forest = { git = "https://github.com/QnnOkabayashi/tracing-forest.git", rev = "77daf8c8abf010b87d45ece2bf656983c6f8cecb" } url = "^2.3.1" urlencoding = "2.1.2" users = "^0.11.0" uuid = "^1.3.0" validator = "^0.16.0" wasm-bindgen = "^0.2.81" wasm-bindgen-futures = "^0.4.30" wasm-bindgen-test = "0.3.34" webauthn-authenticator-rs = "0.4.8" webauthn-rs = "0.4.8" webauthn-rs-core = "0.4.8" webauthn-rs-proto = "0.4.8" # webauthn-authenticator-rs = { path = "../webauthn-rs/webauthn-authenticator-rs" } # webauthn-rs = { path = "../webauthn-rs/webauthn-rs" } # webauthn-rs-core = { path = "../webauthn-rs/webauthn-rs-core" } # webauthn-rs-proto = { path = "../webauthn-rs/webauthn-rs-proto" } web-sys = "^0.3.61" whoami = "^1.4.0" walkdir = "2" yew = "^0.20.0" yew-router = "^0.17.0" zxcvbn = "^2.2.2" nonempty = "0.8.1" # enshrinken the WASMs [profile.release.package.kanidmd_web_ui] # optimization over all codebase ( better optimization, slower build ) codegen-units = 1 # optimization for size ( more aggressive ) opt-level = 'z' # link time optimization using using whole-program analysis # lto = true