diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..d83ace7 --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,37 @@ +repos: + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.4.0 + hooks: + - id: check-added-large-files + args: ["--maxkb=16384"] + - id: check-json + - id: check-yaml + - id: check-toml + + - repo: https://github.com/pre-commit/mirrors-prettier + rev: v3.0.3 + hooks: + - id: prettier + exclude_types: [markdown] + + - repo: https://github.com/yelp/detect-secrets + rev: v1.4.0 + hooks: + - id: detect-secrets + args: + [ + "--baseline", + ".secrets.baseline", + "--exclude-secrets", + "30F9F3FED8F711ED8C35DBEF59E9F537", + "--exclude-secrets", + "30F9FFD4D8F711ED8C353BBCB8861211", + ] + exclude: package.lock.json + + - repo: https://github.com/doublify/pre-commit-rust + rev: v1.0 + hooks: + - id: fmt + - id: clippy + args: ["--all-targets", "--all-features", "--", "-D", "warnings"] diff --git a/.secrets.baseline b/.secrets.baseline new file mode 100644 index 0000000..4a30b70 --- /dev/null +++ b/.secrets.baseline @@ -0,0 +1,165 @@ +{ + "version": "1.4.0", + "plugins_used": [ + { + "name": "ArtifactoryDetector" + }, + { + "name": "AWSKeyDetector" + }, + { + "name": "AzureStorageKeyDetector" + }, + { + "name": "Base64HighEntropyString", + "limit": 4.5 + }, + { + "name": "BasicAuthDetector" + }, + { + "name": "CloudantDetector" + }, + { + "name": "DiscordBotTokenDetector" + }, + { + "name": "GitHubTokenDetector" + }, + { + "name": "HexHighEntropyString", + "limit": 3.0 + }, + { + "name": "IbmCloudIamDetector" + }, + { + "name": "IbmCosHmacDetector" + }, + { + "name": "JwtTokenDetector" + }, + { + "name": "KeywordDetector", + "keyword_exclude": "" + }, + { + "name": "MailchimpDetector" + }, + { + "name": "NpmDetector" + }, + { + "name": "PrivateKeyDetector" + }, + { + "name": "SendGridDetector" + }, + { + "name": "SlackDetector" + }, + { + "name": "SoftlayerDetector" + }, + { + "name": "SquareOAuthDetector" + }, + { + "name": "StripeDetector" + }, + { + "name": "TwilioKeyDetector" + } + ], + "filters_used": [ + { + "path": "detect_secrets.filters.allowlist.is_line_allowlisted" + }, + { + "path": "detect_secrets.filters.common.is_baseline_file", + "filename": ".secrets.baseline" + }, + { + "path": "detect_secrets.filters.common.is_ignored_due_to_verification_policies", + "min_level": 2 + }, + { + "path": "detect_secrets.filters.heuristic.is_indirect_reference" + }, + { + "path": "detect_secrets.filters.heuristic.is_likely_id_string" + }, + { + "path": "detect_secrets.filters.heuristic.is_lock_file" + }, + { + "path": "detect_secrets.filters.heuristic.is_not_alphanumeric_string" + }, + { + "path": "detect_secrets.filters.heuristic.is_potential_uuid" + }, + { + "path": "detect_secrets.filters.heuristic.is_prefixed_with_dollar_sign" + }, + { + "path": "detect_secrets.filters.heuristic.is_sequential_string" + }, + { + "path": "detect_secrets.filters.heuristic.is_swagger_file" + }, + { + "path": "detect_secrets.filters.heuristic.is_templated_secret" + } + ], + "results": { + "deploy\\config\\config_dev_umccr.toml": [ + { + "type": "Base64 High Entropy String", + "filename": "deploy\\config\\config_dev_umccr.toml", + "hashed_secret": "4ca61ece7abedb09290e9e6daa15230659765b8e", + "is_verified": false, + "line_number": 2, + "is_secret": false + } + ], + "htsget-elsa\\README.md": [ + { + "type": "Hex High Entropy String", + "filename": "htsget-elsa\\README.md", + "hashed_secret": "ce33ba2bb31ce4a8de738062df5a05f6d97e553c", + "is_verified": false, + "line_number": 38, + "is_secret": false + } + ], + "htsget-elsa\\src\\elsa_endpoint.rs": [ + { + "type": "Hex High Entropy String", + "filename": "htsget-elsa\\src\\elsa_endpoint.rs", + "hashed_secret": "110592ff705988151e3740108f804d6a33d6036c", + "is_verified": false, + "line_number": 472, + "is_secret": false + } + ], + "htsget-elsa\\src\\test_utils.rs": [ + { + "type": "Hex High Entropy String", + "filename": "htsget-elsa\\src\\test_utils.rs", + "hashed_secret": "110592ff705988151e3740108f804d6a33d6036c", + "is_verified": false, + "line_number": 22, + "is_secret": false + }, + { + "type": "Hex High Entropy String", + "filename": "htsget-elsa\\src\\test_utils.rs", + "hashed_secret": "ead4483226aaf3ec31cbd893ee5ac829d785505b", + "is_verified": false, + "line_number": 32, + "is_secret": false + } + ] + }, + "generated_at": "2023-09-06T04:42:23Z" +} diff --git a/Cargo.lock b/Cargo.lock index 281315e..58f7427 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,6 +2,15 @@ # It is not intended for manual editing. version = 3 +[[package]] +name = "addr2line" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +dependencies = [ + "gimli", +] + [[package]] name = "adler" version = "1.0.2" @@ -10,9 +19,9 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "aho-corasick" -version = "1.0.2" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41" +checksum = "0c378d78423fdad8089616f827526ee33c19f2fddbd5de1629152c9593ba4783" dependencies = [ "memchr", ] @@ -34,24 +43,23 @@ dependencies = [ [[package]] name = "anstream" -version = "0.3.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163" +checksum = "b1f58811cfac344940f1a400b6e6231ce35171f614f26439e80f8c1465c5cc0c" dependencies = [ "anstyle", "anstyle-parse", "anstyle-query", "anstyle-wincon", "colorchoice", - "is-terminal", "utf8parse", ] [[package]] name = "anstyle" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd" +checksum = "15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea" [[package]] name = "anstyle-parse" @@ -68,24 +76,24 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" dependencies = [ - "windows-sys 0.48.0", + "windows-sys", ] [[package]] name = "anstyle-wincon" -version = "1.0.1" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188" +checksum = "58f54d10c6dfa51283a066ceab3ec1ab78d13fae00aa49243a45e4571fb79dfd" dependencies = [ "anstyle", - "windows-sys 0.48.0", + "windows-sys", ] [[package]] name = "anyhow" -version = "1.0.71" +version = "1.0.75" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8" +checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" [[package]] name = "arrayvec" @@ -93,12 +101,6 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" -[[package]] -name = "ascii" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16" - [[package]] name = "assert-json-diff" version = "1.1.0" @@ -122,9 +124,9 @@ dependencies = [ [[package]] name = "async-channel" -version = "1.8.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf46fee83e5ccffc220104713af3292ff9bc7c64c7de289f66dae8e38d826833" +checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" dependencies = [ "concurrent-queue", "event-listener", @@ -133,9 +135,9 @@ dependencies = [ [[package]] name = "async-compression" -version = "0.3.15" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942c7cd7ae39e91bde4820d74132e9862e62c2f386c3aa90ccf55949f5bad63a" +checksum = "d495b6dc0184693324491a5ac05f559acc97bf937ab31d7a1c33dd0016be6d2b" dependencies = [ "flate2", "futures-core", @@ -163,18 +165,18 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.31", ] [[package]] name = "async-trait" -version = "0.1.68" +version = "0.1.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842" +checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.31", ] [[package]] @@ -200,9 +202,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "aws-config" -version = "0.54.1" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c3d1e2a1f1ab3ac6c4b884e37413eaa03eb9d901e4fc68ee8f5c1d49721680e" +checksum = "fc6b3804dca60326e07205179847f17a4fce45af3a1106939177ad41ac08a6de" dependencies = [ "aws-credential-types", "aws-http", @@ -216,6 +218,7 @@ dependencies = [ "aws-smithy-types", "aws-types", "bytes", + "fastrand 2.0.0", "hex", "http", "hyper", @@ -229,155 +232,144 @@ dependencies = [ [[package]] name = "aws-credential-types" -version = "0.54.1" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb0696a0523a39a19087747e4dafda0362dc867531e3d72a3f195564c84e5e08" +checksum = "70a66ac8ef5fa9cf01c2d999f39d16812e90ec1467bd382cbbb74ba23ea86201" dependencies = [ "aws-smithy-async", "aws-smithy-types", + "fastrand 2.0.0", "tokio", "tracing", "zeroize", ] [[package]] -name = "aws-endpoint" -version = "0.54.1" +name = "aws-http" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80a4f935ab6a1919fbfd6102a80c4fccd9ff5f47f94ba154074afe1051903261" +checksum = "3e626370f9ba806ae4c439e49675fd871f5767b093075cdf4fef16cac42ba900" dependencies = [ + "aws-credential-types", "aws-smithy-http", "aws-smithy-types", "aws-types", + "bytes", "http", - "regex", + "http-body", + "lazy_static", + "percent-encoding", + "pin-project-lite", "tracing", ] [[package]] -name = "aws-http" -version = "0.54.1" +name = "aws-runtime" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82976ca4e426ee9ca3ffcf919d9b2c8d14d0cd80d43cc02173737a8f07f28d4d" +checksum = "07ac5cf0ff19c1bca0cea7932e11b239d1025a45696a4f44f72ea86e2b8bdd07" dependencies = [ "aws-credential-types", + "aws-http", + "aws-sigv4", + "aws-smithy-async", + "aws-smithy-eventstream", "aws-smithy-http", + "aws-smithy-runtime-api", "aws-smithy-types", "aws-types", - "bytes", + "fastrand 2.0.0", "http", - "http-body", - "lazy_static", "percent-encoding", - "pin-project-lite", "tracing", + "uuid", ] [[package]] name = "aws-sdk-s3" -version = "0.24.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1533be023eeac69668eb718b1c48af7bd5e26305ed770553d2877ab1f7507b68" +checksum = "a531d010f9f556bf65eb3bcd8d24f1937600ab6940fede4d454cd9b1f031fb34" dependencies = [ "aws-credential-types", - "aws-endpoint", "aws-http", - "aws-sig-auth", + "aws-runtime", "aws-sigv4", "aws-smithy-async", "aws-smithy-checksums", "aws-smithy-client", "aws-smithy-eventstream", "aws-smithy-http", - "aws-smithy-http-tower", "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", "aws-smithy-types", "aws-smithy-xml", "aws-types", "bytes", - "bytes-utils", - "fastrand", "http", "http-body", "once_cell", "percent-encoding", "regex", "tokio-stream", - "tower", "tracing", "url", ] [[package]] name = "aws-sdk-sso" -version = "0.24.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca0119bacf0c42f587506769390983223ba834e605f049babe514b2bd646dbb2" +checksum = "903f888ff190e64f6f5c83fb0f8d54f9c20481f1dc26359bb8896f5d99908949" dependencies = [ "aws-credential-types", - "aws-endpoint", "aws-http", - "aws-sig-auth", + "aws-runtime", "aws-smithy-async", "aws-smithy-client", "aws-smithy-http", - "aws-smithy-http-tower", "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", "aws-smithy-types", "aws-types", "bytes", "http", "regex", "tokio-stream", - "tower", + "tracing", ] [[package]] name = "aws-sdk-sts" -version = "0.24.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "270b6a33969ebfcb193512fbd5e8ee5306888ad6c6d5d775cdbfb2d50d94de26" +checksum = "a47ad6bf01afc00423d781d464220bf69fb6a674ad6629cbbcb06d88cdc2be82" dependencies = [ "aws-credential-types", - "aws-endpoint", "aws-http", - "aws-sig-auth", + "aws-runtime", "aws-smithy-async", "aws-smithy-client", "aws-smithy-http", - "aws-smithy-http-tower", "aws-smithy-json", "aws-smithy-query", + "aws-smithy-runtime", + "aws-smithy-runtime-api", "aws-smithy-types", "aws-smithy-xml", "aws-types", - "bytes", "http", "regex", - "tower", - "tracing", -] - -[[package]] -name = "aws-sig-auth" -version = "0.54.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "660a02a98ab1af83bd8d714afbab2d502ba9b18c49e7e4cddd6bf8837ff778cb" -dependencies = [ - "aws-credential-types", - "aws-sigv4", - "aws-smithy-eventstream", - "aws-smithy-http", - "aws-types", - "http", "tracing", ] [[package]] name = "aws-sigv4" -version = "0.54.2" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86529e7b64d902efea8fff52c1b2529368d04f90305cf632729e3713f6b57dc0" +checksum = "b7b28f4910bb956b7ab320b62e98096402354eca976c587d1eeccd523d9bac03" dependencies = [ "aws-smithy-eventstream", "aws-smithy-http", @@ -396,9 +388,9 @@ dependencies = [ [[package]] name = "aws-smithy-async" -version = "0.54.4" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63c712a28a4f2f2139759235c08bf98aca99d4fdf1b13c78c5f95613df0a5db9" +checksum = "2cdb73f85528b9d19c23a496034ac53703955a59323d581c06aa27b4e4e247af" dependencies = [ "futures-util", "pin-project-lite", @@ -408,9 +400,9 @@ dependencies = [ [[package]] name = "aws-smithy-checksums" -version = "0.54.4" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3875fb4b28606a5368a048016a28c15707f2b21238d5b2e4a23198f590e92c4" +checksum = "afb15946af1b8d3beeff53ad991d9bff68ac22426b6d40372b958a75fa61eaed" dependencies = [ "aws-smithy-http", "aws-smithy-types", @@ -429,24 +421,23 @@ dependencies = [ [[package]] name = "aws-smithy-client" -version = "0.54.4" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "104ca17f56cde00a10207169697dfe9c6810db339d52fb352707e64875b30a44" +checksum = "c27b2756264c82f830a91cb4d2d485b2d19ad5bea476d9a966e03d27f27ba59a" dependencies = [ "aws-smithy-async", "aws-smithy-http", "aws-smithy-http-tower", - "aws-smithy-protocol-test", "aws-smithy-types", "bytes", - "fastrand", + "fastrand 2.0.0", "http", "http-body", "hyper", - "hyper-rustls 0.23.2", + "hyper-rustls", "lazy_static", "pin-project-lite", - "serde", + "rustls", "tokio", "tower", "tracing", @@ -454,9 +445,9 @@ dependencies = [ [[package]] name = "aws-smithy-eventstream" -version = "0.54.4" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac250d8c0e42af0097a6837ffc5a6fb9f8ba4107bb53124c047c91bc2a58878f" +checksum = "850233feab37b591b7377fd52063aa37af615687f5896807abe7f49bd4e1d25b" dependencies = [ "aws-smithy-types", "bytes", @@ -465,9 +456,9 @@ dependencies = [ [[package]] name = "aws-smithy-http" -version = "0.54.4" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "873f316f1833add0d3aa54ed1b0cd252ddd88c792a0cf839886400099971e844" +checksum = "54cdcf365d8eee60686885f750a34c190e513677db58bbc466c44c588abf4199" dependencies = [ "aws-smithy-eventstream", "aws-smithy-types", @@ -488,9 +479,9 @@ dependencies = [ [[package]] name = "aws-smithy-http-tower" -version = "0.54.4" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f38231d3f5dac9ac7976f44e12803add1385119ffca9e5f050d8e980733d164" +checksum = "822de399d0ce62829a69dfa8c5cd08efdbe61a7426b953e2268f8b8b52a607bd" dependencies = [ "aws-smithy-http", "aws-smithy-types", @@ -504,18 +495,18 @@ dependencies = [ [[package]] name = "aws-smithy-json" -version = "0.54.4" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bd83ff2b79e9f729746fcc8ad798676b68fe6ea72986571569a5306a277a182" +checksum = "4fb1e7ab8fa7ad10c193af7ae56d2420989e9f4758bf03601a342573333ea34f" dependencies = [ "aws-smithy-types", ] [[package]] name = "aws-smithy-protocol-test" -version = "0.54.4" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4d1c9bcb35ce11055ec128dab2c66a7ed47e2dfff99883e32c21a1ab6d6bee6" +checksum = "30600c65e5a9bedccff93c75872731ddc8a38dafbf95a18ba752227ab04f8574" dependencies = [ "assert-json-diff 1.1.0", "http", @@ -528,32 +519,72 @@ dependencies = [ [[package]] name = "aws-smithy-query" -version = "0.54.4" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2f0445dafe9d2cd50b44339ae3c3ed46549aad8ac696c52ad660b3e7ae8682b" +checksum = "28556a3902091c1f768a34f6c998028921bdab8d47d92586f363f14a4a32d047" dependencies = [ "aws-smithy-types", "urlencoding", ] +[[package]] +name = "aws-smithy-runtime" +version = "0.56.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "745e096b3553e7e0f40622aa04971ce52765af82bebdeeac53aa6fc82fe801e6" +dependencies = [ + "aws-smithy-async", + "aws-smithy-client", + "aws-smithy-http", + "aws-smithy-protocol-test", + "aws-smithy-runtime-api", + "aws-smithy-types", + "bytes", + "fastrand 2.0.0", + "http", + "http-body", + "once_cell", + "pin-project-lite", + "pin-utils", + "tokio", + "tracing", + "tracing-subscriber", +] + +[[package]] +name = "aws-smithy-runtime-api" +version = "0.56.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93d0ae0c9cfd57944e9711ea610b48a963fb174a53aabacc08c5794a594b1d02" +dependencies = [ + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-types", + "bytes", + "http", + "tokio", + "tracing", +] + [[package]] name = "aws-smithy-types" -version = "0.54.4" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8161232eda10290f5136610a1eb9de56aceaccd70c963a26a260af20ac24794f" +checksum = "d90dbc8da2f6be461fa3c1906b20af8f79d14968fe47f2b7d29d086f62a51728" dependencies = [ "base64-simd", "itoa", "num-integer", "ryu", + "serde", "time", ] [[package]] name = "aws-smithy-types-convert" -version = "0.54.4" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2c209718c72f778b0e866e59be9cbbe0e62e835db73ceca48383b1ffafd5340" +checksum = "4aec73ec67166b7bc64804aba0cf38808f5b2aecf05d353cad2e855aabce431a" dependencies = [ "aws-smithy-types", "time", @@ -561,18 +592,18 @@ dependencies = [ [[package]] name = "aws-smithy-xml" -version = "0.54.4" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "343ffe9a9bb3f542675f4df0e0d5933513d6ad038ca3907ad1767ba690a99684" +checksum = "e01d2dedcdd8023043716cfeeb3c6c59f2d447fce365d8e194838891794b23b6" dependencies = [ "xmlparser", ] [[package]] name = "aws-types" -version = "0.54.1" +version = "0.56.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8f15b34253b68cde08e39b0627cc6101bcca64351229484b4743392c035d057" +checksum = "85aa0451bf8af1bf22a4f028d5d28054507a14be43cb8ac0597a8471fba9edfe" dependencies = [ "aws-credential-types", "aws-smithy-async", @@ -586,31 +617,29 @@ dependencies = [ [[package]] name = "aws_lambda_events" -version = "0.7.3" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d376097ccf49a2699d554558267b2735f62ce94ee1840a9f73253ad7c26fbaa7" +checksum = "65991dbc3bfb586939ba1527eefdc99bc21157b6ec891f180fb1e16e2dddc7a9" dependencies = [ - "base64 0.13.1", + "base64 0.21.3", "bytes", - "chrono", "http", "http-body", "http-serde", "query_map", "serde", - "serde_derive", "serde_json", ] [[package]] name = "axum" -version = "0.6.18" +version = "0.6.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8175979259124331c1d7bf6586ee7e0da434155e4b2d48ec2c8386281d8df39" +checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" dependencies = [ "async-trait", "axum-core", - "bitflags", + "bitflags 1.3.2", "bytes", "futures-util", "http", @@ -652,22 +681,18 @@ dependencies = [ ] [[package]] -name = "axum-extra" -version = "0.5.0" +name = "backtrace" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51227033e4d3acad15c879092ac8a228532707b5db5ff2628f638334f63e1b7a" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" dependencies = [ - "axum", - "bytes", - "futures-util", - "http", - "mime", - "pin-project-lite", - "tokio", - "tower", - "tower-http", - "tower-layer", - "tower-service", + "addr2line", + "cc", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", ] [[package]] @@ -678,9 +703,9 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" [[package]] name = "base64" -version = "0.21.2" +version = "0.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d" +checksum = "414dcefbc63d77c526a76b3afcf6fbb9b5e2791c19c3aa2297733208750c6e53" [[package]] name = "base64-simd" @@ -704,6 +729,12 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" +[[package]] +name = "bitflags" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" + [[package]] name = "block-buffer" version = "0.10.4" @@ -776,9 +807,12 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.79" +version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" +checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +dependencies = [ + "libc", +] [[package]] name = "cfg-if" @@ -788,58 +822,56 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.26" +version = "0.4.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5" +checksum = "d87d9d13be47a5b7c3907137f1290b0459a7f80efb26be8c52afb11963bccb02" dependencies = [ "android-tzdata", "iana-time-zone", "num-traits", "serde", - "winapi", + "windows-targets", ] [[package]] name = "clap" -version = "4.3.5" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2686c4115cb0810d9a984776e197823d08ec94f176549a89a9efded477c456dc" +checksum = "6a13b88d2c62ff462f88e4a121f17a82c1af05693a2f192b5c38d14de73c19f6" dependencies = [ "clap_builder", "clap_derive", - "once_cell", ] [[package]] name = "clap_builder" -version = "4.3.5" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e53afce1efce6ed1f633cf0e57612fe51db54a1ee4fd8f8503d078fe02d69ae" +checksum = "2bb9faaa7c2ef94b2743a21f5a29e6f0010dff4caa69ac8e9d6cf8b6fa74da08" dependencies = [ "anstream", "anstyle", - "bitflags", "clap_lex", "strsim", ] [[package]] name = "clap_derive" -version = "4.3.2" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8cd2b2a819ad6eec39e8f1d6b53001af1e5469f8c177579cdaeb313115b825f" +checksum = "0862016ff20d69b84ef8247369fabf5c008a7417002411897d40ee1f4532b873" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.31", ] [[package]] name = "clap_lex" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b" +checksum = "cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961" [[package]] name = "colorchoice" @@ -874,18 +906,18 @@ checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" [[package]] name = "cpufeatures" -version = "0.2.8" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03e69e28e9f7f77debdedbaafa2866e1de9ba56df55a8bd7cfc724c25a09987c" +checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1" dependencies = [ "libc", ] [[package]] name = "crc32c" -version = "0.6.3" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dfea2db42e9927a3845fb268a10a72faed6d416065f77873f05e411457c363e" +checksum = "d8f48d60e5b4d2c53d5c2b1d8a58c849a70ae5e5509b08a48d047e3b65714a74" dependencies = [ "rustc_version", ] @@ -928,21 +960,11 @@ dependencies = [ "typenum", ] -[[package]] -name = "ctor" -version = "0.1.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d2301688392eb071b0bf1a37be05c469d3cc4dbbd95df672fe28ab021e6a096" -dependencies = [ - "quote", - "syn 1.0.109", -] - [[package]] name = "darling" -version = "0.20.1" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0558d22a7b463ed0241e993f76f09f30b126687447751a8638587b864e4b3944" +checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e" dependencies = [ "darling_core", "darling_macro", @@ -950,27 +972,27 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.1" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab8bfa2e259f8ee1ce5e97824a3c55ec4404a0d772ca7fa96bf19f0752a046eb" +checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", "strsim", - "syn 2.0.18", + "syn 2.0.31", ] [[package]] name = "darling_macro" -version = "0.20.1" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29a358ff9f12ec09c3e61fef9b5a9902623a695a46a917b07f269bff1445611a" +checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" dependencies = [ "darling_core", "quote", - "syn 2.0.18", + "syn 2.0.31", ] [[package]] @@ -992,6 +1014,15 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaa37046cc0f6c3cc6090fbdbf73ef0b8ef4cfcc37f6befc0020f63e8cf121e1" +[[package]] +name = "deranged" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2696e8a945f658fd14dc3b87242e6b80cd0f36ff04ea560fa39082368847946" +dependencies = [ + "serde", +] + [[package]] name = "diff" version = "0.1.13" @@ -1011,28 +1042,34 @@ dependencies = [ [[package]] name = "either" -version = "1.8.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" +checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" [[package]] name = "encoding_rs" -version = "0.8.32" +version = "0.8.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394" +checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" dependencies = [ "cfg-if", ] +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + [[package]] name = "errno" -version = "0.3.1" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" +checksum = "136526188508e25c6fef639d7927dfb3e0e3084488bf202267829cf7fc23dbdd" dependencies = [ "errno-dragonfly", "libc", - "windows-sys 0.48.0", + "windows-sys", ] [[package]] @@ -1072,6 +1109,12 @@ dependencies = [ "instant", ] +[[package]] +name = "fastrand" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764" + [[package]] name = "figment" version = "0.10.10" @@ -1088,9 +1131,9 @@ dependencies = [ [[package]] name = "flate2" -version = "1.0.26" +version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743" +checksum = "c6c98ee8095e9d1dcbf2fcc6d95acccb90d1c81db1e44725c6a984b1dbdfb010" dependencies = [ "crc32fast", "miniz_oxide", @@ -1165,7 +1208,7 @@ version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" dependencies = [ - "fastrand", + "fastrand 1.9.0", "futures-core", "futures-io", "memchr", @@ -1182,7 +1225,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.31", ] [[package]] @@ -1253,11 +1296,17 @@ dependencies = [ "wasi 0.11.0+wasi-snapshot-preview1", ] +[[package]] +name = "gimli" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" + [[package]] name = "h2" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d357c7ae988e7d2182f7d7871d0b963962420b0678b0997ce7de72001aeab782" +checksum = "91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833" dependencies = [ "bytes", "fnv", @@ -1265,7 +1314,7 @@ dependencies = [ "futures-sink", "futures-util", "http", - "indexmap", + "indexmap 1.9.3", "slab", "tokio", "tokio-util", @@ -1279,25 +1328,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" [[package]] -name = "heck" -version = "0.4.1" +name = "hashbrown" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" +checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" [[package]] -name = "hermit-abi" -version = "0.2.6" +name = "heck" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" -dependencies = [ - "libc", -] +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" [[package]] name = "hermit-abi" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" +checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b" [[package]] name = "hex" @@ -1326,16 +1372,21 @@ dependencies = [ [[package]] name = "htsget-config" -version = "0.1.4" -source = "git+https://github.com/umccr/htsget-rs.git?branch=feat/htsget-elsa#34685bccf8b5d95ebcf7c059b5caa1cd3bbe9e96" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21821860d4cd7f523aa584451e2add095510b92d6a5f62f9d5decb8a163febae" dependencies = [ "async-trait", "clap", "figment", "http", "http-serde", + "hyper-rustls", "noodles", "regex", + "rustls", + "rustls-native-certs", + "rustls-pemfile", "serde", "serde_regex", "serde_with", @@ -1387,8 +1438,9 @@ dependencies = [ [[package]] name = "htsget-http" -version = "0.1.4" -source = "git+https://github.com/umccr/htsget-rs.git?branch=feat/htsget-elsa#34685bccf8b5d95ebcf7c059b5caa1cd3bbe9e96" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07cb1432631a0731332dface757bf98517d1d62232a7cc63ad90f744bb47ce05" dependencies = [ "futures", "htsget-config", @@ -1403,8 +1455,9 @@ dependencies = [ [[package]] name = "htsget-lambda" -version = "0.1.4" -source = "git+https://github.com/umccr/htsget-rs.git?branch=feat/htsget-elsa#34685bccf8b5d95ebcf7c059b5caa1cd3bbe9e96" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38127ff957e645a16e96d492926488b94df47dc629df7241662b0e9b8e6ec9df" dependencies = [ "bytes", "htsget-config", @@ -1425,15 +1478,15 @@ dependencies = [ [[package]] name = "htsget-search" -version = "0.1.4" -source = "git+https://github.com/umccr/htsget-rs.git?branch=feat/htsget-elsa#34685bccf8b5d95ebcf7c059b5caa1cd3bbe9e96" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7862b6c72604fbf262aa199b38c8638b0123468ec011a6673eeb8fb57793361" dependencies = [ "async-trait", "aws-config", "aws-sdk-s3", "axum", - "axum-extra", - "base64 0.21.2", + "base64 0.21.3", "bytes", "futures", "futures-util", @@ -1446,29 +1499,30 @@ dependencies = [ "serde", "thiserror", "tokio", - "tokio-rustls 0.23.4", + "tokio-rustls", "tokio-util", "tower", "tower-http", "tracing", + "url", ] [[package]] name = "htsget-test" -version = "0.1.4" -source = "git+https://github.com/umccr/htsget-rs.git?branch=feat/htsget-elsa#34685bccf8b5d95ebcf7c059b5caa1cd3bbe9e96" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12e55b4da0a134f39bf4e054c43ca226feae954900558cd7ca665003f070709e" dependencies = [ "async-trait", "aws-config", "aws-credential-types", "aws-sdk-s3", - "base64 0.21.2", + "base64 0.21.3", "futures", "htsget-config", "http", "mime", - "noodles-bgzf", - "noodles-vcf", + "noodles", "rcgen", "reqwest", "s3s", @@ -1504,15 +1558,15 @@ dependencies = [ [[package]] name = "http-range-header" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bfe8eed0a9285ef776bb792479ea3834e8b94e13d615c2f66d03dd50a435a29" +checksum = "add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f" [[package]] name = "http-serde" -version = "1.1.2" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e272971f774ba29341db2f686255ff8a979365a26fb9e4277f6b6d9ec0cdd5e" +checksum = "6f560b665ad9f1572cfcaf034f7fb84338a7ce945216d64a90fd81f046a3caee" dependencies = [ "http", "serde", @@ -1547,15 +1601,15 @@ checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" [[package]] name = "httpdate" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "hyper" -version = "0.14.26" +version = "0.14.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab302d72a6f11a3b910431ff93aae7e773078c769f0a3ef15fb9ec692ed147d4" +checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" dependencies = [ "bytes", "futures-channel", @@ -1568,7 +1622,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", - "socket2", + "socket2 0.4.9", "tokio", "tower-service", "tracing", @@ -1577,30 +1631,18 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.23.2" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1788965e61b367cd03a62950836d5cd41560c3577d90e40e0819373194d1661c" +checksum = "8d78e1e73ec14cf7375674f74d7dde185c8206fd9dea6fb6295e8a98098aaa97" dependencies = [ + "futures-util", "http", "hyper", "log", - "rustls 0.20.8", + "rustls", "rustls-native-certs", "tokio", - "tokio-rustls 0.23.4", -] - -[[package]] -name = "hyper-rustls" -version = "0.24.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0646026eb1b3eea4cd9ba47912ea5ce9cc07713d105b1a14698f4e6433d348b7" -dependencies = [ - "http", - "hyper", - "rustls 0.21.2", - "tokio", - "tokio-rustls 0.24.1", + "tokio-rustls", ] [[package]] @@ -1649,7 +1691,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg", - "hashbrown", + "hashbrown 0.12.3", + "serde", +] + +[[package]] +name = "indexmap" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" +dependencies = [ + "equivalent", + "hashbrown 0.14.0", "serde", ] @@ -1674,40 +1727,17 @@ dependencies = [ "cfg-if", ] -[[package]] -name = "io-lifetimes" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" -dependencies = [ - "hermit-abi 0.3.1", - "libc", - "windows-sys 0.48.0", -] - [[package]] name = "ipnet" -version = "2.7.2" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12b6ee2129af8d4fb011108c73d99a1b83a85977f23b82460c0ae2e25bb4b57f" - -[[package]] -name = "is-terminal" -version = "0.4.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f" -dependencies = [ - "hermit-abi 0.3.1", - "io-lifetimes", - "rustix", - "windows-sys 0.48.0", -] +checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6" [[package]] name = "itoa" -version = "1.0.6" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" +checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" [[package]] name = "js-sys" @@ -1720,14 +1750,15 @@ dependencies = [ [[package]] name = "lambda_http" -version = "0.7.3" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16fd842ce9fc6908f1688030cf8b6841e2009bd874eb21244f124570ac06264f" +checksum = "8b15e8ab48a5d8eab3110567008caad4d191924d1470b74c5c8b802b904b5a34" dependencies = [ "aws_lambda_events", - "base64 0.13.1", + "base64 0.21.3", "bytes", "encoding_rs", + "futures", "http", "http-body", "hyper", @@ -1742,18 +1773,20 @@ dependencies = [ [[package]] name = "lambda_runtime" -version = "0.7.3" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd32d5799db2155ae4d47116bb3e169b59f531ced4d5762a10c2125bdd2bf134" +checksum = "8300e2e10ab2a49016584d9f248736a9da5ea819648df4c9d6c82fa2231fb510" dependencies = [ "async-stream", "bytes", "futures", "http", + "http-serde", "hyper", "lambda_runtime_api_client", "serde", "serde_json", + "serde_path_to_error", "tokio", "tokio-stream", "tower", @@ -1762,9 +1795,9 @@ dependencies = [ [[package]] name = "lambda_runtime_api_client" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7210012be904051520f0dc502140ba599bae3042b65b3737b87727f1aa88a7d6" +checksum = "690c5ae01f3acac8c9c3348b556fc443054e9b7f1deaf53e9ebab716282bf0ed" dependencies = [ "http", "hyper", @@ -1844,21 +1877,21 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.146" +version = "0.2.147" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f92be4933c13fd498862a9e02a3055f8a8d9c039ce33db97306fd5a6caa7f29b" +checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" [[package]] name = "linux-raw-sys" -version = "0.3.8" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" +checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503" [[package]] name = "log" -version = "0.4.19" +version = "0.4.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4" +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" [[package]] name = "lzma-sys" @@ -1877,14 +1910,14 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" dependencies = [ - "regex-automata", + "regex-automata 0.1.10", ] [[package]] name = "matchit" -version = "0.7.0" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b87248edafb776e59e6ee64a79086f65890d3510f2c656c000bf2a7e8a0aea40" +checksum = "ed1202b2a6f884ae56f04cff409ab315c5ce26b5e58d7412e484f01fd52f52ef" [[package]] name = "md-5" @@ -1897,9 +1930,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.5.0" +version = "2.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" +checksum = "8f232d6ef707e1956a43342693d2a31e72989554d58299d7a88738cc95b0d35c" [[package]] name = "mime" @@ -1940,7 +1973,7 @@ checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" dependencies = [ "libc", "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.48.0", + "windows-sys", ] [[package]] @@ -1955,9 +1988,9 @@ dependencies = [ [[package]] name = "noodles" -version = "0.32.0" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34d8a52c91a7fb516482ebae88106109900f65308915900a95049c994e58deb5" +checksum = "86c1d34ec18d6b3d7699fae207ba766a5b969764d2cad072dc769cb6eca06b36" dependencies = [ "noodles-bam", "noodles-bcf", @@ -1974,9 +2007,9 @@ dependencies = [ [[package]] name = "noodles-bam" -version = "0.26.0" +version = "0.44.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86a5d3990c4cde117936769f9b3ea3f0beaf13e0b7d8850247c931e90af26955" +checksum = "7a2f966b53ae5bfec1e31cab74f8dcabcd95438d1132d08db3c15e3eb81c6c79" dependencies = [ "bit-vec", "byteorder", @@ -1985,20 +2018,19 @@ dependencies = [ "noodles-bgzf", "noodles-core", "noodles-csi", - "noodles-fasta", "noodles-sam", "tokio", ] [[package]] name = "noodles-bcf" -version = "0.20.0" +version = "0.35.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78b5979fec9d28d2d4552e85a04f289e26daad63dd6a4693d9c128d2a457c1c7" +checksum = "8cdce18a4a293a3080fa81fc92967fee00e8eb9ad6dfcab21f085f5228006603" dependencies = [ "byteorder", "futures", - "indexmap", + "indexmap 2.0.0", "noodles-bgzf", "noodles-core", "noodles-csi", @@ -2008,9 +2040,9 @@ dependencies = [ [[package]] name = "noodles-bgzf" -version = "0.19.0" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92d6971da2c55bdd0ed57058348ba52b11dedf0c33180ac6d0853c9ecde5bbdf" +checksum = "8f4c43ff0879c542c1d8fd570c03e368f629587721d10267f2619e36afc9c9b0" dependencies = [ "byteorder", "bytes", @@ -2024,18 +2056,18 @@ dependencies = [ [[package]] name = "noodles-core" -version = "0.10.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32f52f0dbc792f4d76e94e3ccaee57237b649ad1e4b64a97ad037d6b3b8f6909" +checksum = "94fbe3192fe33acacabaedd387657f39b0fc606f1996d546db0dfe14703b843a" [[package]] name = "noodles-cram" -version = "0.23.0" +version = "0.41.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d83ba5b9eb0161c7fe4385aaa99aac720f216b7115a8856d8dca075244ad803" +checksum = "ef57b37c8b20341c41a6a8e43ed1f58b04f5fcbe2ab59e3eef71afc7510fb801" dependencies = [ "async-compression", - "bitflags", + "bitflags 2.4.0", "byteorder", "bytes", "bzip2", @@ -2053,12 +2085,13 @@ dependencies = [ [[package]] name = "noodles-csi" -version = "0.13.0" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4797afdb8fc80e7ddc0d6a3fa33163c2473fec431c4838e67d7f957f68ede527" +checksum = "1b2bb780250c88bc9ea69b56c1aa9df75decc6b79035f3f5ab10c0cd84d24fc6" dependencies = [ "bit-vec", "byteorder", + "indexmap 2.0.0", "noodles-bgzf", "noodles-core", "tokio", @@ -2066,9 +2099,9 @@ dependencies = [ [[package]] name = "noodles-fasta" -version = "0.18.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a3264d8ce30f2959a84339366548afca3fb5d4043a9f8853ca448411f305958" +checksum = "1012431f881aad1912f9650a8d33e7f7493c6202bc2e889949ec1bc26a55f26d" dependencies = [ "bytes", "memchr", @@ -2079,41 +2112,40 @@ dependencies = [ [[package]] name = "noodles-fastq" -version = "0.6.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27c7d065ab7c0814ea9df05624a1be1410d2039b091213ac1cb5281866c3fdfb" +checksum = "e1763486d2d1a1e39a86676a47aa05728c75f73f0f883415e36439711ead2641" dependencies = [ "futures", + "memchr", "tokio", ] [[package]] name = "noodles-sam" -version = "0.23.0" +version = "0.41.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "647b9f1b0b3815ee21aef82823bd9062c40706c6d9148935aef3e2b7a9c572f6" +checksum = "25168f31309cb35103ea5216e30beb1dfbff5f173889c0a056b8f3d7c32e5105" dependencies = [ - "bitflags", + "bitflags 2.4.0", "futures", - "indexmap", + "indexmap 2.0.0", "lexical-core", "memchr", "noodles-bgzf", "noodles-core", "noodles-csi", - "noodles-fasta", "tokio", ] [[package]] name = "noodles-tabix" -version = "0.16.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c74c56094217a32748db1d8457f39f07b6695b5c23e71919fba9784bd6f929f4" +checksum = "056e394ddb4c64bcc9806551a69833294062159600aa8ecf7167a922512bda4f" dependencies = [ "bit-vec", "byteorder", - "indexmap", "noodles-bgzf", "noodles-core", "noodles-csi", @@ -2122,14 +2154,13 @@ dependencies = [ [[package]] name = "noodles-vcf" -version = "0.24.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "008dc218516a5363d7f55add28866c20463f14ffcb661cbfc4863343e1486a20" +checksum = "e9306e749f9d094f4cf0cb6275d106a8a5da90f97700bcc4e0e86480a074d25d" dependencies = [ "futures", - "indexmap", + "indexmap 2.0.0", "memchr", - "nom", "noodles-bgzf", "noodles-core", "noodles-csi", @@ -2148,6 +2179,15 @@ dependencies = [ "winapi", ] +[[package]] +name = "nugine-rust-utils" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04dcd9cfa92246a9c7ca0671e00733c4e9d77ee1fa0ae08c9a181b7c8802aea2" +dependencies = [ + "simdutf8", +] + [[package]] name = "num-integer" version = "0.1.45" @@ -2160,20 +2200,20 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2" dependencies = [ "autocfg", ] [[package]] name = "num_cpus" -version = "1.15.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "hermit-abi 0.2.6", + "hermit-abi", "libc", ] @@ -2183,6 +2223,15 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf70ee2d9b1737d1836c20d9f8f96ec3901b2bf92128439db13237ddce9173a5" +[[package]] +name = "object" +version = "0.32.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" +dependencies = [ + "memchr", +] + [[package]] name = "once_cell" version = "1.18.0" @@ -2195,15 +2244,6 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" -[[package]] -name = "output_vt100" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "628223faebab4e3e40667ee0b2336d34a5b960ff60ea743ddfdbcf7770bcfb66" -dependencies = [ - "winapi", -] - [[package]] name = "outref" version = "0.5.1" @@ -2242,34 +2282,35 @@ dependencies = [ [[package]] name = "pear" -version = "0.2.4" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ec95680a7087503575284e5063e14b694b7a9c0b065e5dceec661e0497127e8" +checksum = "61a386cd715229d399604b50d1361683fe687066f42d56f54be995bc6868f71c" dependencies = [ "inlinable_string", "pear_codegen", - "yansi", + "yansi 1.0.0-rc.1", ] [[package]] name = "pear_codegen" -version = "0.2.4" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9661a3a53f93f09f2ea882018e4d7c88f6ff2956d809a276060476fd8c879d3c" +checksum = "da9f0f13dac8069c139e8300a6510e3f4143ecf5259c60b116a9b271b4ca0d54" dependencies = [ "proc-macro2", "proc-macro2-diagnostics", "quote", - "syn 2.0.18", + "syn 2.0.31", ] [[package]] name = "pem" -version = "1.1.1" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8" +checksum = "6b13fe415cdf3c8e44518e18a7c95a13431d9bdf6d15367d82b23c377fdd441a" dependencies = [ - "base64 0.13.1", + "base64 0.21.3", + "serde", ] [[package]] @@ -2280,29 +2321,29 @@ checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" [[package]] name = "pin-project" -version = "1.1.0" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c95a7476719eab1e366eaf73d0260af3021184f18177925b07f54b30089ceead" +checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.0" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39407670928234ebc5e6e580247dd567ad73a3578460c5990f9503df207e8f07" +checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.31", ] [[package]] name = "pin-project-lite" -version = "0.2.9" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" [[package]] name = "pin-utils" @@ -2324,14 +2365,12 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "pretty_assertions" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a25e9bcb20aa780fd0bb16b72403a9064d6b3f22f026946029acb941a50af755" +checksum = "af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66" dependencies = [ - "ctor", "diff", - "output_vt100", - "yansi", + "yansi 0.5.1", ] [[package]] @@ -2360,24 +2399,24 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.60" +version = "1.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406" +checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" dependencies = [ "unicode-ident", ] [[package]] name = "proc-macro2-diagnostics" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "606c4ba35817e2922a308af55ad51bab3645b59eae5c570d4a6cf07e36bd493b" +checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.31", "version_check", - "yansi", + "yansi 1.0.0-rc.1", ] [[package]] @@ -2393,9 +2432,9 @@ dependencies = [ [[package]] name = "quick-xml" -version = "0.27.1" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffc053f057dd768a56f62cd7e434c42c831d296968997e9ac1f76ea7c2d14c41" +checksum = "eff6510e86862b57b210fd8cbe8ed3f0d7d600b9c2863cd4549a2e033c66e956" dependencies = [ "memchr", "serde", @@ -2403,9 +2442,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.28" +version = "1.0.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488" +checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" dependencies = [ "proc-macro2", ] @@ -2453,9 +2492,9 @@ dependencies = [ [[package]] name = "rcgen" -version = "0.10.0" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffbe84efe2f38dea12e9bfc1f65377fdf03e53a18cb3b995faedf7934c7e785b" +checksum = "4954fbc00dcd4d8282c987710e50ba513d351400dbdd00e803a05172a90d8976" dependencies = [ "pem", "ring", @@ -2469,18 +2508,19 @@ version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" dependencies = [ - "bitflags", + "bitflags 1.3.2", ] [[package]] name = "regex" -version = "1.8.4" +version = "1.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0ab3ca65655bb1e41f2a8c8cd662eb4fb035e67c3f78da1d61dffe89d07300f" +checksum = "697061221ea1b4a94a624f67d0ae2bfe4e22b8a17b6a192afb11046542cc8c47" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.7.2", + "regex-automata 0.3.8", + "regex-syntax 0.7.5", ] [[package]] @@ -2492,6 +2532,17 @@ dependencies = [ "regex-syntax 0.6.29", ] +[[package]] +name = "regex-automata" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2f401f4955220693b56f8ec66ee9c78abffd8d1c4f23dc41a23839eb88f0795" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.7.5", +] + [[package]] name = "regex-syntax" version = "0.6.29" @@ -2500,17 +2551,17 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] name = "regex-syntax" -version = "0.7.2" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436b050e76ed2903236f032a59761c1eb99e1b0aead2c257922771dab1fc8c78" +checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" [[package]] name = "reqwest" -version = "0.11.18" +version = "0.11.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cde824a14b7c14f85caff81225f411faacc04a2013f41670f41443742b1c1c55" +checksum = "3e9ad3fe7488d7e34558a2033d45a0c90b72d97b4f80705666fea71472e2e6a1" dependencies = [ - "base64 0.21.2", + "base64 0.21.3", "bytes", "encoding_rs", "futures-core", @@ -2519,7 +2570,7 @@ dependencies = [ "http", "http-body", "hyper", - "hyper-rustls 0.24.0", + "hyper-rustls", "ipnet", "js-sys", "log", @@ -2527,13 +2578,13 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "rustls 0.21.2", + "rustls", "rustls-pemfile", "serde", "serde_json", "serde_urlencoded", "tokio", - "tokio-rustls 0.24.1", + "tokio-rustls", "tower-service", "url", "wasm-bindgen", @@ -2573,6 +2624,12 @@ dependencies = [ "xmlparser", ] +[[package]] +name = "rustc-demangle" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" + [[package]] name = "rustc_version" version = "0.4.0" @@ -2584,35 +2641,22 @@ dependencies = [ [[package]] name = "rustix" -version = "0.37.20" +version = "0.38.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b96e891d04aa506a6d1f318d2771bcb1c7dfda84e126660ace067c9b474bb2c0" +checksum = "c0c3dde1fc030af041adc40e79c0e7fbcf431dd24870053d187d7c66e4b87453" dependencies = [ - "bitflags", + "bitflags 2.4.0", "errno", - "io-lifetimes", "libc", "linux-raw-sys", - "windows-sys 0.48.0", -] - -[[package]] -name = "rustls" -version = "0.20.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fff78fc74d175294f4e83b28343315ffcfb114b156f0185e9741cb5570f50e2f" -dependencies = [ - "log", - "ring", - "sct", - "webpki", + "windows-sys", ] [[package]] name = "rustls" -version = "0.21.2" +version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e32ca28af694bc1bbf399c33a516dbdf1c90090b8ab23c2bc24f834aa2247f5f" +checksum = "cd8d6c9f025a446bc4d18ad9632e69aec8f287aa84499ee335599fabd20c3fd8" dependencies = [ "log", "ring", @@ -2634,18 +2678,18 @@ dependencies = [ [[package]] name = "rustls-pemfile" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d194b56d58803a43635bdc398cd17e383d6f71f9182b9a192c127ca42494a59b" +checksum = "2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2" dependencies = [ - "base64 0.21.2", + "base64 0.21.3", ] [[package]] name = "rustls-webpki" -version = "0.100.2" +version = "0.101.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e98ff011474fa39949b7e5c0428f9b4937eda7da7848bbb947786b7be0b27dab" +checksum = "7d93931baf2d282fff8d3a532bbfd7653f734643161b87e3e01e59a04439bf0d" dependencies = [ "ring", "untrusted", @@ -2653,24 +2697,23 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.12" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f3208ce4d8448b3f3e7d168a73f5e0c43a61e32930de3bceeccedb388b6bf06" +checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" [[package]] name = "ryu" -version = "1.0.13" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" +checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" [[package]] name = "s3s" -version = "0.3.2" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4020158a5c1250280240d327dc0d0f2b0ccf62a7938bbf245a1cd2637d64bcfe" +checksum = "851a1551bb5ceb2361674eea469d252c0857891aed6e874cf2d630176d768d73" dependencies = [ "arrayvec", - "ascii", "async-trait", "atoi", "base64-simd", @@ -2684,9 +2727,11 @@ dependencies = [ "http-body", "httparse", "hyper", + "itoa", "memchr", "mime", "nom", + "nugine-rust-utils", "pin-project-lite", "quick-xml", "serde", @@ -2699,17 +2744,19 @@ dependencies = [ "tracing", "transform-stream", "urlencoding", + "zeroize", ] [[package]] name = "s3s-aws" -version = "0.3.2" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79f4605deb4310ac2dcdc7d4ba6a0fa50d0427deb157088522b912b7dcc964c" +checksum = "18046f2e61c6fab85ae669fb1df6681b2df7774c439368d536d05f486b682c9a" dependencies = [ "async-trait", "aws-sdk-s3", "aws-smithy-http", + "aws-smithy-runtime-api", "aws-smithy-types", "aws-smithy-types-convert", "bytes", @@ -2723,22 +2770,28 @@ dependencies = [ [[package]] name = "s3s-fs" -version = "0.3.2" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4000a09d36e9dfc997faf146c7e41243dbdb873344bac6d073235b5ed664dc7" +checksum = "3982bf28303865b28944a75d209d573b4121c7d100a13735ff9a549028c4d0dd" dependencies = [ "async-trait", "base64-simd", "bytes", "chrono", + "crc32c", + "crc32fast", + "digest", "futures", "hex-simd", "md-5", "mime", + "nugine-rust-utils", "numeric_cast", "path-absolutize", "s3s", "serde_json", + "sha1", + "sha2", "thiserror", "time", "tokio", @@ -2751,11 +2804,11 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.21" +version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "713cfb06c7059f3588fb8044c0fad1d09e3c01d225e25b9220dbfdcf16dbb1b3" +checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" dependencies = [ - "windows-sys 0.42.0", + "windows-sys", ] [[package]] @@ -2770,11 +2823,11 @@ dependencies = [ [[package]] name = "security-framework" -version = "2.9.1" +version = "2.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fc758eb7bffce5b308734e9b0c1468893cae9ff70ebf13e7090be8dcbcc83a8" +checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" dependencies = [ - "bitflags", + "bitflags 1.3.2", "core-foundation", "core-foundation-sys", "libc", @@ -2783,9 +2836,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.9.0" +version = "2.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f51d0c0d83bec45f16480d0ce0058397a69e48fcdc52d1dc8855fb68acbd31a7" +checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" dependencies = [ "core-foundation-sys", "libc", @@ -2793,37 +2846,37 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed" +checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918" [[package]] name = "serde" -version = "1.0.164" +version = "1.0.188" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e8c8cf938e98f769bc164923b06dce91cea1751522f46f8466461af04c9027d" +checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.164" +version = "1.0.188" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9735b638ccc51c28bf6914d90a2e9725b377144fc612c49a611fddd1b631d68" +checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.31", ] [[package]] name = "serde_json" -version = "1.0.97" +version = "1.0.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdf3bf93142acad5821c99197022e170842cdbc1c30482b98750c688c640842a" +checksum = "693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360" dependencies = [ - "indexmap", + "indexmap 2.0.0", "itoa", "ryu", "serde", @@ -2831,10 +2884,11 @@ dependencies = [ [[package]] name = "serde_path_to_error" -version = "0.1.11" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7f05c1d5476066defcdfacce1f52fc3cae3af1d3089727100c02ae92e5abbe0" +checksum = "4beec8bce849d58d06238cb50db2e1c417cfeafa4c63f692b15c82b7c80f8335" dependencies = [ + "itoa", "serde", ] @@ -2861,9 +2915,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93107647184f6027e3b7dcb2e11034cf95ffa1e3a682c67951963ac69c1c007d" +checksum = "96426c9936fd7a0124915f9185ea1d20aa9445cc9821142f0a73bc9207a2e186" dependencies = [ "serde", ] @@ -2882,14 +2936,15 @@ dependencies = [ [[package]] name = "serde_with" -version = "2.3.3" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07ff71d2c147a7b57362cead5e22f772cd52f6ab31cfcd9edcd7f6aeb2a0afbe" +checksum = "1ca3b16a3d82c4088f343b7480a93550b3eabe1a358569c2dfe38bbcead07237" dependencies = [ - "base64 0.13.1", + "base64 0.21.3", "chrono", "hex", - "indexmap", + "indexmap 1.9.3", + "indexmap 2.0.0", "serde", "serde_json", "serde_with_macros", @@ -2898,14 +2953,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "2.3.3" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "881b6f881b17d13214e5d494c939ebab463d01264ce1811e9d4ac3a882e7695f" +checksum = "2e6be15c453eb305019bfa438b1593c731f36a289a7853f7707ee29e870b3b3c" dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.31", ] [[package]] @@ -2939,20 +2994,26 @@ dependencies = [ "lazy_static", ] +[[package]] +name = "simdutf8" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a" + [[package]] name = "slab" -version = "0.4.8" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" dependencies = [ "autocfg", ] [[package]] name = "smallvec" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" +checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9" [[package]] name = "socket2" @@ -2964,6 +3025,16 @@ dependencies = [ "winapi", ] +[[package]] +name = "socket2" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877" +dependencies = [ + "libc", + "windows-sys", +] + [[package]] name = "spin" version = "0.5.2" @@ -3001,9 +3072,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.18" +version = "2.0.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32d41677bcbe24c20c52e7c70b0d8db04134c5d1066bf98662e2871ad200ea3e" +checksum = "718fa2415bcb8d8bd775917a1bf12a7931b6dfa890753378538118181e0cb398" dependencies = [ "proc-macro2", "quote", @@ -3018,36 +3089,35 @@ checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" [[package]] name = "tempfile" -version = "3.6.0" +version = "3.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31c0432476357e58790aaa47a8efb0c5138f137343f3b5f23bd36a27e3b0a6d6" +checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" dependencies = [ - "autocfg", "cfg-if", - "fastrand", + "fastrand 2.0.0", "redox_syscall", "rustix", - "windows-sys 0.48.0", + "windows-sys", ] [[package]] name = "thiserror" -version = "1.0.40" +version = "1.0.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac" +checksum = "9d6d7a740b8a666a7e828dd00da9c0dc290dff53154ea77ac109281de90589b7" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.40" +version = "1.0.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" +checksum = "49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.31", ] [[package]] @@ -3062,10 +3132,11 @@ dependencies = [ [[package]] name = "time" -version = "0.3.22" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea9e1b3cf1243ae005d9e74085d4d542f3125458f3a81af210d901dcd7411efd" +checksum = "17f6bb557fd245c28e6411aa56b6403c689ad95061f50e4be16c274e70a17e48" dependencies = [ + "deranged", "itoa", "serde", "time-core", @@ -3080,9 +3151,9 @@ checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb" [[package]] name = "time-macros" -version = "0.2.9" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "372950940a5f07bf38dbe211d7283c9e6d7327df53794992d293e534c733d09b" +checksum = "1a942f44339478ef67935ab2bbaec2fb0322496cf3cbe84b261e06ac3814c572" dependencies = [ "time-core", ] @@ -3104,19 +3175,19 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.28.2" +version = "1.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94d7b1cfd2aa4011f2de74c2c4c63665e27a71006b0a192dcd2710272e73dfa2" +checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9" dependencies = [ - "autocfg", + "backtrace", "bytes", "libc", "mio", "num_cpus", "pin-project-lite", - "socket2", + "socket2 0.5.3", "tokio-macros", - "windows-sys 0.48.0", + "windows-sys", ] [[package]] @@ -3127,18 +3198,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", -] - -[[package]] -name = "tokio-rustls" -version = "0.23.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59" -dependencies = [ - "rustls 0.20.8", - "tokio", - "webpki", + "syn 2.0.31", ] [[package]] @@ -3147,7 +3207,7 @@ version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" dependencies = [ - "rustls 0.21.2", + "rustls", "tokio", ] @@ -3179,9 +3239,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.7.4" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6135d499e69981f9ff0ef2167955a5333c35e36f6937d382974566b3d5b94ec" +checksum = "c17e963a819c331dcacd7ab957d80bc2b9a9c1e71c804826d2f283dd65306542" dependencies = [ "serde", "serde_spanned", @@ -3191,20 +3251,20 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a76a9312f5ba4c2dec6b9161fdf25d87ad8a09256ccea5a556fef03c706a10f" +checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" dependencies = [ "serde", ] [[package]] name = "toml_edit" -version = "0.19.10" +version = "0.19.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2380d56e8670370eee6566b0bfd4265f65b3f432e8c6d85623f728d4fa31f739" +checksum = "f8123f27e969974a3dfba720fdb560be359f57b44302d280ba72e76a74480e8a" dependencies = [ - "indexmap", + "indexmap 2.0.0", "serde", "serde_spanned", "toml_datetime", @@ -3229,11 +3289,11 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.3.5" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858" +checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140" dependencies = [ - "bitflags", + "bitflags 2.4.0", "bytes", "futures-core", "futures-util", @@ -3279,13 +3339,13 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.25" +version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8803eee176538f94ae9a14b55b2804eb7e1441f8210b1c31290b3bccdccff73b" +checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.31", ] [[package]] @@ -3319,6 +3379,16 @@ dependencies = [ "tracing-core", ] +[[package]] +name = "tracing-serde" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" +dependencies = [ + "serde", + "tracing-core", +] + [[package]] name = "tracing-subscriber" version = "0.3.17" @@ -3329,12 +3399,15 @@ dependencies = [ "nu-ansi-term", "once_cell", "regex", + "serde", + "serde_json", "sharded-slab", "smallvec", "thread_local", "tracing", "tracing-core", "tracing-log", + "tracing-serde", ] [[package]] @@ -3369,9 +3442,9 @@ dependencies = [ [[package]] name = "unicase" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" +checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89" dependencies = [ "version_check", ] @@ -3384,9 +3457,9 @@ checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" [[package]] name = "unicode-ident" -version = "1.0.9" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0" +checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c" [[package]] name = "unicode-normalization" @@ -3405,9 +3478,9 @@ checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" [[package]] name = "url" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb" +checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" dependencies = [ "form_urlencoded", "idna", @@ -3417,9 +3490,9 @@ dependencies = [ [[package]] name = "urlencoding" -version = "2.1.2" +version = "2.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8db7427f936968176eaa7cdf81b7f98b980b18495ec28f1b5791ac3bfe3eea9" +checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" [[package]] name = "utf8parse" @@ -3429,9 +3502,9 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" [[package]] name = "uuid" -version = "1.3.4" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa2982af2eec27de306107c027578ff7f423d65f7250e40ce0fea8f45248b81" +checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d" dependencies = [ "getrandom 0.2.10", ] @@ -3502,7 +3575,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.31", "wasm-bindgen-shared", ] @@ -3536,7 +3609,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.31", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -3557,24 +3630,11 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "webpki" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd" -dependencies = [ - "ring", - "untrusted", -] - [[package]] name = "webpki-roots" -version = "0.22.6" +version = "0.25.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" -dependencies = [ - "webpki", -] +checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc" [[package]] name = "winapi" @@ -3607,21 +3667,6 @@ dependencies = [ "windows-targets", ] -[[package]] -name = "windows-sys" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - [[package]] name = "windows-sys" version = "0.48.0" @@ -3633,119 +3678,78 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm 0.48.0", - "windows_aarch64_msvc 0.48.0", - "windows_i686_gnu 0.48.0", - "windows_i686_msvc 0.48.0", - "windows_x86_64_gnu 0.48.0", - "windows_x86_64_gnullvm 0.48.0", - "windows_x86_64_msvc 0.48.0", + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", ] [[package]] name = "windows_aarch64_gnullvm" -version = "0.42.2" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_i686_gnu" -version = "0.42.2" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_msvc" -version = "0.42.2" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_x86_64_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.42.2" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_msvc" -version = "0.42.2" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "winnow" -version = "0.4.7" +version = "0.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca0ace3845f0d96209f0375e6d367e3eb87eb65d27d445bdc9f1843a26f39448" +checksum = "7c2e3184b9c4e92ad5167ca73039d0c42476302ab603e2fec4487511f38ccefc" dependencies = [ "memchr", ] [[package]] name = "winreg" -version = "0.10.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" dependencies = [ - "winapi", + "cfg-if", + "windows-sys", ] [[package]] @@ -3756,7 +3760,7 @@ checksum = "c6f71803d3a1c80377a06221e0530be02035d5b3e854af56c6ece7ac20ac441d" dependencies = [ "assert-json-diff 2.0.2", "async-trait", - "base64 0.21.2", + "base64 0.21.3", "deadpool", "futures", "futures-timer", @@ -3791,6 +3795,12 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" +[[package]] +name = "yansi" +version = "1.0.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1367295b8f788d371ce2dbc842c7b709c73ee1364d30351dd300ec2203b12377" + [[package]] name = "yasna" version = "0.5.2" diff --git a/Cargo.toml b/Cargo.toml index e909290..fe996b0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,3 +5,7 @@ members = [ "htsget-elsa", "htsget-elsa-lambda" ] + +[workspace.package] +license = "MIT" +edition = "2021" diff --git a/data/events/event_elsa.json b/data/events/event_elsa.json index c816f21..c64ae0e 100644 --- a/data/events/event_elsa.json +++ b/data/events/event_elsa.json @@ -24,45 +24,23 @@ "accept": [ "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9" ], - "accept-encoding": [ - "gzip, deflate, br" - ], - "accept-language": [ - "en-US,en;q=0.9" - ], + "accept-encoding": ["gzip, deflate, br"], + "accept-language": ["en-US,en;q=0.9"], "cookie": [ "s_fid=7AABXMPL1AFD9BBF-0643XMPL09956DE2; regStatus=pre-register;" ], - "Host": [ - "70ixmpl4fl.execute-api.ca-central-1.amazonaws.com" - ], - "sec-fetch-dest": [ - "document" - ], - "sec-fetch-mode": [ - "navigate" - ], - "sec-fetch-site": [ - "none" - ], - "upgrade-insecure-requests": [ - "1" - ], + "Host": ["70ixmpl4fl.execute-api.ca-central-1.amazonaws.com"], + "sec-fetch-dest": ["document"], + "sec-fetch-mode": ["navigate"], + "sec-fetch-site": ["none"], + "upgrade-insecure-requests": ["1"], "User-Agent": [ "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36" ], - "X-Amzn-Trace-Id": [ - "Root=1-5e66d96f-7491f09xmpl79d18acf3d050" - ], - "X-Forwarded-For": [ - "52.255.255.12" - ], - "X-Forwarded-Port": [ - "443" - ], - "X-Forwarded-Proto": [ - "https" - ] + "X-Amzn-Trace-Id": ["Root=1-5e66d96f-7491f09xmpl79d18acf3d050"], + "X-Forwarded-For": ["52.255.255.12"], + "X-Forwarded-Port": ["443"], + "X-Forwarded-Proto": ["https"] }, "queryStringParameters": null, "multiValueQueryStringParameters": null, diff --git a/data/events/event_get.json b/data/events/event_get.json index 3a367f4..037c104 100644 --- a/data/events/event_get.json +++ b/data/events/event_get.json @@ -24,45 +24,23 @@ "accept": [ "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9" ], - "accept-encoding": [ - "gzip, deflate, br" - ], - "accept-language": [ - "en-US,en;q=0.9" - ], + "accept-encoding": ["gzip, deflate, br"], + "accept-language": ["en-US,en;q=0.9"], "cookie": [ "s_fid=7AABXMPL1AFD9BBF-0643XMPL09956DE2; regStatus=pre-register;" ], - "Host": [ - "70ixmpl4fl.execute-api.ca-central-1.amazonaws.com" - ], - "sec-fetch-dest": [ - "document" - ], - "sec-fetch-mode": [ - "navigate" - ], - "sec-fetch-site": [ - "none" - ], - "upgrade-insecure-requests": [ - "1" - ], + "Host": ["70ixmpl4fl.execute-api.ca-central-1.amazonaws.com"], + "sec-fetch-dest": ["document"], + "sec-fetch-mode": ["navigate"], + "sec-fetch-site": ["none"], + "upgrade-insecure-requests": ["1"], "User-Agent": [ "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36" ], - "X-Amzn-Trace-Id": [ - "Root=1-5e66d96f-7491f09xmpl79d18acf3d050" - ], - "X-Forwarded-For": [ - "52.255.255.12" - ], - "X-Forwarded-Port": [ - "443" - ], - "X-Forwarded-Proto": [ - "https" - ] + "X-Amzn-Trace-Id": ["Root=1-5e66d96f-7491f09xmpl79d18acf3d050"], + "X-Forwarded-For": ["52.255.255.12"], + "X-Forwarded-Port": ["443"], + "X-Forwarded-Proto": ["https"] }, "queryStringParameters": null, "multiValueQueryStringParameters": null, diff --git a/deploy/.prettierrc.json b/deploy/.prettierrc.json deleted file mode 100644 index 0967ef4..0000000 --- a/deploy/.prettierrc.json +++ /dev/null @@ -1 +0,0 @@ -{} diff --git a/deploy/config/config_dev_umccr.toml b/deploy/config/config_dev_umccr.toml index 1ea3e63..5decd87 100644 --- a/deploy/config/config_dev_umccr.toml +++ b/deploy/config/config_dev_umccr.toml @@ -1,5 +1,5 @@ elsa_endpoint_authority = "elsa-data.dev.umccr.org" -cache_location = "elsadatalocaldevtestinfr-tempprivatebucket3b80855-p9qoue91haoy" +cache_location = "elsadatalocaldevtestinfr-tempprivatebucket3b80855-p9qoue91haoy" # pragma: allowlist secret ticket_server_cors_allow_headers = "All" ticket_server_cors_allow_origins = [ diff --git a/deploy/lib/htsget-elsa-lambda-stack.ts b/deploy/lib/htsget-elsa-lambda-stack.ts index 1c99133..7234b10 100644 --- a/deploy/lib/htsget-elsa-lambda-stack.ts +++ b/deploy/lib/htsget-elsa-lambda-stack.ts @@ -62,8 +62,8 @@ export class HtsgetElsaLambdaStack extends Stack { lambdaRole.addManagedPolicy( iam.ManagedPolicy.fromAwsManagedPolicyName( - "service-role/AWSLambdaBasicExecutionRole" - ) + "service-role/AWSLambdaBasicExecutionRole", + ), ); lambdaRole.addToPolicy(s3BucketPolicy); @@ -97,7 +97,7 @@ export class HtsgetElsaLambdaStack extends Stack { const parameterStoreConfig = config.parameterStoreConfig; const httpIntegration = new HttpLambdaIntegration( id + "HtsgetElsaIntegration", - htsgetLambda + htsgetLambda, ); const authorizer = new HttpJwtAuthorizer( id + "HtsgetElsaAuthorizer", @@ -105,7 +105,7 @@ export class HtsgetElsaLambdaStack extends Stack { { identitySource: ["$request.header.Authorization"], jwtAudience: parameterStoreConfig.jwtAud, - } + }, ); const domainName = new apigwv2.DomainName( @@ -115,10 +115,10 @@ export class HtsgetElsaLambdaStack extends Stack { certificate: Certificate.fromCertificateArn( this, id + "HtsgetElsaDomainCert", - parameterStoreConfig.arnCert + parameterStoreConfig.arnCert, ), domainName: parameterStoreConfig.htsgetDomain, - } + }, ); const hostedZone = HostedZone.fromHostedZoneAttributes( this, @@ -126,7 +126,7 @@ export class HtsgetElsaLambdaStack extends Stack { { hostedZoneId: parameterStoreConfig.hostedZoneId, zoneName: parameterStoreConfig.hostedZoneName, - } + }, ); new ARecord(this, id + "HtsgetElsaARecord", { zone: hostedZone, @@ -134,8 +134,8 @@ export class HtsgetElsaLambdaStack extends Stack { target: RecordTarget.fromAlias( new ApiGatewayv2DomainProperties( domainName.regionalDomainName, - domainName.regionalHostedZoneId - ) + domainName.regionalHostedZoneId, + ), ), }); @@ -171,26 +171,26 @@ export class HtsgetElsaLambdaStack extends Stack { return { arnCert: StringParameter.valueFromLookup( this, - parameterStoreNames.arn_cert + parameterStoreNames.arn_cert, ), jwtAud: parameterStoreNames.jwt_aud.map((jwtAud: string) => - StringParameter.valueFromLookup(this, jwtAud) + StringParameter.valueFromLookup(this, jwtAud), ), cogUserPoolId: StringParameter.valueFromLookup( this, - parameterStoreNames.cog_user_pool_id + parameterStoreNames.cog_user_pool_id, ), htsgetDomain: StringParameter.valueFromLookup( this, - parameterStoreNames.htsget_domain + parameterStoreNames.htsget_domain, ), hostedZoneId: StringParameter.valueFromLookup( this, - parameterStoreNames.hosted_zone_id + parameterStoreNames.hosted_zone_id, ), hostedZoneName: StringParameter.valueFromLookup( this, - parameterStoreNames.hosted_zone_name + parameterStoreNames.hosted_zone_name, ), }; } @@ -229,14 +229,16 @@ export class HtsgetElsaLambdaStack extends Stack { * Convert a string CORS allowMethod option to CorsHttpMethod. */ static corsAllowMethodToHttpMethod( - corsAllowMethod?: string[] + corsAllowMethod?: string[], ): apigwv2.CorsHttpMethod[] | undefined { if (corsAllowMethod?.length === 1 && corsAllowMethod.includes("*")) { return [apigwv2.CorsHttpMethod.ANY]; } else { return corsAllowMethod?.map( (element) => - apigwv2.CorsHttpMethod[element as keyof typeof apigwv2.CorsHttpMethod] + apigwv2.CorsHttpMethod[ + element as keyof typeof apigwv2.CorsHttpMethod + ], ); } } @@ -262,21 +264,21 @@ export class HtsgetElsaLambdaStack extends Stack { configToml.ticket_server_cors_allow_credentials as boolean, allowHeaders: HtsgetElsaLambdaStack.convertCors( configToml, - "ticket_server_cors_allow_headers" + "ticket_server_cors_allow_headers", ), allowMethods: HtsgetElsaLambdaStack.corsAllowMethodToHttpMethod( HtsgetElsaLambdaStack.convertCors( configToml, - "ticket_server_cors_allow_methods" - ) + "ticket_server_cors_allow_methods", + ), ), allowOrigins: HtsgetElsaLambdaStack.convertCors( configToml, - "ticket_server_cors_allow_origins" + "ticket_server_cors_allow_origins", ), exposeHeaders: HtsgetElsaLambdaStack.convertCors( configToml, - "ticket_server_cors_expose_headers" + "ticket_server_cors_expose_headers", ), maxAge: configToml.ticket_server_cors_max_age !== undefined diff --git a/deploy/package-lock.json b/deploy/package-lock.json index 780c4c4..a201f4e 100644 --- a/deploy/package-lock.json +++ b/deploy/package-lock.json @@ -1,30 +1,30 @@ { "name": "htsget-elsa-lambda", - "version": "0.1", + "version": "1.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "htsget-elsa-lambda", - "version": "0.1", + "version": "1.0", "dependencies": { - "@aws-cdk/aws-apigatewayv2-alpha": "^2.59.0-alpha.0", - "@aws-cdk/aws-apigatewayv2-authorizers-alpha": "^2.59.0-alpha.0", - "@aws-cdk/aws-apigatewayv2-integrations-alpha": "^2.59.0-alpha.0", + "@aws-cdk/aws-apigatewayv2-alpha": "^2.94.0-alpha.0", + "@aws-cdk/aws-apigatewayv2-authorizers-alpha": "^2.94.0-alpha.0", + "@aws-cdk/aws-apigatewayv2-integrations-alpha": "^2.94.0-alpha.0", "@iarna/toml": "^3.0.0", - "aws-cdk-lib": "^2.64.0", - "constructs": "^10.1.148", - "rust.aws-cdk-lambda": "^1.1.3", + "aws-cdk-lib": "^2.94.0", + "constructs": "^10.2.70", + "rust.aws-cdk-lambda": "^1.2.1", "source-map-support": "^0.5.21" }, "bin": { "htsget_app": "bin/htsget-elsa-lambda.js" }, "devDependencies": { - "@types/node": "^18.11.18", - "aws-cdk": "^2.64.0", - "prettier": "2.8.3", - "typescript": "^4.9.4" + "@types/node": "^20.5.9", + "aws-cdk": "^2.94.0", + "prettier": "3.0.3", + "typescript": "^5.2.2" } }, "node_modules/@aws-cdk/asset-awscli-v1": { @@ -43,40 +43,40 @@ "integrity": "sha512-DDt4SLdLOwWCjGtltH4VCST7hpOI5DzieuhGZsBpZ+AgJdSI2GCjklCXm0GCTwJG/SolkL5dtQXyUKgg9luBDg==" }, "node_modules/@aws-cdk/aws-apigatewayv2-alpha": { - "version": "2.59.0-alpha.0", - "resolved": "https://registry.npmjs.org/@aws-cdk/aws-apigatewayv2-alpha/-/aws-apigatewayv2-alpha-2.59.0-alpha.0.tgz", - "integrity": "sha512-dChzTZt8Otm/5iTm76qHs/1xa5PXZyS3G7s8WyaWhH8plgZGeC/q6LdYvJ/FkuDYnD0a3Yp1t6wqJAxb9R0zxA==", + "version": "2.94.0-alpha.0", + "resolved": "https://registry.npmjs.org/@aws-cdk/aws-apigatewayv2-alpha/-/aws-apigatewayv2-alpha-2.94.0-alpha.0.tgz", + "integrity": "sha512-qBJCnQwOrqhWBDWPgkYq13KOsJShxMm28K1a5CcnS+DMKcZ1HK0TWIn67RMKNSChA2+cRFQ82qKE9yrxopl3WQ==", "engines": { "node": ">= 14.15.0" }, "peerDependencies": { - "aws-cdk-lib": "^2.59.0", + "aws-cdk-lib": "2.94.0", "constructs": "^10.0.0" } }, "node_modules/@aws-cdk/aws-apigatewayv2-authorizers-alpha": { - "version": "2.59.0-alpha.0", - "resolved": "https://registry.npmjs.org/@aws-cdk/aws-apigatewayv2-authorizers-alpha/-/aws-apigatewayv2-authorizers-alpha-2.59.0-alpha.0.tgz", - "integrity": "sha512-J6EdrjbU/riYDW18WYnHs7KuUXuuWQwmbQLaAsbh6fVgrc8c8DGG+He3PhETTYScChkmOUXXxz2y45R0E5g7dA==", + "version": "2.94.0-alpha.0", + "resolved": "https://registry.npmjs.org/@aws-cdk/aws-apigatewayv2-authorizers-alpha/-/aws-apigatewayv2-authorizers-alpha-2.94.0-alpha.0.tgz", + "integrity": "sha512-ieywnsetYkxFhrIFaY11E3w7W5aMvsR1hShmhM2MC9d0WR06ojMkZeGA0Y8Xi9xaS28FyVeDfhVAiZW88OSVsw==", "engines": { "node": ">= 14.15.0" }, "peerDependencies": { - "@aws-cdk/aws-apigatewayv2-alpha": "2.59.0-alpha.0", - "aws-cdk-lib": "^2.59.0", + "@aws-cdk/aws-apigatewayv2-alpha": "2.94.0-alpha.0", + "aws-cdk-lib": "2.94.0", "constructs": "^10.0.0" } }, "node_modules/@aws-cdk/aws-apigatewayv2-integrations-alpha": { - "version": "2.59.0-alpha.0", - "resolved": "https://registry.npmjs.org/@aws-cdk/aws-apigatewayv2-integrations-alpha/-/aws-apigatewayv2-integrations-alpha-2.59.0-alpha.0.tgz", - "integrity": "sha512-HSGcmRhnqfASOhP7ucX+RrVgaIgLWsdlzWIN+fQlwX2sSAh/K9oQ9ObOWqAhQix48TNlvnr2nr1yfyEeRX/Dbw==", + "version": "2.94.0-alpha.0", + "resolved": "https://registry.npmjs.org/@aws-cdk/aws-apigatewayv2-integrations-alpha/-/aws-apigatewayv2-integrations-alpha-2.94.0-alpha.0.tgz", + "integrity": "sha512-wqUV9R/DcN5Z8lRzFri8e+y2X01RItAs0+/lR0zlsWqBuV4TnYCl3rxsndfri1oRsPUj6cU0oIBs2icvEiSW2A==", "engines": { "node": ">= 14.15.0" }, "peerDependencies": { - "@aws-cdk/aws-apigatewayv2-alpha": "2.59.0-alpha.0", - "aws-cdk-lib": "^2.59.0", + "@aws-cdk/aws-apigatewayv2-alpha": "2.94.0-alpha.0", + "aws-cdk-lib": "2.94.0", "constructs": "^10.0.0" } }, @@ -136,9 +136,9 @@ "optional": true }, "node_modules/@types/node": { - "version": "18.13.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.13.0.tgz", - "integrity": "sha512-gC3TazRzGoOnoKAhUx+Q0t8S9Tzs74z7m0ipwGpSqQrleP14hKxP4/JUeEQcD3W1/aIpnWl8pHowI7WokuZpXg==", + "version": "20.5.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.9.tgz", + "integrity": "sha512-PcGNd//40kHAS3sTlzKB9C9XL4K0sTup8nbG5lC14kzEteTNuAFh9u5nA0o5TWnSG2r/JNPRXFVcHJIIeRlmqQ==", "devOptional": true }, "node_modules/@types/ps-tree": { @@ -172,9 +172,9 @@ } }, "node_modules/aws-cdk": { - "version": "2.64.0", - "resolved": "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.64.0.tgz", - "integrity": "sha512-iXkvVeYKt6Glboeicrb3QxC6K6o25+zitM/UTfgVzDlKEvC4hwQp1KqXy/caN7SfA6X2N0LJmXfC99T4cvIH0A==", + "version": "2.94.0", + "resolved": "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.94.0.tgz", + "integrity": "sha512-9bJkzxFDYZDwPDfZi/DSUODn4HFRzuXWPhpFgIIgRykfT18P+iAIJ1AEhaaCmlqrrog5yQgN+2iYd9BwDsiBeg==", "dev": true, "bin": { "cdk": "bin/cdk" @@ -556,11 +556,11 @@ } }, "node_modules/constructs": { - "version": "10.1.246", - "resolved": "https://registry.npmjs.org/constructs/-/constructs-10.1.246.tgz", - "integrity": "sha512-2U2hnAuA4tCGGjHk/TulZfSlPobTyokEh+Azuch9nivv2yGI7/5nXDHC14i2MU/K7HFnnkQOHRSrwKSmOZkT/w==", + "version": "10.2.70", + "resolved": "https://registry.npmjs.org/constructs/-/constructs-10.2.70.tgz", + "integrity": "sha512-z6zr1E8K/9tzJbCQzY0UGX0/oVKPFKu9C/mzEnghCG6TAJINnvlq0CMKm63XqqeMleadZYm5T3sZGJKcxJS/Pg==", "engines": { - "node": ">= 14.17.0" + "node": ">= 16.14.0" } }, "node_modules/data-uri-to-buffer": { @@ -910,15 +910,15 @@ } }, "node_modules/prettier": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.3.tgz", - "integrity": "sha512-tJ/oJ4amDihPoufT5sM0Z1SKEuKay8LfVAMlbbhnnkvt6BUserZylqo2PN+p9KeljLr0OHa2rXHU1T8reeoTrw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.3.tgz", + "integrity": "sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==", "dev": true, "bin": { - "prettier": "bin-prettier.js" + "prettier": "bin/prettier.cjs" }, "engines": { - "node": ">=10.13.0" + "node": ">=14" }, "funding": { "url": "https://github.com/prettier/prettier?sponsor=1" @@ -1086,16 +1086,16 @@ "integrity": "sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==" }, "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", "dev": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=4.2.0" + "node": ">=14.17" } }, "node_modules/universalify": { @@ -1192,21 +1192,21 @@ "integrity": "sha512-DDt4SLdLOwWCjGtltH4VCST7hpOI5DzieuhGZsBpZ+AgJdSI2GCjklCXm0GCTwJG/SolkL5dtQXyUKgg9luBDg==" }, "@aws-cdk/aws-apigatewayv2-alpha": { - "version": "2.59.0-alpha.0", - "resolved": "https://registry.npmjs.org/@aws-cdk/aws-apigatewayv2-alpha/-/aws-apigatewayv2-alpha-2.59.0-alpha.0.tgz", - "integrity": "sha512-dChzTZt8Otm/5iTm76qHs/1xa5PXZyS3G7s8WyaWhH8plgZGeC/q6LdYvJ/FkuDYnD0a3Yp1t6wqJAxb9R0zxA==", + "version": "2.94.0-alpha.0", + "resolved": "https://registry.npmjs.org/@aws-cdk/aws-apigatewayv2-alpha/-/aws-apigatewayv2-alpha-2.94.0-alpha.0.tgz", + "integrity": "sha512-qBJCnQwOrqhWBDWPgkYq13KOsJShxMm28K1a5CcnS+DMKcZ1HK0TWIn67RMKNSChA2+cRFQ82qKE9yrxopl3WQ==", "requires": {} }, "@aws-cdk/aws-apigatewayv2-authorizers-alpha": { - "version": "2.59.0-alpha.0", - "resolved": "https://registry.npmjs.org/@aws-cdk/aws-apigatewayv2-authorizers-alpha/-/aws-apigatewayv2-authorizers-alpha-2.59.0-alpha.0.tgz", - "integrity": "sha512-J6EdrjbU/riYDW18WYnHs7KuUXuuWQwmbQLaAsbh6fVgrc8c8DGG+He3PhETTYScChkmOUXXxz2y45R0E5g7dA==", + "version": "2.94.0-alpha.0", + "resolved": "https://registry.npmjs.org/@aws-cdk/aws-apigatewayv2-authorizers-alpha/-/aws-apigatewayv2-authorizers-alpha-2.94.0-alpha.0.tgz", + "integrity": "sha512-ieywnsetYkxFhrIFaY11E3w7W5aMvsR1hShmhM2MC9d0WR06ojMkZeGA0Y8Xi9xaS28FyVeDfhVAiZW88OSVsw==", "requires": {} }, "@aws-cdk/aws-apigatewayv2-integrations-alpha": { - "version": "2.59.0-alpha.0", - "resolved": "https://registry.npmjs.org/@aws-cdk/aws-apigatewayv2-integrations-alpha/-/aws-apigatewayv2-integrations-alpha-2.59.0-alpha.0.tgz", - "integrity": "sha512-HSGcmRhnqfASOhP7ucX+RrVgaIgLWsdlzWIN+fQlwX2sSAh/K9oQ9ObOWqAhQix48TNlvnr2nr1yfyEeRX/Dbw==", + "version": "2.94.0-alpha.0", + "resolved": "https://registry.npmjs.org/@aws-cdk/aws-apigatewayv2-integrations-alpha/-/aws-apigatewayv2-integrations-alpha-2.94.0-alpha.0.tgz", + "integrity": "sha512-wqUV9R/DcN5Z8lRzFri8e+y2X01RItAs0+/lR0zlsWqBuV4TnYCl3rxsndfri1oRsPUj6cU0oIBs2icvEiSW2A==", "requires": {} }, "@iarna/toml": { @@ -1256,9 +1256,9 @@ "optional": true }, "@types/node": { - "version": "18.13.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.13.0.tgz", - "integrity": "sha512-gC3TazRzGoOnoKAhUx+Q0t8S9Tzs74z7m0ipwGpSqQrleP14hKxP4/JUeEQcD3W1/aIpnWl8pHowI7WokuZpXg==", + "version": "20.5.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.9.tgz", + "integrity": "sha512-PcGNd//40kHAS3sTlzKB9C9XL4K0sTup8nbG5lC14kzEteTNuAFh9u5nA0o5TWnSG2r/JNPRXFVcHJIIeRlmqQ==", "devOptional": true }, "@types/ps-tree": { @@ -1283,9 +1283,9 @@ } }, "aws-cdk": { - "version": "2.64.0", - "resolved": "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.64.0.tgz", - "integrity": "sha512-iXkvVeYKt6Glboeicrb3QxC6K6o25+zitM/UTfgVzDlKEvC4hwQp1KqXy/caN7SfA6X2N0LJmXfC99T4cvIH0A==", + "version": "2.94.0", + "resolved": "https://registry.npmjs.org/aws-cdk/-/aws-cdk-2.94.0.tgz", + "integrity": "sha512-9bJkzxFDYZDwPDfZi/DSUODn4HFRzuXWPhpFgIIgRykfT18P+iAIJ1AEhaaCmlqrrog5yQgN+2iYd9BwDsiBeg==", "dev": true, "requires": { "fsevents": "2.3.2" @@ -1527,9 +1527,9 @@ "optional": true }, "constructs": { - "version": "10.1.246", - "resolved": "https://registry.npmjs.org/constructs/-/constructs-10.1.246.tgz", - "integrity": "sha512-2U2hnAuA4tCGGjHk/TulZfSlPobTyokEh+Azuch9nivv2yGI7/5nXDHC14i2MU/K7HFnnkQOHRSrwKSmOZkT/w==" + "version": "10.2.70", + "resolved": "https://registry.npmjs.org/constructs/-/constructs-10.2.70.tgz", + "integrity": "sha512-z6zr1E8K/9tzJbCQzY0UGX0/oVKPFKu9C/mzEnghCG6TAJINnvlq0CMKm63XqqeMleadZYm5T3sZGJKcxJS/Pg==" }, "data-uri-to-buffer": { "version": "4.0.1", @@ -1779,9 +1779,9 @@ "optional": true }, "prettier": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.3.tgz", - "integrity": "sha512-tJ/oJ4amDihPoufT5sM0Z1SKEuKay8LfVAMlbbhnnkvt6BUserZylqo2PN+p9KeljLr0OHa2rXHU1T8reeoTrw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.3.tgz", + "integrity": "sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==", "dev": true }, "ps-tree": { @@ -1884,9 +1884,9 @@ "integrity": "sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==" }, "typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", "dev": true }, "universalify": { diff --git a/deploy/package.json b/deploy/package.json index 9fa6fa9..cebb6b5 100644 --- a/deploy/package.json +++ b/deploy/package.json @@ -1,6 +1,6 @@ { "name": "htsget-elsa-lambda", - "version": "0.1", + "version": "1.0", "bin": { "htsget_app": "bin/htsget-elsa-lambda.js" }, @@ -10,19 +10,19 @@ "cdk": "cdk" }, "devDependencies": { - "@types/node": "^18.11.18", - "aws-cdk": "^2.64.0", - "prettier": "2.8.3", - "typescript": "^4.9.4" + "@types/node": "^20.5.9", + "aws-cdk": "^2.94.0", + "prettier": "3.0.3", + "typescript": "^5.2.2" }, "dependencies": { - "@aws-cdk/aws-apigatewayv2-alpha": "^2.59.0-alpha.0", - "@aws-cdk/aws-apigatewayv2-authorizers-alpha": "^2.59.0-alpha.0", - "@aws-cdk/aws-apigatewayv2-integrations-alpha": "^2.59.0-alpha.0", + "@aws-cdk/aws-apigatewayv2-alpha": "^2.94.0-alpha.0", + "@aws-cdk/aws-apigatewayv2-authorizers-alpha": "^2.94.0-alpha.0", + "@aws-cdk/aws-apigatewayv2-integrations-alpha": "^2.94.0-alpha.0", "@iarna/toml": "^3.0.0", - "aws-cdk-lib": "^2.64.0", - "constructs": "^10.1.148", - "rust.aws-cdk-lambda": "^1.1.3", + "aws-cdk-lib": "^2.94.0", + "constructs": "^10.2.70", + "rust.aws-cdk-lambda": "^1.2.1", "source-map-support": "^0.5.21" } } diff --git a/htsget-elsa-lambda/Cargo.toml b/htsget-elsa-lambda/Cargo.toml index f54f46e..057aa97 100644 --- a/htsget-elsa-lambda/Cargo.toml +++ b/htsget-elsa-lambda/Cargo.toml @@ -7,19 +7,19 @@ edition = "2021" [dependencies] tokio = { version = "1.25", features = ["macros", "rt-multi-thread"] } -lambda_http = { version = "0.7" } +lambda_http = { version = "0.8" } serde = { version = "1.0" } serde_json = "1.0" tracing = "0.1" http-serde = "1.1" http = "0.2" -htsget-config = { git = "https://github.com/umccr/htsget-rs.git", branch = "feat/htsget-elsa" } -htsget-lambda = { git = "https://github.com/umccr/htsget-rs.git", branch = "feat/htsget-elsa" } +htsget-config = { version = "0.7.1", features = ["s3-storage"] } +htsget-lambda = { version = "0.4.9", features = ["s3-storage"] } htsget-elsa = { version = "0.1", path = "../htsget-elsa" } [dev-dependencies] htsget-elsa = { version = "0.1", path = "../htsget-elsa", features = ["test-utils"] } -htsget-search = { git = "https://github.com/umccr/htsget-rs.git", branch = "feat/htsget-elsa" } -htsget-test = { git = "https://github.com/umccr/htsget-rs.git", branch = "feat/htsget-elsa", default-features = false, features = ["http-tests"] } +htsget-search = { version = "0.6.2", features = ["s3-storage"] } +htsget-test = { version = "0.5.2", features = ["http-tests", "s3-storage"] } diff --git a/htsget-elsa-lambda/src/lib.rs b/htsget-elsa-lambda/src/lib.rs index d4090c2..97cc747 100644 --- a/htsget-elsa-lambda/src/lib.rs +++ b/htsget-elsa-lambda/src/lib.rs @@ -55,10 +55,7 @@ pub async fn route_request<'a>( elsa_endpoint: &ElsaEndpoint<'a, S3, S3>, ) -> http::Result> { let resolver = get_resolvers(config, &route, elsa_endpoint).await?; - let router = Router::new( - Arc::new(resolver), - config.htsget_config().ticket_server().service_info(), - ); + let router = Router::new(Arc::new(resolver), config.htsget_config().service_info()); router.route_request_with_route(event, route).await } diff --git a/htsget-elsa-lambda/src/main.rs b/htsget-elsa-lambda/src/main.rs index 01f815f..5856a65 100644 --- a/htsget-elsa-lambda/src/main.rs +++ b/htsget-elsa-lambda/src/main.rs @@ -7,11 +7,11 @@ use htsget_elsa_lambda::handle_request; #[tokio::main] async fn main() -> Result<(), Error> { - HtsgetConfig::setup_tracing()?; - if let Some(path) = HtsgetConfig::parse_args() { let config: Config = from_path(&path)?; + config.htsget_config().setup_tracing()?; + handle_request(config).await } else { Ok(()) diff --git a/htsget-elsa/Cargo.toml b/htsget-elsa/Cargo.toml index eb574f6..227ceb4 100644 --- a/htsget-elsa/Cargo.toml +++ b/htsget-elsa/Cargo.toml @@ -14,17 +14,17 @@ async-trait = "0.1" http = "0.2" reqwest = { version = "0.11", default-features = false, features = ["rustls-tls", "json"] } thiserror = "1.0" -aws-config = "0.54" -aws-sdk-s3 = "0.24" +aws-config = "0.56" +aws-sdk-s3 = "0.30" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" regex = "1.7" bytes = "1.4" tracing = "0.1" -htsget-config = { git = "https://github.com/umccr/htsget-rs.git", branch = "feat/htsget-elsa" } +htsget-config = { version = "0.7.1", features = ["s3-storage"] } -htsget-test = { git = "https://github.com/umccr/htsget-rs.git", optional = true, branch = "feat/htsget-elsa", features = ["aws-mocks"] } +htsget-test = { version = "0.5.2", features = ["aws-mocks", "s3-storage"], optional = true } wiremock = { version = "0.5", optional = true } [dev-dependencies] diff --git a/htsget-elsa/README.md b/htsget-elsa/README.md index edad8e4..0a6916f 100644 --- a/htsget-elsa/README.md +++ b/htsget-elsa/README.md @@ -35,7 +35,7 @@ Elsa and htsget-rs interact in the following way: { "id": "R001", "reads": { - "C618CDEE119511EE8A2DFFDE5D69679D": { + "id": { "url": "s3://url/to/file.bam", "restrictions": [ { "chromosome": 1, "start": 0, "end": 1000 } @@ -43,7 +43,7 @@ Elsa and htsget-rs interact in the following way: } }, "variants": { - "C618CDEE119511EE8A2DFFDE5D69679D": { + "id": { "url": "s3://url/to/file.vcf.gz", "variantSampleId": "", "restrictions": [ diff --git a/htsget-elsa/src/elsa_endpoint.rs b/htsget-elsa/src/elsa_endpoint.rs index d8035f2..3eee3a7 100644 --- a/htsget-elsa/src/elsa_endpoint.rs +++ b/htsget-elsa/src/elsa_endpoint.rs @@ -108,7 +108,7 @@ impl ElsaManifest { Resolver::new( Storage::S3 { - s3_storage: S3Storage::new(bucket.to_string()), + s3_storage: S3Storage::new(bucket.to_string(), None, false), }, &format!("^{}/{}$", release_key, id), &key, diff --git a/htsget-elsa/src/s3.rs b/htsget-elsa/src/s3.rs index 5388116..9218e6d 100644 --- a/htsget-elsa/src/s3.rs +++ b/htsget-elsa/src/s3.rs @@ -2,7 +2,7 @@ use std::ops::Sub; use std::time::{Duration, SystemTime}; use async_trait::async_trait; -use aws_sdk_s3::types::{ByteStream, DateTime}; +use aws_sdk_s3::primitives::{ByteStream, DateTime}; use aws_sdk_s3::Client; use bytes::Bytes; use htsget_config::resolver::Resolver; @@ -149,10 +149,10 @@ impl Cache for S3 { .send() .await .map_err(|err| { - let err = err.into_service_error(); - trace!(err = err.message(), "put object error"); + let err = err.into_service_error().to_string(); + trace!(err = err, "put object error"); - PutObjectError(err.to_string()) + PutObjectError(err) })?; } else { trace!("no caching bucket configured");