diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e1cb0845..50f9b988 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -52,6 +52,20 @@ jobs: - uses: Swatinem/rust-cache@v2 - run: ./scripts/clippy.sh + cargo-shear: + if: github.event.pull_request.draft == false + name: 'cargo shear' + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - run: rustup show + - name: Install cargo-binstall + uses: cargo-bins/cargo-binstall@main + - name: Install cargo-shear + # Newer versions require 2024 edition + run: cargo binstall --no-confirm cargo-shear --force --locked --version 1.1.9 + - run: cargo shear + cargo-test: if: github.event.pull_request.draft == false name: 'cargo test' diff --git a/Cargo.lock b/Cargo.lock index 87f25f85..5abbf6ab 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -849,7 +849,6 @@ version = "0.1.0" dependencies = [ "anyhow", "arc-swap", - "async-trait", "async-tungstenite", "base_mem_check", "base_rt", @@ -861,7 +860,6 @@ dependencies = [ "deno_broadcast_channel", "deno_cache", "deno_canvas", - "deno_config", "deno_console", "deno_core", "deno_facade", @@ -885,15 +883,11 @@ dependencies = [ "http 1.2.0", "http-body-util", "http_utils", - "httparse", "hyper 0.14.28", "hyper 1.5.2", "hyper-util", - "import_map", "libc", "log", - "monch", - "notify", "num-traits", "once_cell", "pin-project", @@ -903,8 +897,6 @@ dependencies = [ "serde", "serial_test", "strum", - "tempfile", - "thiserror 2.0.8", "tls-listener", "tokio", "tokio-rustls 0.25.0", @@ -912,8 +904,6 @@ dependencies = [ "tracing", "tracing-subscriber", "tungstenite", - "url", - "urlencoding", "uuid", "winapi", ] @@ -1445,11 +1435,8 @@ dependencies = [ "base", "clap", "deno", - "deno_core", "deno_facade", "env_logger", - "ext_event_worker", - "glob", "log", "once_cell", "tokio", @@ -1493,15 +1480,6 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" -[[package]] -name = "convert_case" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" -dependencies = [ - "unicode-segmentation", -] - [[package]] name = "cooked-waker" version = "5.0.0" @@ -1544,7 +1522,6 @@ dependencies = [ "futures", "libc", "log", - "nix 0.26.2", "once_cell", "signal-hook", "signal-hook-tokio", @@ -1810,7 +1787,6 @@ version = "2.1.4" dependencies = [ "anyhow", "async-trait", - "base32", "base64 0.21.7", "bincode", "cache_control", @@ -1845,11 +1821,8 @@ dependencies = [ "dissimilar", "dotenvy", "ext_node", - "ext_runtime", "faster-hex", - "flate2", "fs3", - "hex", "http 1.2.0", "http-body 1.0.0", "http-body-util", @@ -1859,21 +1832,18 @@ dependencies = [ "import_map", "indexmap 2.2.3", "junction", - "lazy-regex", "libc", "log", - "nix 0.27.1", + "nix", "node_resolver", "notify", "once_cell", "pathdiff", - "percent-encoding", "rand", "regex", "reqwest 0.12.7", "ring 0.17.14", "serde", - "tar", "thiserror 2.0.8", "tokio", "tokio-util", @@ -2038,7 +2008,7 @@ dependencies = [ "futures", "indexmap 2.2.3", "libc", - "memoffset 0.9.0", + "memoffset", "parking_lot", "percent-encoding", "pin-project", @@ -2127,9 +2097,7 @@ name = "deno_facade" version = "0.1.0" dependencies = [ "anyhow", - "async-trait", "base64 0.21.7", - "dashmap", "deno", "deno_config", "deno_core", @@ -2146,9 +2114,7 @@ dependencies = [ "import_map", "indexmap 2.2.3", "log", - "monch", "once_cell", - "pathdiff", "regex", "rkyv", "scopeguard", @@ -2213,7 +2179,7 @@ dependencies = [ "filetime", "junction", "libc", - "nix 0.27.1", + "nix", "rand", "rayon", "serde", @@ -3141,22 +3107,15 @@ dependencies = [ "anyhow", "base_rt", "blas-src", - "clap", - "convert_case", "ctor", "deno_core", "ext_ai_v8_utilities", "faster-hex", "futures", - "futures-util", "fxhash", - "log", "ndarray", "once_cell", - "openblas-src", "ort", - "ort-sys", - "rand", "reqwest 0.12.7", "scopeguard", "serde", @@ -3164,7 +3123,6 @@ dependencies = [ "tokio", "tokio-util", "tracing", - "tracing-subscriber", "xxhash-rust", ] @@ -3205,7 +3163,6 @@ version = "0.1.0" dependencies = [ "aead-gcm-stream", "aes", - "async-trait", "base64 0.21.7", "blake2", "boxed_error", @@ -3218,7 +3175,6 @@ dependencies = [ "deno_fetch", "deno_fs", "deno_io", - "deno_media_type", "deno_net", "deno_package_json", "deno_path_util", @@ -3241,10 +3197,8 @@ dependencies = [ "hyper 1.5.2", "hyper-util", "idna", - "indexmap 2.2.3", "ipnetwork", "k256", - "lazy-regex", "libc", "libz-sys", "md-5", @@ -3259,12 +3213,10 @@ dependencies = [ "p224", "p256 0.13.2", "p384", - "path-clean", "pbkdf2", "pin-project-lite", "pkcs8 0.10.2", "rand", - "regex", "ring 0.17.14", "ripemd", "rsa", @@ -3274,11 +3226,9 @@ dependencies = [ "sha1", "sha2", "sha3", - "signature 2.2.0", "simd-json", "sm3", "spki 0.7.3", - "stable_deref_trait", "thiserror 2.0.8", "tokio", "tokio-eld", @@ -3296,7 +3246,6 @@ name = "ext_os" version = "0.1.0" dependencies = [ "deno_core", - "ext_runtime", "libc", "serde", ] @@ -3340,14 +3289,12 @@ dependencies = [ "anyhow", "bytes", "deno", - "deno_config", "deno_core", "deno_facade", "enum-as-inner", "ext_event_worker", "ext_runtime", "fs", - "futures-util", "http_utils", "hyper 0.14.28", "log", @@ -3598,26 +3545,20 @@ dependencies = [ "base", "ctor", "deno", - "deno_ast", "deno_core", "deno_fs", "deno_io", "deno_npm", - "deno_semver", "dotenvy", "either", "enum-as-inner", - "eszip", "eszip_trait", "ext_event_worker", - "ext_node", "futures", "headers", "hyper 0.14.28", "hyper-proxy", "hyper-rustls 0.24.2", - "import_map", - "indexmap 2.2.3", "log", "memmap2", "normalize-path", @@ -4262,11 +4203,9 @@ name = "http_utils" version = "0.1.0" dependencies = [ "bytes", - "futures-util", "http 0.2.11", "hyper 0.14.28", "tokio", - "tokio-util", ] [[package]] @@ -5099,15 +5038,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a64a92489e2744ce060c349162be1c5f33c6969234104dbd99ddb5feb08b8c15" -[[package]] -name = "memoffset" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" -dependencies = [ - "autocfg", -] - [[package]] name = "memoffset" version = "0.9.0" @@ -5303,20 +5233,6 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" -[[package]] -name = "nix" -version = "0.26.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a" -dependencies = [ - "bitflags 1.3.2", - "cfg-if", - "libc", - "memoffset 0.7.1", - "pin-utils", - "static_assertions", -] - [[package]] name = "nix" version = "0.27.1" diff --git a/Cargo.toml b/Cargo.toml index e3d26430..58a7a3d9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -37,7 +37,6 @@ deno_cache_dir = "=0.14.0" deno_config = { version = "=0.39.3", features = ["workspace", "sync"] } deno_graph = "=0.86.3" deno_lockfile = "=0.23.2" -deno_media_type = { version = "0.2.0", features = ["module_specifier"] } deno_npm = "=0.26.0" deno_package_json = { version = "0.2.1", default-features = false } deno_path_util = "=0.2.1" @@ -68,7 +67,6 @@ deno_webstorage = "0.177.0" base = { version = "0.1.0", path = "./crates/base" } base_mem_check = { version = "0.1.0", path = "./crates/base_mem_check" } base_rt = { version = "0.1.0", path = "./crates/base_rt" } -cli = { version = "0.1.0", path = "./cli" } cpu_timer = { version = "0.1.0", path = "./crates/cpu_timer" } deno_facade = { version = "0.1.0", path = "./crates/deno_facade" } eszip_trait = { version = "0.1.0", path = "./crates/eszip_trait" } @@ -86,7 +84,7 @@ ext_runtime = { version = "0.1.0", path = "./ext/runtime" } ext_workers = { version = "0.1.0", path = "./ext/workers" } # local deps -clap = { version = "4.5.16", features = ["cargo", "string", "env"] } +clap = { version = "4.5.16", features = ["cargo", "string", "env", "derive"] } ctor = "0.2.6" either = "1" enum-as-inner = "0.6.0" @@ -106,7 +104,6 @@ xxhash-rust = "0.8" aes = "=0.8.3" anyhow = "1.0.57" async-trait = "0.1.73" -base32 = "=0.5.1" base64 = "0.21.7" brotli = "6.0.0" bytes = "1.4.0" @@ -122,7 +119,6 @@ ecb = "=0.1.2" elliptic-curve = { version = "0.13.4", features = ["alloc", "arithmetic", "ecdh", "std", "pem", "jwk"] } faster-hex = "0.9" fastwebsockets = { version = "0.8", features = ["upgrade", "unstable-split"] } -flate2 = { version = "=1.0.30", default-features = false } fs3 = "0.5.0" futures = "0.3.21" glob = "0.3.1" @@ -136,19 +132,15 @@ hyper = { version = "1.4.1", features = ["full"] } hyper-util = { version = "=0.1.7", features = ["tokio", "server", "server-auto"] } hyper_v014 = { package = "hyper", version = "0.14.26", features = ["runtime", "http1"] } indexmap = { version = "2", features = ["serde"] } -lazy-regex = "3" libc = "0.2.126" libz-sys = { version = "1.1.20", default-features = false } log = "0.4.20" -monch = "=0.5.0" notify = "=6.1.1" num-bigint = { version = "0.4", features = ["rand"] } once_cell = "1.17.1" p224 = { version = "0.13.0", features = ["ecdh"] } p256 = { version = "0.13.2", features = ["ecdh", "jwk"] } p384 = { version = "0.13.0", features = ["ecdh", "jwk"] } -parking_lot = "0.12.0" -percent-encoding = "2.3.0" pin-project = "1.0.11" # don't pin because they yank crates from cargo rand = "=0.8.5" regex = "^1.7.0" @@ -157,16 +149,12 @@ reqwest_v011 = { package = "reqwest", version = "0.11", features = ["stream", "j ring = "^0.17.14" rustls = { version = "0.23.11", default-features = false, features = ["logging", "std", "tls12", "ring"] } rustls-pemfile = "2" -rustls-tokio-stream = "=0.3.0" scopeguard = "1.2.0" sec1 = "0.7" serde = { version = "1.0.149", features = ["derive"] } -serde_json = "1.0.85" sha1 = { version = "0.10.6", features = ["oid"] } sha2 = { version = "0.10.8", features = ["oid"] } -signature = "2.1" spki = "0.7.2" -tar = "=0.4.40" tempfile = "3.4.0" thiserror = "2.0.3" tokio = { version = "1.36.0", features = ["full"] } @@ -175,7 +163,6 @@ twox-hash = "=1.6.3" url = { version = "2.5", features = ["serde", "expose_internals"] } uuid = { version = "1.3.0", features = ["v4"] } webpki-root-certs = "0.26.5" -webpki-roots = "0.26" yoke = { version = "0.7.4", features = ["derive"] } # upstream resolvers @@ -187,10 +174,6 @@ node_resolver = "0.21.0" hkdf = "0.12.3" rsa = { version = "0.9.3", default-features = false, features = ["std", "pem", "hazmat"] } # hazmat needed for PrehashSigner in ext/node -# webcpu -wgpu-core = "0.21.1" -wgpu-types = "0.20" - # unix nix = "=0.27.1" diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 73f58290..11aaa80f 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -10,16 +10,12 @@ path = "src/main.rs" [dependencies] deno.workspace = true -deno_core.workspace = true deno_facade.workspace = true -ext_event_worker = { workspace = true, optional = true, features = ["tracing"] } - anyhow.workspace = true base.workspace = true clap.workspace = true -glob.workspace = true log.workspace = true once_cell.workspace = true tokio.workspace = true @@ -28,4 +24,4 @@ tracing-subscriber = { workspace = true, optional = true } env_logger = "=0.10.0" [features] -tracing = ["dep:tracing-subscriber", "dep:ext_event_worker"] +tracing = ["dep:tracing-subscriber"] diff --git a/crates/base/Cargo.toml b/crates/base/Cargo.toml index c6da219f..b4e7580c 100644 --- a/crates/base/Cargo.toml +++ b/crates/base/Cargo.toml @@ -12,7 +12,6 @@ deno_core.workspace = true deno_broadcast_channel.workspace = true deno_cache.workspace = true deno_canvas.workspace = true -deno_config.workspace = true deno_console.workspace = true deno_webgpu.workspace = true @@ -32,7 +31,6 @@ ext_runtime.workspace = true ext_workers.workspace = true anyhow.workspace = true -async-trait.workspace = true bytes.workspace = true ctor.workspace = true either.workspace = true @@ -43,15 +41,11 @@ futures-util.workspace = true http.workspace = true http-body-util.workspace = true http_v02.workspace = true -httparse.workspace = true hyper = { workspace = true, features = ["full"] } hyper-util = { workspace = true, features = ["server-graceful"] } hyper_v014 = { workspace = true, features = ["full", "backports"] } -import_map.workspace = true libc.workspace = true log.workspace = true -monch.workspace = true -notify.workspace = true num-traits.workspace = true once_cell.workspace = true pin-project.workspace = true @@ -59,14 +53,10 @@ reqwest_v011.workspace = true rustls-pemfile.workspace = true scopeguard.workspace = true serde = { workspace = true, features = ["derive"] } -tempfile.workspace = true -thiserror.workspace = true tokio.workspace = true tokio-util = { workspace = true, features = ["rt"] } tracing.workspace = true tracing-subscriber = { workspace = true, optional = true, features = ["env-filter", "tracing-log"] } -url.workspace = true -urlencoding.workspace = true uuid.workspace = true arc-swap = "1.7" @@ -108,8 +98,6 @@ ext_runtime.workspace = true deno_facade.workspace = true -url.workspace = true - [features] tracing = ["dep:tracing-subscriber"] termination-signal-ext = [] diff --git a/crates/cpu_timer/Cargo.toml b/crates/cpu_timer/Cargo.toml index 0ce0596f..981351e3 100644 --- a/crates/cpu_timer/Cargo.toml +++ b/crates/cpu_timer/Cargo.toml @@ -14,6 +14,5 @@ log.workspace = true once_cell.workspace = true tokio.workspace = true -nix = { version = "0.26.2", features = ["signal"] } signal-hook = "0.3.17" signal-hook-tokio = { version = "0.3.1", features = ["futures-v0_3"] } diff --git a/crates/deno_facade/Cargo.toml b/crates/deno_facade/Cargo.toml index abbf7793..d516fa51 100644 --- a/crates/deno_facade/Cargo.toml +++ b/crates/deno_facade/Cargo.toml @@ -20,7 +20,6 @@ ext_node.workspace = true ext_runtime.workspace = true anyhow.workspace = true -async-trait.workspace = true base64.workspace = true eszip = { workspace = true, features = ["xxhash3"] } futures.workspace = true @@ -29,7 +28,6 @@ glob.workspace = true import_map.workspace = true indexmap.workspace = true log.workspace = true -monch.workspace = true once_cell.workspace = true regex.workspace = true rkyv = { workspace = true, features = ["validation"] } @@ -41,9 +39,7 @@ tracing.workspace = true url.workspace = true urlencoding.workspace = true -dashmap = "5.5.3" hashlink = "0.8" -pathdiff = "0.2" [dev-dependencies] enum-as-inner.workspace = true diff --git a/crates/fs/Cargo.toml b/crates/fs/Cargo.toml index b0763239..57458b34 100644 --- a/crates/fs/Cargo.toml +++ b/crates/fs/Cargo.toml @@ -11,26 +11,19 @@ path = "lib.rs" [dependencies] deno.workspace = true -deno_ast.workspace = true deno_core.workspace = true deno_fs.workspace = true deno_io.workspace = true deno_npm.workspace = true -deno_semver.workspace = true eszip_trait.workspace = true -ext_node.workspace = true - anyhow.workspace = true async-trait.workspace = true either.workspace = true enum-as-inner.workspace = true -eszip.workspace = true futures.workspace = true hyper_v014.workspace = true -import_map.workspace = true -indexmap.workspace = true log.workspace = true once_cell.workspace = true rkyv = { workspace = true, features = ["validation"] } diff --git a/crates/http_utils/Cargo.toml b/crates/http_utils/Cargo.toml index 98f79a65..8ba9f1c2 100644 --- a/crates/http_utils/Cargo.toml +++ b/crates/http_utils/Cargo.toml @@ -7,8 +7,6 @@ license.workspace = true [dependencies] bytes.workspace = true -futures-util.workspace = true http_v02.workspace = true hyper_v014 = { workspace = true, features = ["full"] } tokio.workspace = true -tokio-util = { workspace = true, features = ["rt"] } diff --git a/deno/Cargo.toml b/deno/Cargo.toml index 3f0009e1..ddad394f 100644 --- a/deno/Cargo.toml +++ b/deno/Cargo.toml @@ -40,18 +40,15 @@ deno_resolver.workspace = true node_resolver.workspace = true ext_node.workspace = true -ext_runtime.workspace = true anyhow.workspace = true async-trait.workspace = true -base32.workspace = true base64.workspace = true cache_control.workspace = true chrono = { workspace = true, features = ["now"] } dashmap.workspace = true dotenvy.workspace = true faster-hex.workspace = true -flate2.workspace = true fs3.workspace = true http.workspace = true http-body.workspace = true @@ -61,18 +58,15 @@ hyper-util.workspace = true hyper_v014.workspace = true import_map = { workspace = true, features = ["ext"] } indexmap.workspace = true -lazy-regex.workspace = true libc.workspace = true log.workspace = true notify.workspace = true once_cell.workspace = true -percent-encoding.workspace = true rand = { workspace = true, features = ["small_rng"] } regex.workspace = true reqwest.workspace = true ring.workspace = true serde.workspace = true -tar.workspace = true thiserror.workspace = true tokio.workspace = true tokio-util.workspace = true @@ -80,7 +74,6 @@ twox-hash.workspace = true bincode = "=1.3.3" dissimilar = "=1.0.4" -hex = "0.4" pathdiff = "0.2.1" [target.'cfg(windows)'.dependencies] diff --git a/ext/ai/Cargo.toml b/ext/ai/Cargo.toml index fb4c2b48..553bc656 100644 --- a/ext/ai/Cargo.toml +++ b/ext/ai/Cargo.toml @@ -15,13 +15,10 @@ base_rt.workspace = true ext_ai_v8_utilities.workspace = true anyhow.workspace = true -clap = { workspace = true, features = ["derive"] } ctor.workspace = true faster-hex.workspace = true futures.workspace = true -futures-util = { workspace = true, features = ["io"] } fxhash.workspace = true -log.workspace = true once_cell.workspace = true reqwest.workspace = true scopeguard.workspace = true @@ -29,15 +26,10 @@ serde.workspace = true tokio.workspace = true tokio-util = { workspace = true, features = ["compat"] } tracing.workspace = true -tracing-subscriber.workspace = true xxhash-rust = { workspace = true, features = ["std", "xxh3"] } blas-src = { version = "0.8", features = ['openblas'] } -convert_case = "0.6" ndarray = { version = "0.16", features = ['blas'] } -openblas-src = { version = "0.10", features = ['cblas', 'system'] } -rand = "0.8" tokenizers = { version = ">=0.13.4", default-features = false, features = ["onig"] } ort = { version = "=2.0.0-rc.9", default-features = false, features = ["ndarray", "half", "load-dynamic", "cuda"] } -ort-sys = "=2.0.0-rc.9" diff --git a/ext/node/Cargo.toml b/ext/node/Cargo.toml index aa8422aa..88ab65b6 100644 --- a/ext/node/Cargo.toml +++ b/ext/node/Cargo.toml @@ -16,7 +16,6 @@ deno_core.workspace = true deno_fetch.workspace = true deno_fs.workspace = true deno_io.workspace = true -deno_media_type.workspace = true deno_net.workspace = true deno_package_json.workspace = true deno_path_util.workspace = true @@ -25,7 +24,6 @@ deno_permissions.workspace = true node_resolver.workspace = true aes.workspace = true -async-trait.workspace = true base64.workspace = true brotli.workspace = true bytes.workspace = true @@ -40,8 +38,6 @@ http.workspace = true http-body-util.workspace = true hyper.workspace = true hyper-util.workspace = true -indexmap.workspace = true -lazy-regex.workspace = true libc.workspace = true libz-sys.workspace = true num-bigint.workspace = true @@ -50,14 +46,12 @@ p224.workspace = true p256.workspace = true p384.workspace = true rand.workspace = true -regex.workspace = true ring.workspace = true rsa.workspace = true sec1.workspace = true serde.workspace = true sha1.workspace = true sha2.workspace = true -signature.workspace = true spki.workspace = true thiserror.workspace = true tokio.workspace = true @@ -87,7 +81,6 @@ memchr = "2.7.4" num-bigint-dig = "0.8.2" num-integer = "0.1.45" num-traits = "0.2.14" -path-clean = "=0.1.0" pbkdf2 = "0.12.1" pin-project-lite = "0.2.13" pkcs8 = { version = "0.10.2", features = ["std", "pkcs5", "encryption"] } @@ -96,7 +89,6 @@ scrypt = "0.11.0" sha3 = { version = "0.10.8", features = ["oid"] } simd-json = "0.14.0" sm3 = "0.4.2" -stable_deref_trait = "1.2.0" tokio-eld = "0.2" x25519-dalek = { version = "2.0.0", features = ["static_secrets"] } x509-parser = "0.15.0" diff --git a/ext/os/Cargo.toml b/ext/os/Cargo.toml index 26f10c2e..84bccc8b 100644 --- a/ext/os/Cargo.toml +++ b/ext/os/Cargo.toml @@ -11,7 +11,5 @@ path = "lib.rs" [dependencies] deno_core.workspace = true -ext_runtime.workspace = true - libc.workspace = true serde.workspace = true diff --git a/ext/workers/Cargo.toml b/ext/workers/Cargo.toml index 676d4a7f..d6bebaaa 100644 --- a/ext/workers/Cargo.toml +++ b/ext/workers/Cargo.toml @@ -10,7 +10,6 @@ path = "lib.rs" [dependencies] deno.workspace = true -deno_config.workspace = true deno_core.workspace = true deno_facade.workspace = true @@ -23,7 +22,6 @@ ext_runtime.workspace = true anyhow.workspace = true bytes.workspace = true enum-as-inner.workspace = true -futures-util.workspace = true hyper_v014.workspace = true log.workspace = true once_cell.workspace = true