This is an automated email from the ASF dual-hosted git repository. psiace pushed a commit to branch dependabot in repository https://gitbox.apache.org/repos/asf/opendal-oli.git
commit 6d47eea67811583c092f7cf7913c015a64ababaa Author: Chojan Shang <[email protected]> AuthorDate: Thu Jan 8 18:16:26 2026 +0000 chore: sync opendal deps and tooling --- .github/dependabot.yml | 30 +++ Cargo.lock | 180 +++++++-------- Cargo.toml | 2 +- DEPENDENCIES.rust.tsv | 572 ++++++++++++++++++++++++---------------------- scripts/constants.py | 24 ++ scripts/dependencies.py | 81 +++++++ src/config/mod.rs | 6 +- tests/integration/edit.rs | 1 - 8 files changed, 521 insertions(+), 375 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..44be768 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,30 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +version: 2 +updates: + - package-ecosystem: "github-actions" + directory: "/" + open-pull-requests-limit: 2 + schedule: + interval: "yearly" + + - package-ecosystem: "cargo" + directory: "/" + open-pull-requests-limit: 2 + schedule: + interval: "monthly" diff --git a/Cargo.lock b/Cargo.lock index db1aa01..ade6663 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,21 +2,6 @@ # It is not intended for manual editing. version = 4 -[[package]] -name = "addr2line" -version = "0.24.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" -dependencies = [ - "gimli", -] - -[[package]] -name = "adler2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" - [[package]] name = "aes" version = "0.8.4" @@ -137,30 +122,15 @@ checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "backon" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd0b50b1b78dbadd44ab18b3c794e496f3a139abb9fbc27d9c94c4eebbb96496" +checksum = "cffb0e931875b666fc4fcb20fee52e9bbd1ef836fd9e9e04ec21555f9f85f7ef" dependencies = [ "fastrand", "gloo-timers", "tokio", ] -[[package]] -name = "backtrace" -version = "0.3.75" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002" -dependencies = [ - "addr2line", - "cfg-if", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", - "windows-targets 0.52.6", -] - [[package]] name = "base64" version = "0.22.1" @@ -781,12 +751,6 @@ dependencies = [ "prost", ] -[[package]] -name = "gimli" -version = "0.31.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" - [[package]] name = "gloo-timers" version = "0.3.0" @@ -1167,17 +1131,6 @@ dependencies = [ "serde_json", ] -[[package]] -name = "io-uring" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b86e202f00093dcba4275d4636b93ef9dd75d025ae560d2521b45ea28ab49013" -dependencies = [ - "bitflags", - "cfg-if", - "libc", -] - [[package]] name = "ipnet" version = "2.11.0" @@ -1215,6 +1168,47 @@ version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +[[package]] +name = "jiff" +version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e67e8da4c49d6d9909fe03361f9b620f58898859f5c7aded68351e85e71ecf50" +dependencies = [ + "jiff-static", + "jiff-tzdb-platform", + "log", + "portable-atomic", + "portable-atomic-util", + "serde_core", + "windows-sys 0.60.2", +] + +[[package]] +name = "jiff-static" +version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0c84ee7f197eca9a86c6fd6cb771e55eb991632f15f2bc3ca6ec838929e6e78" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "jiff-tzdb" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68971ebff725b9e2ca27a601c5eb38a4c5d64422c4cbab0c535f248087eda5c2" + +[[package]] +name = "jiff-tzdb-platform" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "875a5a69ac2bab1a891711cf5eccbec1ce0341ea805560dcd90b7a2e925132e8" +dependencies = [ + "jiff-tzdb", +] + [[package]] name = "js-sys" version = "0.3.77" @@ -1349,15 +1343,6 @@ dependencies = [ "unicase", ] -[[package]] -name = "miniz_oxide" -version = "0.8.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a" -dependencies = [ - "adler2", -] - [[package]] name = "mio" version = "1.0.3" @@ -1433,15 +1418,6 @@ dependencies = [ "libm", ] -[[package]] -name = "object" -version = "0.36.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" -dependencies = [ - "memchr", -] - [[package]] name = "oli" version = "0.41.23" @@ -1480,21 +1456,21 @@ checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" [[package]] name = "opendal" -version = "0.54.1" +version = "0.55.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42afda58fa2cf50914402d132cc1caacff116a85d10c72ab2082bb7c50021754" +checksum = "d075ab8a203a6ab4bc1bce0a4b9fe486a72bf8b939037f4b78d95386384bc80a" dependencies = [ "anyhow", "backon", "base64", "bytes", - "chrono", "crc32c", "futures", "getrandom 0.2.16", "ghac", "http", "http-body", + "jiff", "log", "md-5", "mime_guess", @@ -1507,6 +1483,7 @@ dependencies = [ "serde_json", "sha2", "tokio", + "url", "uuid", ] @@ -1652,6 +1629,15 @@ version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" +[[package]] +name = "portable-atomic-util" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8a2f0d8d040d7848a709caf78912debcc3f33ee4b3cac47d73d1e1069e83507" +dependencies = [ + "portable-atomic", +] + [[package]] name = "potential_utf" version = "0.1.2" @@ -1967,9 +1953,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.23" +version = "0.12.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d429f34c8092b2d42c7c93cec323bb4adeb7c67698f70839adec842ec10c7ceb" +checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147" dependencies = [ "base64", "bytes", @@ -2052,12 +2038,6 @@ dependencies = [ "trim-in-place", ] -[[package]] -name = "rustc-demangle" -version = "0.1.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" - [[package]] name = "rustc-hash" version = "2.1.1" @@ -2189,18 +2169,28 @@ checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" [[package]] name = "serde" -version = "1.0.219" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" +dependencies = [ + "serde_core", + "serde_derive", +] + +[[package]] +name = "serde_core" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", @@ -2532,29 +2522,26 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.47.0" +version = "1.49.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43864ed400b6043a4757a25c7a64a8efde741aed79a056a2fb348a406701bb35" +checksum = "72a2903cd7736441aac9df9d7688bd0ce48edccaadf181c3b90be801e81d3d86" dependencies = [ - "backtrace", "bytes", - "io-uring", "libc", "mio", "parking_lot", "pin-project-lite", "signal-hook-registry", - "slab", "socket2 0.6.0", "tokio-macros", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] name = "tokio-macros" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" +checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" dependencies = [ "proc-macro2", "quote", @@ -2640,9 +2627,9 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.6.6" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2" +checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" dependencies = [ "bitflags", "bytes", @@ -3070,6 +3057,15 @@ dependencies = [ "windows-targets 0.53.3", ] +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link 0.2.1", +] + [[package]] name = "windows-targets" version = "0.52.6" diff --git a/Cargo.toml b/Cargo.toml index 66a56b0..392878f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -39,7 +39,7 @@ humantime = { version = "2.2" } humantime-serde = { version = "1.1" } indicatif = { version = "0.18" } inquire = { version = "0.9", default-features = false, features = ["crossterm"] } -opendal = { version = "0.54.0", features = [ +opendal = { version = "0.55.0", features = [ "services-azblob", "services-azdls", "services-cos", diff --git a/DEPENDENCIES.rust.tsv b/DEPENDENCIES.rust.tsv index 4cc3d7f..1209cde 100644 --- a/DEPENDENCIES.rust.tsv +++ b/DEPENDENCIES.rust.tsv @@ -1,278 +1,294 @@ -crate 0BSD Apache-2.0 Apache-2.0 WITH LLVM-exception BSD-2-Clause BSD-3-Clause BSL-1.0 CDLA-Permissive-2.0 ISC LGPL-2.1-or-later MIT MPL-2.0 Unicode-3.0 Unlicense Zlib [email protected] X X [email protected] X X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X X [email protected] X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X X [email protected] X X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X X [email protected] X X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X X [email protected] X X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected]+wasi-snapshot-preview1 X X X [email protected]+wasi-0.2.4 X X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X X [email protected] X [email protected] X [email protected] X [email protected] X X X [email protected] X [email protected] X [email protected] X X [email protected] X [email protected] X [email protected] X +crate Apache-2.0 Apache-2.0 WITH LLVM-exception BSD-2-Clause BSD-3-Clause BSL-1.0 CDLA-Permissive-2.0 ISC LGPL-2.1-or-later MIT MPL-2.0 Unicode-3.0 Unlicense [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X X [email protected] X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X X [email protected] X X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X X [email protected] X X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X [email protected] X X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected]+wasi-snapshot-preview1 X X X [email protected]+wasi-0.2.4 X X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X X [email protected] X [email protected] X X X [email protected] X [email protected] X [email protected] X [email protected] X X X [email protected] X [email protected] X [email protected] X X [email protected] X [email protected] X [email protected] X diff --git a/scripts/constants.py b/scripts/constants.py new file mode 100644 index 0000000..b2cc28f --- /dev/null +++ b/scripts/constants.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python3 +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +from pathlib import Path + +ROOT_DIR = Path(__file__).resolve().parent.parent +PACKAGES = [ + ".", +] diff --git a/scripts/dependencies.py b/scripts/dependencies.py new file mode 100644 index 0000000..93b6183 --- /dev/null +++ b/scripts/dependencies.py @@ -0,0 +1,81 @@ +#!/usr/bin/env python3 +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter +from pathlib import Path +import subprocess + +from constants import PACKAGES, ROOT_DIR + + +def package_paths(): + for package in PACKAGES: + yield (ROOT_DIR / package).resolve() + + +def check_single_package(package_dir: Path): + if (package_dir / "Cargo.toml").exists(): + print(f"Checking dependencies of {package_dir}") + subprocess.run(["cargo", "deny", "check", "license"], cwd=package_dir) + else: + print(f"Skipping {package_dir} as Cargo.toml does not exist") + + +def check_deps(): + for package_dir in package_paths(): + check_single_package(package_dir) + + +def generate_single_package(package_dir: Path): + if (package_dir / "Cargo.toml").exists(): + print(f"Generating dependencies {package_dir}") + result = subprocess.check_output( + ["cargo", "deny", "list", "-f", "tsv", "-t", "0.6"], + cwd=package_dir, + text=True, + ) + output_path = package_dir / "DEPENDENCIES.rust.tsv" + output_path.write_text(result) + else: + print(f"Skipping {package_dir} as Cargo.toml does not exist") + + +def generate_deps(): + for package_dir in package_paths(): + generate_single_package(package_dir) + + +if __name__ == "__main__": + parser = ArgumentParser(formatter_class=ArgumentDefaultsHelpFormatter) + parser.set_defaults(func=parser.print_help) + subparsers = parser.add_subparsers() + + parser_check = subparsers.add_parser( + "check", description="Check dependencies", help="Check dependencies" + ) + parser_check.set_defaults(func=check_deps) + + parser_generate = subparsers.add_parser( + "generate", description="Generate dependencies", help="Generate dependencies" + ) + parser_generate.set_defaults(func=generate_deps) + + args = parser.parse_args() + arg_dict = dict(vars(args)) + del arg_dict["func"] + args.func(**arg_dict) diff --git a/src/config/mod.rs b/src/config/mod.rs index 4c493e7..5651c3d 100644 --- a/src/config/mod.rs +++ b/src/config/mod.rs @@ -323,7 +323,7 @@ enable_virtual_host_style = "on" for case in test_cases { let (op, path) = cfg.parse_location(case.input).unwrap(); let info = op.info(); - assert_eq!(Scheme::Fs, info.scheme()); + assert_eq!(Scheme::Fs.into_static(), info.scheme()); assert_eq!("/", info.root()); assert!(!path.starts_with('.')); assert!(path.ends_with(case.suffix)); @@ -345,7 +345,7 @@ enable_virtual_host_style = "on" let (op, path) = cfg.parse_location("mys3:///foo/1.txt").unwrap(); assert_eq!("/foo/1.txt", path); let info = op.info(); - assert_eq!(Scheme::S3, info.scheme()); + assert_eq!(Scheme::S3.into_static(), info.scheme()); assert_eq!("mybucket", info.name()); } @@ -364,7 +364,7 @@ enable_virtual_host_style = "on" let (op, path) = cfg.parse_location("mys3:/foo/1.txt").unwrap(); assert_eq!("/foo/1.txt", path); let info = op.info(); - assert_eq!(Scheme::S3, info.scheme()); + assert_eq!(Scheme::S3.into_static(), info.scheme()); assert_eq!("mybucket", info.name()); } diff --git a/tests/integration/edit.rs b/tests/integration/edit.rs index dbdbe8b..cc3b7a0 100644 --- a/tests/integration/edit.rs +++ b/tests/integration/edit.rs @@ -15,7 +15,6 @@ // specific language governing permissions and limitations // under the License. -use std::env; use std::fs; use crate::test_utils::*;
