diff --git a/Cargo.lock b/Cargo.lock index e6463b2..5fcd8f0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -352,7 +352,6 @@ checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2" dependencies = [ "iana-time-zone", "num-traits", - "serde", "windows-link 0.2.0", ] @@ -439,13 +438,22 @@ dependencies = [ [[package]] name = "convert_case" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "633458d4ef8c78b72454de2d54fd6ab2e60f9e02be22f3c6104cdc8a4e0fceb9" +checksum = "affbf0190ed2caf063e3def54ff444b449371d55c58e513a95ab98eca50adb49" dependencies = [ "unicode-segmentation", ] +[[package]] +name = "convert_case_extras" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589c70f0faf8aa9d17787557d5eae854d7755cac50f5c3d12c81d3d57661cebb" +dependencies = [ + "convert_case", +] + [[package]] name = "core-foundation" version = "0.10.1" @@ -517,38 +525,14 @@ dependencies = [ "typenum", ] -[[package]] -name = "darling" -version = "0.21.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0" -dependencies = [ - "darling_core 0.21.3", - "darling_macro 0.21.3", -] - [[package]] name = "darling" version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" dependencies = [ - "darling_core 0.23.0", - "darling_macro 0.23.0", -] - -[[package]] -name = "darling_core" -version = "0.21.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn 2.0.106", + "darling_core", + "darling_macro", ] [[package]] @@ -564,24 +548,13 @@ dependencies = [ "syn 2.0.106", ] -[[package]] -name = "darling_macro" -version = "0.21.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" -dependencies = [ - "darling_core 0.21.3", - "quote", - "syn 2.0.106", -] - [[package]] name = "darling_macro" version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" dependencies = [ - "darling_core 0.23.0", + "darling_core", "quote", "syn 2.0.106", ] @@ -879,9 +852,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "foldhash" -version = "0.1.5" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" [[package]] name = "form_urlencoded" @@ -1097,21 +1070,15 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.5" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" +checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" dependencies = [ "allocator-api2", "equivalent", "foldhash", ] -[[package]] -name = "hashbrown" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" - [[package]] name = "heck" version = "0.5.0" @@ -1127,15 +1094,6 @@ dependencies = [ "digest", ] -[[package]] -name = "home" -version = "0.5.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" -dependencies = [ - "windows-sys 0.59.0", -] - [[package]] name = "hostname" version = "0.4.1" @@ -1415,7 +1373,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" dependencies = [ "equivalent", - "hashbrown 0.16.0", + "hashbrown", ] [[package]] @@ -1483,6 +1441,47 @@ dependencies = [ "regex", ] +[[package]] +name = "jiff" +version = "0.2.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c867c356cc096b33f4981825ab281ecba3db0acefe60329f044c1789d94c6543" +dependencies = [ + "jiff-static", + "jiff-tzdb-platform", + "log", + "portable-atomic", + "portable-atomic-util", + "serde_core", + "windows-sys 0.52.0", +] + +[[package]] +name = "jiff-static" +version = "0.2.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7946b4325269738f270bb55b3c19ab5c5040525f83fd625259422a9d25d9be5" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.106", +] + +[[package]] +name = "jiff-tzdb" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68971ebff725b9e2ca27a601c5eb38a4c5d64422c4cbab0c535f248087eda5c2" + +[[package]] +name = "jiff-tzdb-platform" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "875a5a69ac2bab1a891711cf5eccbec1ce0341ea805560dcd90b7a2e925132e8" +dependencies = [ + "jiff-tzdb", +] + [[package]] name = "jobserver" version = "0.1.34" @@ -1517,9 +1516,9 @@ dependencies = [ [[package]] name = "jsonpath-rust" -version = "0.7.5" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c00ae348f9f8fd2d09f82a98ca381c60df9e0820d8d79fce43e649b4dc3128b" +checksum = "633a7320c4bb672863a3782e89b9094ad70285e097ff6832cddd0ec615beadfa" dependencies = [ "pest", "pest_derive", @@ -1540,12 +1539,12 @@ dependencies = [ [[package]] name = "k8s-openapi" -version = "0.26.0" +version = "0.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d13f06d5326a915becaffabdfab75051b8cdc260c2a5c06c0e90226ede89a692" +checksum = "05a6d6f3611ad1d21732adbd7a2e921f598af6c92d71ae6e2620da4b67ee1f0d" dependencies = [ "base64", - "chrono", + "jiff", "schemars", "serde", "serde_json", @@ -1554,17 +1553,17 @@ dependencies = [ [[package]] name = "k8s-version" version = "0.1.3" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#2ba637e9d72e8b82adc6b5f370211ba9563c136d" dependencies = [ - "darling 0.23.0", + "darling", "regex", "snafu 0.8.9", ] [[package]] name = "kube" -version = "2.0.1" -source = "git+https://github.com/stackabletech/kube-rs?branch=2.0.1-fix-schema-hoisting#26543e85dc7daaf82d8f7dbd902b26775798879e" +version = "3.0.1" +source = "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5" dependencies = [ "k8s-openapi", "kube-client", @@ -1575,15 +1574,13 @@ dependencies = [ [[package]] name = "kube-client" -version = "2.0.1" -source = "git+https://github.com/stackabletech/kube-rs?branch=2.0.1-fix-schema-hoisting#26543e85dc7daaf82d8f7dbd902b26775798879e" +version = "3.0.1" +source = "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5" dependencies = [ "base64", "bytes", - "chrono", "either", "futures 0.3.31", - "home", "http", "http-body", "http-body-util", @@ -1591,6 +1588,7 @@ dependencies = [ "hyper-rustls", "hyper-timeout", "hyper-util", + "jiff", "jsonpath-rust", "k8s-openapi", "kube-core", @@ -1610,13 +1608,13 @@ dependencies = [ [[package]] name = "kube-core" -version = "2.0.1" -source = "git+https://github.com/stackabletech/kube-rs?branch=2.0.1-fix-schema-hoisting#26543e85dc7daaf82d8f7dbd902b26775798879e" +version = "3.0.1" +source = "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5" dependencies = [ - "chrono", "derive_more", "form_urlencoded", "http", + "jiff", "json-patch", "k8s-openapi", "schemars", @@ -1628,10 +1626,10 @@ dependencies = [ [[package]] name = "kube-derive" -version = "2.0.1" -source = "git+https://github.com/stackabletech/kube-rs?branch=2.0.1-fix-schema-hoisting#26543e85dc7daaf82d8f7dbd902b26775798879e" +version = "3.0.1" +source = "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5" dependencies = [ - "darling 0.21.3", + "darling", "proc-macro2", "quote", "serde", @@ -1641,8 +1639,8 @@ dependencies = [ [[package]] name = "kube-runtime" -version = "2.0.1" -source = "git+https://github.com/stackabletech/kube-rs?branch=2.0.1-fix-schema-hoisting#26543e85dc7daaf82d8f7dbd902b26775798879e" +version = "3.0.1" +source = "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5" dependencies = [ "ahash", "async-broadcast", @@ -1650,7 +1648,7 @@ dependencies = [ "backon", "educe", "futures 0.3.31", - "hashbrown 0.15.5", + "hashbrown", "hostname", "json-patch", "k8s-openapi", @@ -2139,6 +2137,21 @@ version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" +[[package]] +name = "portable-atomic" +version = "1.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49" + +[[package]] +name = "portable-atomic-util" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a9db96d7fa8782dd8c15ce32ffe8680bbd1e978a43bf51a34d39483540495f5" +dependencies = [ + "portable-atomic", +] + [[package]] name = "potential_utf" version = "0.1.3" @@ -2896,7 +2909,7 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "stackable-certs" version = "0.4.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#2ba637e9d72e8b82adc6b5f370211ba9563c136d" dependencies = [ "const-oid", "ecdsa", @@ -2927,7 +2940,6 @@ dependencies = [ "pretty_assertions", "regex", "rstest", - "schemars", "serde", "serde_json", "snafu 0.8.9", @@ -2940,10 +2952,9 @@ dependencies = [ [[package]] name = "stackable-operator" -version = "0.105.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa" +version = "0.106.1" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#2ba637e9d72e8b82adc6b5f370211ba9563c136d" dependencies = [ - "chrono", "clap", "const_format", "delegate", @@ -2953,6 +2964,7 @@ dependencies = [ "futures 0.3.31", "http", "indexmap", + "jiff", "json-patch", "k8s-openapi", "kube", @@ -2980,9 +2992,9 @@ dependencies = [ [[package]] name = "stackable-operator-derive" version = "0.3.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#2ba637e9d72e8b82adc6b5f370211ba9563c136d" dependencies = [ - "darling 0.23.0", + "darling", "proc-macro2", "quote", "syn 2.0.106", @@ -2990,10 +3002,10 @@ dependencies = [ [[package]] name = "stackable-shared" -version = "0.0.3" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa" +version = "0.1.0" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#2ba637e9d72e8b82adc6b5f370211ba9563c136d" dependencies = [ - "chrono", + "jiff", "k8s-openapi", "kube", "schemars", @@ -3008,7 +3020,7 @@ dependencies = [ [[package]] name = "stackable-telemetry" version = "0.6.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#2ba637e9d72e8b82adc6b5f370211ba9563c136d" dependencies = [ "axum", "clap", @@ -3032,7 +3044,7 @@ dependencies = [ [[package]] name = "stackable-versioned" version = "0.8.3" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#2ba637e9d72e8b82adc6b5f370211ba9563c136d" dependencies = [ "schemars", "serde", @@ -3045,10 +3057,11 @@ dependencies = [ [[package]] name = "stackable-versioned-macros" version = "0.8.3" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#2ba637e9d72e8b82adc6b5f370211ba9563c136d" dependencies = [ "convert_case", - "darling 0.23.0", + "convert_case_extras", + "darling", "indoc", "itertools", "k8s-openapi", @@ -3062,7 +3075,7 @@ dependencies = [ [[package]] name = "stackable-webhook" version = "0.9.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#2ba637e9d72e8b82adc6b5f370211ba9563c136d" dependencies = [ "arc-swap", "async-trait", diff --git a/Cargo.nix b/Cargo.nix index 18e7b20..c963994 100644 --- a/Cargo.nix +++ b/Cargo.nix @@ -1122,12 +1122,6 @@ rec { packageId = "num-traits"; usesDefaultFeatures = false; } - { - name = "serde"; - packageId = "serde"; - optional = true; - usesDefaultFeatures = false; - } { name = "windows-link"; packageId = "windows-link 0.2.0"; @@ -1156,7 +1150,7 @@ rec { "winapi" = [ "windows-link" ]; "windows-link" = [ "dep:windows-link" ]; }; - resolvedDefaultFeatures = [ "alloc" "clock" "iana-time-zone" "now" "serde" "std" "winapi" "windows-link" ]; + resolvedDefaultFeatures = [ "alloc" "clock" "iana-time-zone" "now" "std" "winapi" "windows-link" ]; }; "clap" = rec { crateName = "clap"; @@ -1391,9 +1385,9 @@ rec { }; "convert_case" = rec { crateName = "convert_case"; - version = "0.10.0"; + version = "0.11.0"; edition = "2021"; - sha256 = "1fff1x78mp2c233g68my0ag0zrmjdbym8bfyahjbfy4cxza5hd33"; + sha256 = "0jfv1ajyr65bjlx533n5alfkfjdl8ks4zxfywdiz1jnj1qcz1yxg"; authors = [ "rutrum " ]; @@ -1405,6 +1399,25 @@ rec { ]; }; + "convert_case_extras" = rec { + crateName = "convert_case_extras"; + version = "0.2.0"; + edition = "2021"; + sha256 = "1fyfc5vdblw15k8w7xahmif7bmslx3mdamvmg0brvapqzbq7172q"; + authors = [ + "rutrum " + ]; + dependencies = [ + { + name = "convert_case"; + packageId = "convert_case"; + } + ]; + features = { + "rand" = [ "dep:rand" ]; + "random" = [ "rand" ]; + }; + }; "core-foundation" = rec { crateName = "core-foundation"; version = "0.10.1"; @@ -1613,33 +1626,7 @@ rec { }; resolvedDefaultFeatures = [ "std" ]; }; - "darling 0.21.3" = rec { - crateName = "darling"; - version = "0.21.3"; - edition = "2021"; - sha256 = "1h281ah78pz05450r71h3gwm2n24hy8yngbz58g426l4j1q37pww"; - authors = [ - "Ted Driggs " - ]; - dependencies = [ - { - name = "darling_core"; - packageId = "darling_core 0.21.3"; - } - { - name = "darling_macro"; - packageId = "darling_macro 0.21.3"; - } - ]; - features = { - "default" = [ "suggestions" ]; - "diagnostics" = [ "darling_core/diagnostics" ]; - "serde" = [ "darling_core/serde" ]; - "suggestions" = [ "darling_core/suggestions" ]; - }; - resolvedDefaultFeatures = [ "default" "suggestions" ]; - }; - "darling 0.23.0" = rec { + "darling" = rec { crateName = "darling"; version = "0.23.0"; edition = "2021"; @@ -1650,11 +1637,11 @@ rec { dependencies = [ { name = "darling_core"; - packageId = "darling_core 0.23.0"; + packageId = "darling_core"; } { name = "darling_macro"; - packageId = "darling_macro 0.23.0"; + packageId = "darling_macro"; } ]; features = { @@ -1665,50 +1652,7 @@ rec { }; resolvedDefaultFeatures = [ "default" "suggestions" ]; }; - "darling_core 0.21.3" = rec { - crateName = "darling_core"; - version = "0.21.3"; - edition = "2021"; - sha256 = "193ya45qgac0a4siwghk0bl8im8h89p3cald7kw8ag3yrmg1jiqj"; - authors = [ - "Ted Driggs " - ]; - dependencies = [ - { - name = "fnv"; - packageId = "fnv"; - } - { - name = "ident_case"; - packageId = "ident_case"; - } - { - name = "proc-macro2"; - packageId = "proc-macro2"; - } - { - name = "quote"; - packageId = "quote"; - } - { - name = "strsim"; - packageId = "strsim"; - optional = true; - } - { - name = "syn"; - packageId = "syn 2.0.106"; - features = [ "full" "extra-traits" ]; - } - ]; - features = { - "serde" = [ "dep:serde" ]; - "strsim" = [ "dep:strsim" ]; - "suggestions" = [ "strsim" ]; - }; - resolvedDefaultFeatures = [ "strsim" "suggestions" ]; - }; - "darling_core 0.23.0" = rec { + "darling_core" = rec { crateName = "darling_core"; version = "0.23.0"; edition = "2021"; @@ -1747,32 +1691,7 @@ rec { }; resolvedDefaultFeatures = [ "strsim" "suggestions" ]; }; - "darling_macro 0.21.3" = rec { - crateName = "darling_macro"; - version = "0.21.3"; - edition = "2021"; - sha256 = "10ac85n4lnx3rmf5rw8lijl2c0sbl6ghcpgfmzh0s26ihbghi0yk"; - procMacro = true; - authors = [ - "Ted Driggs " - ]; - dependencies = [ - { - name = "darling_core"; - packageId = "darling_core 0.21.3"; - } - { - name = "quote"; - packageId = "quote"; - } - { - name = "syn"; - packageId = "syn 2.0.106"; - } - ]; - - }; - "darling_macro 0.23.0" = rec { + "darling_macro" = rec { crateName = "darling_macro"; version = "0.23.0"; edition = "2021"; @@ -1784,7 +1703,7 @@ rec { dependencies = [ { name = "darling_core"; - packageId = "darling_core 0.23.0"; + packageId = "darling_core"; } { name = "quote"; @@ -2716,9 +2635,9 @@ rec { }; "foldhash" = rec { crateName = "foldhash"; - version = "0.1.5"; + version = "0.2.0"; edition = "2021"; - sha256 = "1wisr1xlc2bj7hk4rgkcjkz3j2x4dhd1h9lwk7mj8p71qpdgbi6r"; + sha256 = "1nvgylb099s11xpfm1kn2wcsql080nqmnhj1l25bp3r2b35j9kkp"; authors = [ "Orson Peters " ]; @@ -3423,11 +3342,11 @@ rec { features = { }; }; - "hashbrown 0.15.5" = rec { + "hashbrown" = rec { crateName = "hashbrown"; - version = "0.15.5"; + version = "0.16.0"; edition = "2021"; - sha256 = "189qaczmjxnikm9db748xyhiw04kpmhm9xj9k9hg0sgx7pjwyacj"; + sha256 = "13blh9j2yv77a6ni236ixiwdzbc1sh2bc4bdpaz7y859yv2bs6al"; authors = [ "Amanieu d'Antras " ]; @@ -3452,28 +3371,6 @@ rec { usesDefaultFeatures = false; } ]; - features = { - "alloc" = [ "dep:alloc" ]; - "allocator-api2" = [ "dep:allocator-api2" ]; - "core" = [ "dep:core" ]; - "default" = [ "default-hasher" "inline-more" "allocator-api2" "equivalent" "raw-entry" ]; - "default-hasher" = [ "dep:foldhash" ]; - "equivalent" = [ "dep:equivalent" ]; - "nightly" = [ "bumpalo/allocator_api" ]; - "rayon" = [ "dep:rayon" ]; - "rustc-dep-of-std" = [ "nightly" "core" "alloc" "rustc-internal-api" ]; - "serde" = [ "dep:serde" ]; - }; - resolvedDefaultFeatures = [ "allocator-api2" "default" "default-hasher" "equivalent" "inline-more" "raw-entry" ]; - }; - "hashbrown 0.16.0" = rec { - crateName = "hashbrown"; - version = "0.16.0"; - edition = "2021"; - sha256 = "13blh9j2yv77a6ni236ixiwdzbc1sh2bc4bdpaz7y859yv2bs6al"; - authors = [ - "Amanieu d'Antras " - ]; features = { "alloc" = [ "dep:alloc" ]; "allocator-api2" = [ "dep:allocator-api2" ]; @@ -3486,6 +3383,7 @@ rec { "rustc-dep-of-std" = [ "nightly" "core" "alloc" "rustc-internal-api" ]; "serde" = [ "dep:serde" ]; }; + resolvedDefaultFeatures = [ "allocator-api2" "default" "default-hasher" "equivalent" "inline-more" "raw-entry" ]; }; "heck" = rec { crateName = "heck"; @@ -3521,24 +3419,6 @@ rec { }; resolvedDefaultFeatures = [ "reset" ]; }; - "home" = rec { - crateName = "home"; - version = "0.5.11"; - edition = "2021"; - sha256 = "1kxb4k87a9sayr8jipr7nq9wpgmjk4hk4047hmf9kc24692k75aq"; - authors = [ - "Brian Anderson " - ]; - dependencies = [ - { - name = "windows-sys"; - packageId = "windows-sys 0.59.0"; - target = { target, features }: (target."windows" or false); - features = [ "Win32_Foundation" "Win32_UI_Shell" "Win32_System_Com" ]; - } - ]; - - }; "hostname" = rec { crateName = "hostname"; version = "0.4.1"; @@ -4516,7 +4396,7 @@ rec { } { name = "hashbrown"; - packageId = "hashbrown 0.16.0"; + packageId = "hashbrown"; usesDefaultFeatures = false; } ]; @@ -4690,6 +4570,147 @@ rec { } ]; + }; + "jiff" = rec { + crateName = "jiff"; + version = "0.2.20"; + edition = "2021"; + sha256 = "0hv59kcqj5sc0jgk4q7yrq5dp8yb3qlan98qk3s36sq9ribc6ry8"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "jiff-static"; + packageId = "jiff-static"; + optional = true; + } + { + name = "jiff-static"; + packageId = "jiff-static"; + target = { target, features }: false; + } + { + name = "jiff-tzdb-platform"; + packageId = "jiff-tzdb-platform"; + optional = true; + target = { target, features }: ((target."windows" or false) || (builtins.elem "wasm" target."family")); + } + { + name = "log"; + packageId = "log"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "portable-atomic"; + packageId = "portable-atomic"; + usesDefaultFeatures = false; + target = { target, features }: (!("ptr" == target."has_atomic" or null)); + } + { + name = "portable-atomic-util"; + packageId = "portable-atomic-util"; + usesDefaultFeatures = false; + target = { target, features }: (!("ptr" == target."has_atomic" or null)); + } + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.52.0"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_Time" ]; + } + ]; + devDependencies = [ + { + name = "log"; + packageId = "log"; + } + ]; + features = { + "alloc" = [ "serde_core?/alloc" "portable-atomic-util/alloc" ]; + "default" = [ "std" "tz-system" "tz-fat" "tzdb-bundle-platform" "tzdb-zoneinfo" "tzdb-concatenated" "perf-inline" ]; + "js" = [ "dep:wasm-bindgen" "dep:js-sys" ]; + "logging" = [ "dep:log" ]; + "serde" = [ "dep:serde_core" ]; + "static" = [ "static-tz" "jiff-static?/tzdb" ]; + "static-tz" = [ "dep:jiff-static" ]; + "std" = [ "alloc" "log?/std" "serde_core?/std" ]; + "tz-fat" = [ "jiff-static?/tz-fat" ]; + "tz-system" = [ "std" "dep:windows-sys" ]; + "tzdb-bundle-always" = [ "dep:jiff-tzdb" "alloc" ]; + "tzdb-bundle-platform" = [ "dep:jiff-tzdb-platform" "alloc" ]; + "tzdb-concatenated" = [ "std" ]; + "tzdb-zoneinfo" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "perf-inline" "serde" "std" "tz-fat" "tz-system" "tzdb-bundle-platform" "tzdb-concatenated" "tzdb-zoneinfo" ]; + }; + "jiff-static" = rec { + crateName = "jiff-static"; + version = "0.2.20"; + edition = "2021"; + sha256 = "1rcvbp9aj8ll4ljxcgzq4l2h9idmkb0v6mdvf3r3i5r64m1np57p"; + procMacro = true; + libName = "jiff_static"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.106"; + } + ]; + features = { + "tzdb" = [ "dep:jiff-tzdb" ]; + }; + resolvedDefaultFeatures = [ "default" "tz-fat" ]; + }; + "jiff-tzdb" = rec { + crateName = "jiff-tzdb"; + version = "0.1.5"; + edition = "2021"; + sha256 = "1hm5xn3q092zac6apjy4492ddid473mwa0d64z5f5f95yyzix5v8"; + libName = "jiff_tzdb"; + libPath = "lib.rs"; + authors = [ + "Andrew Gallant " + ]; + + }; + "jiff-tzdb-platform" = rec { + crateName = "jiff-tzdb-platform"; + version = "0.1.3"; + edition = "2021"; + sha256 = "1s1ja692wyhbv7f60mc0x90h7kn1pv65xkqi2y4imarbmilmlnl7"; + libName = "jiff_tzdb_platform"; + libPath = "lib.rs"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "jiff-tzdb"; + packageId = "jiff-tzdb"; + } + ]; + }; "jobserver" = rec { crateName = "jobserver"; @@ -4785,9 +4806,9 @@ rec { }; "jsonpath-rust" = rec { crateName = "jsonpath-rust"; - version = "0.7.5"; + version = "1.0.4"; edition = "2021"; - sha256 = "12qjqd6rnr1ywky7k38dhbhgj3f6h6iqrac2kz8d53wziwsaw00c"; + sha256 = "1ymdpqawc3nxrlr6izwpw22h5msa16wqjbkqldijhrxvqhh76fk3"; libName = "jsonpath_rust"; authors = [ "BorisZhguchev " @@ -4854,10 +4875,10 @@ rec { }; "k8s-openapi" = rec { crateName = "k8s-openapi"; - version = "0.26.0"; + version = "0.27.0"; edition = "2021"; - links = "k8s-openapi-0.26.0"; - sha256 = "14m6i7g6w8lh1rnc19f2c31cvf2ia2vzmggsmzn5p4ba6bahcgyi"; + links = "k8s-openapi-0.27.0"; + sha256 = "038zxrklpni04rpaww9dr7v8ln8zj8p7mgdd68bx5l8sc7rxd9h5"; libName = "k8s_openapi"; authors = [ "Arnav Singh " @@ -4870,8 +4891,8 @@ rec { features = [ "alloc" ]; } { - name = "chrono"; - packageId = "chrono"; + name = "jiff"; + packageId = "jiff"; usesDefaultFeatures = false; features = [ "alloc" "serde" ]; } @@ -4895,11 +4916,11 @@ rec { ]; features = { "default" = [ "std" ]; - "earliest" = [ "v1_30" ]; - "latest" = [ "v1_34" ]; + "earliest" = [ "v1_31" ]; + "latest" = [ "v1_35" ]; "schemars" = [ "dep:schemars" ]; }; - resolvedDefaultFeatures = [ "schemars" "v1_34" ]; + resolvedDefaultFeatures = [ "schemars" "v1_35" ]; }; "k8s-version" = rec { crateName = "k8s-version"; @@ -4908,8 +4929,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa"; - sha256 = "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd"; + rev = "2ba637e9d72e8b82adc6b5f370211ba9563c136d"; + sha256 = "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17"; }; libName = "k8s_version"; authors = [ @@ -4918,7 +4939,7 @@ rec { dependencies = [ { name = "darling"; - packageId = "darling 0.23.0"; + packageId = "darling"; optional = true; } { @@ -4938,13 +4959,13 @@ rec { }; "kube" = rec { crateName = "kube"; - version = "2.0.1"; + version = "3.0.1"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { - url = "https://github.com/stackabletech/kube-rs"; - rev = "26543e85dc7daaf82d8f7dbd902b26775798879e"; - sha256 = "1a7bcl0w1jg71jc4iml0vjp8dpzy71mhxl012grxcy2xp5i6xvgf"; + url = "https://github.com/kube-rs/kube-rs"; + rev = "fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5"; + sha256 = "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n"; }; authors = [ "clux " @@ -5016,13 +5037,13 @@ rec { }; "kube-client" = rec { crateName = "kube-client"; - version = "2.0.1"; + version = "3.0.1"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { - url = "https://github.com/stackabletech/kube-rs"; - rev = "26543e85dc7daaf82d8f7dbd902b26775798879e"; - sha256 = "1a7bcl0w1jg71jc4iml0vjp8dpzy71mhxl012grxcy2xp5i6xvgf"; + url = "https://github.com/kube-rs/kube-rs"; + rev = "fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5"; + sha256 = "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n"; }; libName = "kube_client"; authors = [ @@ -5041,12 +5062,6 @@ rec { packageId = "bytes"; optional = true; } - { - name = "chrono"; - packageId = "chrono"; - optional = true; - usesDefaultFeatures = false; - } { name = "either"; packageId = "either"; @@ -5059,11 +5074,6 @@ rec { usesDefaultFeatures = false; features = [ "std" ]; } - { - name = "home"; - packageId = "home"; - optional = true; - } { name = "http"; packageId = "http"; @@ -5102,6 +5112,13 @@ rec { optional = true; features = [ "client" "client-legacy" "http1" "tokio" "tracing" ]; } + { + name = "jiff"; + packageId = "jiff"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" "serde" ]; + } { name = "jsonpath-rust"; packageId = "jsonpath-rust"; @@ -5165,13 +5182,13 @@ rec { name = "tower"; packageId = "tower"; optional = true; - features = [ "buffer" "filter" "util" ]; + features = [ "buffer" "filter" "util" "retry" ]; } { name = "tower-http"; packageId = "tower-http"; optional = true; - features = [ "auth" "map-response-body" "trace" ]; + features = [ "auth" "map-response-body" "trace" "util" ]; } { name = "tracing"; @@ -5210,15 +5227,13 @@ rec { "aws-lc-rs" = [ "hyper-rustls?/aws-lc-rs" ]; "base64" = [ "dep:base64" ]; "bytes" = [ "dep:bytes" ]; - "chrono" = [ "dep:chrono" ]; - "client" = [ "config" "__non_core" "hyper" "hyper-util" "http-body" "http-body-util" "tower" "tower-http" "hyper-timeout" "chrono" "jsonpath-rust" "bytes" "futures" "tokio" "tokio-util" "either" ]; - "config" = [ "__non_core" "pem" "home" ]; + "client" = [ "config" "__non_core" "hyper" "hyper-util" "http-body" "http-body-util" "tower" "tower-http" "hyper-timeout" "jiff" "jsonpath-rust" "bytes" "futures" "tokio" "tokio-util" "either" ]; + "config" = [ "__non_core" "pem" ]; "default" = [ "client" "ring" ]; "either" = [ "dep:either" ]; "form_urlencoded" = [ "dep:form_urlencoded" ]; "futures" = [ "dep:futures" ]; "gzip" = [ "client" "tower-http/decompression-gzip" ]; - "home" = [ "dep:home" ]; "http-body" = [ "dep:http-body" ]; "http-body-util" = [ "dep:http-body-util" ]; "http-proxy" = [ "hyper-util/client-proxy" ]; @@ -5227,6 +5242,7 @@ rec { "hyper-rustls" = [ "dep:hyper-rustls" ]; "hyper-timeout" = [ "dep:hyper-timeout" ]; "hyper-util" = [ "dep:hyper-util" ]; + "jiff" = [ "dep:jiff" ]; "jsonpatch" = [ "kube-core/jsonpatch" ]; "jsonpath-rust" = [ "dep:jsonpath-rust" ]; "kubelet-debug" = [ "ws" "kube-core/kubelet-debug" ]; @@ -5250,17 +5266,17 @@ rec { "webpki-roots" = [ "hyper-rustls/webpki-roots" ]; "ws" = [ "client" "tokio-tungstenite" "kube-core/ws" "tokio/macros" ]; }; - resolvedDefaultFeatures = [ "__non_core" "base64" "bytes" "chrono" "client" "config" "either" "futures" "home" "http-body" "http-body-util" "hyper" "hyper-rustls" "hyper-timeout" "hyper-util" "jsonpatch" "jsonpath-rust" "pem" "ring" "rustls" "rustls-tls" "serde_yaml" "tokio" "tokio-util" "tower" "tower-http" "tracing" ]; + resolvedDefaultFeatures = [ "__non_core" "base64" "bytes" "client" "config" "either" "futures" "http-body" "http-body-util" "hyper" "hyper-rustls" "hyper-timeout" "hyper-util" "jiff" "jsonpatch" "jsonpath-rust" "pem" "ring" "rustls" "rustls-tls" "serde_yaml" "tokio" "tokio-util" "tower" "tower-http" "tracing" ]; }; "kube-core" = rec { crateName = "kube-core"; - version = "2.0.1"; + version = "3.0.1"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { - url = "https://github.com/stackabletech/kube-rs"; - rev = "26543e85dc7daaf82d8f7dbd902b26775798879e"; - sha256 = "1a7bcl0w1jg71jc4iml0vjp8dpzy71mhxl012grxcy2xp5i6xvgf"; + url = "https://github.com/kube-rs/kube-rs"; + rev = "fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5"; + sha256 = "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n"; }; libName = "kube_core"; authors = [ @@ -5269,12 +5285,6 @@ rec { "kazk " ]; dependencies = [ - { - name = "chrono"; - packageId = "chrono"; - usesDefaultFeatures = false; - features = [ "now" ]; - } { name = "derive_more"; packageId = "derive_more"; @@ -5288,6 +5298,12 @@ rec { name = "http"; packageId = "http"; } + { + name = "jiff"; + packageId = "jiff"; + usesDefaultFeatures = false; + features = [ "std" ]; + } { name = "json-patch"; packageId = "json-patch"; @@ -5341,13 +5357,13 @@ rec { }; "kube-derive" = rec { crateName = "kube-derive"; - version = "2.0.1"; + version = "3.0.1"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { - url = "https://github.com/stackabletech/kube-rs"; - rev = "26543e85dc7daaf82d8f7dbd902b26775798879e"; - sha256 = "1a7bcl0w1jg71jc4iml0vjp8dpzy71mhxl012grxcy2xp5i6xvgf"; + url = "https://github.com/kube-rs/kube-rs"; + rev = "fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5"; + sha256 = "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n"; }; procMacro = true; libName = "kube_derive"; @@ -5359,7 +5375,7 @@ rec { dependencies = [ { name = "darling"; - packageId = "darling 0.21.3"; + packageId = "darling"; } { name = "proc-macro2"; @@ -5395,13 +5411,13 @@ rec { }; "kube-runtime" = rec { crateName = "kube-runtime"; - version = "2.0.1"; + version = "3.0.1"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { - url = "https://github.com/stackabletech/kube-rs"; - rev = "26543e85dc7daaf82d8f7dbd902b26775798879e"; - sha256 = "1a7bcl0w1jg71jc4iml0vjp8dpzy71mhxl012grxcy2xp5i6xvgf"; + url = "https://github.com/kube-rs/kube-rs"; + rev = "fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5"; + sha256 = "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n"; }; libName = "kube_runtime"; authors = [ @@ -5440,7 +5456,7 @@ rec { } { name = "hashbrown"; - packageId = "hashbrown 0.15.5"; + packageId = "hashbrown"; } { name = "hostname"; @@ -7086,6 +7102,38 @@ rec { ]; }; + "portable-atomic" = rec { + crateName = "portable-atomic"; + version = "1.13.1"; + edition = "2018"; + sha256 = "0j8vlar3n5acyigq8q6f4wjx3k3s5yz0rlpqrv76j73gi5qr8fn3"; + libName = "portable_atomic"; + features = { + "critical-section" = [ "dep:critical-section" ]; + "default" = [ "fallback" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "require-cas" ]; + }; + "portable-atomic-util" = rec { + crateName = "portable-atomic-util"; + version = "0.2.5"; + edition = "2018"; + sha256 = "1xcm0ia8756k6hdgafx4g3lx3fw0hvz2zqswq7c2sy58gxnvk7bs"; + libName = "portable_atomic_util"; + dependencies = [ + { + name = "portable-atomic"; + packageId = "portable-atomic"; + usesDefaultFeatures = false; + features = [ "require-cas" ]; + } + ]; + features = { + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" ]; + }; "potential_utf" = rec { crateName = "potential_utf"; version = "0.1.3"; @@ -9557,8 +9605,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa"; - sha256 = "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd"; + rev = "2ba637e9d72e8b82adc6b5f370211ba9563c136d"; + sha256 = "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17"; }; libName = "stackable_certs"; authors = [ @@ -9579,7 +9627,7 @@ rec { name = "k8s-openapi"; packageId = "k8s-openapi"; usesDefaultFeatures = false; - features = [ "schemars" "v1_34" ]; + features = [ "schemars" "v1_35" ]; } { name = "kube"; @@ -9682,11 +9730,6 @@ rec { name = "regex"; packageId = "regex"; } - { - name = "schemars"; - packageId = "schemars"; - features = [ "url2" ]; - } { name = "serde"; packageId = "serde"; @@ -9745,24 +9788,19 @@ rec { }; "stackable-operator" = rec { crateName = "stackable-operator"; - version = "0.105.0"; + version = "0.106.1"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa"; - sha256 = "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd"; + rev = "2ba637e9d72e8b82adc6b5f370211ba9563c136d"; + sha256 = "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17"; }; libName = "stackable_operator"; authors = [ "Stackable GmbH " ]; dependencies = [ - { - name = "chrono"; - packageId = "chrono"; - usesDefaultFeatures = false; - } { name = "clap"; packageId = "clap"; @@ -9802,6 +9840,10 @@ rec { name = "indexmap"; packageId = "indexmap"; } + { + name = "jiff"; + packageId = "jiff"; + } { name = "json-patch"; packageId = "json-patch"; @@ -9810,7 +9852,7 @@ rec { name = "k8s-openapi"; packageId = "k8s-openapi"; usesDefaultFeatures = false; - features = [ "schemars" "v1_34" ]; + features = [ "schemars" "v1_35" ]; } { name = "kube"; @@ -9859,7 +9901,7 @@ rec { { name = "stackable-shared"; packageId = "stackable-shared"; - features = [ "chrono" "time" ]; + features = [ "time" "jiff" ]; } { name = "stackable-telemetry"; @@ -9924,8 +9966,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa"; - sha256 = "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd"; + rev = "2ba637e9d72e8b82adc6b5f370211ba9563c136d"; + sha256 = "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17"; }; procMacro = true; libName = "stackable_operator_derive"; @@ -9935,7 +9977,7 @@ rec { dependencies = [ { name = "darling"; - packageId = "darling 0.23.0"; + packageId = "darling"; } { name = "proc-macro2"; @@ -9954,13 +9996,13 @@ rec { }; "stackable-shared" = rec { crateName = "stackable-shared"; - version = "0.0.3"; + version = "0.1.0"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa"; - sha256 = "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd"; + rev = "2ba637e9d72e8b82adc6b5f370211ba9563c136d"; + sha256 = "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17"; }; libName = "stackable_shared"; authors = [ @@ -9968,16 +10010,15 @@ rec { ]; dependencies = [ { - name = "chrono"; - packageId = "chrono"; + name = "jiff"; + packageId = "jiff"; optional = true; - usesDefaultFeatures = false; } { name = "k8s-openapi"; packageId = "k8s-openapi"; usesDefaultFeatures = false; - features = [ "schemars" "v1_34" ]; + features = [ "schemars" "v1_35" ]; } { name = "kube"; @@ -10023,16 +10064,16 @@ rec { name = "k8s-openapi"; packageId = "k8s-openapi"; usesDefaultFeatures = false; - features = [ "schemars" "v1_34" ]; + features = [ "schemars" "v1_35" ]; } ]; features = { - "chrono" = [ "dep:chrono" ]; "default" = [ "time" ]; - "full" = [ "chrono" "time" ]; + "full" = [ "jiff" "time" ]; + "jiff" = [ "dep:jiff" ]; "time" = [ "dep:time" ]; }; - resolvedDefaultFeatures = [ "chrono" "default" "time" ]; + resolvedDefaultFeatures = [ "default" "jiff" "time" ]; }; "stackable-telemetry" = rec { crateName = "stackable-telemetry"; @@ -10041,8 +10082,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa"; - sha256 = "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd"; + rev = "2ba637e9d72e8b82adc6b5f370211ba9563c136d"; + sha256 = "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17"; }; libName = "stackable_telemetry"; authors = [ @@ -10151,8 +10192,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa"; - sha256 = "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd"; + rev = "2ba637e9d72e8b82adc6b5f370211ba9563c136d"; + sha256 = "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17"; }; libName = "stackable_versioned"; authors = [ @@ -10195,8 +10236,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa"; - sha256 = "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd"; + rev = "2ba637e9d72e8b82adc6b5f370211ba9563c136d"; + sha256 = "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17"; }; procMacro = true; libName = "stackable_versioned_macros"; @@ -10208,9 +10249,13 @@ rec { name = "convert_case"; packageId = "convert_case"; } + { + name = "convert_case_extras"; + packageId = "convert_case_extras"; + } { name = "darling"; - packageId = "darling 0.23.0"; + packageId = "darling"; } { name = "indoc"; @@ -10224,7 +10269,7 @@ rec { name = "k8s-openapi"; packageId = "k8s-openapi"; usesDefaultFeatures = false; - features = [ "schemars" "v1_34" ]; + features = [ "schemars" "v1_35" ]; } { name = "k8s-version"; @@ -10259,8 +10304,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "7bfcac5f6515c8b4c8cf8def2edfde5ed8621aaa"; - sha256 = "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd"; + rev = "2ba637e9d72e8b82adc6b5f370211ba9563c136d"; + sha256 = "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17"; }; libName = "stackable_webhook"; authors = [ @@ -10297,7 +10342,7 @@ rec { name = "k8s-openapi"; packageId = "k8s-openapi"; usesDefaultFeatures = false; - features = [ "schemars" "v1_34" ]; + features = [ "schemars" "v1_35" ]; } { name = "kube"; @@ -11663,7 +11708,7 @@ rec { "uuid" = [ "dep:uuid" ]; "validate-request" = [ "mime" ]; }; - resolvedDefaultFeatures = [ "auth" "base64" "default" "follow-redirect" "futures-util" "iri-string" "map-response-body" "mime" "tower" "trace" "tracing" "validate-request" ]; + resolvedDefaultFeatures = [ "auth" "base64" "default" "follow-redirect" "futures-util" "iri-string" "map-response-body" "mime" "tower" "trace" "tracing" "util" "validate-request" ]; }; "tower-layer" = rec { crateName = "tower-layer"; @@ -13570,7 +13615,7 @@ rec { "Win32_Web" = [ "Win32" ]; "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; }; - resolvedDefaultFeatures = [ "Win32" "Win32_Foundation" "Win32_Security" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Console" "Win32_System_Threading" "default" ]; + resolvedDefaultFeatures = [ "Win32" "Win32_Foundation" "Win32_Security" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Console" "Win32_System_Threading" "Win32_System_Time" "default" ]; }; "windows-sys 0.59.0" = rec { crateName = "windows-sys"; @@ -13829,7 +13874,7 @@ rec { "Win32_Web" = [ "Win32" ]; "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; }; - resolvedDefaultFeatures = [ "Wdk" "Wdk_Foundation" "Wdk_Storage" "Wdk_Storage_FileSystem" "Wdk_System" "Wdk_System_IO" "Win32" "Win32_Foundation" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Com" "Win32_System_Console" "Win32_System_IO" "Win32_System_Pipes" "Win32_System_SystemServices" "Win32_System_Threading" "Win32_System_WindowsProgramming" "Win32_UI" "Win32_UI_Shell" "default" ]; + resolvedDefaultFeatures = [ "Wdk" "Wdk_Foundation" "Wdk_Storage" "Wdk_Storage_FileSystem" "Wdk_System" "Wdk_System_IO" "Win32" "Win32_Foundation" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Console" "Win32_System_IO" "Win32_System_Pipes" "Win32_System_SystemServices" "Win32_System_Threading" "Win32_System_WindowsProgramming" "default" ]; }; "windows-sys 0.60.2" = rec { crateName = "windows-sys"; diff --git a/Cargo.toml b/Cargo.toml index 3071edd..111e482 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,7 +10,7 @@ edition = "2024" repository = "https://github.com/stackabletech/opensearch-operator" [workspace.dependencies] -stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", tag = "stackable-operator-0.105.0", features = ["telemetry", "versioned", "webhook"] } +stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", tag = "stackable-operator-0.106.1", features = ["telemetry", "versioned", "webhook"] } built = { version = "0.8.0", features = ["chrono", "git2"] } clap = "4.5" @@ -18,7 +18,6 @@ futures = { version = "0.3", features = ["compat"] } pretty_assertions = "1.4" regex = "1.11" rstest = "0.26" -schemars = { version = "1.0.0", features = ["url2"] } # same as in operator-rs serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" snafu = "0.8" @@ -27,5 +26,5 @@ tokio = { version = "1.47", features = ["full"] } tracing = "0.1" uuid = "1.18" -#[patch."https://github.com/stackabletech/operator-rs"] +[patch."https://github.com/stackabletech/operator-rs"] # stackable-operator = { git = "https://github.com/stackabletech//operator-rs.git", branch = "main" } diff --git a/crate-hashes.json b/crate-hashes.json index f14e4bd..6dd679f 100644 --- a/crate-hashes.json +++ b/crate-hashes.json @@ -1,17 +1,17 @@ { - "git+https://github.com/stackabletech/kube-rs?branch=2.0.1-fix-schema-hoisting#kube-client@2.0.1": "1a7bcl0w1jg71jc4iml0vjp8dpzy71mhxl012grxcy2xp5i6xvgf", - "git+https://github.com/stackabletech/kube-rs?branch=2.0.1-fix-schema-hoisting#kube-core@2.0.1": "1a7bcl0w1jg71jc4iml0vjp8dpzy71mhxl012grxcy2xp5i6xvgf", - "git+https://github.com/stackabletech/kube-rs?branch=2.0.1-fix-schema-hoisting#kube-derive@2.0.1": "1a7bcl0w1jg71jc4iml0vjp8dpzy71mhxl012grxcy2xp5i6xvgf", - "git+https://github.com/stackabletech/kube-rs?branch=2.0.1-fix-schema-hoisting#kube-runtime@2.0.1": "1a7bcl0w1jg71jc4iml0vjp8dpzy71mhxl012grxcy2xp5i6xvgf", - "git+https://github.com/stackabletech/kube-rs?branch=2.0.1-fix-schema-hoisting#kube@2.0.1": "1a7bcl0w1jg71jc4iml0vjp8dpzy71mhxl012grxcy2xp5i6xvgf", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#k8s-version@0.1.3": "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#stackable-certs@0.4.0": "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#stackable-operator-derive@0.3.1": "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#stackable-operator@0.105.0": "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#stackable-shared@0.0.3": "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#stackable-telemetry@0.6.1": "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#stackable-versioned-macros@0.8.3": "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#stackable-versioned@0.8.3": "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.105.0#stackable-webhook@0.9.0": "02z7c2kjhcwg153j74n52wwcr5x0z70hc21hlsrxyclmc8ps1lmd", + "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#kube-client@3.0.1": "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n", + "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#kube-core@3.0.1": "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n", + "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#kube-derive@3.0.1": "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n", + "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#kube-runtime@3.0.1": "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n", + "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#kube@3.0.1": "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#k8s-version@0.1.3": "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#stackable-certs@0.4.0": "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#stackable-operator-derive@0.3.1": "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#stackable-operator@0.106.1": "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#stackable-shared@0.1.0": "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#stackable-telemetry@0.6.1": "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#stackable-versioned-macros@0.8.3": "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#stackable-versioned@0.8.3": "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.1#stackable-webhook@0.9.0": "0yxp9d7x3xzlc7i67mjkizf587hvx8kwjly9p10x320hvp91qf17", "git+https://github.com/stackabletech/product-config.git?tag=0.8.0#product-config@0.8.0": "1dz70kapm2wdqcr7ndyjji0lhsl98bsq95gnb2lw487wf6yr7987" } \ No newline at end of file diff --git a/extra/crds.yaml b/extra/crds.yaml index 530972e..e0a8d60 100644 --- a/extra/crds.yaml +++ b/extra/crds.yaml @@ -294,11 +294,12 @@ spec: - ERROR - FATAL - NONE + - null nullable: true type: string type: object custom: - description: Log configuration provided in a ConfigMap + description: Custom log configuration provided in a ConfigMap properties: configMap: description: ConfigMap containing the log configuration files @@ -321,6 +322,7 @@ spec: - ERROR - FATAL - NONE + - null nullable: true type: string type: object @@ -340,6 +342,7 @@ spec: - ERROR - FATAL - NONE + - null nullable: true type: string type: object @@ -407,7 +410,7 @@ spec: Cores are specified either as a decimal point number or as milli units. For example:`1.5` will be 1.5 cores, also written as `1500m`. nullable: true - type: string + x-kubernetes-int-or-string: true min: description: |- The minimal amount of CPU cores that Pods need to run. @@ -415,7 +418,7 @@ spec: Cores are specified either as a decimal point number or as milli units. For example:`1.5` will be 1.5 cores, also written as `1500m`. nullable: true - type: string + x-kubernetes-int-or-string: true type: object memory: properties: @@ -428,7 +431,7 @@ spec: For example, the following represent roughly the same value: `128974848, 129e6, 129M, 128974848000m, 123Mi` nullable: true - type: string + x-kubernetes-int-or-string: true runtimeLimits: description: Additional options that can be specified. type: object @@ -442,7 +445,7 @@ spec: capacity: description: "Quantity is a fixed-point representation of a number. It provides convenient marshaling/unmarshaling in JSON and YAML, in addition to String() and AsInt64() accessors.\n\nThe serialization format is:\n\n``` ::= \n\n\t(Note that may be empty, from the \"\" case in .)\n\n ::= 0 | 1 | ... | 9 ::= | ::= | . | . | . ::= \"+\" | \"-\" ::= | ::= | | ::= Ki | Mi | Gi | Ti | Pi | Ei\n\n\t(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)\n\n ::= m | \"\" | k | M | G | T | P | E\n\n\t(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)\n\n ::= \"e\" | \"E\" ```\n\nNo matter which of the three exponent forms is used, no quantity may represent a number greater than 2^63-1 in magnitude, nor may it have more than 3 decimal places. Numbers larger or more precise will be capped or rounded up. (E.g.: 0.1m will rounded up to 1m.) This may be extended in the future if we require larger or smaller quantities.\n\nWhen a Quantity is parsed from a string, it will remember the type of suffix it had, and will use the same type again when it is serialized.\n\nBefore serializing, Quantity will be put in \"canonical form\". This means that Exponent/suffix will be adjusted up or down (with a corresponding increase or decrease in Mantissa) such that:\n\n- No precision is lost - No fractional digits will be emitted - The exponent (or suffix) is as large as possible.\n\nThe sign will be omitted unless the number is negative.\n\nExamples:\n\n- 1.5 will be serialized as \"1500m\" - 1.5Gi will be serialized as \"1536Mi\"\n\nNote that the quantity will NEVER be internally represented by a floating point number. That is the whole point of this exercise.\n\nNon-canonical values will still parse as long as they are well formed, but will be re-emitted in their canonical form. (So always use canonical form, or don't diff.)\n\nThis format is intended to make it difficult to use these numbers without writing some sort of special handling code in the hopes that that will cause implementors to also use a fixed point implementation." nullable: true - type: string + x-kubernetes-int-or-string: true selectors: description: A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects. nullable: true @@ -660,11 +663,12 @@ spec: - ERROR - FATAL - NONE + - null nullable: true type: string type: object custom: - description: Log configuration provided in a ConfigMap + description: Custom log configuration provided in a ConfigMap properties: configMap: description: ConfigMap containing the log configuration files @@ -687,6 +691,7 @@ spec: - ERROR - FATAL - NONE + - null nullable: true type: string type: object @@ -706,6 +711,7 @@ spec: - ERROR - FATAL - NONE + - null nullable: true type: string type: object @@ -773,7 +779,7 @@ spec: Cores are specified either as a decimal point number or as milli units. For example:`1.5` will be 1.5 cores, also written as `1500m`. nullable: true - type: string + x-kubernetes-int-or-string: true min: description: |- The minimal amount of CPU cores that Pods need to run. @@ -781,7 +787,7 @@ spec: Cores are specified either as a decimal point number or as milli units. For example:`1.5` will be 1.5 cores, also written as `1500m`. nullable: true - type: string + x-kubernetes-int-or-string: true type: object memory: properties: @@ -794,7 +800,7 @@ spec: For example, the following represent roughly the same value: `128974848, 129e6, 129M, 128974848000m, 123Mi` nullable: true - type: string + x-kubernetes-int-or-string: true runtimeLimits: description: Additional options that can be specified. type: object @@ -808,7 +814,7 @@ spec: capacity: description: "Quantity is a fixed-point representation of a number. It provides convenient marshaling/unmarshaling in JSON and YAML, in addition to String() and AsInt64() accessors.\n\nThe serialization format is:\n\n``` ::= \n\n\t(Note that may be empty, from the \"\" case in .)\n\n ::= 0 | 1 | ... | 9 ::= | ::= | . | . | . ::= \"+\" | \"-\" ::= | ::= | | ::= Ki | Mi | Gi | Ti | Pi | Ei\n\n\t(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)\n\n ::= m | \"\" | k | M | G | T | P | E\n\n\t(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)\n\n ::= \"e\" | \"E\" ```\n\nNo matter which of the three exponent forms is used, no quantity may represent a number greater than 2^63-1 in magnitude, nor may it have more than 3 decimal places. Numbers larger or more precise will be capped or rounded up. (E.g.: 0.1m will rounded up to 1m.) This may be extended in the future if we require larger or smaller quantities.\n\nWhen a Quantity is parsed from a string, it will remember the type of suffix it had, and will use the same type again when it is serialized.\n\nBefore serializing, Quantity will be put in \"canonical form\". This means that Exponent/suffix will be adjusted up or down (with a corresponding increase or decrease in Mantissa) such that:\n\n- No precision is lost - No fractional digits will be emitted - The exponent (or suffix) is as large as possible.\n\nThe sign will be omitted unless the number is negative.\n\nExamples:\n\n- 1.5 will be serialized as \"1500m\" - 1.5Gi will be serialized as \"1536Mi\"\n\nNote that the quantity will NEVER be internally represented by a floating point number. That is the whole point of this exercise.\n\nNon-canonical values will still parse as long as they are well formed, but will be re-emitted in their canonical form. (So always use canonical form, or don't diff.)\n\nThis format is intended to make it difficult to use these numbers without writing some sort of special handling code in the hopes that that will cause implementors to also use a fixed point implementation." nullable: true - type: string + x-kubernetes-int-or-string: true selectors: description: A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects. nullable: true diff --git a/rust/operator-binary/Cargo.toml b/rust/operator-binary/Cargo.toml index e93fbdc..dfff78d 100644 --- a/rust/operator-binary/Cargo.toml +++ b/rust/operator-binary/Cargo.toml @@ -15,7 +15,6 @@ stackable-operator.workspace = true clap.workspace = true futures.workspace = true regex.workspace = true -schemars.workspace = true serde.workspace = true serde_json.workspace = true snafu.workspace = true diff --git a/rust/operator-binary/src/framework/macros/attributed_string_type.rs b/rust/operator-binary/src/framework/macros/attributed_string_type.rs index ee32715..26085e9 100644 --- a/rust/operator-binary/src/framework/macros/attributed_string_type.rs +++ b/rust/operator-binary/src/framework/macros/attributed_string_type.rs @@ -169,13 +169,13 @@ macro_rules! attributed_string_type { } // The JsonSchema implementation requires `max_length`. - impl schemars::JsonSchema for $name { + impl stackable_operator::schemars::JsonSchema for $name { fn schema_name() -> std::borrow::Cow<'static, str> { std::stringify!($name).into() } - fn json_schema(_generator: &mut schemars::generate::SchemaGenerator) -> schemars::Schema { - schemars::json_schema!({ + fn json_schema(_generator: &mut stackable_operator::schemars::generate::SchemaGenerator) -> stackable_operator::schemars::Schema { + stackable_operator::schemars::json_schema!({ "type": "string", "minLength": $name::MIN_LENGTH, "maxLength": if $name::MAX_LENGTH != usize::MAX { @@ -489,8 +489,8 @@ pub const fn max(x: usize, y: usize) -> usize { mod tests { use std::str::FromStr; - use schemars::{JsonSchema, SchemaGenerator}; use serde_json::{Number, Value, json}; + use stackable_operator::schemars::{JsonSchema, SchemaGenerator}; use uuid::uuid; use super::{ErrorDiscriminants, Regex}; diff --git a/rust/operator-binary/src/framework/role_utils.rs b/rust/operator-binary/src/framework/role_utils.rs index dd5b464..b57659e 100644 --- a/rust/operator-binary/src/framework/role_utils.rs +++ b/rust/operator-binary/src/framework/role_utils.rs @@ -11,7 +11,7 @@ use stackable_operator::{ }, k8s_openapi::{DeepMerge, api::core::v1::PodTemplateSpec}, role_utils::{CommonConfiguration, Role, RoleGroup}, - schemars::JsonSchema, + schemars::{self, JsonSchema}, }; use super::{ @@ -227,13 +227,13 @@ mod tests { use std::collections::{BTreeMap, HashMap}; use rstest::*; - use schemars::JsonSchema; use serde::Serialize; use stackable_operator::{ config::{fragment::Fragment, merge::Merge}, k8s_openapi::api::core::v1::PodTemplateSpec, kube::api::ObjectMeta, role_utils::{CommonConfiguration, GenericRoleConfig, Role, RoleGroup}, + schemars::{self, JsonSchema}, }; use super::ResourceNames;