diff --git a/CHANGELOG.md b/CHANGELOG.md index 07715224..2ab228da 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file. ## [Unreleased] +### Added + +- Support enabling decision logs ([#555]). + +[#555]: https://github.com/stackabletech/opa-operator/pull/555 + ## [24.3.0] - 2024-03-20 ### Added diff --git a/Cargo.lock b/Cargo.lock index f2590b11..3d7524cd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,9 +4,9 @@ version = 3 [[package]] name = "addr2line" -version = "0.21.0" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678" dependencies = [ "gimli", ] @@ -111,30 +111,30 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.83" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25bdb32cbbdce2b519a9cd7df3a678443100e265d5e25ca763b7572a5104f5f3" +checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" [[package]] name = "async-broadcast" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "258b52a1aa741b9f09783b2d86cf0aeeb617bbf847f6933340a39644227acbdb" +checksum = "20cd0e2e25ea8e5f7e9df04578dc6cf5c83577fd09b1a46aaf5c85e1c33f2a7e" dependencies = [ - "event-listener 5.3.0", - "event-listener-strategy 0.5.2", + "event-listener", + "event-listener-strategy", "futures-core", "pin-project-lite", ] [[package]] name = "async-lock" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d034b430882f8381900d3fe6f0aaa3ad94f2cb4ac519b429692a1bc2dda4ae7b" +checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18" dependencies = [ - "event-listener 4.0.3", - "event-listener-strategy 0.4.0", + "event-listener", + "event-listener-strategy", "pin-project-lite", ] @@ -157,7 +157,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -168,9 +168,15 @@ checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] +[[package]] +name = "atomic-waker" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" + [[package]] name = "autocfg" version = "1.3.0" @@ -245,9 +251,9 @@ dependencies = [ [[package]] name = "backtrace" -version = "0.3.71" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d" +checksum = "17c6a35df3749d2e8bb1b7b21a976d82b15548788d2735b9d82f329268f71a11" dependencies = [ "addr2line", "cc", @@ -308,9 +314,9 @@ dependencies = [ [[package]] name = "built" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41bfbdb21256b87a8b5e80fab81a8eed158178e812fd7ba451907518b2742f16" +checksum = "c6a6c0b39c38fd754ac338b00a88066436389c0f029da5d37d1e01091d9b7c17" dependencies = [ "chrono", "git2", @@ -336,9 +342,9 @@ checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" [[package]] name = "cc" -version = "1.0.97" +version = "1.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "099a5357d84c4c61eb35fc8eafa9a79a902c2f76911e5747ced4e032edd8d9b4" +checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" dependencies = [ "jobserver", "libc", @@ -383,7 +389,7 @@ dependencies = [ "anstream", "anstyle", "clap_lex", - "strsim 0.11.1", + "strsim", ] [[package]] @@ -395,7 +401,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -466,9 +472,9 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.12" +version = "0.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95" +checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" dependencies = [ "crossbeam-utils", ] @@ -484,9 +490,9 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.19" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" [[package]] name = "crypto-common" @@ -500,9 +506,9 @@ dependencies = [ [[package]] name = "darling" -version = "0.20.8" +version = "0.20.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391" +checksum = "83b2eb4d90d12bdda5ed17de686c2acb4c57914f8f921b8da7e112b5a36f3fe1" dependencies = [ "darling_core", "darling_macro", @@ -510,27 +516,27 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.8" +version = "0.20.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f" +checksum = "622687fe0bac72a04e5599029151f5796111b90f1baaa9b544d807a5e31cd120" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", - "strsim 0.10.0", - "syn 2.0.61", + "strsim", + "syn 2.0.66", ] [[package]] name = "darling_macro" -version = "0.20.8" +version = "0.20.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f" +checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178" dependencies = [ "darling_core", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -541,7 +547,7 @@ checksum = "4e018fccbeeb50ff26562ece792ed06659b9c2dae79ece77c4456bb10d9bf79b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -593,9 +599,9 @@ checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" [[package]] name = "either" -version = "1.11.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2" +checksum = "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b" [[package]] name = "encoding_rs" @@ -623,9 +629,9 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" dependencies = [ "libc", "windows-sys 0.52.0", @@ -633,43 +639,22 @@ dependencies = [ [[package]] name = "event-listener" -version = "4.0.3" +version = "5.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67b215c49b2b248c855fb73579eb1f4f26c38ffdc12973e20e07b91d78d5646e" +checksum = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba" dependencies = [ "concurrent-queue", "parking", "pin-project-lite", ] -[[package]] -name = "event-listener" -version = "5.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d9944b8ca13534cdfb2800775f8dd4902ff3fc75a50101466decadfdf322a24" -dependencies = [ - "concurrent-queue", - "parking", - "pin-project-lite", -] - -[[package]] -name = "event-listener-strategy" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "958e4d70b6d5e81971bebec42271ec641e7ff4e170a6fa605f2b8a8b65cb97d3" -dependencies = [ - "event-listener 4.0.3", - "pin-project-lite", -] - [[package]] name = "event-listener-strategy" version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" dependencies = [ - "event-listener 5.3.0", + "event-listener", "pin-project-lite", ] @@ -781,7 +766,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -838,9 +823,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.28.1" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" +checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd" [[package]] name = "git2" @@ -863,15 +848,15 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "h2" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "816ec7294445779408f36fe57bc5b7fc1cf59664059096c65f905c1c61f58069" +checksum = "fa82e28a107a8cc405f0839610bdc9b15f1e25ec7d696aa5cf173edbcb1486ab" dependencies = [ + "atomic-waker", "bytes", "fnv", "futures-core", "futures-sink", - "futures-util", "http", "indexmap", "slab", @@ -986,9 +971,9 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.27.1" +version = "0.27.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "908bb38696d7a037a01ebcc68a00634112ac2bbf8ca74e30a2c3d2f4f021302b" +checksum = "5ee4be2c948921a1a5320b629c4193916ed787a7f7f293fd3f7f5a6c9de74155" dependencies = [ "futures-util", "http", @@ -1034,9 +1019,9 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.3" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa" +checksum = "7b875924a60b96e5d7b9ae7b066540b1dd1cbd90d1828f54c92e02a283351c56" dependencies = [ "bytes", "futures-channel", @@ -1109,9 +1094,9 @@ checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5" [[package]] name = "instant" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" dependencies = [ "cfg-if", ] @@ -1286,7 +1271,7 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -1325,9 +1310,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.154" +version = "0.2.155" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346" +checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" [[package]] name = "libgit2-sys" @@ -1343,9 +1328,9 @@ dependencies = [ [[package]] name = "libz-sys" -version = "1.1.16" +version = "1.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e143b5e666b2695d28f6bca6497720813f699c9602dd7f5cac91008b8ada7f9" +checksum = "c15da26e5af7e25c90b37a2d75cdbf940cf4a55316de9d84c679c9b8bfabf82e" dependencies = [ "cc", "libc", @@ -1355,9 +1340,9 @@ dependencies = [ [[package]] name = "linux-raw-sys" -version = "0.4.13" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" [[package]] name = "lock_api" @@ -1404,9 +1389,9 @@ checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" [[package]] name = "miniz_oxide" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" +checksum = "87dfd01fe195c66b572b37921ad8803d010623c0aca821bea2302239d155cdae" dependencies = [ "adler", ] @@ -1433,7 +1418,7 @@ dependencies = [ "crossbeam-channel", "crossbeam-epoch", "crossbeam-utils", - "event-listener 5.3.0", + "event-listener", "futures-util", "once_cell", "parking_lot", @@ -1448,11 +1433,10 @@ dependencies = [ [[package]] name = "native-tls" -version = "0.2.11" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" +checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466" dependencies = [ - "lazy_static", "libc", "log", "openssl", @@ -1495,9 +1479,9 @@ dependencies = [ [[package]] name = "object" -version = "0.32.2" +version = "0.35.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" +checksum = "b8ec7ab813848ba4522158d5517a6093db1ded27575b070f4177b8d12b41db5e" dependencies = [ "memchr", ] @@ -1531,7 +1515,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -1643,9 +1627,9 @@ checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" [[package]] name = "parking_lot" -version = "0.12.2" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" dependencies = [ "lock_api", "parking_lot_core", @@ -1711,7 +1695,7 @@ dependencies = [ "pest_meta", "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -1742,7 +1726,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -1771,9 +1755,9 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "proc-macro2" -version = "1.0.82" +version = "1.0.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ad3d49ab951a01fbaafe34f2ec74122942fe18a3f9814c3268f1bb72042131b" +checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" dependencies = [ "unicode-ident", ] @@ -1997,9 +1981,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.5" +version = "0.23.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afabcee0551bd1aa3e18e5adbf2c0544722014b899adb31bd186ec638d3da97e" +checksum = "79adb16721f56eb2d843e67676896a61ce7a0fa622dc18d3e372477a029d2740" dependencies = [ "log", "once_cell", @@ -2041,9 +2025,9 @@ checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d" [[package]] name = "rustls-webpki" -version = "0.102.3" +version = "0.102.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3bce581c0dd41bce533ce695a1437fa16a7ab5ac3ccfa99fe1a620a7885eabf" +checksum = "ff448f7e92e913c4b7d4c6d8e4540a1724b319b4152b8aef6d4cf8339712b33e" dependencies = [ "ring", "rustls-pki-types", @@ -2052,9 +2036,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.16" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "092474d1a01ea8278f69e6a358998405fae5b8b963ddaeb2b0b04a128bf1dfb0" +checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" [[package]] name = "ryu" @@ -2073,9 +2057,9 @@ dependencies = [ [[package]] name = "schemars" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc6e7ed6919cb46507fb01ff1654309219f62b4d603822501b0b80d42f6f21ef" +checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92" dependencies = [ "dyn-clone", "schemars_derive", @@ -2086,14 +2070,14 @@ dependencies = [ [[package]] name = "schemars_derive" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "185f2b7aa7e02d418e453790dde16890256bbd2bcd04b7dc5348811052b53f49" +checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e" dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -2143,9 +2127,9 @@ checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" [[package]] name = "serde" -version = "1.0.201" +version = "1.0.203" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "780f1cebed1629e4753a1a38a3c72d30b97ec044f0aef68cb26650a3c5cf363c" +checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094" dependencies = [ "serde_derive", ] @@ -2162,24 +2146,24 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.201" +version = "1.0.203" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5e405930b9796f1c00bee880d03fc7e0bb4b9a11afc776885ffe84320da2865" +checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] name = "serde_derive_internals" -version = "0.29.0" +version = "0.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "330f01ce65a3a5fe59a60c82f3c9a024b573b8a6e875bd233fe5f934e71d54e3" +checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -2294,11 +2278,11 @@ dependencies = [ [[package]] name = "snafu" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75976f4748ab44f6e5332102be424e7c2dc18daeaf7e725f2040c3ebb133512e" +checksum = "418b8136fec49956eba89be7da2847ec1909df92a9ae4178b5ff0ff092c8d95e" dependencies = [ - "snafu-derive 0.8.2", + "snafu-derive 0.8.3", ] [[package]] @@ -2326,14 +2310,14 @@ dependencies = [ [[package]] name = "snafu-derive" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4b19911debfb8c2fb1107bc6cb2d61868aaf53a988449213959bb1b5b1ed95f" +checksum = "1a4812a669da00d17d8266a0439eddcacbc88b17f732f927e52eeb9d196f7fb5" dependencies = [ - "heck 0.4.1", + "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -2360,7 +2344,7 @@ dependencies = [ "semver", "serde", "serde_json", - "snafu 0.8.2", + "snafu 0.8.3", "stackable-operator", "strum", "tracing", @@ -2381,7 +2365,7 @@ dependencies = [ "semver", "serde", "serde_json", - "snafu 0.8.2", + "snafu 0.8.3", "stackable-opa-crd", "stackable-operator", "strum", @@ -2403,7 +2387,7 @@ dependencies = [ "semver", "serde", "serde_json", - "snafu 0.8.2", + "snafu 0.8.3", "stackable-opa-crd", "stackable-operator", "tokio", @@ -2413,8 +2397,8 @@ dependencies = [ [[package]] name = "stackable-operator" -version = "0.67.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.67.1#9ba3ab1ea4164ba9946d7febdfae5911decc0f4b" +version = "0.69.0" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.69.0#9ff61fa29c30b5aedc5c11b929079477e2642a7a" dependencies = [ "chrono", "clap", @@ -2437,7 +2421,7 @@ dependencies = [ "serde", "serde_json", "serde_yaml", - "snafu 0.8.2", + "snafu 0.8.3", "stackable-operator-derive", "strum", "tokio", @@ -2450,20 +2434,14 @@ dependencies = [ [[package]] name = "stackable-operator-derive" version = "0.3.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.67.1#9ba3ab1ea4164ba9946d7febdfae5911decc0f4b" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.69.0#9ff61fa29c30b5aedc5c11b929079477e2642a7a" dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] -[[package]] -name = "strsim" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" - [[package]] name = "strsim" version = "0.11.1" @@ -2481,15 +2459,15 @@ dependencies = [ [[package]] name = "strum_macros" -version = "0.26.2" +version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946" +checksum = "f7993a8e3a9e88a00351486baae9522c91b123a088f76469e5bd5cc17198ea87" dependencies = [ - "heck 0.4.1", + "heck 0.5.0", "proc-macro2", "quote", "rustversion", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -2511,9 +2489,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.61" +version = "2.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c993ed8ccba56ae856363b1845da7266a7cb78e1d146c8a32d54b45a8b831fc9" +checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" dependencies = [ "proc-macro2", "quote", @@ -2573,22 +2551,22 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.60" +version = "1.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "579e9083ca58dd9dcf91a9923bb9054071b9ebbd800b342194c9feb0ee89fc18" +checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.60" +version = "1.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2470041c06ec3ac1ab38d0356a6119054dedaea53e12fbefc0de730a1c08524" +checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -2640,9 +2618,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.37.0" +version = "1.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787" +checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a" dependencies = [ "backtrace", "bytes", @@ -2659,13 +2637,13 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" +checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -2782,7 +2760,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] @@ -2844,9 +2822,9 @@ dependencies = [ [[package]] name = "triomphe" -version = "0.1.11" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "859eb650cfee7434994602c3a68b25d77ad9e68c8a6cd491616ef86661382eb3" +checksum = "1b2cb4fbb9995eeb36ac86fadf24031ccd58f99d6b4b2d7b911db70bddb80d90" [[package]] name = "try-lock" @@ -2992,7 +2970,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", "wasm-bindgen-shared", ] @@ -3026,7 +3004,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -3260,11 +3238,11 @@ checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.66", ] [[package]] name = "zeroize" -version = "1.7.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" +checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" diff --git a/Cargo.nix b/Cargo.nix index 5c6a0439..ba031138 100644 --- a/Cargo.nix +++ b/Cargo.nix @@ -93,9 +93,9 @@ rec { crates = { "addr2line" = rec { crateName = "addr2line"; - version = "0.21.0"; + version = "0.22.0"; edition = "2018"; - sha256 = "1jx0k3iwyqr8klqbzk6kjvr496yd94aspis10vwsj5wy7gib4c4a"; + sha256 = "0y66f1sa27i9kvmlh76ynk60rxfrmkba9ja8x527h32wdb206ibf"; dependencies = [ { name = "gimli"; @@ -360,9 +360,9 @@ rec { }; "anyhow" = rec { crateName = "anyhow"; - version = "1.0.83"; + version = "1.0.86"; edition = "2018"; - sha256 = "1wzm0i8jlmxpcfkmrqnmcpi00ca4g2kg6zfdm4cvbqnwpcnb7g95"; + sha256 = "1nk301x8qhpdaks6a9zvcp7yakjqnczjmqndbg7vk4494d3d1ldk"; authors = [ "David Tolnay " ]; @@ -374,9 +374,9 @@ rec { }; "async-broadcast" = rec { crateName = "async-broadcast"; - version = "0.7.0"; + version = "0.7.1"; edition = "2018"; - sha256 = "1nybg8i495m380rr7xj7z2xigdpf1b7qcb9vg04ry6vlmahm52r5"; + sha256 = "0zia7z1y31awmxma9c89zmvkbj7mdkf7highkmz5z3pa4lp0xk90"; authors = [ "Stjepan Glavina " "Yoshua Wuyts " @@ -385,11 +385,11 @@ rec { dependencies = [ { name = "event-listener"; - packageId = "event-listener 5.3.0"; + packageId = "event-listener"; } { name = "event-listener-strategy"; - packageId = "event-listener-strategy 0.5.2"; + packageId = "event-listener-strategy"; } { name = "futures-core"; @@ -404,21 +404,21 @@ rec { }; "async-lock" = rec { crateName = "async-lock"; - version = "3.3.0"; + version = "3.4.0"; edition = "2021"; - sha256 = "0yxflkfw46rad4lv86f59b5z555dlfmg1riz1n8830rgi0qb8d6h"; + sha256 = "060vh45i809wcqyxzs5g69nqiqah7ydz0hpkcjys9258vqn4fvpz"; authors = [ "Stjepan Glavina " ]; dependencies = [ { name = "event-listener"; - packageId = "event-listener 4.0.3"; + packageId = "event-listener"; usesDefaultFeatures = false; } { name = "event-listener-strategy"; - packageId = "event-listener-strategy 0.4.0"; + packageId = "event-listener-strategy"; usesDefaultFeatures = false; } { @@ -428,6 +428,7 @@ rec { ]; features = { "default" = [ "std" ]; + "loom" = [ "event-listener/loom" "dep:loom" ]; "std" = [ "event-listener/std" "event-listener-strategy/std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; @@ -476,7 +477,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "full" "visit-mut" ]; } ]; @@ -502,12 +503,25 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "full" "visit-mut" ]; } ]; }; + "atomic-waker" = rec { + crateName = "atomic-waker"; + version = "1.1.2"; + edition = "2018"; + sha256 = "1h5av1lw56m0jf0fd3bchxq8a30xv0b4wv8s4zkp4s0i7mfvs18m"; + authors = [ + "Stjepan Glavina " + "Contributors to futures-rs" + ]; + features = { + "portable-atomic" = [ "dep:portable-atomic" ]; + }; + }; "autocfg" = rec { crateName = "autocfg"; version = "1.3.0"; @@ -810,9 +824,9 @@ rec { }; "backtrace" = rec { crateName = "backtrace"; - version = "0.3.71"; + version = "0.3.72"; edition = "2021"; - sha256 = "17bgd7pbjb9gc8q47qwsg2lmy9i62x3bsjmmnjrwh5z8s805ic16"; + sha256 = "048syxl94cigv2wka9wdg145bcc2dnbimcmpn65jx7blydfs7ihp"; authors = [ "The Rust Project Developers" ]; @@ -860,11 +874,9 @@ rec { features = { "cpp_demangle" = [ "dep:cpp_demangle" ]; "default" = [ "std" ]; - "rustc-serialize" = [ "dep:rustc-serialize" ]; "serde" = [ "dep:serde" ]; - "serialize-rustc" = [ "rustc-serialize" ]; "serialize-serde" = [ "serde" ]; - "verify-winapi" = [ "winapi/dbghelp" "winapi/handleapi" "winapi/libloaderapi" "winapi/memoryapi" "winapi/minwindef" "winapi/processthreadsapi" "winapi/synchapi" "winapi/tlhelp32" "winapi/winbase" "winapi/winnt" ]; + "verify-winapi" = [ "winapi/dbghelp" "winapi/handleapi" "winapi/libloaderapi" "winapi/memoryapi" "winapi/minwindef" "winapi/processthreadsapi" "winapi/synchapi" "winapi/tlhelp32" "winapi/winbase" "winapi/winnt" "winapi/winnls" "winapi/stringapiset" ]; "winapi" = [ "dep:winapi" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; @@ -986,9 +998,9 @@ rec { }; "built" = rec { crateName = "built"; - version = "0.7.2"; + version = "0.7.3"; edition = "2021"; - sha256 = "05igfjr1hxcha6j7pz8jx1w825gdiqdbiyl0bs5pmf2n2arbvgs1"; + sha256 = "05vwkcfhj08ygp9sb7821yf3hdk40s40mc1qqd57bz9qkjrw19n6"; authors = [ "Lukas Lueg " ]; @@ -1060,9 +1072,9 @@ rec { }; "cc" = rec { crateName = "cc"; - version = "1.0.97"; + version = "1.0.98"; edition = "2018"; - sha256 = "1d6rv3nk5q6lrr3mf7lifqpjr44slylsz3pw6pmn2k2cv1bm76h9"; + sha256 = "0gzhij74hblfkzwwyysdc8crfd6fr0m226vzmijmwwhdakkp1hj1"; authors = [ "Alex Crichton " ]; @@ -1230,7 +1242,7 @@ rec { } { name = "strsim"; - packageId = "strsim 0.11.1"; + packageId = "strsim"; optional = true; } ]; @@ -1269,7 +1281,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "full" ]; } ]; @@ -1458,9 +1470,9 @@ rec { }; "crossbeam-channel" = rec { crateName = "crossbeam-channel"; - version = "0.5.12"; + version = "0.5.13"; edition = "2021"; - sha256 = "159gp30clv2ci3r473659ii04pjznspb3g9gwkhj2lavkhmb0gdb"; + sha256 = "1wkx45r34v7g3wyi3lg2wz536lrrrab4h4hh741shfhr8rlhsj1k"; dependencies = [ { name = "crossbeam-utils"; @@ -1497,9 +1509,9 @@ rec { }; "crossbeam-utils" = rec { crateName = "crossbeam-utils"; - version = "0.8.19"; + version = "0.8.20"; edition = "2021"; - sha256 = "0iakrb1b8fjqrag7wphl94d10irhbh2fw1g444xslsywqyn3p3i4"; + sha256 = "100fksq5mm1n7zj242cclkw6yf7a4a8ix3lvpfkhxvdhbda9kv12"; features = { "default" = [ "std" ]; "loom" = [ "dep:loom" ]; @@ -1532,9 +1544,9 @@ rec { }; "darling" = rec { crateName = "darling"; - version = "0.20.8"; - edition = "2018"; - sha256 = "14a38qsi9104kvk1z11rqj0bnz1866dyhnvgvbgzz17d2g6nzqsl"; + version = "0.20.9"; + edition = "2021"; + sha256 = "1q9zdyiva4p1ly6ip4lg9y8mfk6b59n6iphpxnjxsayij16ypcl3"; authors = [ "Ted Driggs " ]; @@ -1557,9 +1569,9 @@ rec { }; "darling_core" = rec { crateName = "darling_core"; - version = "0.20.8"; - edition = "2018"; - sha256 = "03x7s149p06xfwcq0lgkk4yxh6jf7jckny18nzp1yyk87b1g2b4w"; + version = "0.20.9"; + edition = "2021"; + sha256 = "086i3kisa1yq8jsskahv1ywi2qbrym8r20lram7a0wmc1gz8f9k2"; authors = [ "Ted Driggs " ]; @@ -1582,12 +1594,12 @@ rec { } { name = "strsim"; - packageId = "strsim 0.10.0"; + packageId = "strsim"; optional = true; } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "full" "extra-traits" ]; } ]; @@ -1599,9 +1611,9 @@ rec { }; "darling_macro" = rec { crateName = "darling_macro"; - version = "0.20.8"; - edition = "2018"; - sha256 = "0gwkz0cjfy3fgcc1zmm7azzhj5qpja34s0cklcria4l38sjyss56"; + version = "0.20.9"; + edition = "2021"; + sha256 = "0y015yy33p85sgpq7shm49clss78p71871gf7sss3cc26jsang3k"; procMacro = true; authors = [ "Ted Driggs " @@ -1617,7 +1629,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; } ]; @@ -1643,7 +1655,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "full" "visit-mut" ]; } ]; @@ -1771,9 +1783,9 @@ rec { }; "either" = rec { crateName = "either"; - version = "1.11.0"; + version = "1.12.0"; edition = "2018"; - sha256 = "18l0cwyw18syl8b52syv6balql8mnwfyhihjqqllx5pms93iqz54"; + sha256 = "12xmhlrv5gfsraimh6xaxcmb0qh6cc7w7ap4sw40ky9wfm095jix"; authors = [ "bluss" ]; @@ -1831,9 +1843,9 @@ rec { }; "errno" = rec { crateName = "errno"; - version = "0.3.8"; + version = "0.3.9"; edition = "2018"; - sha256 = "0ia28ylfsp36i27g1qih875cyyy4by2grf80ki8vhgh6vinf8n52"; + sha256 = "1fi0m0493maq1jygcf1bya9cymz2pc1mqxj26bdv7yjd37v5qk2k"; authors = [ "Chris Wong " ]; @@ -1965,7 +1977,44 @@ rec { }; resolvedDefaultFeatures = [ "std" ]; }; - "event-listener-strategy 0.5.2" = rec { + "event-listener" = rec { + crateName = "event-listener"; + version = "5.3.1"; + edition = "2021"; + sha256 = "1fkm6q4hjn61wl52xyqyyxai0x9w0ngrzi0wf1qsf8vhsadvwck0"; + authors = [ + "Stjepan Glavina " + "John Nunley " + ]; + dependencies = [ + { + name = "concurrent-queue"; + packageId = "concurrent-queue"; + usesDefaultFeatures = false; + } + { + name = "parking"; + packageId = "parking"; + optional = true; + target = { target, features }: (!(builtins.elem "wasm" target."family")); + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + ]; + features = { + "default" = [ "std" ]; + "loom" = [ "concurrent-queue/loom" "parking?/loom" "dep:loom" ]; + "parking" = [ "dep:parking" ]; + "portable-atomic" = [ "portable-atomic-util" "portable_atomic_crate" "concurrent-queue/portable-atomic" ]; + "portable-atomic-util" = [ "dep:portable-atomic-util" ]; + "portable_atomic_crate" = [ "dep:portable_atomic_crate" ]; + "std" = [ "concurrent-queue/std" "parking" ]; + }; + resolvedDefaultFeatures = [ "default" "parking" "std" ]; + }; + "event-listener-strategy" = rec { crateName = "event-listener-strategy"; version = "0.5.2"; edition = "2021"; @@ -1976,7 +2025,7 @@ rec { dependencies = [ { name = "event-listener"; - packageId = "event-listener 5.3.0"; + packageId = "event-listener"; usesDefaultFeatures = false; } { @@ -2270,7 +2319,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "full" ]; } ]; @@ -2455,9 +2504,9 @@ rec { }; "gimli" = rec { crateName = "gimli"; - version = "0.28.1"; + version = "0.29.0"; edition = "2018"; - sha256 = "0lv23wc8rxvmjia3mcxc6hj9vkqnv1bqq0h8nzjcgf71mrxx6wa2"; + sha256 = "1zgzprnjaawmg6zyic4f2q2hc39kdhn116qnkqpgvsasgc3x9v20"; features = { "default" = [ "read-all" "write" ]; "endian-reader" = [ "read" "dep:stable_deref_trait" ]; @@ -2525,14 +2574,18 @@ rec { }; "h2" = rec { crateName = "h2"; - version = "0.4.4"; + version = "0.4.5"; edition = "2021"; - sha256 = "0sc0ymhiqp4hbz39d405cjbga77wnz2pprbgyc498xs58hlwfvl1"; + sha256 = "1aw62k5xnghpryjnlsbxxhjiwpxir6yi15l3y02w933s225f50ps"; authors = [ "Carl Lerche " "Sean McArthur " ]; dependencies = [ + { + name = "atomic-waker"; + packageId = "atomic-waker"; + } { name = "bytes"; packageId = "bytes"; @@ -2551,11 +2604,6 @@ rec { packageId = "futures-sink"; usesDefaultFeatures = false; } - { - name = "futures-util"; - packageId = "futures-util"; - usesDefaultFeatures = false; - } { name = "http"; packageId = "http"; @@ -2903,9 +2951,9 @@ rec { }; "hyper-rustls" = rec { crateName = "hyper-rustls"; - version = "0.27.1"; + version = "0.27.2"; edition = "2021"; - sha256 = "0arh47qg9ln3l8q4x9wcpwmsq4j1cc08mimw3sh3g86pjs3b72wh"; + sha256 = "0ma1wyfnqnkz7zyr7wpply3xfvlijd0rqqhb6ajs28c9jhnbxr2y"; dependencies = [ { name = "futures-util"; @@ -3172,6 +3220,100 @@ rec { usesDefaultFeatures = false; features = [ "std" ]; } + { + name = "tower-service"; + packageId = "tower-service"; + } + ]; + devDependencies = [ + { + name = "hyper-util"; + packageId = "hyper-util"; + features = [ "http1" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "macros" "test-util" ]; + } + ]; + features = { + "alpn" = [ "native-tls/alpn" ]; + "vendored" = [ "native-tls/vendored" ]; + }; + resolvedDefaultFeatures = [ "client" "client-legacy" "default" "http1" "http2" "server" "tokio" ]; + }; + "hyper-util" = rec { + crateName = "hyper-util"; + version = "0.1.5"; + edition = "2021"; + sha256 = "0mhw6n1s40ifr5a8z0nij2yirpdi81jhcyxfp7byb5hblqj5k1vv"; + libName = "hyper_util"; + authors = [ + "Sean McArthur " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-channel"; + packageId = "futures-channel"; + optional = true; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + } + { + name = "http"; + packageId = "http"; + } + { + name = "http-body"; + packageId = "http-body"; + } + { + name = "hyper"; + packageId = "hyper"; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "socket2"; + packageId = "socket2"; + optional = true; + features = [ "all" ]; + } + { + name = "tokio"; + packageId = "tokio"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "tower"; + packageId = "tower"; + optional = true; + usesDefaultFeatures = false; + features = [ "make" "util" ]; + } + { + name = "tower-service"; + packageId = "tower-service"; + optional = true; + } + { + name = "tracing"; + packageId = "tracing"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } ]; devDependencies = [ { @@ -3186,19 +3328,20 @@ rec { { name = "tokio"; packageId = "tokio"; - features = [ "macros" "test-util" ]; + features = [ "macros" "test-util" "signal" ]; } ]; features = { "client" = [ "hyper/client" "dep:tracing" "dep:futures-channel" "dep:tower" "dep:tower-service" ]; - "client-legacy" = [ "client" ]; - "full" = [ "client" "client-legacy" "server" "server-auto" "service" "http1" "http2" "tokio" ]; + "client-legacy" = [ "client" "dep:socket2" "tokio/sync" ]; + "full" = [ "client" "client-legacy" "server" "server-auto" "server-graceful" "service" "http1" "http2" "tokio" ]; "http1" = [ "hyper/http1" ]; "http2" = [ "hyper/http2" ]; "server" = [ "hyper/server" ]; "server-auto" = [ "server" "http1" "http2" ]; + "server-graceful" = [ "server" "tokio/sync" ]; "service" = [ "dep:tower" "dep:tower-service" ]; - "tokio" = [ "dep:tokio" "dep:socket2" ]; + "tokio" = [ "dep:tokio" "tokio/net" "tokio/rt" "tokio/time" ]; }; resolvedDefaultFeatures = [ "client" "client-legacy" "default" "http1" "http2" "server" "tokio" ]; }; @@ -3343,9 +3486,9 @@ rec { }; "instant" = rec { crateName = "instant"; - version = "0.1.12"; + version = "0.1.13"; edition = "2018"; - sha256 = "0b2bx5qdlwayriidhrag8vhy10kdfimfhmb3jnjmsz2h9j1bwnvs"; + sha256 = "08h27kzvb5jw74mh0ajv0nv9ggwvgqm8ynjsn2sa9jsks4cjh970"; authors = [ "sebcrozet " ]; @@ -4007,7 +4150,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "extra-traits" ]; } ]; @@ -4147,9 +4290,9 @@ rec { }; "libc" = rec { crateName = "libc"; - version = "0.2.154"; + version = "0.2.155"; edition = "2015"; - sha256 = "0inkwrnwzrr1kw75x944ihdajrhhldkgg4irx1n19y9gp4w36x5f"; + sha256 = "0z44c53z54znna8n322k5iwg80arxxpdzjj5260pxxzc9a58icwp"; authors = [ "The Rust Project Developers" ]; @@ -4207,10 +4350,10 @@ rec { }; "libz-sys" = rec { crateName = "libz-sys"; - version = "1.1.16"; + version = "1.1.18"; edition = "2018"; links = "z"; - sha256 = "1yd7mnw0h469rbsxfbb0r6czc4q8fabn9jkbiz99a9kbcrg3n52y"; + sha256 = "0bpqmfzvijbrqs29vphnafjz834lpz6pabbsnf85rqppb9pa4pf1"; authors = [ "Alex Crichton " "Josh Triplett " @@ -4242,14 +4385,15 @@ rec { "default" = [ "libc" "stock-zlib" ]; "libc" = [ "dep:libc" ]; "zlib-ng" = [ "libc" "cmake" ]; + "zlib-ng-no-cmake-experimental-community-maintained" = [ "libc" ]; }; resolvedDefaultFeatures = [ "libc" ]; }; "linux-raw-sys" = rec { crateName = "linux-raw-sys"; - version = "0.4.13"; + version = "0.4.14"; edition = "2021"; - sha256 = "172k2c6422gsc914ig8rh99mb9yc7siw6ikc3d9xw1k7vx0s3k81"; + sha256 = "12gsjgbhhjwywpqcrizv80vrp7p7grsz5laqq773i33wphjsxcvq"; authors = [ "Dan Gohman " ]; @@ -4372,9 +4516,9 @@ rec { }; "miniz_oxide" = rec { crateName = "miniz_oxide"; - version = "0.7.2"; + version = "0.7.3"; edition = "2018"; - sha256 = "19qlxb21s6kabgqq61mk7kd1qk2invyygj076jz6i1gj2lz1z0cx"; + sha256 = "1bndap8kj8ihlaz23a5cq0ihc09xh3c1m4ip5dbnpilmw4gx1pw7"; authors = [ "Frommi " "oyvindln " @@ -4466,7 +4610,7 @@ rec { } { name = "event-listener"; - packageId = "event-listener 5.3.0"; + packageId = "event-listener"; optional = true; } { @@ -4534,42 +4678,37 @@ rec { }; "native-tls" = rec { crateName = "native-tls"; - version = "0.2.11"; + version = "0.2.12"; edition = "2015"; - sha256 = "0bmrlg0fmzxaycjpkgkchi93av07v2yf9k33gc12ca9gqdrn28h7"; + sha256 = "0rkl65z70n7sy4d5w0qa99klg1hr43wx6kcprk4d2n9xr2r4wqd8"; authors = [ "Steven Fackler " ]; dependencies = [ - { - name = "lazy_static"; - packageId = "lazy_static"; - target = { target, features }: (("macos" == target."os" or null) || ("ios" == target."os" or null)); - } { name = "libc"; packageId = "libc"; - target = { target, features }: (("macos" == target."os" or null) || ("ios" == target."os" or null)); + target = { target, features }: ("apple" == target."vendor" or null); } { name = "log"; packageId = "log"; - target = { target, features }: (!(("windows" == target."os" or null) || ("macos" == target."os" or null) || ("ios" == target."os" or null))); + target = { target, features }: (!(("windows" == target."os" or null) || ("apple" == target."vendor" or null))); } { name = "openssl"; packageId = "openssl"; - target = { target, features }: (!(("windows" == target."os" or null) || ("macos" == target."os" or null) || ("ios" == target."os" or null))); + target = { target, features }: (!(("windows" == target."os" or null) || ("apple" == target."vendor" or null))); } { name = "openssl-probe"; packageId = "openssl-probe"; - target = { target, features }: (!(("windows" == target."os" or null) || ("macos" == target."os" or null) || ("ios" == target."os" or null))); + target = { target, features }: (!(("windows" == target."os" or null) || ("apple" == target."vendor" or null))); } { name = "openssl-sys"; packageId = "openssl-sys"; - target = { target, features }: (!(("windows" == target."os" or null) || ("macos" == target."os" or null) || ("ios" == target."os" or null))); + target = { target, features }: (!(("windows" == target."os" or null) || ("apple" == target."vendor" or null))); } { name = "schannel"; @@ -4579,17 +4718,17 @@ rec { { name = "security-framework"; packageId = "security-framework"; - target = { target, features }: (("macos" == target."os" or null) || ("ios" == target."os" or null)); + target = { target, features }: ("apple" == target."vendor" or null); } { name = "security-framework-sys"; packageId = "security-framework-sys"; - target = { target, features }: (("macos" == target."os" or null) || ("ios" == target."os" or null)); + target = { target, features }: ("apple" == target."vendor" or null); } { name = "tempfile"; packageId = "tempfile"; - target = { target, features }: (("macos" == target."os" or null) || ("ios" == target."os" or null)); + target = { target, features }: ("macos" == target."os" or null); } ]; devDependencies = [ @@ -4675,9 +4814,9 @@ rec { }; "object" = rec { crateName = "object"; - version = "0.32.2"; + version = "0.35.0"; edition = "2018"; - sha256 = "0hc4cjwyngiy6k51hlzrlsxgv5z25vv7c2cp0ky1lckfic0259m6"; + sha256 = "0pnv84mx3f3p847hfnsp4znivnwkc1x53maq459a92w42fw7mv5q"; dependencies = [ { name = "memchr"; @@ -4686,13 +4825,15 @@ rec { } ]; features = { - "all" = [ "read" "write" "std" "compression" "wasm" ]; + "all" = [ "read" "write" "build" "std" "compression" "wasm" ]; "alloc" = [ "dep:alloc" ]; + "build" = [ "build_core" "write_std" "elf" ]; + "build_core" = [ "read_core" "write_core" ]; "compiler_builtins" = [ "dep:compiler_builtins" ]; "compression" = [ "dep:flate2" "dep:ruzstd" "std" ]; "core" = [ "dep:core" ]; "default" = [ "read" "compression" ]; - "doc" = [ "read_core" "write_std" "std" "compression" "archive" "coff" "elf" "macho" "pe" "wasm" "xcoff" ]; + "doc" = [ "read_core" "write_std" "build_core" "std" "compression" "archive" "coff" "elf" "macho" "pe" "wasm" "xcoff" ]; "pe" = [ "coff" ]; "read" = [ "read_core" "archive" "coff" "elf" "macho" "pe" "xcoff" "unaligned" ]; "rustc-dep-of-std" = [ "core" "compiler_builtins" "alloc" "memchr/rustc-dep-of-std" ]; @@ -4787,7 +4928,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "full" ]; } ]; @@ -5182,9 +5323,9 @@ rec { }; "parking_lot" = rec { crateName = "parking_lot"; - version = "0.12.2"; + version = "0.12.3"; edition = "2021"; - sha256 = "1ys2dzz6cysjmwyivwxczl1ljpcf5cj4qmhdj07d5bkc9z5g0jky"; + sha256 = "09ws9g6245iiq8z975h8ycf818a66q3c6zv4b5h8skpm7hc1igzi"; authors = [ "Amanieu d'Antras " ]; @@ -5380,7 +5521,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; } ]; features = { @@ -5451,7 +5592,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "full" "visit-mut" ]; } ]; @@ -5499,9 +5640,9 @@ rec { }; "proc-macro2" = rec { crateName = "proc-macro2"; - version = "1.0.82"; + version = "1.0.85"; edition = "2021"; - sha256 = "06qk88hbf6wg4v1i961zibhjz512873jwkz3myx1z82ip6dd9lwa"; + sha256 = "08zwg5l5f3czp62g4cvzgjwnk176lsrwq6kdi4x0arm9bbhlq912"; libName = "proc_macro2"; authors = [ "David Tolnay " @@ -6439,9 +6580,9 @@ rec { }; "rustls" = rec { crateName = "rustls"; - version = "0.23.5"; + version = "0.23.8"; edition = "2021"; - sha256 = "0zm97n6n7v46s4dv7bcrp0a20wj40lnbzbg530zaml8vaphcxaxg"; + sha256 = "0h17kl17livjwg9iip12lq7pmkk1da4pcxp68gcb4vpm45kv3bbr"; dependencies = [ { name = "log"; @@ -6576,9 +6717,9 @@ rec { }; "rustls-webpki" = rec { crateName = "rustls-webpki"; - version = "0.102.3"; + version = "0.102.4"; edition = "2021"; - sha256 = "1gzahmw0lqhszsczmk63bamsf5ps6wa5lsff6gjvqhfxq20ybg7k"; + sha256 = "0gmk2abk7y2cdppqlaqmnhcv690p19af9n66sjvw84z9j9z8yi7z"; libName = "webpki"; dependencies = [ { @@ -6609,9 +6750,9 @@ rec { }; "rustversion" = rec { crateName = "rustversion"; - version = "1.0.16"; + version = "1.0.17"; edition = "2018"; - sha256 = "1c6zy65i4jmhn2raxpb3p6wfbyh5hjcmi8z6d67jga0yl38p8909"; + sha256 = "1mm3fckyvb0l2209in1n2k05sws5d9mpkszbnwhq3pkq8apjhpcm"; procMacro = true; build = "build/build.rs"; authors = [ @@ -6658,9 +6799,9 @@ rec { }; "schemars" = rec { crateName = "schemars"; - version = "0.8.19"; + version = "0.8.21"; edition = "2021"; - sha256 = "1vr1dwpx900b3d824f309lmzc6cj61a1dzq1zc3nbd4wj7b7wvpw"; + sha256 = "14lyx04388wgbilgcm0nl75w6359nw16glswfqv7x2rpi9329h09"; authors = [ "Graham Esau " ]; @@ -6724,9 +6865,9 @@ rec { }; "schemars_derive" = rec { crateName = "schemars_derive"; - version = "0.8.19"; + version = "0.8.21"; edition = "2021"; - sha256 = "0j9znm9110a8agfbf16d5fynn9chd3hxv41p8n742bg0lxx2npqq"; + sha256 = "03ncmrkldfmdc9skmlyysx2vqdlyyz91r5mbavw77zwaay4fbvmi"; procMacro = true; authors = [ "Graham Esau " @@ -6746,7 +6887,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "extra-traits" ]; } ]; @@ -6884,9 +7025,9 @@ rec { }; "serde" = rec { crateName = "serde"; - version = "1.0.201"; + version = "1.0.203"; edition = "2018"; - sha256 = "0g1nrz2s6l36na6gdbph8k07xf9h5p3s6f0s79sy8a8nxpmiq3vq"; + sha256 = "1500ghq198n6py5anvz5qbqagd9h1hq04f4qpsvjzrvix56snlvj"; authors = [ "Erick Tryzelaar " "David Tolnay " @@ -6938,9 +7079,9 @@ rec { }; "serde_derive" = rec { crateName = "serde_derive"; - version = "1.0.201"; + version = "1.0.203"; edition = "2015"; - sha256 = "0r98v8h47s7zhml7gz0sl6wv82vyzh1hv27f1g0g35lp1f9hbr65"; + sha256 = "1fmmqmfza3mwxb1v80737dj01gznrh8mhgqgylkndx5npq7bq32h"; procMacro = true; authors = [ "Erick Tryzelaar " @@ -6961,7 +7102,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; usesDefaultFeatures = false; features = [ "clone-impls" "derive" "parsing" "printing" "proc-macro" ]; } @@ -6972,9 +7113,9 @@ rec { }; "serde_derive_internals" = rec { crateName = "serde_derive_internals"; - version = "0.29.0"; + version = "0.29.1"; edition = "2015"; - sha256 = "1qsl3pkk9yg57wivsxg8lsw77d94l34z70hclrczx9d3cp7023rk"; + sha256 = "04g7macx819vbnxhi52cx0nhxi56xlhrybgwybyy7fb9m4h6mlhq"; libPath = "lib.rs"; authors = [ "Erick Tryzelaar " @@ -6984,14 +7125,16 @@ rec { { name = "proc-macro2"; packageId = "proc-macro2"; + usesDefaultFeatures = false; } { name = "quote"; packageId = "quote"; + usesDefaultFeatures = false; } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; usesDefaultFeatures = false; features = [ "clone-impls" "derive" "parsing" "printing" ]; } @@ -7300,18 +7443,18 @@ rec { }; resolvedDefaultFeatures = [ "default" "rust_1_39" "rust_1_46" "std" ]; }; - "snafu 0.8.2" = rec { + "snafu 0.8.3" = rec { crateName = "snafu"; - version = "0.8.2"; + version = "0.8.3"; edition = "2018"; - sha256 = "0bji6fqyphs041gp4zmgms6w2bbw9r1bw0i16gjzci5b913nz5vm"; + sha256 = "0pnrr29g03zznmw43bm9jbghj6gc8wldmrwvm3mmd6f4zqv832s1"; authors = [ "Jake Goulding " ]; dependencies = [ { name = "snafu-derive"; - packageId = "snafu-derive 0.8.2"; + packageId = "snafu-derive 0.8.3"; } ]; features = { @@ -7388,11 +7531,11 @@ rec { }; resolvedDefaultFeatures = [ "rust_1_39" "rust_1_46" ]; }; - "snafu-derive 0.8.2" = rec { + "snafu-derive 0.8.3" = rec { crateName = "snafu-derive"; - version = "0.8.2"; + version = "0.8.3"; edition = "2018"; - sha256 = "0pyr3rdipfsr74hlk14q7bssls0qssr6rg0727xw5f5zvq8rkcdl"; + sha256 = "1dbzdwcrvsrfwlkzjcpp2y5wijyavng47836h9yx206sd6k14j0s"; procMacro = true; authors = [ "Jake Goulding " @@ -7400,7 +7543,8 @@ rec { dependencies = [ { name = "heck"; - packageId = "heck 0.4.1"; + packageId = "heck 0.5.0"; + usesDefaultFeatures = false; } { name = "proc-macro2"; @@ -7412,7 +7556,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "full" ]; } ]; @@ -7503,7 +7647,7 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.2"; + packageId = "snafu 0.8.3"; } { name = "stackable-operator"; @@ -7585,7 +7729,7 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.2"; + packageId = "snafu 0.8.3"; } { name = "stackable-opa-crd"; @@ -7685,7 +7829,7 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.2"; + packageId = "snafu 0.8.3"; } { name = "stackable-opa-crd"; @@ -7713,13 +7857,13 @@ rec { }; "stackable-operator" = rec { crateName = "stackable-operator"; - version = "0.67.1"; + version = "0.69.0"; edition = "2021"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "9ba3ab1ea4164ba9946d7febdfae5911decc0f4b"; - sha256 = "179kqkj6pw5cn98cngcmxn5kmy5snydhsdq4qx6hza862sx0828j"; + rev = "9ff61fa29c30b5aedc5c11b929079477e2642a7a"; + sha256 = "033zxfdwf202h48lshnw9wznbrkl80px8rdcg4h0rcb0wc2pa37q"; }; authors = [ "Stackable GmbH " @@ -7821,7 +7965,7 @@ rec { } { name = "snafu"; - packageId = "snafu 0.8.2"; + packageId = "snafu 0.8.3"; } { name = "stackable-operator-derive"; @@ -7867,8 +8011,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "9ba3ab1ea4164ba9946d7febdfae5911decc0f4b"; - sha256 = "179kqkj6pw5cn98cngcmxn5kmy5snydhsdq4qx6hza862sx0828j"; + rev = "9ff61fa29c30b5aedc5c11b929079477e2642a7a"; + sha256 = "033zxfdwf202h48lshnw9wznbrkl80px8rdcg4h0rcb0wc2pa37q"; }; procMacro = true; authors = [ @@ -7889,22 +8033,12 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; } ]; }; - "strsim 0.10.0" = rec { - crateName = "strsim"; - version = "0.10.0"; - edition = "2015"; - sha256 = "08s69r4rcrahwnickvi0kq49z524ci50capybln83mg6b473qivk"; - authors = [ - "Danny Guo " - ]; - - }; - "strsim 0.11.1" = rec { + "strsim" = rec { crateName = "strsim"; version = "0.11.1"; edition = "2015"; @@ -7946,9 +8080,9 @@ rec { }; "strum_macros" = rec { crateName = "strum_macros"; - version = "0.26.2"; + version = "0.26.3"; edition = "2018"; - sha256 = "0in9jvbb3g16x8fj7lf91vwzj98319hj3z8lpaaa9h42ybd5kky6"; + sha256 = "11zak1qw2p5xwmln9xw8l0iv349cablslss8a41s124y7a73m6gp"; procMacro = true; authors = [ "Peter Glotfelty " @@ -7956,7 +8090,7 @@ rec { dependencies = [ { name = "heck"; - packageId = "heck 0.4.1"; + packageId = "heck 0.5.0"; } { name = "proc-macro2"; @@ -7972,7 +8106,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "parsing" "extra-traits" ]; } ]; @@ -8025,11 +8159,11 @@ rec { }; resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "extra-traits" "full" "parsing" "printing" "proc-macro" "quote" "visit" ]; }; - "syn 2.0.61" = rec { + "syn 2.0.66" = rec { crateName = "syn"; - version = "2.0.61"; + version = "2.0.66"; edition = "2021"; - sha256 = "1j8zhf5mmd2l5niwhiniw5wcp9v6fbd4a61v6rbfhsm5rf6fv4y9"; + sha256 = "1xfgrprsbz8j31kabvfinb4fyhajlk2q7lxa18fb006yl90kyby4"; authors = [ "David Tolnay " ]; @@ -8176,9 +8310,9 @@ rec { }; "thiserror" = rec { crateName = "thiserror"; - version = "1.0.60"; + version = "1.0.61"; edition = "2021"; - sha256 = "067wi7pb1zn9jhhk82w0ppmvjwa00nwkp4m9j77rvpaqra1r17jp"; + sha256 = "028prh962l16cmjivwb1g9xalbpqip0305zhq006mg74dc6whin5"; authors = [ "David Tolnay " ]; @@ -8192,9 +8326,9 @@ rec { }; "thiserror-impl" = rec { crateName = "thiserror-impl"; - version = "1.0.60"; + version = "1.0.61"; edition = "2021"; - sha256 = "0945q2hk1rqdzjz2zqakxbddwm4h26k5c0wdncdarhvfq10h0iz2"; + sha256 = "0cvm37hp0kbcyk1xac1z0chpbd9pbn2g456iyid6sah0a113ihs6"; procMacro = true; libName = "thiserror_impl"; authors = [ @@ -8211,7 +8345,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; } ]; @@ -8334,9 +8468,9 @@ rec { }; "tokio" = rec { crateName = "tokio"; - version = "1.37.0"; + version = "1.38.0"; edition = "2021"; - sha256 = "11v7qhvpwsf976frqgrjl1jy308bdkxq195gb38cypx7xkzypnqs"; + sha256 = "0jjsb2c9dqi93yij3rqzsh9bk0z3qyasmw1n8qkny3d8lw14lkxs"; authors = [ "Tokio Contributors " ]; @@ -8444,9 +8578,9 @@ rec { }; "tokio-macros" = rec { crateName = "tokio-macros"; - version = "2.2.0"; + version = "2.3.0"; edition = "2021"; - sha256 = "0fwjy4vdx1h9pi4g2nml72wi0fr27b5m954p13ji9anyy8l1x2jv"; + sha256 = "16nkan0x9b62hnqmjqcyd71j1mgpda2sv7gfm2mvbm39l2cfjnjz"; procMacro = true; authors = [ "Tokio Contributors " @@ -8462,7 +8596,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "full" ]; } ]; @@ -8937,7 +9071,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; usesDefaultFeatures = false; features = [ "full" "parsing" "printing" "visit-mut" "clone-impls" "extra-traits" "proc-macro" ]; } @@ -9221,10 +9355,11 @@ rec { }; "triomphe" = rec { crateName = "triomphe"; - version = "0.1.11"; + version = "0.1.12"; edition = "2015"; - sha256 = "1crf71hndy3fc68x8v4aikkdjynp4n5sdhq28sck8x7frx8bd7l5"; + sha256 = "140dp3fhpdqxj5xjsjvbkpwmik8w0cjdzyl6mhvfnplrp7xv8b0v"; authors = [ + "Manish Goregaokar " "The Servo Project Developers" ]; features = { @@ -9592,7 +9727,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "full" ]; } { @@ -9682,7 +9817,7 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; features = [ "visit" "full" ]; } { @@ -11148,16 +11283,16 @@ rec { } { name = "syn"; - packageId = "syn 2.0.61"; + packageId = "syn 2.0.66"; } ]; }; "zeroize" = rec { crateName = "zeroize"; - version = "1.7.0"; + version = "1.8.1"; edition = "2021"; - sha256 = "0bfvby7k9pdp6623p98yz2irqnamcyzpn7zh20nqmdn68b0lwnsj"; + sha256 = "1pjdrmjwmszpxfd7r860jx54cyk94qk59x13sc307cvr5256glyf"; authors = [ "The RustCrypto Project Developers" ]; diff --git a/Cargo.toml b/Cargo.toml index 341db02d..e2dcff2b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -27,7 +27,7 @@ semver = "1.0" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" snafu = "0.8" -stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", tag = "stackable-operator-0.67.1" } +stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", tag = "stackable-operator-0.69.0" } strum = { version = "0.26", features = ["derive"] } tokio = { version = "1.37", features = ["full"] } tracing = "0.1" diff --git a/crate-hashes.json b/crate-hashes.json index 5623023b..283c0922 100644 --- a/crate-hashes.json +++ b/crate-hashes.json @@ -1,5 +1,5 @@ { - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.67.1#stackable-operator-derive@0.3.0": "179kqkj6pw5cn98cngcmxn5kmy5snydhsdq4qx6hza862sx0828j", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.67.1#stackable-operator@0.67.1": "179kqkj6pw5cn98cngcmxn5kmy5snydhsdq4qx6hza862sx0828j", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.69.0#stackable-operator-derive@0.3.0": "033zxfdwf202h48lshnw9wznbrkl80px8rdcg4h0rcb0wc2pa37q", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.69.0#stackable-operator@0.69.0": "033zxfdwf202h48lshnw9wznbrkl80px8rdcg4h0rcb0wc2pa37q", "git+https://github.com/stackabletech/product-config.git?tag=0.6.0#product-config@0.6.0": "1ixc2x7540sxdmc92hqdcwm24rj8i1ivjsvwk2d57pdsq03j2x41" } \ No newline at end of file diff --git a/docs/modules/opa/pages/usage-guide/logging.adoc b/docs/modules/opa/pages/usage-guide/logging.adoc index c1c71f7f..b4e342d3 100644 --- a/docs/modules/opa/pages/usage-guide/logging.adoc +++ b/docs/modules/opa/pages/usage-guide/logging.adoc @@ -1,4 +1,6 @@ -= Log aggregation += Logging + +== Log aggregation The logs can be forwarded to a Vector log aggregator by providing a discovery ConfigMap for the aggregator and by enabling the log agent: @@ -22,7 +24,34 @@ spec: The Stackable operator for OPA only supports automatic log configuration due to the lack of customization for the OPA logging. -Furthermore, the only customization possible for console output for the `opa` and `bundle-builder` containers is `NONE`. This deactivates console logging. Other log levels for console logging in these containers will be overwritten by the file log level. +Furthermore, the only customization possible for console output for the `bundle-builder` container is `NONE`. This deactivates console logging. Other log levels for console logging in this container will be overwritten by the file log level. + +== Decision logging + +The decision logging for OPA can be enabled by setting the log level of the decision logger to any other level than `NONE`, as shown by example here: + +[source,yaml] +---- +spec: + clusterConfig: + vectorAggregatorConfigMapName: vector-aggregator-discovery + servers: + config: + logging: + enableVectorAgent: true + containers: + opa: + console: + level: NONE + file: + level: INFO + loggers: + decision: + level: INFO +---- + +Please note that the decision logs would still be filtered by the log level set for the console and file appenders. Therefore, the configuration above would result in decision logs being present on file but not on console. + Further information on how to configure logging, can be found in xref:concepts:logging.adoc[]. diff --git a/rust/crd/src/lib.rs b/rust/crd/src/lib.rs index 73ae7475..5fef5959 100644 --- a/rust/crd/src/lib.rs +++ b/rust/crd/src/lib.rs @@ -30,8 +30,6 @@ pub mod user_info_fetcher; pub const APP_NAME: &str = "opa"; pub const OPERATOR_NAME: &str = "opa.stackable.tech"; -pub const CONFIG_FILE: &str = "config.yaml"; - pub const DEFAULT_SERVER_GRACEFUL_SHUTDOWN_TIMEOUT: Duration = Duration::from_minutes_unchecked(2); /// Safety puffer to guarantee the graceful shutdown works every time. pub const SERVER_GRACEFUL_SHUTDOWN_SAFETY_OVERHEAD: Duration = Duration::from_secs(5); diff --git a/rust/operator-binary/src/controller.rs b/rust/operator-binary/src/controller.rs index 7afef794..d24b6c6f 100644 --- a/rust/operator-binary/src/controller.rs +++ b/rust/operator-binary/src/controller.rs @@ -6,6 +6,7 @@ use std::{ use indoc::formatdoc; use product_config::{types::PropertyNameKind, ProductConfigManager}; +use serde::{Deserialize, Serialize}; use serde_json::json; use snafu::{OptionExt, ResultExt, Snafu}; use stackable_opa_crd::{ @@ -71,13 +72,12 @@ use crate::{ operations::graceful_shutdown::add_graceful_shutdown_config, product_logging::{ extend_role_group_config_map, resolve_vector_aggregator_address, BundleBuilderLogLevel, - OpaLogLevel, }, }; pub const OPA_CONTROLLER_NAME: &str = "opacluster"; -pub const CONFIG_FILE: &str = "config.yaml"; +pub const CONFIG_FILE: &str = "config.json"; pub const APP_PORT: u16 = 8081; pub const APP_PORT_NAME: &str = "http"; pub const METRICS_PORT_NAME: &str = "metrics"; @@ -97,6 +97,13 @@ const USER_INFO_FETCHER_CREDENTIALS_DIR: &str = "/stackable/credentials"; const DOCKER_IMAGE_BASE_NAME: &str = "opa"; +// logging defaults +const DEFAULT_DECISION_LOGGING_ENABLED: bool = false; +const DEFAULT_FILE_LOG_LEVEL: LogLevel = LogLevel::INFO; +const DEFAULT_CONSOLE_LOG_LEVEL: LogLevel = LogLevel::INFO; +const DEFAULT_SERVER_LOG_LEVEL: LogLevel = LogLevel::INFO; +const DEFAULT_DECISION_LOG_LEVEL: LogLevel = LogLevel::NONE; + // bundle builder: ~ 5 MB x 2 // these sizes are needed both for the single file (for multilog, in bytes) as well as the total (for the EmptyDir) const OPA_ROLLING_BUNDLE_BUILDER_LOG_FILE_SIZE_MB: u32 = 5; @@ -280,6 +287,67 @@ impl ReconcilerError for Error { } } +#[derive(Serialize, Deserialize)] +pub struct OpaClusterConfigFile { + services: Vec, + bundles: OpaClusterBundle, + #[serde(skip_serializing_if = "Option::is_none")] + decision_logs: Option, +} + +impl OpaClusterConfigFile { + pub fn new(decision_logging: Option) -> Self { + Self { + services: vec![OpaClusterConfigService { + name: String::from("stackable"), + url: String::from("http://localhost:3030/opa/v1"), + }], + bundles: OpaClusterBundle { + stackable: OpaClusterBundleConfig { + service: String::from("stackable"), + resource: String::from("opa/bundle.tar.gz"), + persist: true, + polling: OpaClusterBundleConfigPolling { + min_delay_seconds: 10, + max_delay_seconds: 20, + }, + }, + }, + decision_logs: decision_logging, + } + } +} + +#[derive(Serialize, Deserialize)] +struct OpaClusterConfigService { + name: String, + url: String, +} + +#[derive(Serialize, Deserialize)] +struct OpaClusterBundle { + stackable: OpaClusterBundleConfig, +} + +#[derive(Serialize, Deserialize)] +struct OpaClusterBundleConfig { + service: String, + resource: String, + persist: bool, + polling: OpaClusterBundleConfigPolling, +} + +#[derive(Serialize, Deserialize)] +struct OpaClusterBundleConfigPolling { + min_delay_seconds: i32, + max_delay_seconds: i32, +} + +#[derive(Serialize, Deserialize)] +pub struct OpaClusterConfigDecisionLog { + console: bool, +} + pub async fn reconcile_opa(opa: Arc, ctx: Arc) -> Result { tracing::info!("Starting reconcile"); let opa_ref = ObjectRef::from_obj(opa.as_ref()); @@ -586,7 +654,7 @@ fn build_server_rolegroup_config_map( cm_builder .metadata(metadata) - .add_data(CONFIG_FILE, build_config_file()); + .add_data(CONFIG_FILE, build_config_file(merged_config)); if let Some(user_info) = &opa.spec.cluster_config.user_info { cm_builder.add_data( @@ -924,62 +992,88 @@ pub fn error_policy(_obj: Arc, _error: &Error, _ctx: Arc) -> Ac Action::requeue(*Duration::from_secs(5)) } -fn build_config_file() -> &'static str { - // We currently do not activate decision logging like - // decision_logs: - // console: true - // This will log decisions to the console, but also sends an extra `decision_id` field in the - // API JSON response. This currently leads to our Java authorizers (Druid, Trino) failing to - // deserialize the JSON object since they only expect to have a `result` field returned. - // see https://github.com/stackabletech/opa-operator/issues/422 - " -services: - - name: stackable - url: http://localhost:3030/opa/v1 - -bundles: - stackable: - service: stackable - resource: opa/bundle.tar.gz - persist: true - polling: - min_delay_seconds: 10 - max_delay_seconds: 20 -" +fn build_config_file(merged_config: &OpaConfig) -> String { + let mut decision_logging_enabled = DEFAULT_DECISION_LOGGING_ENABLED; + + if let Some(ContainerLogConfig { + choice: Some(ContainerLogConfigChoice::Automatic(log_config)), + }) = merged_config.logging.containers.get(&Container::Opa) + { + if let Some(config) = log_config.loggers.get("decision") { + decision_logging_enabled = config.level != LogLevel::NONE; + } + } + + let decision_logging = if decision_logging_enabled { + Some(OpaClusterConfigDecisionLog { console: true }) + } else { + None + }; + + let config = OpaClusterConfigFile::new(decision_logging); + + // The unwrap() shouldn't panic under any circumstances because Rusts type checker takes care of the OpaClusterConfigFile + // and serde + serde_json therefore serialize/deserialize a valid struct + serde_json::to_string_pretty(&json!(config)).unwrap() } fn build_opa_start_command(merged_config: &OpaConfig, container_name: &str) -> String { - let mut opa_log_level = OpaLogLevel::Info; - let mut console_logging_off = false; + let mut file_log_level = DEFAULT_FILE_LOG_LEVEL; + let mut console_log_level = DEFAULT_CONSOLE_LOG_LEVEL; + let mut server_log_level = DEFAULT_SERVER_LOG_LEVEL; + let mut decision_log_level = DEFAULT_DECISION_LOG_LEVEL; if let Some(ContainerLogConfig { choice: Some(ContainerLogConfigChoice::Automatic(log_config)), }) = merged_config.logging.containers.get(&Container::Opa) { - // Retrieve the file log level for OPA and convert to OPA log levels if let Some(AppenderConfig { level: Some(log_level), }) = log_config.file { - opa_log_level = OpaLogLevel::from(log_level); + file_log_level = log_level; } - // We need to check if the console logging is deactivated (NONE) - // This will result in not using `tee` later on in the start command if let Some(AppenderConfig { level: Some(log_level), }) = log_config.console { - console_logging_off = log_level == LogLevel::NONE + console_log_level = log_level; + } + + // Retrieve the decision log level for OPA. If not set, keep the defined default of LogLevel::NONE. + // This is because, if decision logs are not explicitly set to something different than LogLevel::NONE, + // the decision logs should remain disabled and not set to ROOT log level automatically. + if let Some(config) = log_config.loggers.get("decision") { + decision_log_level = config.level + } + + // Retrieve the server log level for OPA. If not set, set it to the ROOT log level. + match log_config.loggers.get("server") { + Some(config) => server_log_level = config.level, + None => server_log_level = log_config.root_log_level(), } } + // Redirects matter! + // We need to watch out, that the following "$!" call returns the PID of the main (opa-bundle-builder) process, + // and not some utility (e.g. multilog or tee) process. + // See https://stackoverflow.com/a/8048493 + + let logging_redirects = format!( + "&> >(CONSOLE_LEVEL={console} FILE_LEVEL={file} DECISION_LEVEL={decision} SERVER_LEVEL={server} OPA_ROLLING_LOG_FILE_SIZE_BYTES={OPA_ROLLING_LOG_FILE_SIZE_BYTES} OPA_ROLLING_LOG_FILES={OPA_ROLLING_LOG_FILES} STACKABLE_LOG_DIR={STACKABLE_LOG_DIR} CONTAINER_NAME={container_name} process-logs)", + file = file_log_level.to_opa_literal(), + console = console_log_level.to_opa_literal(), + decision = decision_log_level.to_opa_literal(), + server = server_log_level.to_opa_literal() + ); + // TODO: Think about adding --shutdown-wait-period, as suggested by https://github.com/open-policy-agent/opa/issues/2764 formatdoc! {" {COMMON_BASH_TRAP_FUNCTIONS} {remove_vector_shutdown_file_command} prepare_signal_handlers - /stackable/opa/opa run -s -a 0.0.0.0:{APP_PORT} -c {CONFIG_DIR}/config.yaml -l {opa_log_level} --shutdown-grace-period {shutdown_grace_period_s} --disable-telemetry{logging_redirects} & + opa run -s -a 0.0.0.0:{APP_PORT} -c {CONFIG_DIR}/{CONFIG_FILE} -l {opa_log_level} --shutdown-grace-period {shutdown_grace_period_s} --disable-telemetry {logging_redirects} & wait_for_termination $! {create_vector_shutdown_file_command} ", @@ -988,15 +1082,7 @@ fn build_opa_start_command(merged_config: &OpaConfig, container_name: &str) -> S create_vector_shutdown_file_command = create_vector_shutdown_file_command(STACKABLE_LOG_DIR), shutdown_grace_period_s = merged_config.graceful_shutdown_timeout.unwrap_or(DEFAULT_SERVER_GRACEFUL_SHUTDOWN_TIMEOUT).as_secs(), - // Redirects matter! - // We need to watch out, that the following "$!" call returns the PID of the main (opa-bundle-builder) process, - // and not some utility (e.g. multilog or tee) process. - // See https://stackoverflow.com/a/8048493 - logging_redirects = if console_logging_off { - format!(" &> >(/stackable/multilog s{OPA_ROLLING_LOG_FILE_SIZE_BYTES} n{OPA_ROLLING_LOG_FILES} {STACKABLE_LOG_DIR}/{container_name})") - } else { - format!(" &> >(tee >(/stackable/multilog s{OPA_ROLLING_LOG_FILE_SIZE_BYTES} n{OPA_ROLLING_LOG_FILES} {STACKABLE_LOG_DIR}/{container_name}))") - }, + opa_log_level = [console_log_level, file_log_level].iter().min().unwrap_or(&LogLevel::INFO).to_opa_literal() } } diff --git a/tests/templates/kuttl/logging/02-install-opa.yaml.j2 b/tests/templates/kuttl/logging/02-install-opa.yaml.j2 index bd1e8372..f1a43ceb 100644 --- a/tests/templates/kuttl/logging/02-install-opa.yaml.j2 +++ b/tests/templates/kuttl/logging/02-install-opa.yaml.j2 @@ -36,9 +36,12 @@ spec: containers: opa: console: - level: INFO + level: ERROR file: level: INFO + loggers: + decision: + level: INFO bundle-builder: console: level: NONE diff --git a/tests/templates/kuttl/logging/03-install-opa-test-runner.yaml b/tests/templates/kuttl/logging/03-install-opa-test-runner.yaml index bf6e9705..ab1c2975 100644 --- a/tests/templates/kuttl/logging/03-install-opa-test-runner.yaml +++ b/tests/templates/kuttl/logging/03-install-opa-test-runner.yaml @@ -1,4 +1,30 @@ --- +kind: Role +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: logging-role +rules: + - apiGroups: [""] + resources: ["services", "pods", "pods/log"] + verbs: ["get", "list"] +--- +apiVersion: v1 +kind: ServiceAccount +metadata: + name: logging-sa +--- +kind: RoleBinding +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: logging-rb +subjects: + - kind: ServiceAccount + name: logging-sa +roleRef: + kind: Role + name: logging-role + apiGroup: rbac.authorization.k8s.io +--- apiVersion: apps/v1 kind: StatefulSet metadata: @@ -15,6 +41,7 @@ spec: labels: app: opa-test-runner spec: + serviceAccountName: logging-sa containers: - name: opa-test-runner image: docker.stackable.tech/stackable/testing-tools:0.2.0-stackable0.0.0-dev diff --git a/tests/templates/kuttl/logging/04-assert.yaml b/tests/templates/kuttl/logging/04-assert.yaml index 832744f9..b7a33ca3 100644 --- a/tests/templates/kuttl/logging/04-assert.yaml +++ b/tests/templates/kuttl/logging/04-assert.yaml @@ -5,3 +5,6 @@ commands: - script: >- kubectl exec --namespace=$NAMESPACE opa-test-runner-0 -- python /tmp/test_log_aggregation.py -n $NAMESPACE + - script: >- + kubectl exec --namespace=$NAMESPACE opa-test-runner-0 -- + sh /tmp/test_log_aggregation.sh diff --git a/tests/templates/kuttl/logging/04-test-log-aggregation.yaml b/tests/templates/kuttl/logging/04-test-log-aggregation.yaml index 47aec431..b22466a6 100644 --- a/tests/templates/kuttl/logging/04-test-log-aggregation.yaml +++ b/tests/templates/kuttl/logging/04-test-log-aggregation.yaml @@ -4,3 +4,5 @@ kind: TestStep commands: - script: | kubectl cp ./test_log_aggregation.py $NAMESPACE/opa-test-runner-0:/tmp + - script: | + kubectl cp ./test_log_aggregation.sh $NAMESPACE/opa-test-runner-0:/tmp diff --git a/tests/templates/kuttl/logging/opa-vector-aggregator-values.yaml.j2 b/tests/templates/kuttl/logging/opa-vector-aggregator-values.yaml.j2 index 5bb70ed7..5891b281 100644 --- a/tests/templates/kuttl/logging/opa-vector-aggregator-values.yaml.j2 +++ b/tests/templates/kuttl/logging/opa-vector-aggregator-values.yaml.j2 @@ -20,12 +20,20 @@ customConfig: type: vector version: "2" transforms: + filteredAutomaticLogConfigServerOpaDecision: + type: filter + inputs: [vector] + condition: >- + starts_with(string!(.pod), "test-opa-server-automatic-log-config") && + .container == "opa" && + .logger == "decision" filteredAutomaticLogConfigServerOpa: type: filter inputs: [vector] condition: >- starts_with(string!(.pod), "test-opa-server-automatic-log-config") && - .container == "opa" + .container == "opa" && + .logger != "decision" filteredAutomaticLogConfigServerBundleBuilder: type: filter inputs: [vector] diff --git a/tests/templates/kuttl/logging/test_log_aggregation.py b/tests/templates/kuttl/logging/test_log_aggregation.py index b5d50dc5..3ed838f0 100755 --- a/tests/templates/kuttl/logging/test_log_aggregation.py +++ b/tests/templates/kuttl/logging/test_log_aggregation.py @@ -1,7 +1,16 @@ #!/usr/bin/env python3 import requests +import time +def send_opa_decision_request(): + response = requests.post( + 'http://test-opa:8081/v1/data/test/world' + ) + + assert response.status_code == 200, \ + 'Cannot access the API of the opa cluster.' + def check_sent_events(): response = requests.post( 'http://opa-vector-aggregator:8686/graphql', @@ -44,5 +53,7 @@ def check_sent_events(): if __name__ == '__main__': + send_opa_decision_request() + time.sleep(10) check_sent_events() print('Test successful!') diff --git a/tests/templates/kuttl/logging/test_log_aggregation.sh b/tests/templates/kuttl/logging/test_log_aggregation.sh new file mode 100755 index 00000000..cd6f5577 --- /dev/null +++ b/tests/templates/kuttl/logging/test_log_aggregation.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash + +DECISION_LOGS=$(kubectl logs service/test-opa -c opa | grep "decision_id"); + +if [ -n "$DECISION_LOGS" ]; +then + echo "Error: Decision logs printed to console"; + exit 1; +fi + +echo "Test successful!"; \ No newline at end of file