From 5953542a727683ccc77a1b75a61452c119ad0280 Mon Sep 17 00:00:00 2001 From: Orne Brocaar Date: Mon, 6 Feb 2023 12:23:44 +0000 Subject: [PATCH] Update dependencies. --- Cargo.lock | 1028 ++++++++++------- api/js/README.md | 46 +- api/rust/Cargo.lock | 302 +++-- api/rust/Cargo.toml | 2 +- backend/Cargo.toml | 2 +- chirpstack/Cargo.toml | 28 +- chirpstack/src/api/gateway.rs | 4 +- chirpstack/src/api/mod.rs | 8 +- chirpstack/src/codec/js/mod.rs | 2 +- chirpstack/src/downlink/classb.rs | 2 +- chirpstack/src/gateway/backend/mqtt.rs | 10 +- chirpstack/src/gpstime.rs | 46 +- chirpstack/src/integration/aws_sns.rs | 17 +- .../src/integration/azure_service_bus.rs | 19 +- chirpstack/src/integration/gcp_pub_sub.rs | 3 +- chirpstack/src/integration/influxdb.rs | 3 +- chirpstack/src/integration/kafka.rs | 14 +- chirpstack/src/integration/mydevices.rs | 3 +- chirpstack/src/monitoring/prometheus.rs | 12 +- chirpstack/src/storage/metrics.rs | 157 +-- chirpstack/src/storage/mod.rs | 2 +- lrwn/Cargo.toml | 2 +- 22 files changed, 926 insertions(+), 786 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d1c214d7..0a363d23 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,9 +4,9 @@ version = 3 [[package]] name = "aes" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfe0133578c0986e1fe3dfcd4af1cc5b2dd6c3dbf534d69916ce16a2701d40ba" +checksum = "433cfd6710c9986c576a25ca913c39d66a6474107b406f34f91d4a8923395241" dependencies = [ "cfg-if", "cipher", @@ -24,9 +24,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "0.7.19" +version = "0.7.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4f55bd91a0978cbfd91c457a164bab8b4001c833b7f323132c0a4e1922dd44e" +checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac" dependencies = [ "memchr", ] @@ -115,9 +115,9 @@ dependencies = [ [[package]] name = "async-channel" -version = "1.7.1" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e14485364214912d3b19cc3435dde4df66065127f05fa0d75c712f36f12c2f28" +checksum = "cf46fee83e5ccffc220104713af3292ff9bc7c64c7de289f66dae8e38d826833" dependencies = [ "concurrent-queue", "event-listener", @@ -126,23 +126,23 @@ dependencies = [ [[package]] name = "async-executor" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "871f9bb5e0a22eeb7e8cf16641feb87c9dc67032ccf8ff49e772eb9941d3a965" +checksum = "17adb73da160dfb475c183343c8cccd80721ea5a605d3eb57125f0a7b7a92d0b" dependencies = [ + "async-lock", "async-task", "concurrent-queue", "fastrand", "futures-lite", - "once_cell", "slab", ] [[package]] name = "async-global-executor" -version = "2.3.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0da5b41ee986eed3f524c380e6d64965aea573882a8907682ad100f7859305ca" +checksum = "f1b6f5d7df27bd294849f8eec66ecfc63d11814df7a4f5d74168a2394467b776" dependencies = [ "async-channel", "async-executor", @@ -166,31 +166,32 @@ dependencies = [ [[package]] name = "async-io" -version = "1.9.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83e21f3a490c72b3b0cf44962180e60045de2925d8dff97918f7ee43c8f637c7" +checksum = "8c374dda1ed3e7d8f0d9ba58715f924862c63eae6849c92d3a18e7fbde9e2794" dependencies = [ + "async-lock", "autocfg", "concurrent-queue", "futures-lite", "libc", "log", - "once_cell", "parking", "polling", "slab", "socket2", "waker-fn", - "winapi", + "windows-sys", ] [[package]] name = "async-lock" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e97a171d191782fba31bb902b14ad94e24a68145032b7eedf871ab0bc0d077b6" +checksum = "c8101efe8695a6c17e02911402145357e718ac92d3ff88ae8419e84b1707b685" dependencies = [ "event-listener", + "futures-lite", ] [[package]] @@ -204,20 +205,20 @@ dependencies = [ [[package]] name = "async-process" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02111fd8655a613c25069ea89fc8d9bb89331fa77486eb3bc059ee757cfa481c" +checksum = "6381ead98388605d0d9ff86371043b5aa922a3905824244de40dc263a14fcba4" dependencies = [ "async-io", + "async-lock", "autocfg", "blocking", "cfg-if", "event-listener", "futures-lite", "libc", - "once_cell", "signal-hook", - "winapi", + "windows-sys", ] [[package]] @@ -234,9 +235,9 @@ dependencies = [ [[package]] name = "async-recursion" -version = "1.0.0" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cda8f4bcc10624c4e85bc66b3f452cca98cfa5ca002dc83a16aad2367641bea" +checksum = "3b015a331cc64ebd1774ba119538573603427eaace0a1950c423ab971f903796" dependencies = [ "proc-macro2", "quote", @@ -299,9 +300,9 @@ checksum = "7a40729d2133846d9ed0ea60a8b9541bccddab49cd30f0715a1da672fe9a2524" [[package]] name = "async-trait" -version = "0.1.63" +version = "0.1.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eff18d764974428cf3a9328e23fc5c986f5fbed46e6cd4cdf42544df5d297ec1" +checksum = "1cd7fce9ba8c3c042128ce72d8b2ddbf3a05747efb67ea0313c635e10bda47a2" dependencies = [ "proc-macro2", "quote", @@ -310,9 +311,9 @@ dependencies = [ [[package]] name = "atomic-waker" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "065374052e7df7ee4047b1160cca5e1467a12351a40b3da123c870ba0b8eda2a" +checksum = "debc29dde2e69f9e47506b525f639ed42300fc014a3e007832592448fa8e4599" [[package]] name = "atty" @@ -320,7 +321,7 @@ version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" dependencies = [ - "hermit-abi", + "hermit-abi 0.1.19", "libc", "winapi", ] @@ -352,7 +353,7 @@ dependencies = [ "http", "hyper", "ring", - "time 0.3.14", + "time 0.3.17", "tokio", "tower", "tracing", @@ -485,7 +486,7 @@ dependencies = [ "percent-encoding", "regex", "ring", - "time 0.3.14", + "time 0.3.17", "tracing", ] @@ -588,7 +589,7 @@ dependencies = [ "itoa", "num-integer", "ryu", - "time 0.3.14", + "time 0.3.17", ] [[package]] @@ -618,9 +619,9 @@ dependencies = [ [[package]] name = "axum" -version = "0.5.16" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e3356844c4d6a6d6467b8da2cffb4a2820be256f50a3a386c9d152bab31043" +checksum = "e5694b64066a2459918d8074c2ce0d5a88f409431994c2356617c8ae0c4721fc" dependencies = [ "async-trait", "axum-core", @@ -636,9 +637,9 @@ dependencies = [ "mime", "percent-encoding", "pin-project-lite", + "rustversion", "serde", "sync_wrapper", - "tokio", "tower", "tower-http", "tower-layer", @@ -647,9 +648,9 @@ dependencies = [ [[package]] name = "axum-core" -version = "0.2.8" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9f0c0a60006f2a293d82d571f635042a72edf927539b7685bd62d361963839b" +checksum = "1cae3e661676ffbacb30f1a824089a8c9150e71017f7e1e38f2aa32009188d34" dependencies = [ "async-trait", "bytes", @@ -657,6 +658,7 @@ dependencies = [ "http", "http-body", "mime", + "rustversion", "tower-layer", "tower-service", ] @@ -681,15 +683,21 @@ dependencies = [ [[package]] name = "base64" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + +[[package]] +name = "base64" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a" [[package]] name = "base64ct" -version = "1.5.2" +version = "1.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea2b2456fd614d856680dcd9fcc660a51a820fa09daef2e49772b56a193c8474" +checksum = "b645a089122eccb6111b4f81cbc1a49f5900ac4666bb93ac027feaecf15607bf" [[package]] name = "basic-cookies" @@ -722,7 +730,7 @@ dependencies = [ "bitflags", "cexpr", "clang-sys", - "clap 3.2.22", + "clap 3.2.23", "env_logger", "lazy_static", "lazycell", @@ -777,16 +785,16 @@ dependencies = [ [[package]] name = "blocking" -version = "1.2.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6ccb65d468978a086b69884437ded69a90faab3bbe6e67f242173ea728acccc" +checksum = "3c67b173a56acffd6d2326fb7ab938ba0b00a71480e14902b2591c87bc5741e8" dependencies = [ "async-channel", + "async-lock", "async-task", "atomic-waker", "fastrand", "futures-lite", - "once_cell", ] [[package]] @@ -813,9 +821,9 @@ checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[package]] name = "bytes" -version = "1.2.1" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec8a7b6a70fde80372154c65702f00a0f56f3e1c36abbc6c440484be248856db" +checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" [[package]] name = "bytes-utils" @@ -827,12 +835,6 @@ dependencies = [ "either", ] -[[package]] -name = "cache-padded" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1db59621ec70f09c5e9b597b220c7a2b43611f4710dc03ceb8748637775692c" - [[package]] name = "castaway" version = "0.1.2" @@ -850,9 +852,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.73" +version = "1.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11" +checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" [[package]] name = "cexpr" @@ -881,12 +883,12 @@ dependencies = [ "aws-sdk-sns", "aws-types", "backend", - "base64", + "base64 0.21.0", "bigdecimal", "bytes", "chirpstack_api", "chrono", - "clap 4.0.8", + "clap 4.1.4", "diesel", "diesel_migrations", "futures", @@ -934,7 +936,7 @@ dependencies = [ "tokio-executor-trait", "tokio-reactor-trait", "tokio-stream", - "toml", + "toml 0.7.1", "tonic", "tonic-reflection", "tonic-web", @@ -967,16 +969,16 @@ dependencies = [ [[package]] name = "chrono" -version = "0.4.22" +version = "0.4.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfd4d1b31faaa3a89d7934dbded3111da0d2ef28e3ebccdb4f0179f5929d1ef1" +checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f" dependencies = [ "iana-time-zone", "js-sys", "num-integer", "num-traits", "serde", - "time 0.1.44", + "time 0.1.45", "wasm-bindgen", "winapi", ] @@ -1004,9 +1006,9 @@ dependencies = [ [[package]] name = "clap" -version = "3.2.22" +version = "3.2.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86447ad904c7fb335a790c9d7fe3d0d971dc523b8ccd1561a520de9a85302750" +checksum = "71655c45cb9845d3270c9d6df84ebe72b4dad3c2ba3f7023ad47c144e4e473a5" dependencies = [ "atty", "bitflags", @@ -1019,14 +1021,14 @@ dependencies = [ [[package]] name = "clap" -version = "4.0.8" +version = "4.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5840cd9093aabeabf7fd932754c435b7674520fc3ddc935c397837050f0f1e4b" +checksum = "f13b9c79b5d1dd500d20ef541215a6423c75829ef43117e1b4d17fd8af0b5d76" dependencies = [ - "atty", "bitflags", "clap_derive", - "clap_lex 0.3.0", + "clap_lex 0.3.1", + "is-terminal", "once_cell", "strsim", "termcolor", @@ -1034,9 +1036,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.0.8" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92289ffc6fb4a85d85c246ddb874c05a87a2e540fb6ad52f7ca07c8c1e1840b1" +checksum = "684a277d672e91966334af371f1a7b5833f9aa00b07c84e92fbce95e00208ce8" dependencies = [ "heck", "proc-macro-error", @@ -1056,9 +1058,9 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d4198f73e42b4936b35b5bb248d81d2b595ecb170da0bac7655c54eedfa8da8" +checksum = "783fe232adfca04f90f56201b26d79682d4cd2625e0bc7290b95123afe558ade" dependencies = [ "os_str_bytes", ] @@ -1083,6 +1085,16 @@ dependencies = [ "cc", ] +[[package]] +name = "codespan-reporting" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" +dependencies = [ + "termcolor", + "unicode-width", +] + [[package]] name = "combine" version = "4.6.6" @@ -1095,11 +1107,11 @@ dependencies = [ [[package]] name = "concurrent-queue" -version = "1.2.4" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af4780a44ab5696ea9e28294517f1fffb421a83a25af521333c838635509db9c" +checksum = "c278839b831783b70278b14df4d45e1beb1aad306c07bb796637de9a0e323e8e" dependencies = [ - "cache-padded", + "crossbeam-utils", ] [[package]] @@ -1151,12 +1163,11 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.11" +version = "0.8.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51887d4adc7b564537b15adcfb307936f8075dfcd5f00dde9a9f1d29383682bc" +checksum = "4fb766fa798726286dbbb842f174001dab8abc7b627a1dd86e0b7222a95d929f" dependencies = [ "cfg-if", - "once_cell", ] [[package]] @@ -1186,9 +1197,9 @@ dependencies = [ [[package]] name = "ctor" -version = "0.1.23" +version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdffe87e1d521a10f9696f833fe502293ea446d7f256c06128293a4119bdf4cb" +checksum = "6d2301688392eb071b0bf1a37be05c469d3cc4dbbd95df672fe28ab021e6a096" dependencies = [ "quote", "syn", @@ -1211,9 +1222,9 @@ dependencies = [ [[package]] name = "curl-sys" -version = "0.4.56+curl-7.83.1" +version = "0.4.59+curl-7.86.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6093e169dd4de29e468fa649fbae11cdcd5551c81fe5bf1b0677adad7ef3d26f" +checksum = "6cfce34829f448b08f55b7db6d0009e23e2e86a34e8c2b366269bf5799b4a407" dependencies = [ "cc", "libc", @@ -1225,6 +1236,50 @@ dependencies = [ "winapi", ] +[[package]] +name = "cxx" +version = "1.0.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "322296e2f2e5af4270b54df9e85a02ff037e271af20ba3e7fe1575515dc840b8" +dependencies = [ + "cc", + "cxxbridge-flags", + "cxxbridge-macro", + "link-cplusplus", +] + +[[package]] +name = "cxx-build" +version = "1.0.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "017a1385b05d631e7875b1f151c9f012d37b53491e2a87f65bff5c262b2111d8" +dependencies = [ + "cc", + "codespan-reporting", + "once_cell", + "proc-macro2", + "quote", + "scratch", + "syn", +] + +[[package]] +name = "cxxbridge-flags" +version = "1.0.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c26bbb078acf09bc1ecda02d4223f03bdd28bd4874edcb0379138efc499ce971" + +[[package]] +name = "cxxbridge-macro" +version = "1.0.88" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "357f40d1f06a24b60ae1fe122542c1fb05d28d32acb2aed064e84bc2ad1e252e" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "darling" version = "0.13.4" @@ -1280,9 +1335,9 @@ dependencies = [ [[package]] name = "diesel" -version = "2.0.2" +version = "2.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68c186a7418a2aac330bb76cde82f16c36b03a66fb91db32d20214311f9f6545" +checksum = "4391a22b19c916e50bec4d6140f29bdda3e3bb187223fe6e3ea0b6e4d1021c04" dependencies = [ "bigdecimal", "bitflags", @@ -1301,9 +1356,9 @@ dependencies = [ [[package]] name = "diesel_derives" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22a7ab9d7967e6a1a247ea38aedf88ab808b4ac0c159576bc71866ab8f9f9250" +checksum = "143b758c91dbc3fe1fdcb0dba5bd13276c6a66422f2ef5795b58488248a310aa" dependencies = [ "proc-macro-error", "proc-macro2", @@ -1330,9 +1385,9 @@ checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" [[package]] name = "digest" -version = "0.10.5" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adfbc57365a37acbd2ebf2b64d7e69bb766e2fea813521ed536f5d0520dcf86c" +checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" dependencies = [ "block-buffer", "crypto-common", @@ -1368,15 +1423,15 @@ checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" [[package]] name = "dtoa" -version = "1.0.3" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6053ff46b5639ceb91756a85a4c8914668393a03170efd79c8884a529d80656" +checksum = "c00704156a7de8df8da0911424e30c2049957b0a714542a44e05fe693dd85313" [[package]] name = "either" -version = "1.8.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797" +checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" [[package]] name = "ena" @@ -1398,9 +1453,9 @@ dependencies = [ [[package]] name = "env_logger" -version = "0.9.1" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c90bf5f19754d10198ccb95b70664fc925bd1fc090a0fd9a6ebc54acc8cd6272" +checksum = "a12e6657c4c97ebab115a42dcee77225f7f482cdd841cf7088c657a42e9e00e7" dependencies = [ "atty", "humantime", @@ -1409,6 +1464,27 @@ dependencies = [ "termcolor", ] +[[package]] +name = "errno" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1" +dependencies = [ + "errno-dragonfly", + "libc", + "winapi", +] + +[[package]] +name = "errno-dragonfly" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" +dependencies = [ + "cc", + "libc", +] + [[package]] name = "event-listener" version = "2.5.3" @@ -1483,9 +1559,9 @@ dependencies = [ [[package]] name = "futures" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f21eda599937fba36daeb58a22e8f5cee2d14c4a17b5b7739c7c8e5e3b8230c" +checksum = "13e2792b0ff0340399d58445b88fd9770e3489eff258a4cbc1523418f12abf84" dependencies = [ "futures-channel", "futures-core", @@ -1498,9 +1574,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30bdd20c28fadd505d0fd6712cdfcb0d4b5648baf45faef7f852afb2399bb050" +checksum = "2e5317663a9089767a1ec00a487df42e0ca174b61b4483213ac24448e4664df5" dependencies = [ "futures-core", "futures-sink", @@ -1508,15 +1584,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e5aa3de05362c3fb88de6531e6296e85cde7739cccad4b9dfeeb7f6ebce56bf" +checksum = "ec90ff4d0fe1f57d600049061dc6bb68ed03c7d2fbd697274c41805dcb3f8608" [[package]] name = "futures-executor" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ff63c23854bee61b6e9cd331d523909f238fc7636290b96826e9cfa5faa00ab" +checksum = "e8de0a35a6ab97ec8869e32a2473f4b1324459e14c29275d14b10cb1fd19b50e" dependencies = [ "futures-core", "futures-task", @@ -1525,9 +1601,9 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbf4d2a7a308fd4578637c0b17c7e1c7ba127b8f6ba00b29f717e9655d85eb68" +checksum = "bfb8371b6fb2aeb2d280374607aeabfc99d95c72edfe51692e42d3d7f0d08531" [[package]] name = "futures-lite" @@ -1546,9 +1622,9 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42cd15d1c7456c04dbdf7e88bcd69760d74f3a798d6444e16974b505b0e62f17" +checksum = "95a73af87da33b5acf53acfebdc339fe592ecf5357ac7c0a7734ab9d8c876a70" dependencies = [ "proc-macro2", "quote", @@ -1557,15 +1633,15 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b20ba5a92e727ba30e72834706623d94ac93a725410b6a6b6fbc1b07f7ba56" +checksum = "f310820bb3e8cfd46c80db4d7fb8353e15dfff853a127158425f31e0be6c8364" [[package]] name = "futures-task" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6508c467c73851293f390476d4491cf4d227dbabcd4170f3bb6044959b294f1" +checksum = "dcf79a1bf610b10f42aea489289c5a2c478a786509693b80cd39c44ccd936366" [[package]] name = "futures-timer" @@ -1575,9 +1651,9 @@ checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c" [[package]] name = "futures-util" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44fb6cb1be61cc1d2e43b262516aafcf63b241cffdb1d3fa115f91d9c7b09c90" +checksum = "9c1d6de3acfef38d2be4b1f543f553131788603495be83da675e180c8d6b7bd1" dependencies = [ "futures-channel", "futures-core", @@ -1593,22 +1669,22 @@ dependencies = [ [[package]] name = "gcp_auth" -version = "0.7.3" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891431a1b61be422262174db9a424dfb8142ee8f6bc0195a71d77e0fde9ed61b" +checksum = "89d39291d300fa58721578eefc8e7b462ef555452eebdbcc0ee260918aace3c9" dependencies = [ "async-trait", - "base64", + "base64 0.13.1", "dirs-next", "hyper", - "hyper-rustls 0.23.0", + "hyper-rustls 0.23.2", "ring", - "rustls 0.20.6", - "rustls-pemfile 1.0.1", + "rustls 0.20.8", + "rustls-pemfile 1.0.2", "serde", "serde_json", "thiserror", - "time 0.3.14", + "time 0.3.17", "tokio", "tracing", "tracing-futures", @@ -1628,18 +1704,18 @@ dependencies = [ [[package]] name = "geo-types" -version = "0.7.7" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8d77ceb80f375dc4cda113a3ae1b06a36ef623f8f035c03752ca6698f4ddfee" +checksum = "e26879b63ac36ca5492918dc16f8c1e604b0f70f884fffbd3533f89953ab1991" dependencies = [ "num-traits", ] [[package]] name = "geohash" -version = "0.12.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2531fb8e2edacf602fd1f2672da559dc1527509cf90940b7a0ebd06b998a004f" +checksum = "8a18b809b13fa4f1c9ccfd94179cc429021a3517856b5160422c3d810c1e8546" dependencies = [ "geo-types", "libm", @@ -1647,9 +1723,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.7" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6" +checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" dependencies = [ "cfg-if", "js-sys", @@ -1660,15 +1736,15 @@ dependencies = [ [[package]] name = "glob" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "gloo-timers" -version = "0.2.4" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fb7d06c1c8cc2a29bee7ec961009a0b2caa0793ee4900c2ffb348734ba1c8f9" +checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c" dependencies = [ "futures-channel", "futures-core", @@ -1678,9 +1754,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ca32592cf21ac7ccab1825cd87f6c9b3d9022c44d086172ed0966bec8af30be" +checksum = "5f9f29bc9dda355256b2916cf526ab02ce0aeaaaf2bad60d65ef3f12f11dd0f4" dependencies = [ "bytes", "fnv", @@ -1721,7 +1797,7 @@ version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f3e372db8e5c0d213e0cd0b9be18be2aca3d44cf2fe30a9d46a65581cd454584" dependencies = [ - "base64", + "base64 0.13.1", "bitflags", "bytes", "headers-core", @@ -1755,6 +1831,15 @@ dependencies = [ "libc", ] +[[package]] +name = "hermit-abi" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" +dependencies = [ + "libc", +] + [[package]] name = "hex" version = "0.4.3" @@ -1812,14 +1897,14 @@ checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" [[package]] name = "httpmock" -version = "0.6.6" +version = "0.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c159c4fc205e6c1a9b325cb7ec135d13b5f47188ce175dabb76ec847f331d9bd" +checksum = "c6b56b6265f15908780cbee987912c1e98dbca675361f748291605a8a3a1df09" dependencies = [ "assert-json-diff", "async-object-pool", "async-trait", - "base64", + "base64 0.13.1", "basic-cookies", "crossbeam-utils", "form_urlencoded", @@ -1897,13 +1982,13 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.23.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d87c48c02e0dc5e3b849a2041db3029fd066650f8f717c07bf8ed78ccb895cac" +checksum = "1788965e61b367cd03a62950836d5cd41560c3577d90e40e0819373194d1661c" dependencies = [ "http", "hyper", - "rustls 0.20.6", + "rustls 0.20.8", "rustls-native-certs 0.6.2", "tokio", "tokio-rustls 0.23.4", @@ -1936,17 +2021,28 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.50" +version = "0.1.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd911b35d940d2bd0bea0f9100068e5b97b51a1cbe13d13382f132e0365257a0" +checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765" dependencies = [ "android_system_properties", "core-foundation-sys", + "iana-time-zone-haiku", "js-sys", "wasm-bindgen", "winapi", ] +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca" +dependencies = [ + "cxx", + "cxx-build", +] + [[package]] name = "ident_case" version = "1.0.1" @@ -1976,9 +2072,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.9.1" +version = "1.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e" +checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" dependencies = [ "autocfg", "hashbrown", @@ -2004,10 +2100,32 @@ dependencies = [ ] [[package]] -name = "ipnet" -version = "2.5.0" +name = "io-lifetimes" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879d54834c8c76457ef4293a689b2a8c59b076067ad77b15efafbb05f92a592b" +checksum = "e7d6c6f8c91b4b9ed43484ad1a938e393caf35960fce7f82a040497207bd8e9e" +dependencies = [ + "libc", + "windows-sys", +] + +[[package]] +name = "ipnet" +version = "2.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30e22bd8629359895450b59ea7a776c850561b96a3b1d31321c1949d9e6c9146" + +[[package]] +name = "is-terminal" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28dfb6c8100ccc63462345b67d1bbc3679177c75ee4bf59bf29c8b1d110b8189" +dependencies = [ + "hermit-abi 0.2.6", + "io-lifetimes", + "rustix", + "windows-sys", +] [[package]] name = "isahc" @@ -2047,9 +2165,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.3" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8af84674fe1f223a982c933a0ee1086ac4d4052aa0fb8060c12c6ad838e754" +checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" [[package]] name = "js-sys" @@ -2062,11 +2180,11 @@ dependencies = [ [[package]] name = "jsonwebtoken" -version = "8.1.1" +version = "8.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aa4b4af834c6cfd35d8763d359661b90f2e45d8f750a0849156c7f4671af09c" +checksum = "09f4f04699947111ec1733e71778d763555737579e44b85844cae8e1940a1828" dependencies = [ - "base64", + "base64 0.13.1", "pem", "ring", "serde", @@ -2157,15 +2275,15 @@ checksum = "db13adb97ab515a3691f56e4dbab09283d0b86cb45abd991d8634a9d6f501760" [[package]] name = "libc" -version = "0.2.133" +version = "0.2.139" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0f80d65747a3e43d1596c7c5492d95d5edddaabd45a7fcdb02b95f644164966" +checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79" [[package]] name = "libloading" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efbc0f03f9a775e9f6aed295c6a1ba2253c5757a9e03d55c6caa46a681abcddd" +checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" dependencies = [ "cfg-if", "winapi", @@ -2173,9 +2291,9 @@ dependencies = [ [[package]] name = "libm" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "292a948cd991e376cf75541fe5b97a1081d713c618b4f1b9500f8844e49eb565" +checksum = "348108ab3fba42ec82ff6e9564fc4ca0247bdccdc68dd8af9764bbc79c3c8ffb" [[package]] name = "libnghttp2-sys" @@ -2199,6 +2317,21 @@ dependencies = [ "vcpkg", ] +[[package]] +name = "link-cplusplus" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5" +dependencies = [ + "cc", +] + +[[package]] +name = "linux-raw-sys" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4" + [[package]] name = "lock_api" version = "0.4.9" @@ -2235,15 +2368,15 @@ dependencies = [ [[package]] name = "matches" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f" +checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" [[package]] name = "matchit" -version = "0.5.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73cbba799671b762df5a175adf59ce145165747bb891505c43d09aefbbf38beb" +checksum = "b87248edafb776e59e6ee64a79086f65890d3510f2c656c000bf2a7e8a0aea40" [[package]] name = "memchr" @@ -2258,7 +2391,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c493c09323068c01e54c685f7da41a9ccf9219735c3766fbfd6099806ea08fbc" dependencies = [ "serde", - "toml", + "toml 0.5.11", ] [[package]] @@ -2296,14 +2429,14 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "mio" -version = "0.8.4" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57ee1c23c7c63b0c9250c339ffdc69255f110b298b901b9f6c82547b7b87caaf" +checksum = "e5d732bc30207a6423068df043e3d02e0735b155ad7ce1a6f76fe2baa5b158de" dependencies = [ "libc", "log", "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.36.1", + "windows-sys", ] [[package]] @@ -2332,9 +2465,9 @@ dependencies = [ [[package]] name = "native-tls" -version = "0.2.10" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd7e2f3618557f980e0b17e8856252eee3c97fa12c54dff0ca290fb6266ca4a9" +checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" dependencies = [ "lazy_static", "libc", @@ -2356,14 +2489,23 @@ checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54" [[package]] name = "nom" -version = "7.1.1" +version = "7.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" dependencies = [ "memchr", "minimal-lexical", ] +[[package]] +name = "nom8" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae01545c9c7fc4486ab7debaf2aad7003ac19431791868fb2e8066df97fad2f8" +dependencies = [ + "memchr", +] + [[package]] name = "nu-ansi-term" version = "0.46.0" @@ -2406,28 +2548,28 @@ dependencies = [ [[package]] name = "num_cpus" -version = "1.13.1" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1" +checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" dependencies = [ - "hermit-abi", + "hermit-abi 0.2.6", "libc", ] [[package]] name = "num_enum" -version = "0.5.7" +version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf5395665662ef45796a4ff5486c5d41d29e0c09640af4c5f17fd94ee2c119c9" +checksum = "8d829733185c1ca374f17e52b762f24f535ec625d2cc1f070e34c8a9068f341b" dependencies = [ "num_enum_derive", ] [[package]] name = "num_enum_derive" -version = "0.5.7" +version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b0498641e53dd6ac1a4f22547548caa6864cc4933784319cd1775271c5a46ce" +checksum = "2be1598bf1c313dcdd12092e3f1920f463462525a21b7b4e11b4168353d0123e" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -2435,22 +2577,13 @@ dependencies = [ "syn", ] -[[package]] -name = "num_threads" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44" -dependencies = [ - "libc", -] - [[package]] name = "oauth2" -version = "4.2.3" +version = "4.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d62c436394991641b970a92e23e8eeb4eb9bca74af4f5badc53bcd568daadbd" +checksum = "eeaf26a72311c087f8c5ba617c96fac67a5c04f430e716ac8d8ab2de62e23368" dependencies = [ - "base64", + "base64 0.13.1", "chrono", "getrandom", "http", @@ -2466,9 +2599,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.15.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e82dad04139b71a90c080c8463fe0dc7902db5192d939bd0950f074d014339e1" +checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66" [[package]] name = "openidconnect" @@ -2476,7 +2609,7 @@ version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a0f47b0f1499d08c4a8480c963d49c5ec77f4249c2b6869780979415f45809" dependencies = [ - "base64", + "base64 0.13.1", "chrono", "http", "itertools", @@ -2499,9 +2632,9 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.41" +version = "0.10.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "618febf65336490dfcf20b73f885f5651a0c89c64c2d4a8c3662585a70bf5bd0" +checksum = "b102428fd03bc5edf97f62620f7298614c45cedf287c271e7ed450bbaf83f2e1" dependencies = [ "bitflags", "cfg-if", @@ -2531,18 +2664,18 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-src" -version = "111.22.0+1.1.1q" +version = "111.24.0+1.1.1s" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f31f0d509d1c1ae9cada2f9539ff8f37933831fd5098879e482aa687d659853" +checksum = "3498f259dab01178c6228c6b00dcef0ed2a2d5e20d648c017861227773ea4abd" dependencies = [ "cc", ] [[package]] name = "openssl-sys" -version = "0.9.75" +version = "0.9.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5f9bd0c2710541a3cda73d6f9ac4f1b240de4ae261065d309dbe73d9dceb42f" +checksum = "23bbbf7854cd45b83958ebe919f0e8e516793727652e27fda10a8384cfc790b7" dependencies = [ "autocfg", "cc", @@ -2563,9 +2696,9 @@ dependencies = [ [[package]] name = "os_str_bytes" -version = "6.3.0" +version = "6.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ff7415e9ae3fff1225851df9e0d9e4e5479f947619774677a63572e55e80eff" +checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee" [[package]] name = "overload" @@ -2634,15 +2767,15 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.3" +version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09a279cbf25cb0757810394fbc1e359949b59e348145c643a939a525692e6929" +checksum = "ba1ef8814b5c993410bb3adfad7a5ed269563e4a2f90c41f5d85be7fb47133bf" dependencies = [ "cfg-if", "libc", "redox_syscall", "smallvec", - "windows-sys 0.36.1", + "windows-sys", ] [[package]] @@ -2658,19 +2791,19 @@ dependencies = [ [[package]] name = "pbjson" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f06d6c64fa91b40a9321e174ad4e9702038c90210f87b295b4f723c7ad2155a" +checksum = "048f9ac93c1eab514f9470c4bc8d97ca2a0a236b84f45cc19d69a59fc11467f6" dependencies = [ - "base64", + "base64 0.13.1", "serde", ] [[package]] name = "pbjson-build" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "780b05debc7ed9a64c4ba63309c39a329368aa54a6894686c3a91608a18f9bb2" +checksum = "bdbb7b706f2afc610f3853550cdbbf6372fd324824a087806bd4480ea4996e24" dependencies = [ "heck", "itertools", @@ -2680,9 +2813,9 @@ dependencies = [ [[package]] name = "pbjson-types" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2aa68b479d28fc76e96b1973cb307c177607bbd975e7cd9101605d56cf09f22d" +checksum = "4a88c8d87f99a4ac14325e7a4c24af190fca261956e3b82dd7ed67e77e6c7043" dependencies = [ "bytes", "chrono", @@ -2713,11 +2846,11 @@ checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" [[package]] name = "pem" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03c64931a1a212348ec4f3b4362585eca7159d0d09cbdf4a7f74f02173596fd4" +checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8" dependencies = [ - "base64", + "base64 0.13.1", ] [[package]] @@ -2728,9 +2861,9 @@ checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" [[package]] name = "pest" -version = "2.3.1" +version = "2.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb779fcf4bb850fbbb0edc96ff6cf34fd90c4b1a112ce042653280d9a7364048" +checksum = "4ab62d2fa33726dbe6321cc97ef96d8cde531e3eeaf858a058de53a8a6d40d8f" dependencies = [ "thiserror", "ucd-trie", @@ -2738,9 +2871,9 @@ dependencies = [ [[package]] name = "pest_derive" -version = "2.3.1" +version = "2.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "502b62a6d0245378b04ffe0a7fb4f4419a4815fce813bd8a0ec89a56e07d67b1" +checksum = "8bf026e2d0581559db66d837fe5242320f525d85c76283c61f4d51a1238d65ea" dependencies = [ "pest", "pest_generator", @@ -2748,9 +2881,9 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.3.1" +version = "2.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "451e629bf49b750254da26132f1a5a9d11fd8a95a3df51d15c4abd1ba154cb6c" +checksum = "2b27bd18aa01d91c8ed2b61ea23406a676b42d82609c6e2581fba42f0c15f17f" dependencies = [ "pest", "pest_meta", @@ -2761,13 +2894,13 @@ dependencies = [ [[package]] name = "pest_meta" -version = "2.3.1" +version = "2.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcec162c71c45e269dfc3fc2916eaeb97feab22993a21bcce4721d08cd7801a6" +checksum = "9f02b677c1859756359fc9983c2e56a0237f18624a3789528804406b7e915e5d" dependencies = [ "once_cell", "pest", - "sha1", + "sha2", ] [[package]] @@ -2841,29 +2974,29 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.25" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae" +checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160" [[package]] name = "polling" -version = "2.3.0" +version = "2.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "899b00b9c8ab553c743b3e11e87c5c7d423b2a2de229ba95b24a756344748011" +checksum = "22122d5ec4f9fe1b3916419b76be1e80bcb93f618d071d2edf841b137b2a2bd6" dependencies = [ "autocfg", "cfg-if", "libc", "log", "wepoll-ffi", - "winapi", + "windows-sys", ] [[package]] name = "ppv-lite86" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "pq-sys" @@ -2883,9 +3016,9 @@ checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" [[package]] name = "prettyplease" -version = "0.1.19" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a49e86d2c26a24059894a3afa13fd17d063419b05dfb83f06d9c3566060c3f5a" +checksum = "e97e3215779627f01ee256d2fad52f3d95e8e1c11e9fc6fd08f7cd455d5d5c78" dependencies = [ "proc-macro2", "syn", @@ -2893,13 +3026,12 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "1.2.1" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eda0fc3b0fb7c975631757e14d9049da17374063edb6ebbcbc54d880d4fe94e9" +checksum = "66618389e4ec1c7afe67d51a9bf34ff9236480f8d51e7489b7d5ab0303c13f34" dependencies = [ "once_cell", - "thiserror", - "toml", + "toml_edit 0.18.1", ] [[package]] @@ -2928,30 +3060,30 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.49" +version = "1.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57a8eca9f9c4ffde41714334dee777596264c7825420f521abc92b5b5deb63a5" +checksum = "6ef7d57beacfaf2d8aee5937dab7b7f28de3cb8b1828479bb5de2a7106f2bae2" dependencies = [ "unicode-ident", ] [[package]] name = "prometheus-client" -version = "0.18.0" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c473049631c233933d6286c88bbb7be30e62ec534cf99a9ae0079211f7fa603" +checksum = "5d6fa99d535dd930d1249e6c79cb3c2915f9172a540fe2b02a4c8f9ca954721e" dependencies = [ "dtoa", "itoa", "parking_lot", - "prometheus-client-derive-text-encode", + "prometheus-client-derive-encode", ] [[package]] -name = "prometheus-client-derive-text-encode" -version = "0.3.0" +name = "prometheus-client-derive-encode" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66a455fbcb954c1a7decf3c586e860fd7889cddf4b8e164be736dbac95a953cd" +checksum = "72b6a5217beb0ad503ee7fa752d451c905113d70721b937126158f3106a48cc1" dependencies = [ "proc-macro2", "quote", @@ -2970,9 +3102,9 @@ dependencies = [ [[package]] name = "prost-build" -version = "0.11.1" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f835c582e6bd972ba8347313300219fed5bfa52caf175298d860b61ff6069bb" +checksum = "a3f8ad728fb08fe212df3c05169e940fbb6d9d16a877ddde14644a983ba2012e" dependencies = [ "bytes", "heck", @@ -2981,9 +3113,11 @@ dependencies = [ "log", "multimap", "petgraph", + "prettyplease", "prost", "prost-types", "regex", + "syn", "tempfile", "which", ] @@ -3019,9 +3153,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quote" -version = "1.0.21" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179" +checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b" dependencies = [ "proc-macro2", ] @@ -3078,11 +3212,12 @@ dependencies = [ [[package]] name = "rdkafka" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1de127f294f2dba488ed46760b129d5ecbeabbd337ccbf3739cb29d50db2161c" +checksum = "bd7c5d6d17442bcb9f943aae96d67d98c6d36af60442dd5da62aaa7fcbb25c48" dependencies = [ - "futures", + "futures-channel", + "futures-util", "libc", "log", "rdkafka-sys", @@ -3095,9 +3230,9 @@ dependencies = [ [[package]] name = "rdkafka-sys" -version = "4.2.0+1.8.2" +version = "4.3.0+1.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e542c6863b04ce0fa0c5719bc6b7b348cf8dd21af1bb03c9db5f9805b2a6473" +checksum = "d222a401698c7f2010e3967353eae566d9934dcda49c29910da922414ab4e3f4" dependencies = [ "cmake", "libc", @@ -3156,9 +3291,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.6.0" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b" +checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" dependencies = [ "aho-corasick", "memchr", @@ -3167,15 +3302,15 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.6.27" +version = "0.6.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244" +checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" [[package]] name = "relative-path" -version = "1.7.2" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0df32d82cedd1499386877b062ebe8721f806de80b08d183c70184ef17dd1d42" +checksum = "d3bf6b372449361333ac1f498b7edae4dd5e70dccd7c0c2a7c7bce8f05ede648" [[package]] name = "remove_dir_all" @@ -3188,11 +3323,11 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.11.12" +version = "0.11.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "431949c384f4e2ae07605ccaa56d1d9d2ecdb5cadd4f9577ccfab29f2e5149fc" +checksum = "21eed90ec8570952d53b772ecf8f206aa1ec9a3d76b2521c56c42973f2d91ee9" dependencies = [ - "base64", + "base64 0.21.0", "bytes", "encoding_rs", "futures-core", @@ -3201,7 +3336,7 @@ dependencies = [ "http", "http-body", "hyper", - "hyper-rustls 0.23.0", + "hyper-rustls 0.23.2", "hyper-tls", "ipnet", "js-sys", @@ -3211,8 +3346,8 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "rustls 0.20.6", - "rustls-pemfile 1.0.1", + "rustls 0.20.8", + "rustls-pemfile 1.0.2", "serde", "serde_json", "serde_urlencoded", @@ -3275,9 +3410,9 @@ dependencies = [ [[package]] name = "rust-embed" -version = "6.4.1" +version = "6.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e26934cd67a1da1165efe61cba4047cc1b4a526019da609fcce13a1000afb5fa" +checksum = "283ffe2f866869428c92e0d61c2f35dfb4355293cdfdc48f49e895c15f1333d1" dependencies = [ "rust-embed-impl", "rust-embed-utils", @@ -3286,9 +3421,9 @@ dependencies = [ [[package]] name = "rust-embed-impl" -version = "6.3.0" +version = "6.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e35d7b402e273544cc08e0824aa3404333fab8a90ac43589d3d5b72f4b346e12" +checksum = "31ab23d42d71fb9be1b643fe6765d292c5e14d46912d13f3ae2815ca048ea04d" dependencies = [ "proc-macro2", "quote", @@ -3322,13 +3457,27 @@ dependencies = [ "semver", ] +[[package]] +name = "rustix" +version = "0.36.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4fdebc4b395b7fbb9ab11e462e20ed9051e7b16e42d24042c776eca0ac81b03" +dependencies = [ + "bitflags", + "errno", + "io-lifetimes", + "libc", + "linux-raw-sys", + "windows-sys", +] + [[package]] name = "rustls" version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "35edb675feee39aec9c99fa5ff985081995a06d594114ae14cbe797ad7b7a6d7" dependencies = [ - "base64", + "base64 0.13.1", "log", "ring", "sct 0.6.1", @@ -3337,9 +3486,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.20.6" +version = "0.20.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aab8ee6c7097ed6057f43c187a62418d0c05a4bd5f18b3571db50ee0f9ce033" +checksum = "fff78fc74d175294f4e83b28343315ffcfb114b156f0185e9741cb5570f50e2f" dependencies = [ "log", "ring", @@ -3354,7 +3503,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c6a18f8d10f71bce9bca6eaeb80429460e652f3bcf0381f0c5f8954abf7b3b8" dependencies = [ "log", - "rustls 0.20.6", + "rustls 0.20.8", "rustls-native-certs 0.6.2", "webpki 0.22.0", ] @@ -3378,7 +3527,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0167bac7a9f490495f3c33013e7722b53cb087ecbe082fb0c6387c96f634ea50" dependencies = [ "openssl-probe", - "rustls-pemfile 1.0.1", + "rustls-pemfile 1.0.2", "schannel", "security-framework", ] @@ -3389,29 +3538,29 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5eebeaeb360c87bfb72e84abdb3447159c0eaececf1bef2aecd65a8be949d1c9" dependencies = [ - "base64", + "base64 0.13.1", ] [[package]] name = "rustls-pemfile" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0864aeff53f8c05aa08d86e5ef839d3dfcf07aeba2db32f12db0ef716e87bd55" +checksum = "d194b56d58803a43635bdc398cd17e383d6f71f9182b9a192c127ca42494a59b" dependencies = [ - "base64", + "base64 0.21.0", ] [[package]] name = "rustversion" -version = "1.0.9" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97477e48b4cf8603ad5f7aaf897467cf42ab4218a38ef76fb14c2d6773a6d6a8" +checksum = "5583e89e108996506031660fe09baa5011b9dd0341b89029313006d1fb508d70" [[package]] name = "ryu" -version = "1.0.11" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09" +checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde" [[package]] name = "safemem" @@ -3430,12 +3579,11 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.20" +version = "0.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88d6731146462ea25d9244b2ed5fd1d716d25c52e4d54aa4fb0f3c4e9854dbe2" +checksum = "713cfb06c7059f3588fb8044c0fad1d09e3c01d225e25b9220dbfdcf16dbb1b3" dependencies = [ - "lazy_static", - "windows-sys 0.36.1", + "windows-sys", ] [[package]] @@ -3449,9 +3597,9 @@ dependencies = [ [[package]] name = "scoped-tls" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2" +checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" [[package]] name = "scopeguard" @@ -3459,6 +3607,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" +[[package]] +name = "scratch" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddccb15bcce173023b3fedd9436f882a0739b8dfb45e4f6b6002bee5929f61b2" + [[package]] name = "sct" version = "0.6.1" @@ -3481,9 +3635,9 @@ dependencies = [ [[package]] name = "security-framework" -version = "2.7.0" +version = "2.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bc1bb97804af6631813c55739f771071e0f2ed33ee20b68c86ec505d906356c" +checksum = "a332be01508d814fed64bf28f798a146d73792121129962fdf335bb3c49a4254" dependencies = [ "bitflags", "core-foundation", @@ -3494,9 +3648,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.6.1" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0160a13a177a45bfb43ce71c01580998474f556ad854dcbca936dd2841a5c556" +checksum = "31c9bb296072e961fcbd8853511dd39c2d8be2deb1e17c6860b1d30732b323b4" dependencies = [ "core-foundation-sys", "libc", @@ -3504,9 +3658,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.14" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e25dfac463d778e353db5be2449d1cce89bd6fd23c9f1ea21310ce6e5a1b29c4" +checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a" [[package]] name = "serde" @@ -3551,9 +3705,9 @@ dependencies = [ [[package]] name = "serde_path_to_error" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "184c643044780f7ceb59104cef98a5a6f12cb2288a7bc701ab93a362b49fd47d" +checksum = "26b04f22b563c91331a10074bda3dd5492e3cc39d56bd557e91c0af42b6c7341" dependencies = [ "serde", ] @@ -3577,6 +3731,15 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_spanned" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0efd8caf556a6cebd3b285caf480045fcc1ac04f6bd786b09a6f11af30c4fcf4" +dependencies = [ + "serde", +] + [[package]] name = "serde_urlencoded" version = "0.7.1" @@ -3699,9 +3862,9 @@ dependencies = [ [[package]] name = "similar" -version = "2.2.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62ac7f900db32bf3fd12e0117dd3dc4da74bc52ebaac97f39668446d89694803" +checksum = "420acb44afdae038210c99e69aae24109f32f15500aa708e81d46c9f29d55fcf" [[package]] name = "simple_asn1" @@ -3712,7 +3875,7 @@ dependencies = [ "num-bigint", "num-traits", "thiserror", - "time 0.3.14", + "time 0.3.17", ] [[package]] @@ -3743,9 +3906,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fd0db749597d91ff862fd1d55ea87f7855a744a8425a64695b6fca237d1dad1" +checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" [[package]] name = "socket2" @@ -3823,7 +3986,7 @@ dependencies = [ "cfg-if", "p12", "rustls-connector", - "rustls-pemfile 1.0.1", + "rustls-pemfile 1.0.2", ] [[package]] @@ -3853,33 +4016,33 @@ dependencies = [ [[package]] name = "termcolor" -version = "1.1.3" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755" +checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6" dependencies = [ "winapi-util", ] [[package]] name = "textwrap" -version = "0.15.1" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "949517c0cf1bf4ee812e2e07e08ab448e3ae0d23472aee8a06c985f0c8815b16" +checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d" [[package]] name = "thiserror" -version = "1.0.36" +version = "1.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a99cb8c4b9a8ef0e7907cd3b617cc8dc04d571c4e73c8ae403d80ac160bb122" +checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.36" +version = "1.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a891860d3c8d66fec8e73ddb3765f90082374dbaaa833407b904a94f1a7eb43" +checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" dependencies = [ "proc-macro2", "quote", @@ -3897,9 +4060,9 @@ dependencies = [ [[package]] name = "time" -version = "0.1.44" +version = "0.1.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" +checksum = "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a" dependencies = [ "libc", "wasi 0.10.0+wasi-snapshot-preview1", @@ -3908,22 +4071,30 @@ dependencies = [ [[package]] name = "time" -version = "0.3.14" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c3f9a28b618c3a6b9251b6908e9c99e04b9e5c02e6581ccbb67d59c34ef7f9b" +checksum = "a561bf4617eebd33bca6434b988f39ed798e527f51a1e797d0ee4f61c0a38376" dependencies = [ "itoa", - "libc", - "num_threads", "serde", + "time-core", "time-macros", ] [[package]] -name = "time-macros" -version = "0.2.4" +name = "time-core" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42657b1a6f4d817cda8e7a0ace261fe0cc946cf3a80314390b22cc61ae080792" +checksum = "2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd" + +[[package]] +name = "time-macros" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d967f99f534ca7e495c575c62638eebc2898a8c84c119b89e250477bc4ba16b2" +dependencies = [ + "time-core", +] [[package]] name = "tiny-keccak" @@ -3951,9 +4122,9 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.24.2" +version = "1.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a12a59981d9e3c38d216785b0c37399f6e415e8d0712047620f189371b0bb" +checksum = "c8e00990ebabbe4c14c08aca901caed183ecd5c09562a12c824bb53d3c3fd3af" dependencies = [ "autocfg", "bytes", @@ -3965,7 +4136,7 @@ dependencies = [ "signal-hook-registry", "socket2", "tokio-macros", - "windows-sys 0.42.0", + "windows-sys", ] [[package]] @@ -3991,9 +4162,9 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "1.8.0" +version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9724f9a975fb987ef7a3cd9be0350edcbe130698af5b8f7a631e23d42d052484" +checksum = "d266c00fde287f55d3f1c3e96c500c362a2b8c695076ec180f27918820bc6df8" dependencies = [ "proc-macro2", "quote", @@ -4041,16 +4212,16 @@ version = "0.23.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59" dependencies = [ - "rustls 0.20.6", + "rustls 0.20.8", "tokio", "webpki 0.22.0", ] [[package]] name = "tokio-stream" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6edf2d6bc038a43d31353570e27270603f4648d18f5ed10c0e179abe43255af" +checksum = "d660770404473ccd7bc9f8b28494a811bc18542b915c0855c51e8f419d5223ce" dependencies = [ "futures-core", "pin-project-lite", @@ -4085,23 +4256,74 @@ dependencies = [ [[package]] name = "toml" -version = "0.5.9" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7" +checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" dependencies = [ "serde", ] [[package]] -name = "tonic" -version = "0.8.1" +name = "toml" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11cd56bdb54ef93935a6a79dbd1d91f1ebd4c64150fd61654031fd6b8b775c91" +checksum = "772c1426ab886e7362aedf4abc9c0d1348a979517efedfc25862944d10137af0" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime 0.6.1", + "toml_edit 0.19.1", +] + +[[package]] +name = "toml_datetime" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4553f467ac8e3d374bc9a177a26801e5d0f9b211aa1673fb137a403afd1c9cf5" + +[[package]] +name = "toml_datetime" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ab8ed2edee10b50132aed5f331333428b011c99402b5a534154ed15746f9622" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56c59d8dd7d0dcbc6428bf7aa2f0e823e26e43b3c9aca15bbc9475d23e5fa12b" +dependencies = [ + "indexmap", + "nom8", + "toml_datetime 0.5.1", +] + +[[package]] +name = "toml_edit" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90a238ee2e6ede22fb95350acc78e21dc40da00bb66c0334bde83de4ed89424e" +dependencies = [ + "indexmap", + "nom8", + "serde", + "serde_spanned", + "toml_datetime 0.6.1", +] + +[[package]] +name = "tonic" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f219fad3b929bef19b1f86fbc0358d35daed8f2cac972037ac0dc10bbb8d5fb" dependencies = [ "async-stream", "async-trait", "axum", - "base64", + "base64 0.13.1", "bytes", "futures-core", "futures-util", @@ -4126,9 +4348,9 @@ dependencies = [ [[package]] name = "tonic-build" -version = "0.8.0" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fbcd2800e34e743b9ae795867d5f77b535d3a3be69fd731e39145719752df8c" +checksum = "5bf5e9b9c0f7e0a7c027dcfaba7b2c60816c7049171f679d99ee2ff65d0de8c4" dependencies = [ "prettyplease", "proc-macro2", @@ -4139,9 +4361,9 @@ dependencies = [ [[package]] name = "tonic-reflection" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0455f730d540a1484bffc3c55c94100b18a662597b982c2e9073f2c55c602616" +checksum = "67494bad4dda4c9bffae901dfe14e2b2c0f760adb4706dc10beeb81799f7f7b2" dependencies = [ "bytes", "prost", @@ -4149,7 +4371,6 @@ dependencies = [ "tokio", "tokio-stream", "tonic", - "tonic-build", ] [[package]] @@ -4158,7 +4379,7 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9213351ad53b0dcf1c9cf7c372a47533446b1114928a9177bedc6c551e14b7cf" dependencies = [ - "base64", + "base64 0.13.1", "bytes", "futures-core", "http", @@ -4198,7 +4419,7 @@ version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858" dependencies = [ - "base64", + "base64 0.13.1", "bitflags", "bytes", "futures-core", @@ -4215,9 +4436,9 @@ dependencies = [ [[package]] name = "tower-layer" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "343bc9466d3fe6b0f960ef45960509f84480bf4fd96f92901afe7ff3df9d3a62" +checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" [[package]] name = "tower-service" @@ -4227,9 +4448,9 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" [[package]] name = "tracing" -version = "0.1.36" +version = "0.1.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fce9567bd60a67d08a16488756721ba392f24f29006402881e43b19aac64307" +checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" dependencies = [ "cfg-if", "log", @@ -4240,9 +4461,9 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.22" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11c75893af559bc8e10716548bdef5cb2b983f8e637db9d0e15126b61b484ee2" +checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" dependencies = [ "proc-macro2", "quote", @@ -4296,9 +4517,9 @@ dependencies = [ [[package]] name = "try-lock" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" +checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" [[package]] name = "tungstenite" @@ -4306,7 +4527,7 @@ version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e27992fd6a8c29ee7eef28fc78349aa244134e10ad447ce3b9f0ac0ed0fa4ce0" dependencies = [ - "base64", + "base64 0.13.1", "byteorder", "bytes", "http", @@ -4330,9 +4551,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.15.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987" +checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" [[package]] name = "ucd-trie" @@ -4351,15 +4572,15 @@ dependencies = [ [[package]] name = "unicode-bidi" -version = "0.3.8" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992" +checksum = "d54675592c1dbefd78cbd98db9bacd89886e1ca50692a0692baefffdeb92dd58" [[package]] name = "unicode-ident" -version = "1.0.4" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcc811dc4066ac62f84f11307873c4850cb653bfa9b1719cee2bd2204a4bc5dd" +checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" [[package]] name = "unicode-normalization" @@ -4370,6 +4591,12 @@ dependencies = [ "tinyvec", ] +[[package]] +name = "unicode-width" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" + [[package]] name = "unicode-xid" version = "0.2.4" @@ -4378,9 +4605,9 @@ checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" [[package]] name = "unsafe-libyaml" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1e5fa573d8ac5f1a856f8d7be41d390ee973daf97c806b2c1a465e4e1406e68" +checksum = "bc7ed8ba44ca06be78ea1ad2c3682a43349126c8818054231ee6f4748012aed2" [[package]] name = "untrusted" @@ -4414,9 +4641,9 @@ checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" [[package]] name = "uuid" -version = "1.1.2" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd6469f4314d5f1ffec476e05f17cc9a78bc7a27a6a857842170bdf8d6f98d2f" +checksum = "1674845326ee10d37ca60470760d4288a6f80f304007d92e5c53bab78c9cfd79" dependencies = [ "getrandom", "serde", @@ -4634,9 +4861,9 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.22.5" +version = "0.22.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "368bfe657969fb01238bb756d351dcade285e0f6fcbd36dcb23359a5169975be" +checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" dependencies = [ "webpki 0.22.0", ] @@ -4652,9 +4879,9 @@ dependencies = [ [[package]] name = "which" -version = "4.3.0" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c831fbbee9e129a8cf93e7747a82da9d95ba8e16621cae60ec2cdc849bacb7b" +checksum = "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269" dependencies = [ "either", "libc", @@ -4692,19 +4919,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -[[package]] -name = "windows-sys" -version = "0.36.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2" -dependencies = [ - "windows_aarch64_msvc 0.36.1", - "windows_i686_gnu 0.36.1", - "windows_i686_msvc 0.36.1", - "windows_x86_64_gnu 0.36.1", - "windows_x86_64_msvc 0.36.1", -] - [[package]] name = "windows-sys" version = "0.42.0" @@ -4712,85 +4926,55 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" dependencies = [ "windows_aarch64_gnullvm", - "windows_aarch64_msvc 0.42.0", - "windows_i686_gnu 0.42.0", - "windows_i686_msvc 0.42.0", - "windows_x86_64_gnu 0.42.0", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_msvc", + "windows_x86_64_gnu", "windows_x86_64_gnullvm", - "windows_x86_64_msvc 0.42.0", + "windows_x86_64_msvc", ] [[package]] name = "windows_aarch64_gnullvm" -version = "0.42.0" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41d2aa71f6f0cbe00ae5167d90ef3cfe66527d6f613ca78ac8024c3ccab9a19e" +checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608" [[package]] name = "windows_aarch64_msvc" -version = "0.36.1" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd0f252f5a35cac83d6311b2e795981f5ee6e67eb1f9a7f64eb4500fbc4dcdb4" +checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7" [[package]] name = "windows_i686_gnu" -version = "0.36.1" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6" - -[[package]] -name = "windows_i686_gnu" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbeae19f6716841636c28d695375df17562ca208b2b7d0dc47635a50ae6c5de7" +checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640" [[package]] name = "windows_i686_msvc" -version = "0.36.1" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024" - -[[package]] -name = "windows_i686_msvc" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84c12f65daa39dd2babe6e442988fc329d6243fdce47d7d2d155b8d874862246" +checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605" [[package]] name = "windows_x86_64_gnu" -version = "0.36.1" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf7b1b21b5362cbc318f686150e5bcea75ecedc74dd157d874d754a2ca44b0ed" +checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45" [[package]] name = "windows_x86_64_gnullvm" -version = "0.42.0" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09d525d2ba30eeb3297665bd434a54297e4170c7f1a44cad4ef58095b4cd2028" +checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463" [[package]] name = "windows_x86_64_msvc" -version = "0.36.1" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f40009d85759725a34da6d89a94e63d7bdc50a862acf0dbc7c8e488f1edcb6f5" +checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd" [[package]] name = "winreg" @@ -4809,9 +4993,9 @@ checksum = "114ba2b24d2167ef6d67d7d04c8cc86522b87f490025f39f0303b7db5bf5e3d8" [[package]] name = "yasna" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "346d34a236c9d3e5f3b9b74563f238f955bbd05fa0b8b4efa53c130c43982f4c" +checksum = "aed2e7a52e3744ab4d0c05c20aa065258e84c49fd4226f5191b2ed29712710b4" [[package]] name = "zeroize" diff --git a/api/js/README.md b/api/js/README.md index 50868723..12297d0e 100644 --- a/api/js/README.md +++ b/api/js/README.md @@ -18,48 +18,6 @@ yarn add @chirpstack/chirpstack-api ## Usage -All messages, services, constants, etc. are auto-generated from the ChirpStack protobuf definitions. The result is that -this package structure matches that of the protobuf definitions. There is no ES6 index gathering all of the exports, so -full import/require paths should be used. The generated code is all callback based, but can be promisified. - -The protobuf definitions can be found here: https://github.com/brocaar/chirpstack-api/tree/master/protobuf - -The generated code all depends on the `grpc` package, and for most use cases you will probably need to make use of the -`grpc` package directly as well. This is seen in the example below. - -### Example - -This example shows how to log in to ChirpStack via the gRPC API and then create a gRPC metadata object containing the -JWT. This metadata could then be passed to any future requests that require authorization. - -```javascript -import * as grpc from '@grpc/grpc-js'; - -import * as internalService from '@chirpstack/chirpstack-api/as/external/api/internal_grpc_pb'; -import * as internalMessages from '@chirpstack/chirpstack-api/as/external/api/internal_pb'; - -// Create the client for the 'internal' service -const internalServiceClient = new internalService.InternalServiceClient( - 'localhost:8080', - grpc.credentials.createInsecure() -); - -// Create and build the login request message -const loginRequest = new internalMessages.LoginRequest(); - -loginRequest.setEmail('email'); -loginRequest.setPassword('password'); - -// Send the login request -internalServiceClient.login(loginRequest, (error, response) => { - // Build a gRPC metadata object, setting the authorization key to the JWT we - // got back from logging in. - const metadata = new grpc.Metadata(); - metadata.set('authorization', response.getJwt()); - - // This metadata can now be passed for requests to APIs that require authorization - // e.g. - // deviceServiceClient.create(createDeviceRequest, metadata, callback); -}); -``` +Please refer to [https://www.chirpstack.io/chirpstack/api/js-examples.html](https://www.chirpstack.io/chirpstack/api/js-examples.html) +for code examples. diff --git a/api/rust/Cargo.lock b/api/rust/Cargo.lock index 6aef6df4..df9c9169 100644 --- a/api/rust/Cargo.lock +++ b/api/rust/Cargo.lock @@ -4,9 +4,9 @@ version = 3 [[package]] name = "anyhow" -version = "1.0.65" +version = "1.0.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98161a4e3e2184da77bb14f02184cdd111e83bbbcc9979dfee3c44b9a85f5602" +checksum = "2cb2f989d18dd141ab8ae82f64d1a8cdd37e0840f73a406896cf5e99502fab61" [[package]] name = "async-stream" @@ -31,9 +31,9 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.57" +version = "0.1.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76464446b8bc32758d7e88ee1a804d9914cd9b1cb264c029899680b0be29826f" +checksum = "1cd7fce9ba8c3c042128ce72d8b2ddbf3a05747efb67ea0313c635e10bda47a2" dependencies = [ "proc-macro2", "quote", @@ -48,9 +48,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "axum" -version = "0.5.16" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e3356844c4d6a6d6467b8da2cffb4a2820be256f50a3a386c9d152bab31043" +checksum = "e5694b64066a2459918d8074c2ce0d5a88f409431994c2356617c8ae0c4721fc" dependencies = [ "async-trait", "axum-core", @@ -66,9 +66,9 @@ dependencies = [ "mime", "percent-encoding", "pin-project-lite", + "rustversion", "serde", "sync_wrapper", - "tokio", "tower", "tower-http", "tower-layer", @@ -77,9 +77,9 @@ dependencies = [ [[package]] name = "axum-core" -version = "0.2.8" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9f0c0a60006f2a293d82d571f635042a72edf927539b7685bd62d361963839b" +checksum = "1cae3e661676ffbacb30f1a824089a8c9150e71017f7e1e38f2aa32009188d34" dependencies = [ "async-trait", "bytes", @@ -87,15 +87,16 @@ dependencies = [ "http", "http-body", "mime", + "rustversion", "tower-layer", "tower-service", ] [[package]] name = "base64" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" [[package]] name = "bitflags" @@ -105,9 +106,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bytes" -version = "1.2.1" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec8a7b6a70fde80372154c65702f00a0f56f3e1c36abbc6c440484be248856db" +checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" [[package]] name = "cfg-if" @@ -134,9 +135,9 @@ dependencies = [ [[package]] name = "chrono" -version = "0.4.22" +version = "0.4.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfd4d1b31faaa3a89d7934dbded3111da0d2ef28e3ebccdb4f0179f5929d1ef1" +checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f" dependencies = [ "num-integer", "num-traits", @@ -144,9 +145,9 @@ dependencies = [ [[package]] name = "either" -version = "1.8.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797" +checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" [[package]] name = "fastrand" @@ -171,36 +172,36 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "futures-channel" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30bdd20c28fadd505d0fd6712cdfcb0d4b5648baf45faef7f852afb2399bb050" +checksum = "2e5317663a9089767a1ec00a487df42e0ca174b61b4483213ac24448e4664df5" dependencies = [ "futures-core", ] [[package]] name = "futures-core" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e5aa3de05362c3fb88de6531e6296e85cde7739cccad4b9dfeeb7f6ebce56bf" +checksum = "ec90ff4d0fe1f57d600049061dc6bb68ed03c7d2fbd697274c41805dcb3f8608" [[package]] name = "futures-sink" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b20ba5a92e727ba30e72834706623d94ac93a725410b6a6b6fbc1b07f7ba56" +checksum = "f310820bb3e8cfd46c80db4d7fb8353e15dfff853a127158425f31e0be6c8364" [[package]] name = "futures-task" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6508c467c73851293f390476d4491cf4d227dbabcd4170f3bb6044959b294f1" +checksum = "dcf79a1bf610b10f42aea489289c5a2c478a786509693b80cd39c44ccd936366" [[package]] name = "futures-util" -version = "0.3.24" +version = "0.3.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44fb6cb1be61cc1d2e43b262516aafcf63b241cffdb1d3fa115f91d9c7b09c90" +checksum = "9c1d6de3acfef38d2be4b1f543f553131788603495be83da675e180c8d6b7bd1" dependencies = [ "futures-core", "futures-task", @@ -210,9 +211,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.7" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6" +checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" dependencies = [ "cfg-if", "libc", @@ -221,9 +222,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ca32592cf21ac7ccab1825cd87f6c9b3d9022c44d086172ed0966bec8af30be" +checksum = "5f9f29bc9dda355256b2916cf526ab02ce0aeaaaf2bad60d65ef3f12f11dd0f4" dependencies = [ "bytes", "fnv", @@ -298,9 +299,9 @@ checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" [[package]] name = "hyper" -version = "0.14.20" +version = "0.14.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02c929dc5c39e335a03c405292728118860721b10190d98c2a0f0efd5baafbac" +checksum = "034711faac9d2166cb1baf1a2fb0b60b1f277f8492fd72176c17f3515e1abd3c" dependencies = [ "bytes", "futures-channel", @@ -334,9 +335,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.9.1" +version = "1.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e" +checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" dependencies = [ "autocfg", "hashbrown", @@ -362,9 +363,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.3" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8af84674fe1f223a982c933a0ee1086ac4d4052aa0fb8060c12c6ad838e754" +checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" [[package]] name = "lazy_static" @@ -374,9 +375,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.133" +version = "0.2.139" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0f80d65747a3e43d1596c7c5492d95d5edddaabd45a7fcdb02b95f644164966" +checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79" [[package]] name = "log" @@ -389,9 +390,9 @@ dependencies = [ [[package]] name = "matchit" -version = "0.5.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73cbba799671b762df5a175adf59ce145165747bb891505c43d09aefbbf38beb" +checksum = "b87248edafb776e59e6ee64a79086f65890d3510f2c656c000bf2a7e8a0aea40" [[package]] name = "memchr" @@ -407,14 +408,14 @@ checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" [[package]] name = "mio" -version = "0.8.4" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57ee1c23c7c63b0c9250c339ffdc69255f110b298b901b9f6c82547b7b87caaf" +checksum = "e5d732bc30207a6423068df043e3d02e0735b155ad7ce1a6f76fe2baa5b158de" dependencies = [ "libc", "log", "wasi", - "windows-sys 0.36.1", + "windows-sys", ] [[package]] @@ -444,15 +445,15 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.15.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e82dad04139b71a90c080c8463fe0dc7902db5192d939bd0950f074d014339e1" +checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66" [[package]] name = "pbjson" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f06d6c64fa91b40a9321e174ad4e9702038c90210f87b295b4f723c7ad2155a" +checksum = "048f9ac93c1eab514f9470c4bc8d97ca2a0a236b84f45cc19d69a59fc11467f6" dependencies = [ "base64", "serde", @@ -460,9 +461,9 @@ dependencies = [ [[package]] name = "pbjson-build" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "780b05debc7ed9a64c4ba63309c39a329368aa54a6894686c3a91608a18f9bb2" +checksum = "bdbb7b706f2afc610f3853550cdbbf6372fd324824a087806bd4480ea4996e24" dependencies = [ "heck", "itertools", @@ -472,9 +473,9 @@ dependencies = [ [[package]] name = "pbjson-types" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2aa68b479d28fc76e96b1973cb307c177607bbd975e7cd9101605d56cf09f22d" +checksum = "4a88c8d87f99a4ac14325e7a4c24af190fca261956e3b82dd7ed67e77e6c7043" dependencies = [ "bytes", "chrono", @@ -535,15 +536,15 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "ppv-lite86" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "prettyplease" -version = "0.1.19" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a49e86d2c26a24059894a3afa13fd17d063419b05dfb83f06d9c3566060c3f5a" +checksum = "e97e3215779627f01ee256d2fad52f3d95e8e1c11e9fc6fd08f7cd455d5d5c78" dependencies = [ "proc-macro2", "syn", @@ -551,18 +552,18 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.44" +version = "1.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bd7356a8122b6c4a24a82b278680c73357984ca2fc79a0f9fa6dea7dced7c58" +checksum = "6ef7d57beacfaf2d8aee5937dab7b7f28de3cb8b1828479bb5de2a7106f2bae2" dependencies = [ "unicode-ident", ] [[package]] name = "prost" -version = "0.11.0" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "399c3c31cdec40583bb68f0b18403400d01ec4289c383aa047560439952c4dd7" +checksum = "21dc42e00223fc37204bd4aa177e69420c604ca4a183209a8f9de30c6d934698" dependencies = [ "bytes", "prost-derive", @@ -570,9 +571,9 @@ dependencies = [ [[package]] name = "prost-build" -version = "0.11.1" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f835c582e6bd972ba8347313300219fed5bfa52caf175298d860b61ff6069bb" +checksum = "a3f8ad728fb08fe212df3c05169e940fbb6d9d16a877ddde14644a983ba2012e" dependencies = [ "bytes", "heck", @@ -581,18 +582,20 @@ dependencies = [ "log", "multimap", "petgraph", + "prettyplease", "prost", "prost-types", "regex", + "syn", "tempfile", "which", ] [[package]] name = "prost-derive" -version = "0.11.0" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7345d5f0e08c0536d7ac7229952590239e77abf0a0100a1b1d890add6ea96364" +checksum = "8bda8c0881ea9f722eb9629376db3d0b903b462477c1aafcb0566610ac28ac5d" dependencies = [ "anyhow", "itertools", @@ -603,9 +606,9 @@ dependencies = [ [[package]] name = "prost-types" -version = "0.11.1" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dfaa718ad76a44b3415e6c4d53b17c8f99160dcb3a99b10470fce8ad43f6e3e" +checksum = "a5e0526209433e96d83d750dd81a99118edbc55739e7e61a46764fd2ad537788" dependencies = [ "bytes", "prost", @@ -613,9 +616,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.21" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179" +checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b" dependencies = [ "proc-macro2", ] @@ -661,18 +664,18 @@ dependencies = [ [[package]] name = "regex" -version = "1.6.0" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b" +checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" dependencies = [ "regex-syntax", ] [[package]] name = "regex-syntax" -version = "0.6.27" +version = "0.6.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244" +checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" [[package]] name = "remove_dir_all" @@ -684,19 +687,25 @@ dependencies = [ ] [[package]] -name = "serde" -version = "1.0.145" +name = "rustversion" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "728eb6351430bccb993660dfffc5a72f91ccc1295abaa8ce19b27ebe4f75568b" +checksum = "5583e89e108996506031660fe09baa5011b9dd0341b89029313006d1fb508d70" + +[[package]] +name = "serde" +version = "1.0.152" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.145" +version = "1.0.152" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fa1584d3d1bcacd84c277a0dfe21f5b0f6accf4a23d04d4c6d61f1af522b4c" +checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e" dependencies = [ "proc-macro2", "quote", @@ -724,9 +733,9 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.100" +version = "1.0.107" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52205623b1b0f064a4e71182c3b18ae902267282930c6d5462c91b859668426e" +checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" dependencies = [ "proc-macro2", "quote", @@ -755,9 +764,9 @@ dependencies = [ [[package]] name = "tokio" -version = "1.24.2" +version = "1.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a12a59981d9e3c38d216785b0c37399f6e415e8d0712047620f189371b0bb" +checksum = "c8e00990ebabbe4c14c08aca901caed183ecd5c09562a12c824bb53d3c3fd3af" dependencies = [ "autocfg", "bytes", @@ -767,7 +776,7 @@ dependencies = [ "pin-project-lite", "socket2", "tokio-macros", - "windows-sys 0.42.0", + "windows-sys", ] [[package]] @@ -782,9 +791,9 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "1.8.0" +version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9724f9a975fb987ef7a3cd9be0350edcbe130698af5b8f7a631e23d42d052484" +checksum = "d266c00fde287f55d3f1c3e96c500c362a2b8c695076ec180f27918820bc6df8" dependencies = [ "proc-macro2", "quote", @@ -793,9 +802,9 @@ dependencies = [ [[package]] name = "tokio-stream" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6edf2d6bc038a43d31353570e27270603f4648d18f5ed10c0e179abe43255af" +checksum = "d660770404473ccd7bc9f8b28494a811bc18542b915c0855c51e8f419d5223ce" dependencies = [ "futures-core", "pin-project-lite", @@ -818,9 +827,9 @@ dependencies = [ [[package]] name = "tonic" -version = "0.8.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11cd56bdb54ef93935a6a79dbd1d91f1ebd4c64150fd61654031fd6b8b775c91" +checksum = "8f219fad3b929bef19b1f86fbc0358d35daed8f2cac972037ac0dc10bbb8d5fb" dependencies = [ "async-stream", "async-trait", @@ -850,9 +859,9 @@ dependencies = [ [[package]] name = "tonic-build" -version = "0.8.0" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fbcd2800e34e743b9ae795867d5f77b535d3a3be69fd731e39145719752df8c" +checksum = "5bf5e9b9c0f7e0a7c027dcfaba7b2c60816c7049171f679d99ee2ff65d0de8c4" dependencies = [ "prettyplease", "proc-macro2", @@ -883,9 +892,9 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c530c8675c1dbf98facee631536fa116b5fb6382d7dd6dc1b118d970eafe3ba" +checksum = "f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858" dependencies = [ "bitflags", "bytes", @@ -902,9 +911,9 @@ dependencies = [ [[package]] name = "tower-layer" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "343bc9466d3fe6b0f960ef45960509f84480bf4fd96f92901afe7ff3df9d3a62" +checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" [[package]] name = "tower-service" @@ -914,9 +923,9 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" [[package]] name = "tracing" -version = "0.1.36" +version = "0.1.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fce9567bd60a67d08a16488756721ba392f24f29006402881e43b19aac64307" +checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" dependencies = [ "cfg-if", "log", @@ -927,9 +936,9 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.22" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11c75893af559bc8e10716548bdef5cb2b983f8e637db9d0e15126b61b484ee2" +checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" dependencies = [ "proc-macro2", "quote", @@ -938,9 +947,9 @@ dependencies = [ [[package]] name = "tracing-core" -version = "0.1.29" +version = "0.1.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aeea4303076558a00714b823f9ad67d58a3bbda1df83d8827d21193156e22f7" +checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a" dependencies = [ "once_cell", ] @@ -957,15 +966,15 @@ dependencies = [ [[package]] name = "try-lock" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" +checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" [[package]] name = "unicode-ident" -version = "1.0.4" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcc811dc4066ac62f84f11307873c4850cb653bfa9b1719cee2bd2204a4bc5dd" +checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" [[package]] name = "want" @@ -985,9 +994,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "which" -version = "4.3.0" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c831fbbee9e129a8cf93e7747a82da9d95ba8e16621cae60ec2cdc849bacb7b" +checksum = "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269" dependencies = [ "either", "libc", @@ -1016,19 +1025,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -[[package]] -name = "windows-sys" -version = "0.36.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2" -dependencies = [ - "windows_aarch64_msvc 0.36.1", - "windows_i686_gnu 0.36.1", - "windows_i686_msvc 0.36.1", - "windows_x86_64_gnu 0.36.1", - "windows_x86_64_msvc 0.36.1", -] - [[package]] name = "windows-sys" version = "0.42.0" @@ -1036,82 +1032,52 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" dependencies = [ "windows_aarch64_gnullvm", - "windows_aarch64_msvc 0.42.0", - "windows_i686_gnu 0.42.0", - "windows_i686_msvc 0.42.0", - "windows_x86_64_gnu 0.42.0", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_msvc", + "windows_x86_64_gnu", "windows_x86_64_gnullvm", - "windows_x86_64_msvc 0.42.0", + "windows_x86_64_msvc", ] [[package]] name = "windows_aarch64_gnullvm" -version = "0.42.0" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41d2aa71f6f0cbe00ae5167d90ef3cfe66527d6f613ca78ac8024c3ccab9a19e" +checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608" [[package]] name = "windows_aarch64_msvc" -version = "0.36.1" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd0f252f5a35cac83d6311b2e795981f5ee6e67eb1f9a7f64eb4500fbc4dcdb4" +checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7" [[package]] name = "windows_i686_gnu" -version = "0.36.1" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6" - -[[package]] -name = "windows_i686_gnu" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbeae19f6716841636c28d695375df17562ca208b2b7d0dc47635a50ae6c5de7" +checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640" [[package]] name = "windows_i686_msvc" -version = "0.36.1" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024" - -[[package]] -name = "windows_i686_msvc" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84c12f65daa39dd2babe6e442988fc329d6243fdce47d7d2d155b8d874862246" +checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605" [[package]] name = "windows_x86_64_gnu" -version = "0.36.1" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf7b1b21b5362cbc318f686150e5bcea75ecedc74dd157d874d754a2ca44b0ed" +checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45" [[package]] name = "windows_x86_64_gnullvm" -version = "0.42.0" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09d525d2ba30eeb3297665bd434a54297e4170c7f1a44cad4ef58095b4cd2028" +checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463" [[package]] name = "windows_x86_64_msvc" -version = "0.36.1" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f40009d85759725a34da6d89a94e63d7bdc50a862acf0dbc7c8e488f1edcb6f5" +checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd" diff --git a/api/rust/Cargo.toml b/api/rust/Cargo.toml index 80c7d27e..5dc728b5 100644 --- a/api/rust/Cargo.toml +++ b/api/rust/Cargo.toml @@ -22,7 +22,7 @@ hex = "0.4" rand = "0.8" tonic = { version = "0.8", features = ["codegen", "prost"], default-features = false } -tokio = { version = "1.24", features = ["macros"], optional = true } +tokio = { version = "1.25", features = ["macros"], optional = true } serde = { version = "1.0" } [build-dependencies] diff --git a/backend/Cargo.toml b/backend/Cargo.toml index 93e96c92..ee738661 100644 --- a/backend/Cargo.toml +++ b/backend/Cargo.toml @@ -16,7 +16,7 @@ rand = "0.8" aes-kw = "0.2" reqwest = { version = "0.11", features = ["json", "rustls-tls"], default-features = false } chrono = { version = "0.4", features = ["serde"] } -tokio = { version = "1.24", features = ["macros" ] } +tokio = { version = "1.25", features = ["macros" ] } # Development and testing [dev-dependencies] diff --git a/chirpstack/Cargo.toml b/chirpstack/Cargo.toml index 284ac758..d28bf3ca 100644 --- a/chirpstack/Cargo.toml +++ b/chirpstack/Cargo.toml @@ -11,20 +11,20 @@ license = "MIT" [dependencies] # CLI interface -clap = { version = "4.0", features = ["derive"] } +clap = { version = "4.1", features = ["derive"] } # Configuration serde = { version = "1.0", features = ["derive", "rc"] } serde_yaml = "0.9" serde_json = "1.0" humantime-serde = "1.1" -toml = "0.5" +toml = "0.7" handlebars = "4.3" # Database validator = "0.16" -diesel = { version = "2.0.2", features = [ "chrono", "postgres", "r2d2", "uuid", "serde_json", "numeric" ] } -diesel_migrations = { version = "2.0.0" } +diesel = { version = "2.0", features = [ "chrono", "postgres", "r2d2", "uuid", "serde_json", "numeric" ] } +diesel_migrations = { version = "2.0" } r2d2 = "0.8" bigdecimal = "0.3" redis = { version = "0.22", features = ["r2d2", "cluster"] } @@ -49,18 +49,18 @@ aws-sdk-sns = "0.19" hmac = "0.12" sha2 = "0.10" urlencoding = "2.1" -geohash = "0.12" +geohash = "0.13" gcp_auth = "0.7" lapin = "2.1" tokio-executor-trait = "2.1" tokio-reactor-trait = "1.1" -rdkafka = { version = "0.28", features = ["cmake-build"]} +rdkafka = { version = "0.29", features = ["cmake-build"]} # gRPC and Protobuf tonic = "0.8" tonic-web = "0.5" -tonic-reflection = "0.5" -tokio = { version = "1.24", features = ["macros", "rt-multi-thread"] } +tonic-reflection = "0.6" +tokio = { version = "1.25", features = ["macros", "rt-multi-thread"] } tokio-stream = "0.1" prost-types = "0.11" prost = "0.11" @@ -84,7 +84,7 @@ anyhow = "1.0" # Authentication pbkdf2 = "0.11" rand_core = { version = "0.6", features = ["std"] } -jsonwebtoken = "8.1" +jsonwebtoken = "8.2" openssl = { version = "0.10", features = ["vendored"] } openidconnect = { version = "2.5", features = ["accept-rfc3339-timestamps"] } @@ -97,22 +97,22 @@ rquickjs = { version = "0.1", features = ["bindgen", "loader", "array-buffer", " # Misc lazy_static = "1.4" -uuid = { version = "1.1", features = [ "v4", "serde" ] } +uuid = { version = "1.3", features = [ "v4", "serde" ] } chrono = "0.4" async-trait = "0.1" aes = "0.8" rand = "0.8" -base64 = "0.13" +base64 = "0.21" async-recursion = "1.0" -regex = "1.6" +regex = "1.7" petgraph = "0.6" -prometheus-client = "0.18" +prometheus-client = "0.19" pin-project = "1.0" # Development and testing [dev-dependencies] httpmock = "0.6" -bytes = "1.2" +bytes = "1.4" # Debian packaging. [package.metadata.deb] diff --git a/chirpstack/src/api/gateway.rs b/chirpstack/src/api/gateway.rs index e11b2781..0aa446a4 100644 --- a/chirpstack/src/api/gateway.rs +++ b/chirpstack/src/api/gateway.rs @@ -824,8 +824,8 @@ pub mod test { name: "Received".to_string(), timestamps: vec![{ let ts = Local - .ymd(now.year(), now.month(), now.day()) - .and_hms(0, 0, 0); + .with_ymd_and_hms(now.year(), now.month(), now.day(), 0, 0, 0) + .unwrap(); //let ts: SystemTime = ts.into(); let ts: DateTime = ts.into(); ts.into() diff --git a/chirpstack/src/api/mod.rs b/chirpstack/src/api/mod.rs index 79f1ef9d..5b158647 100644 --- a/chirpstack/src/api/mod.rs +++ b/chirpstack/src/api/mod.rs @@ -10,7 +10,7 @@ use anyhow::Result; use futures::future::{self, Either, TryFutureExt}; use hyper::{service::make_service_fn, Server}; use pin_project::pin_project; -use prometheus_client::encoding::text::Encode; +use prometheus_client::encoding::EncodeLabelSet; use prometheus_client::metrics::counter::Counter; use prometheus_client::metrics::family::Family; use prometheus_client::metrics::histogram::Histogram; @@ -63,7 +63,7 @@ lazy_static! { prometheus::register( "api_requests_handled", "Number of API requests handled by service, method and status code", - Box::new(counter.clone()), + counter.clone(), ); counter }; @@ -79,7 +79,7 @@ lazy_static! { prometheus::register( "api_requests_handled_seconds", "Duration of API requests handled by service, method and status code", - Box::new(histogram.clone()), + histogram.clone(), ); histogram }; @@ -301,7 +301,7 @@ impl tower_http::trace::OnResponse for OnResponse { } } -#[derive(Clone, Hash, PartialEq, Eq, Encode)] +#[derive(Clone, Hash, PartialEq, Eq, EncodeLabelSet, Debug)] struct GrpcLabels { service: String, method: String, diff --git a/chirpstack/src/codec/js/mod.rs b/chirpstack/src/codec/js/mod.rs index 2431d741..eba4e9a3 100644 --- a/chirpstack/src/codec/js/mod.rs +++ b/chirpstack/src/codec/js/mod.rs @@ -202,7 +202,7 @@ pub mod test { #[tokio::test] pub async fn test_decode() { - let recv_time = Utc.ymd(2014, 7, 8).and_hms(9, 10, 11); + let recv_time = Utc.with_ymd_and_hms(2014, 7, 8, 9, 10, 11).unwrap(); let decoder = r#" function decodeUplink(input) { diff --git a/chirpstack/src/downlink/classb.rs b/chirpstack/src/downlink/classb.rs index 8f8169c9..6cf5a9c6 100644 --- a/chirpstack/src/downlink/classb.rs +++ b/chirpstack/src/downlink/classb.rs @@ -94,7 +94,7 @@ pub mod test { #[test] fn test_get_beacon_start_for_time() { - let gps_epoch_time: DateTime = Utc.ymd(1980, 1, 6).and_hms(0, 0, 0); + let gps_epoch_time: DateTime = Utc.with_ymd_and_hms(1980, 1, 6, 0, 0, 0).unwrap(); // For GPS epoch time let start_ts = get_beacon_start_for_time(gps_epoch_time); diff --git a/chirpstack/src/gateway/backend/mqtt.rs b/chirpstack/src/gateway/backend/mqtt.rs index 27cfdae6..b60db18f 100644 --- a/chirpstack/src/gateway/backend/mqtt.rs +++ b/chirpstack/src/gateway/backend/mqtt.rs @@ -11,7 +11,7 @@ use async_trait::async_trait; use futures::stream::StreamExt; use handlebars::Handlebars; use paho_mqtt as mqtt; -use prometheus_client::encoding::text::Encode; +use prometheus_client::encoding::EncodeLabelSet; use prometheus_client::metrics::counter::Counter; use prometheus_client::metrics::family::Family; use prost::Message; @@ -28,12 +28,12 @@ use crate::storage::{get_redis_conn, redis_key}; use crate::{downlink, uplink}; use lrwn::region::CommonName; -#[derive(Clone, Hash, PartialEq, Eq, Encode)] +#[derive(Clone, Hash, PartialEq, Eq, EncodeLabelSet, Debug)] struct EventLabels { event: String, } -#[derive(Clone, Hash, PartialEq, Eq, Encode)] +#[derive(Clone, Hash, PartialEq, Eq, EncodeLabelSet, Debug)] struct CommandLabels { command: String, } @@ -44,7 +44,7 @@ lazy_static! { prometheus::register( "gateway_backend_mqtt_events", "Number of events received", - Box::new(counter.clone()), + counter.clone(), ); counter }; @@ -53,7 +53,7 @@ lazy_static! { prometheus::register( "gateway_backend_mqtt_commands", "Number of commands sent", - Box::new(counter.clone()), + counter.clone(), ); counter }; diff --git a/chirpstack/src/gpstime.rs b/chirpstack/src/gpstime.rs index 9078d134..9acf6d61 100644 --- a/chirpstack/src/gpstime.rs +++ b/chirpstack/src/gpstime.rs @@ -1,78 +1,78 @@ use chrono::{DateTime, Duration, TimeZone, Utc}; lazy_static! { - static ref GPS_EPOCH_TIME: DateTime = Utc.ymd(1980, 1, 6).and_hms(0, 0, 0); + static ref GPS_EPOCH_TIME: DateTime = Utc.with_ymd_and_hms(1980, 1, 6, 0, 0, 0).unwrap(); static ref LEAP_SECONDS_TABLE: Vec<(DateTime, Duration)> = vec![ ( - Utc.ymd(1981, 6, 30).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1981, 6, 30, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(1982, 6, 30).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1982, 6, 30, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(1983, 6, 30).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1983, 6, 30, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(1985, 6, 30).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1985, 6, 30, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(1987, 12, 31).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1987, 12, 31, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(1989, 12, 31).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1989, 12, 31, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(1990, 12, 31).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1990, 12, 31, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(1992, 6, 30).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1992, 6, 30, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(1993, 6, 30).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1993, 6, 30, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(1994, 6, 30).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1994, 6, 30, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(1995, 12, 31).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1995, 12, 31, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(1997, 6, 30).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1997, 6, 30, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(1998, 12, 31).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(1998, 12, 31, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(2005, 12, 31).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(2005, 12, 31, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(2008, 12, 31).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(2008, 12, 31, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(2012, 6, 30).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(2012, 6, 30, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(2015, 6, 30).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(2015, 6, 30, 23, 59, 59).unwrap(), Duration::seconds(1) ), ( - Utc.ymd(2016, 12, 31).and_hms(23, 59, 59), + Utc.with_ymd_and_hms(2016, 12, 31, 23, 59, 59).unwrap(), Duration::seconds(1) ), ]; @@ -128,19 +128,19 @@ pub mod test { time_since_gps_epoch: Duration::zero(), }, Test { - time: Utc.ymd(2010, 1, 28).and_hms(16, 36, 24), + time: Utc.with_ymd_and_hms(2010, 1, 28, 16, 36, 24).unwrap(), time_since_gps_epoch: Duration::seconds(948731799), }, Test { - time: Utc.ymd(2025, 7, 14).and_hms(0, 0, 0), + time: Utc.with_ymd_and_hms(2025, 7, 14, 0, 0, 0).unwrap(), time_since_gps_epoch: Duration::seconds(1436486418), }, Test { - time: Utc.ymd(2012, 6, 30).and_hms(23, 59, 59), + time: Utc.with_ymd_and_hms(2012, 6, 30, 23, 59, 59).unwrap(), time_since_gps_epoch: Duration::seconds(1025136014), }, Test { - time: Utc.ymd(2012, 7, 1).and_hms(0, 0, 0), + time: Utc.with_ymd_and_hms(2012, 7, 1, 0, 0, 0).unwrap(), time_since_gps_epoch: Duration::seconds(1025136016), }, ]; diff --git a/chirpstack/src/integration/aws_sns.rs b/chirpstack/src/integration/aws_sns.rs index b41dc4b0..be2ba06f 100644 --- a/chirpstack/src/integration/aws_sns.rs +++ b/chirpstack/src/integration/aws_sns.rs @@ -7,6 +7,7 @@ use aws_types::credentials::future; use aws_types::credentials::ProvideCredentials; use aws_types::region::Region; use aws_types::{credentials, Credentials}; +use base64::{engine::general_purpose, Engine as _}; use prost::Message; use tracing::{info, trace}; @@ -129,7 +130,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("up", &di.application_id, &di.dev_eui, &pl) @@ -144,7 +145,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("join", &di.application_id, &di.dev_eui, &pl) @@ -159,7 +160,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("ack", &di.application_id, &di.dev_eui, &pl) @@ -174,7 +175,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("txack", &di.application_id, &di.dev_eui, &pl) @@ -189,7 +190,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("log", &di.application_id, &di.dev_eui, &pl) @@ -204,7 +205,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("status", &di.application_id, &di.dev_eui, &pl) @@ -219,7 +220,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("location", &di.application_id, &di.dev_eui, &pl) @@ -234,7 +235,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("integration", &di.application_id, &di.dev_eui, &pl) diff --git a/chirpstack/src/integration/azure_service_bus.rs b/chirpstack/src/integration/azure_service_bus.rs index ecdcc3e0..ee54dce9 100644 --- a/chirpstack/src/integration/azure_service_bus.rs +++ b/chirpstack/src/integration/azure_service_bus.rs @@ -3,6 +3,7 @@ use std::time::{Duration, SystemTime, UNIX_EPOCH}; use anyhow::Result; use async_trait::async_trait; +use base64::{engine::general_purpose, Engine as _}; use hmac::{Hmac, Mac}; use prost::Message; use reqwest::header::{HeaderMap, HeaderName, AUTHORIZATION, CONTENT_TYPE}; @@ -112,7 +113,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("up", &di.application_id, &di.dev_eui, &pl) @@ -127,7 +128,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("join", &di.application_id, &di.dev_eui, &pl) @@ -142,7 +143,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("ack", &di.application_id, &di.dev_eui, &pl) @@ -157,7 +158,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("txack", &di.application_id, &di.dev_eui, &pl) @@ -172,7 +173,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("log", &di.application_id, &di.dev_eui, &pl) @@ -187,7 +188,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("status", &di.application_id, &di.dev_eui, &pl) @@ -202,7 +203,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("location", &di.application_id, &di.dev_eui, &pl) @@ -217,7 +218,7 @@ impl IntegrationTrait for Integration { let di = pl.device_info.as_ref().unwrap(); let pl = match self.json { true => serde_json::to_string(&pl)?, - false => base64::encode(pl.encode_to_vec()), + false => general_purpose::STANDARD.encode(pl.encode_to_vec()), }; self.publish("integration", &di.application_id, &di.dev_eui, &pl) @@ -239,7 +240,7 @@ fn create_sas_token( let sig = format!("{}\n{}", encoded_url, exp); let mut m = HmacSha256::new_from_slice(key.as_bytes())?; m.update(sig.as_bytes()); - let result = base64::encode(m.finalize().into_bytes()); + let result = general_purpose::STANDARD.encode(m.finalize().into_bytes()); let hash = urlencoding::encode(&result); diff --git a/chirpstack/src/integration/gcp_pub_sub.rs b/chirpstack/src/integration/gcp_pub_sub.rs index 21b4c010..b9b289c8 100644 --- a/chirpstack/src/integration/gcp_pub_sub.rs +++ b/chirpstack/src/integration/gcp_pub_sub.rs @@ -3,6 +3,7 @@ use std::time::Duration; use anyhow::{Context, Result}; use async_trait::async_trait; +use base64::{engine::general_purpose, Engine as _}; use gcp_auth::{AuthenticationManager, CustomServiceAccount}; use prost::Message; use reqwest::header::{HeaderMap, AUTHORIZATION, CONTENT_TYPE}; @@ -77,7 +78,7 @@ impl Integration { let pl = PublishRequest { messages: vec![PubSubMessage { - data: base64::encode(pl), + data: general_purpose::STANDARD.encode(pl), attributes: PubSubMessageAttributes { event: event.to_string(), dev_eui: dev_eui.to_string(), diff --git a/chirpstack/src/integration/influxdb.rs b/chirpstack/src/integration/influxdb.rs index b23c0ea6..8adbb414 100644 --- a/chirpstack/src/integration/influxdb.rs +++ b/chirpstack/src/integration/influxdb.rs @@ -389,8 +389,7 @@ fn struct_values_to_location( ( "geohash".to_string(), Value::String( - geohash::encode(geohash::Coordinate { x: lon, y: lat }, 12) - .unwrap_or_default(), + geohash::encode(geohash::Coord { x: lon, y: lat }, 12).unwrap_or_default(), ), ), ] diff --git a/chirpstack/src/integration/kafka.rs b/chirpstack/src/integration/kafka.rs index db367b8d..85f38475 100644 --- a/chirpstack/src/integration/kafka.rs +++ b/chirpstack/src/integration/kafka.rs @@ -6,7 +6,7 @@ use async_trait::async_trait; use handlebars::Handlebars; use prost::Message; use rdkafka::config::ClientConfig; -use rdkafka::message::OwnedHeaders; +use rdkafka::message::{Header, OwnedHeaders}; use rdkafka::producer::{FutureProducer, FutureRecord}; use serde::Serialize; use tracing::{error, info}; @@ -77,7 +77,10 @@ impl<'a> Integration<'a> { .send( FutureRecord::to(&self.topic) .key(&event_key) - .headers(OwnedHeaders::new().add("event", event)) + .headers(OwnedHeaders::new().insert(Header { + key: "event", + value: Some(event), + })) .payload(b), Duration::from_secs(0), ) @@ -289,8 +292,11 @@ pub mod test { ); assert_eq!(serde_json::to_vec(&pl).unwrap(), msg.payload().unwrap()); assert_eq!( - ("event", "up".as_bytes()), - msg.headers().unwrap().get(0).unwrap() + Header { + key: "event", + value: Some("up".as_bytes()), + }, + msg.headers().unwrap().get(0) ); } } diff --git a/chirpstack/src/integration/mydevices.rs b/chirpstack/src/integration/mydevices.rs index c3d3f1e8..d6a9bbd7 100644 --- a/chirpstack/src/integration/mydevices.rs +++ b/chirpstack/src/integration/mydevices.rs @@ -3,6 +3,7 @@ use std::time::Duration; use anyhow::Result; use async_trait::async_trait; +use base64::{engine::general_purpose, Engine as _}; use reqwest::header::{HeaderMap, CONTENT_TYPE}; use reqwest::Client; use serde::Serialize; @@ -36,7 +37,7 @@ impl UplinkPayload { UplinkPayload { correlation_id: pl.deduplication_id.clone(), dev_eui: di.dev_eui.clone(), - data: base64::encode(&pl.data), + data: general_purpose::STANDARD.encode(&pl.data), f_cnt: pl.f_cnt, f_port: pl.f_port, rx_info: pl diff --git a/chirpstack/src/monitoring/prometheus.rs b/chirpstack/src/monitoring/prometheus.rs index f68ef2b8..e9838a7e 100644 --- a/chirpstack/src/monitoring/prometheus.rs +++ b/chirpstack/src/monitoring/prometheus.rs @@ -2,7 +2,7 @@ use std::sync::RwLock; use anyhow::Result; use prometheus_client::encoding::text::encode; -use prometheus_client::registry::Registry; +use prometheus_client::registry::{Metric, Registry}; lazy_static! { static ref REGISTRY: RwLock = RwLock::new(::default()); @@ -10,17 +10,13 @@ lazy_static! { pub fn encode_to_string() -> Result { let registry_r = REGISTRY.read().unwrap(); - let mut buffer = vec![]; + let mut buffer = String::new(); encode(&mut buffer, ®istry_r)?; - Ok(String::from_utf8(buffer)?) + Ok(buffer) } -pub fn register( - name: &str, - help: &str, - metric: Box, -) { +pub fn register(name: &str, help: &str, metric: impl Metric) { let mut registry_w = REGISTRY.write().unwrap(); registry_w.register(name, help, metric) } diff --git a/chirpstack/src/storage/metrics.rs b/chirpstack/src/storage/metrics.rs index c45bfb92..b408f250 100644 --- a/chirpstack/src/storage/metrics.rs +++ b/chirpstack/src/storage/metrics.rs @@ -111,14 +111,28 @@ async fn save_for_interval(a: Aggregation, name: &str, record: &Record) -> Resul let ts: DateTime = match a { Aggregation::HOUR => Local - .ymd(record.time.year(), record.time.month(), record.time.day()) - .and_hms(record.time.hour(), 0, 0), + .with_ymd_and_hms( + record.time.year(), + record.time.month(), + record.time.day(), + record.time.hour(), + 0, + 0, + ) + .unwrap(), Aggregation::DAY => Local - .ymd(record.time.year(), record.time.month(), record.time.day()) - .and_hms(0, 0, 0), + .with_ymd_and_hms( + record.time.year(), + record.time.month(), + record.time.day(), + 0, + 0, + 0, + ) + .unwrap(), Aggregation::MONTH => Local - .ymd(record.time.year(), record.time.month(), 1) - .and_hms(0, 0, 0), + .with_ymd_and_hms(record.time.year(), record.time.month(), 1, 0, 0, 0) + .unwrap(), }; move || -> Result<()> { @@ -188,13 +202,12 @@ pub async fn get( match a { Aggregation::HOUR => { - let mut ts = - Local - .ymd(start.year(), start.month(), start.day()) - .and_hms(start.hour(), 0, 0); + let mut ts = Local + .with_ymd_and_hms(start.year(), start.month(), start.day(), start.hour(), 0, 0) + .unwrap(); let end = Local - .ymd(end.year(), end.month(), end.day()) - .and_hms(end.hour(), 0, 0); + .with_ymd_and_hms(end.year(), end.month(), end.day(), end.hour(), 0, 0) + .unwrap(); while ts.le(&end) { timestamps.push(ts); @@ -204,11 +217,11 @@ pub async fn get( } Aggregation::DAY => { let mut ts = Local - .ymd(start.year(), start.month(), start.day()) - .and_hms(0, 0, 0); + .with_ymd_and_hms(start.year(), start.month(), start.day(), 0, 0, 0) + .unwrap(); let end = Local - .ymd(end.year(), end.month(), end.day()) - .and_hms(0, 0, 0); + .with_ymd_and_hms(end.year(), end.month(), end.day(), 0, 0, 0) + .unwrap(); while ts.le(&end) { timestamps.push(ts); @@ -218,26 +231,40 @@ pub async fn get( // In case of DST to non-DST transition, the ts is incremented with less // than 24h and we end up with the same day. Therefore we increment by two // days. - (ts + ChronoDuration::days(2)).date().and_hms(0, 0, 0) + (ts + ChronoDuration::days(2)) + .date() + .and_hms_opt(0, 0, 0) + .unwrap() } else { // Make sure that the timestamp stays at midnight in case of non-DST to DST // change. - (ts + ChronoDuration::days(1)).date().and_hms(0, 0, 0) + (ts + ChronoDuration::days(1)) + .date() + .and_hms_opt(0, 0, 0) + .unwrap() } }; } } Aggregation::MONTH => { - let mut ts = Local.ymd(start.year(), start.month(), 1).and_hms(0, 0, 0); - let end = Local.ymd(end.year(), end.month(), 1).and_hms(0, 0, 0); + let mut ts = Local + .with_ymd_and_hms(start.year(), start.month(), 1, 0, 0, 0) + .unwrap(); + let end = Local + .with_ymd_and_hms(end.year(), end.month(), 1, 0, 0, 0) + .unwrap(); while ts.le(&end) { timestamps.push(ts); keys.push(get_key(name, a, ts)); ts = if ts.month() == 12 { - Local.ymd(ts.year() + 1, 1, 1).and_hms(0, 0, 0) + Local + .with_ymd_and_hms(ts.year() + 1, 1, 1, 0, 0, 0) + .unwrap() } else { - Local.ymd(ts.year(), ts.month() + 1, 1).and_hms(0, 0, 0) + Local + .with_ymd_and_hms(ts.year(), ts.month() + 1, 1, 0, 0, 0) + .unwrap() }; } } @@ -308,7 +335,7 @@ pub mod test { let records = vec![ Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 1, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 1, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 1f64), ("bar".into(), 2f64)] .iter() @@ -316,7 +343,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 2, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 2, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 3f64), ("bar".into(), 4f64)] .iter() @@ -324,7 +351,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2018, 1, 1).and_hms(2, 1, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 2, 1, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 5f64), ("bar".into(), 6f64)] .iter() @@ -342,8 +369,8 @@ pub mod test { "test", Kind::ABSOLUTE, Aggregation::HOUR, - Local.ymd(2018, 1, 1).and_hms(1, 0, 0), - Local.ymd(2018, 1, 1).and_hms(2, 0, 0), + Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), + Local.with_ymd_and_hms(2018, 1, 1, 2, 0, 0).unwrap(), ) .await .unwrap(); @@ -351,7 +378,7 @@ pub mod test { assert_eq!( vec![ Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 4f64), ("bar".into(), 6f64)] .iter() @@ -359,7 +386,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2018, 1, 1).and_hms(2, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 2, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 5f64), ("bar".into(), 6f64)] .iter() @@ -377,7 +404,7 @@ pub mod test { let records = vec![ Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 1f64), ("bar".into(), 2f64)] .iter() @@ -385,7 +412,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2018, 1, 1).and_hms(2, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 2, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 3f64), ("bar".into(), 4f64)] .iter() @@ -393,7 +420,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2018, 1, 2).and_hms(1, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 2, 1, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 5f64), ("bar".into(), 6f64)] .iter() @@ -411,8 +438,8 @@ pub mod test { "test", Kind::ABSOLUTE, Aggregation::DAY, - Local.ymd(2018, 1, 1).and_hms(1, 0, 0), - Local.ymd(2018, 1, 2).and_hms(1, 0, 0), + Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), + Local.with_ymd_and_hms(2018, 1, 2, 1, 0, 0).unwrap(), ) .await .unwrap(); @@ -420,7 +447,7 @@ pub mod test { assert_eq!( vec![ Record { - time: Local.ymd(2018, 1, 1).and_hms(0, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 0, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 4f64), ("bar".into(), 6f64)] .iter() @@ -428,7 +455,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2018, 1, 2).and_hms(0, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 2, 0, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 5f64), ("bar".into(), 6f64)] .iter() @@ -446,7 +473,7 @@ pub mod test { let records = vec![ Record { - time: Local.ymd(2022, 10, 30).and_hms(1, 0, 0), + time: Local.with_ymd_and_hms(2022, 10, 30, 1, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 1f64), ("bar".into(), 2f64)] .iter() @@ -454,7 +481,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2022, 10, 30).and_hms(5, 0, 0), + time: Local.with_ymd_and_hms(2022, 10, 30, 5, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 3f64), ("bar".into(), 4f64)] .iter() @@ -462,7 +489,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2022, 10, 31).and_hms(1, 0, 0), + time: Local.with_ymd_and_hms(2022, 10, 31, 1, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 5f64), ("bar".into(), 6f64)] .iter() @@ -480,8 +507,8 @@ pub mod test { "test", Kind::ABSOLUTE, Aggregation::DAY, - Local.ymd(2022, 10, 30).and_hms(1, 0, 0), - Local.ymd(2022, 10, 31).and_hms(1, 0, 0), + Local.with_ymd_and_hms(2022, 10, 30, 1, 0, 0).unwrap(), + Local.with_ymd_and_hms(2022, 10, 31, 1, 0, 0).unwrap(), ) .await .unwrap(); @@ -489,7 +516,7 @@ pub mod test { assert_eq!( vec![ Record { - time: Local.ymd(2022, 10, 30).and_hms(0, 0, 0), + time: Local.with_ymd_and_hms(2022, 10, 30, 0, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 4f64), ("bar".into(), 6f64)] .iter() @@ -497,7 +524,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2022, 10, 31).and_hms(0, 0, 0), + time: Local.with_ymd_and_hms(2022, 10, 31, 0, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 5f64), ("bar".into(), 6f64)] .iter() @@ -515,7 +542,7 @@ pub mod test { let records = vec![ Record { - time: Local.ymd(2018, 1, 1).and_hms(0, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 0, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 1f64), ("bar".into(), 2f64)] .iter() @@ -523,7 +550,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2018, 1, 2).and_hms(0, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 2, 0, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 3f64), ("bar".into(), 4f64)] .iter() @@ -531,7 +558,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2018, 2, 1).and_hms(0, 0, 0), + time: Local.with_ymd_and_hms(2018, 2, 1, 0, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 5f64), ("bar".into(), 6f64)] .iter() @@ -549,8 +576,8 @@ pub mod test { "test", Kind::ABSOLUTE, Aggregation::MONTH, - Local.ymd(2018, 1, 1).and_hms(0, 0, 0), - Local.ymd(2018, 2, 1).and_hms(0, 0, 0), + Local.with_ymd_and_hms(2018, 1, 1, 0, 0, 0).unwrap(), + Local.with_ymd_and_hms(2018, 2, 1, 0, 0, 0).unwrap(), ) .await .unwrap(); @@ -558,7 +585,7 @@ pub mod test { assert_eq!( vec![ Record { - time: Local.ymd(2018, 1, 1).and_hms(0, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 0, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 4f64), ("bar".into(), 6f64)] .iter() @@ -566,7 +593,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2018, 2, 1).and_hms(0, 0, 0), + time: Local.with_ymd_and_hms(2018, 2, 1, 0, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 5f64), ("bar".into(), 6f64)] .iter() @@ -584,7 +611,7 @@ pub mod test { let records = vec![ Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 1, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 1, 0).unwrap(), kind: Kind::COUNTER, metrics: [("foo".into(), 1.0), ("bar".into(), 2.0)] .iter() @@ -592,7 +619,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 2, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 2, 0).unwrap(), kind: Kind::COUNTER, metrics: [("foo".into(), 2.0), ("bar".into(), 4.0)] .iter() @@ -610,15 +637,15 @@ pub mod test { "test", Kind::COUNTER, Aggregation::HOUR, - Local.ymd(2018, 1, 1).and_hms(1, 0, 0), - Local.ymd(2018, 1, 1).and_hms(1, 0, 0), + Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), + Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), ) .await .unwrap(); assert_eq!( vec![Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), kind: Kind::COUNTER, metrics: [("foo".into(), 2.0), ("bar".into(), 4.0)] .iter() @@ -635,7 +662,7 @@ pub mod test { let records = vec![ Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 1, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 1, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 1.0), ("bar".into(), 2.0)] .iter() @@ -643,7 +670,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 2, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 2, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 2.0), ("bar".into(), 4.0)] .iter() @@ -661,15 +688,15 @@ pub mod test { "test", Kind::ABSOLUTE, Aggregation::HOUR, - Local.ymd(2018, 1, 1).and_hms(1, 0, 0), - Local.ymd(2018, 1, 1).and_hms(1, 0, 0), + Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), + Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), ) .await .unwrap(); assert_eq!( vec![Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), kind: Kind::ABSOLUTE, metrics: [("foo".into(), 3.0), ("bar".into(), 6.0)] .iter() @@ -686,7 +713,7 @@ pub mod test { let records = vec![ Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 1, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 1, 0).unwrap(), kind: Kind::GAUGE, metrics: [("foo".into(), 1.0), ("bar".into(), 2.0)] .iter() @@ -694,7 +721,7 @@ pub mod test { .collect(), }, Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 2, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 2, 0).unwrap(), kind: Kind::GAUGE, metrics: [("foo".into(), 2.0), ("bar".into(), 4.0)] .iter() @@ -712,15 +739,15 @@ pub mod test { "test", Kind::GAUGE, Aggregation::HOUR, - Local.ymd(2018, 1, 1).and_hms(1, 0, 0), - Local.ymd(2018, 1, 1).and_hms(1, 0, 0), + Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), + Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), ) .await .unwrap(); assert_eq!( vec![Record { - time: Local.ymd(2018, 1, 1).and_hms(1, 0, 0), + time: Local.with_ymd_and_hms(2018, 1, 1, 1, 0, 0).unwrap(), kind: Kind::GAUGE, metrics: [("foo".into(), 1.5), ("bar".into(), 3.0)] .iter() diff --git a/chirpstack/src/storage/mod.rs b/chirpstack/src/storage/mod.rs index 8825bdd9..08f35997 100644 --- a/chirpstack/src/storage/mod.rs +++ b/chirpstack/src/storage/mod.rs @@ -187,7 +187,7 @@ pub async fn setup() -> Result<()> { info!("Setting up Redis client"); if conf.redis.cluster { let client = redis::cluster::ClusterClientBuilder::new(conf.redis.servers.clone()) - .open() + .build() .context("ClusterClient open")?; let pool: r2d2::Pool = r2d2::Pool::builder() .max_size(conf.redis.max_open_connections) diff --git a/lrwn/Cargo.toml b/lrwn/Cargo.toml index 42de5fb6..f031e075 100644 --- a/lrwn/Cargo.toml +++ b/lrwn/Cargo.toml @@ -13,7 +13,7 @@ hex = "0.4" cmac = "0.7" aes = "0.8" serde = { version = "1.0", features = ["derive"] } -diesel = { version = "2.0.2", features = [ "postgres" ] } +diesel = { version = "2.0", features = [ "postgres" ] } # Error handling thiserror = "1.0"