diff --git a/.github/workflows/ci.generate.ts b/.github/workflows/ci.generate.ts index 224afb79e9a05a..cceaa639250806 100755 --- a/.github/workflows/ci.generate.ts +++ b/.github/workflows/ci.generate.ts @@ -5,7 +5,11 @@ import { stringify } from "jsr:@std/yaml@^0.221/stringify"; // Bump this number when you want to purge the cache. // Note: the tools/release/01_bump_crate_versions.ts script will update this version // automatically via regex, so ensure that this line maintains this format. +<<<<<<< HEAD const cacheVersion = 38; +======= +const cacheVersion = 39; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) const ubuntuX86Runner = "ubuntu-24.04"; const ubuntuX86XlRunner = "ubuntu-24.04-xl"; diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fc4fd091c7a5cf..04f803cde8fb11 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -184,8 +184,13 @@ jobs: ~/.cargo/registry/index ~/.cargo/registry/cache ~/.cargo/git/db +<<<<<<< HEAD key: '38-cargo-home-${{ matrix.os }}-${{ matrix.arch }}-${{ hashFiles(''Cargo.lock'') }}' restore-keys: '38-cargo-home-${{ matrix.os }}-${{ matrix.arch }}-' +======= + key: '39-cargo-home-${{ matrix.os }}-${{ matrix.arch }}-${{ hashFiles(''Cargo.lock'') }}' + restore-keys: '39-cargo-home-${{ matrix.os }}-${{ matrix.arch }}-' +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) if: '!(matrix.skip)' - uses: dsherret/rust-toolchain-file@v1 if: '!(matrix.skip)' @@ -377,7 +382,11 @@ jobs: !./target/*/*.zip !./target/*/*.tar.gz key: never_saved +<<<<<<< HEAD restore-keys: '38-cargo-target-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.profile }}-${{ matrix.job }}-' +======= + restore-keys: '39-cargo-target-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.profile }}-${{ matrix.job }}-' +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) - name: Apply and update mtime cache if: '!(matrix.skip) && (!startsWith(github.ref, ''refs/tags/''))' uses: ./.github/mtime_cache @@ -693,7 +702,11 @@ jobs: !./target/*/gn_root !./target/*/*.zip !./target/*/*.tar.gz +<<<<<<< HEAD key: '38-cargo-target-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.profile }}-${{ matrix.job }}-${{ github.sha }}' +======= + key: '39-cargo-target-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.profile }}-${{ matrix.job }}-${{ github.sha }}' +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) wasm: name: build wasm32 needs: diff --git a/Cargo.lock b/Cargo.lock index 1c85f5af31f819..bffa498d9df8a4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -732,6 +732,7 @@ dependencies = [ [[package]] name = "cc" +<<<<<<< HEAD version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "27f657647bcff5394bf56c7317665bbf790a137a50eaaa5c6bfbb9e27a518f2d" @@ -739,6 +740,15 @@ dependencies = [ "jobserver", "libc", "shlex", +======= +version = "1.0.106" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "066fce287b1d4eafef758e89e09d724a24808a9196fe9756b8ca90e86d0719a2" +dependencies = [ + "jobserver", + "libc", + "once_cell", +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ] [[package]] @@ -1259,7 +1269,11 @@ dependencies = [ [[package]] name = "deno" +<<<<<<< HEAD version = "2.1.8" +======= +version = "2.1.9" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "anstream", "async-trait", @@ -1438,7 +1452,11 @@ dependencies = [ [[package]] name = "deno_bench_util" +<<<<<<< HEAD version = "0.182.0" +======= +version = "0.183.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "bencher", "deno_core", @@ -1447,7 +1465,11 @@ dependencies = [ [[package]] name = "deno_broadcast_channel" +<<<<<<< HEAD version = "0.182.0" +======= +version = "0.183.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "async-trait", "deno_core", @@ -1459,6 +1481,7 @@ dependencies = [ [[package]] name = "deno_cache" +<<<<<<< HEAD version = "0.120.0" dependencies = [ "anyhow", @@ -1483,6 +1506,18 @@ dependencies = [ "thiserror 2.0.3", "tokio", "tokio-util", +======= +version = "0.121.0" +dependencies = [ + "async-trait", + "deno_core", + "deno_error", + "rusqlite", + "serde", + "sha2", + "thiserror 2.0.3", + "tokio", +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ] [[package]] @@ -1516,7 +1551,11 @@ dependencies = [ [[package]] name = "deno_canvas" +<<<<<<< HEAD version = "0.57.0" +======= +version = "0.58.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_core", "deno_error", @@ -1528,9 +1567,15 @@ dependencies = [ [[package]] name = "deno_config" +<<<<<<< HEAD version = "0.47.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2f7883c48549bab8e446a58c64ee3d106a13052d2ff5e864de765a60260cb02b" +======= +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08fe512a72c4300bd997c6849450a1f050da0c909a2a4fbdc44891647392bacf" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "boxed_error", "capacity_builder 0.5.0", @@ -1555,7 +1600,11 @@ dependencies = [ [[package]] name = "deno_console" +<<<<<<< HEAD version = "0.188.0" +======= +version = "0.189.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_core", ] @@ -1607,7 +1656,11 @@ checksum = "fe4dccb6147bb3f3ba0c7a48e993bfeb999d2c2e47a81badee80e2b370c8d695" [[package]] name = "deno_cron" +<<<<<<< HEAD version = "0.68.0" +======= +version = "0.69.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "anyhow", "async-trait", @@ -1621,7 +1674,11 @@ dependencies = [ [[package]] name = "deno_crypto" +<<<<<<< HEAD version = "0.202.0" +======= +version = "0.203.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "aes", "aes-gcm", @@ -1714,7 +1771,11 @@ dependencies = [ [[package]] name = "deno_fetch" +<<<<<<< HEAD version = "0.212.0" +======= +version = "0.213.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "base64 0.21.7", "bytes", @@ -1751,7 +1812,11 @@ dependencies = [ [[package]] name = "deno_ffi" +<<<<<<< HEAD version = "0.175.0" +======= +version = "0.176.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_core", "deno_error", @@ -1772,7 +1837,11 @@ dependencies = [ [[package]] name = "deno_fs" +<<<<<<< HEAD version = "0.98.0" +======= +version = "0.99.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "async-trait", "base32", @@ -1830,7 +1899,11 @@ dependencies = [ [[package]] name = "deno_http" +<<<<<<< HEAD version = "0.186.0" +======= +version = "0.187.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "async-compression", "async-trait", @@ -1870,7 +1943,11 @@ dependencies = [ [[package]] name = "deno_io" +<<<<<<< HEAD version = "0.98.0" +======= +version = "0.99.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "async-trait", "deno_core", @@ -1892,7 +1969,11 @@ dependencies = [ [[package]] name = "deno_kv" +<<<<<<< HEAD version = "0.96.0" +======= +version = "0.97.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "anyhow", "async-trait", @@ -1925,7 +2006,11 @@ dependencies = [ [[package]] name = "deno_lib" +<<<<<<< HEAD version = "0.4.0" +======= +version = "0.5.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "capacity_builder 0.5.0", "deno_config", @@ -1959,9 +2044,15 @@ dependencies = [ [[package]] name = "deno_lint" +<<<<<<< HEAD version = "0.70.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ac94db8d8597b96c92d30a68b11d4bec6822dcbb3e8675ab1e0136816a301a34" +======= +version = "0.68.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce713d564f76efd90535061113210bdc6b942ed6327b33eb1d5f76a5daf8e7a5" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "anyhow", "deno_ast", @@ -2001,7 +2092,11 @@ dependencies = [ [[package]] name = "deno_napi" +<<<<<<< HEAD version = "0.119.0" +======= +version = "0.120.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_core", "deno_error", @@ -2030,7 +2125,11 @@ dependencies = [ [[package]] name = "deno_net" +<<<<<<< HEAD version = "0.180.0" +======= +version = "0.181.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_core", "deno_error", @@ -2042,17 +2141,27 @@ dependencies = [ "quinn", "rustls-tokio-stream", "serde", +<<<<<<< HEAD "sha2", "socket2", "thiserror 2.0.3", "tokio", "url", "web-transport-proto", +======= + "socket2", + "thiserror 2.0.3", + "tokio", +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ] [[package]] name = "deno_node" +<<<<<<< HEAD version = "0.126.0" +======= +version = "0.127.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "aead-gcm-stream", "aes", @@ -2098,7 +2207,10 @@ dependencies = [ "k256", "lazy-regex", "libc", +<<<<<<< HEAD "libsqlite3-sys", +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "libz-sys", "md-5", "md4", @@ -2120,7 +2232,10 @@ dependencies = [ "ring", "ripemd", "rsa", +<<<<<<< HEAD "rusqlite", +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "scrypt", "sec1", "serde", @@ -2167,7 +2282,11 @@ dependencies = [ [[package]] name = "deno_npm_cache" +<<<<<<< HEAD version = "0.7.0" +======= +version = "0.8.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "async-trait", "base64 0.21.7", @@ -2214,7 +2333,11 @@ dependencies = [ [[package]] name = "deno_os" +<<<<<<< HEAD version = "0.5.0" +======= +version = "0.6.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_core", "deno_error", @@ -2266,7 +2389,11 @@ dependencies = [ [[package]] name = "deno_permissions" +<<<<<<< HEAD version = "0.47.0" +======= +version = "0.48.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "capacity_builder 0.5.0", "deno_core", @@ -2286,7 +2413,11 @@ dependencies = [ [[package]] name = "deno_process" +<<<<<<< HEAD version = "0.3.0" +======= +version = "0.4.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_core", "deno_error", @@ -2313,7 +2444,11 @@ dependencies = [ [[package]] name = "deno_resolver" +<<<<<<< HEAD version = "0.19.0" +======= +version = "0.20.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "anyhow", "async-once-cell", @@ -2343,7 +2478,11 @@ dependencies = [ [[package]] name = "deno_runtime" +<<<<<<< HEAD version = "0.196.0" +======= +version = "0.197.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "color-print", "deno_ast", @@ -2430,7 +2569,11 @@ dependencies = [ [[package]] name = "deno_snapshots" +<<<<<<< HEAD version = "0.3.0" +======= +version = "0.4.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_runtime", ] @@ -2455,7 +2598,11 @@ dependencies = [ [[package]] name = "deno_telemetry" +<<<<<<< HEAD version = "0.10.0" +======= +version = "0.11.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "async-trait", "deno_core", @@ -2500,7 +2647,11 @@ dependencies = [ [[package]] name = "deno_tls" +<<<<<<< HEAD version = "0.175.0" +======= +version = "0.176.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_core", "deno_error", @@ -2551,7 +2702,11 @@ dependencies = [ [[package]] name = "deno_url" +<<<<<<< HEAD version = "0.188.0" +======= +version = "0.189.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_bench_util", "deno_console", @@ -2564,7 +2719,11 @@ dependencies = [ [[package]] name = "deno_web" +<<<<<<< HEAD version = "0.219.0" +======= +version = "0.220.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "async-trait", "base64-simd 0.8.0", @@ -2587,7 +2746,11 @@ dependencies = [ [[package]] name = "deno_webgpu" +<<<<<<< HEAD version = "0.155.0" +======= +version = "0.156.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_core", "deno_error", @@ -2601,7 +2764,11 @@ dependencies = [ [[package]] name = "deno_webidl" +<<<<<<< HEAD version = "0.188.0" +======= +version = "0.189.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_bench_util", "deno_core", @@ -2609,7 +2776,11 @@ dependencies = [ [[package]] name = "deno_websocket" +<<<<<<< HEAD version = "0.193.0" +======= +version = "0.194.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "bytes", "deno_core", @@ -2632,7 +2803,11 @@ dependencies = [ [[package]] name = "deno_webstorage" +<<<<<<< HEAD version = "0.183.0" +======= +version = "0.184.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "deno_core", "deno_error", @@ -2720,7 +2895,11 @@ dependencies = [ [[package]] name = "denort" +<<<<<<< HEAD version = "2.1.8" +======= +version = "2.1.9" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "async-trait", "bincode", @@ -4882,9 +5061,15 @@ dependencies = [ [[package]] name = "libsqlite3-sys" +<<<<<<< HEAD version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e99fb7a497b1e3339bc746195567ed8d3e24945ecd636e3619d20b9de9e9149" +======= +version = "0.30.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b694a822684ddb75df4d657029161431bcb4a85c1856952f845b76912bc6fec" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "cc", "pkg-config", @@ -5220,7 +5405,11 @@ dependencies = [ [[package]] name = "napi_sym" +<<<<<<< HEAD version = "0.118.0" +======= +version = "0.119.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "quote", "serde", @@ -5275,13 +5464,20 @@ dependencies = [ [[package]] name = "node_resolver" +<<<<<<< HEAD version = "0.26.0" +======= +version = "0.27.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "anyhow", "async-trait", "boxed_error", "dashmap", +<<<<<<< HEAD "deno_config", +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "deno_error", "deno_media_type", "deno_package_json", @@ -7914,9 +8110,15 @@ dependencies = [ [[package]] name = "sys_traits" +<<<<<<< HEAD version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "638f0e61b5134e56b2abdf4c704fd44672603f15ca09013f314649056f3fee4d" +======= +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b46ac05dfbe9fd3a9703eff20e17f5b31e7b6a54daf27a421dcd56c7a27ecdd" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) dependencies = [ "filetime", "getrandom", @@ -8913,6 +9115,7 @@ dependencies = [ ] [[package]] +<<<<<<< HEAD name = "web-transport-proto" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -8925,6 +9128,8 @@ dependencies = [ ] [[package]] +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) name = "webpki-root-certs" version = "0.26.6" source = "registry+https://github.com/rust-lang/crates.io-index" diff --git a/Cargo.toml b/Cargo.toml index 6ae07e302a6080..e6cae9b61b6bad 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -53,17 +53,30 @@ repository = "https://github.com/denoland/deno" deno_ast = { version = "=0.44.0", features = ["transpiling"] } deno_core = { version = "0.333.0" } +<<<<<<< HEAD deno_bench_util = { version = "0.182.0", path = "./bench_util" } deno_config = { version = "=0.47.1", features = ["workspace"] } +======= +deno_bench_util = { version = "0.183.0", path = "./bench_util" } +deno_config = { version = "=0.46.0", features = ["workspace"] } +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) deno_lockfile = "=0.24.0" deno_media_type = { version = "=0.2.5", features = ["module_specifier"] } deno_npm = "=0.27.2" deno_path_util = "=0.3.1" +<<<<<<< HEAD deno_permissions = { version = "0.47.0", path = "./runtime/permissions" } deno_runtime = { version = "0.196.0", path = "./runtime" } deno_semver = "=0.7.1" deno_terminal = "0.2.0" napi_sym = { version = "0.118.0", path = "./ext/napi/sym" } +======= +deno_permissions = { version = "0.48.0", path = "./runtime/permissions" } +deno_runtime = { version = "0.197.0", path = "./runtime" } +deno_semver = "=0.7.1" +deno_terminal = "0.2.0" +napi_sym = { version = "0.119.0", path = "./ext/napi/sym" } +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) test_util = { package = "test_server", path = "./tests/util/server" } denokv_proto = "0.9.0" @@ -72,6 +85,7 @@ denokv_remote = "0.9.0" denokv_sqlite = { default-features = false, version = "0.9.0" } # exts +<<<<<<< HEAD deno_broadcast_channel = { version = "0.182.0", path = "./ext/broadcast_channel" } deno_cache = { version = "0.120.0", path = "./ext/cache" } deno_canvas = { version = "0.57.0", path = "./ext/canvas" } @@ -104,11 +118,48 @@ deno_npm_cache = { version = "0.7.0", path = "./resolvers/npm_cache" } deno_resolver = { version = "0.19.0", path = "./resolvers/deno" } deno_snapshots = { version = "0.3.0", path = "./cli/snapshot" } node_resolver = { version = "0.26.0", path = "./resolvers/node" } +======= +deno_broadcast_channel = { version = "0.183.0", path = "./ext/broadcast_channel" } +deno_cache = { version = "0.121.0", path = "./ext/cache" } +deno_canvas = { version = "0.58.0", path = "./ext/canvas" } +deno_console = { version = "0.189.0", path = "./ext/console" } +deno_cron = { version = "0.69.0", path = "./ext/cron" } +deno_crypto = { version = "0.203.0", path = "./ext/crypto" } +deno_fetch = { version = "0.213.0", path = "./ext/fetch" } +deno_ffi = { version = "0.176.0", path = "./ext/ffi" } +deno_fs = { version = "0.99.0", path = "./ext/fs" } +deno_http = { version = "0.187.0", path = "./ext/http" } +deno_io = { version = "0.99.0", path = "./ext/io" } +deno_kv = { version = "0.97.0", path = "./ext/kv" } +deno_napi = { version = "0.120.0", path = "./ext/napi" } +deno_net = { version = "0.181.0", path = "./ext/net" } +deno_node = { version = "0.127.0", path = "./ext/node" } +deno_os = { version = "0.6.0", path = "./ext/os" } +deno_process = { version = "0.4.0", path = "./ext/process" } +deno_telemetry = { version = "0.11.0", path = "./ext/telemetry" } +deno_tls = { version = "0.176.0", path = "./ext/tls" } +deno_url = { version = "0.189.0", path = "./ext/url" } +deno_web = { version = "0.220.0", path = "./ext/web" } +deno_webgpu = { version = "0.156.0", path = "./ext/webgpu" } +deno_webidl = { version = "0.189.0", path = "./ext/webidl" } +deno_websocket = { version = "0.194.0", path = "./ext/websocket" } +deno_webstorage = { version = "0.184.0", path = "./ext/webstorage" } + +# workspace libraries +deno_lib = { version = "0.5.0", path = "./cli/lib" } +deno_npm_cache = { version = "0.8.0", path = "./resolvers/npm_cache" } +deno_resolver = { version = "0.20.0", path = "./resolvers/deno" } +deno_snapshots = { version = "0.4.0", path = "./cli/snapshot" } +node_resolver = { version = "0.27.0", path = "./resolvers/node" } +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) aes = "=0.8.3" anyhow = "1.0.57" async-once-cell = "0.5.4" +<<<<<<< HEAD async-stream = "0.3" +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) async-trait = "0.1.73" base32 = "=0.5.1" base64 = "0.21.7" @@ -204,7 +255,11 @@ slab = "0.4" smallvec = "1.8" socket2 = { version = "0.5.3", features = ["all"] } spki = "0.7.2" +<<<<<<< HEAD sys_traits = "=0.1.8" +======= +sys_traits = "=0.1.7" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) tar = "=0.4.40" tempfile = "3.4.0" termcolor = "1.1.3" diff --git a/Releases.md b/Releases.md index 1174cea9695fd1..3b4ce077b61d51 100644 --- a/Releases.md +++ b/Releases.md @@ -6,6 +6,14 @@ https://github.com/denoland/deno/releases We also have one-line install commands at: https://github.com/denoland/deno_install +<<<<<<< HEAD +======= +### 2.1.9 / 2025.01.30 + +- fix(ext/node): add http information support (#27381) +- perf(crypto): use ring for asm implementations of sha256/sha512 (#27885) + +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ### 2.1.8 / 2025.01.30 - feat(unstable): support https otlp endpoints (#27743) diff --git a/bench_util/Cargo.toml b/bench_util/Cargo.toml index 86fe25deeb27fa..93ef56683ed429 100644 --- a/bench_util/Cargo.toml +++ b/bench_util/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_bench_util" +<<<<<<< HEAD version = "0.182.0" +======= +version = "0.183.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/cli/Cargo.toml b/cli/Cargo.toml index a48ab5c0e132ae..c2f13d2c26b941 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno" +<<<<<<< HEAD version = "2.1.8" +======= +version = "2.1.9" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true default-run = "deno" edition.workspace = true @@ -74,7 +78,11 @@ deno_doc = { version = "=0.164.0", features = ["rust", "comrak"] } deno_error.workspace = true deno_graph = { version = "=0.87.2" } deno_lib.workspace = true +<<<<<<< HEAD deno_lint = { version = "0.70.0" } +======= +deno_lint = { version = "=0.68.2", features = ["docs"] } +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) deno_lockfile.workspace = true deno_media_type = { workspace = true, features = ["data_url", "decoding", "module_specifier"] } deno_npm.workspace = true diff --git a/cli/args/flags.rs b/cli/args/flags.rs index 7b640a446037cf..8f384b2df05df5 100644 --- a/cli/args/flags.rs +++ b/cli/args/flags.rs @@ -3029,14 +3029,22 @@ Evaluate a task from string Arg::new("filter") .long("filter") .short('f') +<<<<<<< HEAD .help("Filter members of the workspace by name, implies --recursive flag") +======= + .help("Filter members of the workspace by name - should be used with --recursive") +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) .value_parser(value_parser!(String)), ) .arg( Arg::new("eval") .long("eval") .help( +<<<<<<< HEAD "Evaluate the passed value as if it was a task in a configuration file", +======= + "Evaluate the passed value as if, it was a task in a configuration file", +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ).action(ArgAction::SetTrue) ) .arg(node_modules_dir_arg()) diff --git a/cli/factory.rs b/cli/factory.rs index d4ad8fae52073e..b1e0570953cb9d 100644 --- a/cli/factory.rs +++ b/cli/factory.rs @@ -711,7 +711,11 @@ impl CliFactory { pub async fn workspace_resolver( &self, +<<<<<<< HEAD ) -> Result<&Arc>, AnyError> { +======= + ) -> Result<&Arc, AnyError> { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) self.initialize_npm_resolution_if_managed().await?; self.resolver_factory()?.workspace_resolver().await } diff --git a/cli/lib/Cargo.toml b/cli/lib/Cargo.toml index 0c6eeda9ab8074..b7f27eb947863c 100644 --- a/cli/lib/Cargo.toml +++ b/cli/lib/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_lib" +<<<<<<< HEAD version = "0.4.0" +======= +version = "0.5.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/cli/lib/version.txt b/cli/lib/version.txt index b370e25daa17c7..a49c2fc63f1789 100644 --- a/cli/lib/version.txt +++ b/cli/lib/version.txt @@ -1 +1,5 @@ -2.1.8 \ No newline at end of file +<<<<<<< HEAD +2.1.8 +======= +2.1.9 +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/cli/lsp/analysis.rs b/cli/lsp/analysis.rs index fd7337df263dc8..ab5189f92c0fd5 100644 --- a/cli/lsp/analysis.rs +++ b/cli/lsp/analysis.rs @@ -1343,11 +1343,17 @@ impl CodeActionCollection { .tree .data_for_specifier(file_referrer?)?; let workspace_resolver = config_data.resolver.clone(); +<<<<<<< HEAD let npm_ref = if let Ok(resolution) = workspace_resolver.resolve( &dep_key, document.specifier(), deno_config::workspace::ResolutionKind::Execution, ) { +======= + let npm_ref = if let Ok(resolution) = + workspace_resolver.resolve(&dep_key, document.specifier()) + { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) let specifier = match resolution { MappedResolution::Normal { specifier, .. } | MappedResolution::ImportMap { specifier, .. } => specifier, diff --git a/cli/lsp/config.rs b/cli/lsp/config.rs index e4570031fb7884..f8a95b91afd37d 100644 --- a/cli/lsp/config.rs +++ b/cli/lsp/config.rs @@ -1205,7 +1205,11 @@ pub struct ConfigData { pub vendor_dir: Option, pub lockfile: Option>, pub npmrc: Option>, +<<<<<<< HEAD pub resolver: Arc>, +======= + pub resolver: Arc, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) pub sloppy_imports_resolver: Option>, pub import_map_from_settings: Option, pub unstable: BTreeSet, @@ -1572,7 +1576,11 @@ impl ConfigData { let resolver = member_dir .workspace .create_resolver( +<<<<<<< HEAD CliSys::default(), +======= + &CliSys::default(), +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) CreateResolverOptions { pkg_json_dep_resolution, specified_import_map, @@ -1593,14 +1601,21 @@ impl ConfigData { member_dir.workspace.resolver_jsr_pkgs().collect(), member_dir.workspace.package_jsons().cloned().collect(), pkg_json_dep_resolution, +<<<<<<< HEAD Default::default(), Default::default(), CliSys::default(), +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ) }); if !resolver.diagnostics().is_empty() { lsp_warn!( +<<<<<<< HEAD " Resolver diagnostics:\n{}", +======= + " Import map diagnostics:\n{}", +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) resolver .diagnostics() .iter() diff --git a/cli/lsp/resolver.rs b/cli/lsp/resolver.rs index a21d0f7d9af8a3..98e8209c6aaab0 100644 --- a/cli/lsp/resolver.rs +++ b/cli/lsp/resolver.rs @@ -851,9 +851,12 @@ impl<'a> ResolverFactory<'a> { Vec::new(), Vec::new(), PackageJsonDepResolution::Disabled, +<<<<<<< HEAD Default::default(), Default::default(), self.sys.clone(), +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) )) }), is_byonm: self.config_data.map(|d| d.byonm).unwrap_or(false), diff --git a/cli/rt/Cargo.toml b/cli/rt/Cargo.toml index e40f57e9c53fa0..af47d403708a6a 100644 --- a/cli/rt/Cargo.toml +++ b/cli/rt/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "denort" +<<<<<<< HEAD version = "2.1.8" +======= +version = "2.1.9" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true default-run = "denort" edition.workspace = true diff --git a/cli/rt/run.rs b/cli/rt/run.rs index df5388e0d1a18e..c516a13f50196f 100644 --- a/cli/rt/run.rs +++ b/cli/rt/run.rs @@ -104,7 +104,11 @@ struct SharedModuleLoaderState { npm_registry_permission_checker: NpmRegistryReadPermissionChecker, npm_req_resolver: Arc, vfs: Arc, +<<<<<<< HEAD workspace_resolver: WorkspaceResolver, +======= + workspace_resolver: WorkspaceResolver, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } impl SharedModuleLoaderState { @@ -201,11 +205,18 @@ impl ModuleLoader for EmbeddedModuleLoader { ); } +<<<<<<< HEAD let mapped_resolution = self.shared.workspace_resolver.resolve( raw_specifier, &referrer, deno_config::workspace::ResolutionKind::Execution, ); +======= + let mapped_resolution = self + .shared + .workspace_resolver + .resolve(raw_specifier, &referrer); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) match mapped_resolution { Ok(MappedResolution::WorkspaceJsrPackage { specifier, .. }) => { @@ -860,9 +871,12 @@ pub async fn run( .collect(), pkg_jsons, metadata.workspace_resolver.pkg_json_resolution, +<<<<<<< HEAD Default::default(), Default::default(), sys.clone(), +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ) }; let code_cache = match metadata.code_cache_key { diff --git a/cli/schemas/config-file.v1.json b/cli/schemas/config-file.v1.json index ce1bad07c6e81c..6b88ae5f1fd59e 100644 --- a/cli/schemas/config-file.v1.json +++ b/cli/schemas/config-file.v1.json @@ -175,6 +175,7 @@ "default": false, "markdownDescription": "Raise an error when a function parameter isn't read\n\nSee more: https://www.typescriptlang.org/tsconfig#noUnusedParameters" }, +<<<<<<< HEAD "rootDirs": { "description": "Declare many “virtual” directories acting as a single root.", "type": "array", @@ -183,6 +184,8 @@ }, "markdownDescription": "Declare many “virtual” directories acting as a single root.\n\nSee more: https://www.typescriptlang.org/tsconfig#rootDirs" }, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "strict": { "description": "Enable all strict type checking options.", "type": "boolean", diff --git a/cli/schemas/lint-rules.v1.json b/cli/schemas/lint-rules.v1.json index 87bd4e26003ac9..2dc9f038967afe 100644 --- a/cli/schemas/lint-rules.v1.json +++ b/cli/schemas/lint-rules.v1.json @@ -19,6 +19,7 @@ "fresh-server-event-handlers", "getter-return", "guard-for-in", +<<<<<<< HEAD "jsx-boolean-value", "jsx-button-has-type", "jsx-curly-braces", @@ -30,6 +31,8 @@ "jsx-no-useless-fragment", "jsx-props-no-spread-multi", "jsx-void-dom-elements-no-children", +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "no-array-constructor", "no-async-promise-executor", "no-await-in-loop", @@ -81,7 +84,11 @@ "no-non-null-assertion", "no-obj-calls", "no-octal", +<<<<<<< HEAD "no-process-global", +======= + "no-process-globals", +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "no-prototype-builtins", "no-redeclare", "no-regex-spaces", @@ -103,7 +110,10 @@ "no-unsafe-negation", "no-unused-labels", "no-unused-vars", +<<<<<<< HEAD "no-useless-rename", +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "no-var", "no-window", "no-window-prefix", @@ -113,9 +123,12 @@ "prefer-const", "prefer-namespace-keyword", "prefer-primordials", +<<<<<<< HEAD "react-no-danger", "react-no-danger-with-children", "react-rules-of-hooks", +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "require-await", "require-yield", "single-var-declarator", diff --git a/cli/snapshot/Cargo.toml b/cli/snapshot/Cargo.toml index b34dd05c643328..aa3d0804633b6a 100644 --- a/cli/snapshot/Cargo.toml +++ b/cli/snapshot/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_snapshots" +<<<<<<< HEAD version = "0.3.0" +======= +version = "0.4.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/cli/standalone/binary.rs b/cli/standalone/binary.rs index 4f0ce5a3c00f63..f0ac74a85a4b36 100644 --- a/cli/standalone/binary.rs +++ b/cli/standalone/binary.rs @@ -1,7 +1,10 @@ // Copyright 2018-2025 the Deno authors. MIT license. use std::borrow::Cow; +<<<<<<< HEAD use std::cell::Cell; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use std::collections::HashMap; use std::collections::VecDeque; use std::env; @@ -62,7 +65,10 @@ use crate::http_util::HttpClientProvider; use crate::node::CliCjsCodeAnalyzer; use crate::npm::CliNpmResolver; use crate::resolver::CliCjsTracker; +<<<<<<< HEAD use crate::sys::CliSys; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use crate::util::archive; use crate::util::progress_bar::ProgressBar; use crate::util::progress_bar::ProgressBarStyle; @@ -195,7 +201,11 @@ pub struct DenoCompileBinaryWriter<'a> { emitter: &'a Emitter, http_client_provider: &'a HttpClientProvider, npm_resolver: &'a CliNpmResolver, +<<<<<<< HEAD workspace_resolver: &'a WorkspaceResolver, +======= + workspace_resolver: &'a WorkspaceResolver, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) npm_system_info: NpmSystemInfo, } @@ -209,7 +219,11 @@ impl<'a> DenoCompileBinaryWriter<'a> { emitter: &'a Emitter, http_client_provider: &'a HttpClientProvider, npm_resolver: &'a CliNpmResolver, +<<<<<<< HEAD workspace_resolver: &'a WorkspaceResolver, +======= + workspace_resolver: &'a WorkspaceResolver, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) npm_system_info: NpmSystemInfo, ) -> Self { Self { @@ -701,7 +715,11 @@ impl<'a> DenoCompileBinaryWriter<'a> { vfs_case_sensitivity: vfs.case_sensitivity, }; +<<<<<<< HEAD let (data_section_bytes, section_sizes) = serialize_binary_data_section( +======= + let data_section_bytes = serialize_binary_data_section( +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) &metadata, npm_snapshot.map(|s| s.into_serialized()), &specifier_store.for_serialization(&root_dir_url), @@ -711,6 +729,7 @@ impl<'a> DenoCompileBinaryWriter<'a> { ) .context("Serializing binary data section.")?; +<<<<<<< HEAD log::info!( "\n{} {}", crate::colors::bold("Files:"), @@ -727,6 +746,8 @@ impl<'a> DenoCompileBinaryWriter<'a> { crate::util::display::human_size(section_sizes.remote_modules as f64) ); +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) write_binary_bytes(writer, original_bin, data_section_bytes, compile_flags) .context("Writing binary bytes") } @@ -930,12 +951,15 @@ fn write_binary_bytes( Ok(()) } +<<<<<<< HEAD struct BinaryDataSectionSizes { metadata: usize, remote_modules: usize, vfs: usize, } +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) /// Binary format: /// * d3n0l4nd /// * @@ -954,16 +978,23 @@ fn serialize_binary_data_section( redirects: &SpecifierDataStore, remote_modules: &SpecifierDataStore>, vfs: &BuiltVfs, +<<<<<<< HEAD ) -> Result<(Vec, BinaryDataSectionSizes), AnyError> { +======= +) -> Result, AnyError> { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) let metadata = serde_json::to_string(metadata)?; let npm_snapshot = npm_snapshot.map(serialize_npm_snapshot).unwrap_or_default(); let serialized_vfs = serde_json::to_string(&vfs.entries)?; +<<<<<<< HEAD let remote_modules_len = Cell::new(0); let metadata_len = Cell::new(0); let vfs_len = Cell::new(0); +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) let bytes = capacity_builder::BytesBuilder::build(|builder| { builder.append(MAGIC_BYTES); // 1. Metadata @@ -976,14 +1007,20 @@ fn serialize_binary_data_section( builder.append_le(npm_snapshot.len() as u64); builder.append(&npm_snapshot); } +<<<<<<< HEAD metadata_len.set(builder.len()); +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) // 3. Specifiers builder.append(specifiers); // 4. Redirects redirects.serialize(builder); // 5. Remote modules remote_modules.serialize(builder); +<<<<<<< HEAD remote_modules_len.set(builder.len() - metadata_len.get()); +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) // 6. VFS { builder.append_le(serialized_vfs.len() as u64); @@ -994,13 +1031,17 @@ fn serialize_binary_data_section( builder.append(file); } } +<<<<<<< HEAD vfs_len.set(builder.len() - remote_modules_len.get()); +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) // write the magic bytes at the end so we can use it // to make sure we've deserialized correctly builder.append(MAGIC_BYTES); })?; +<<<<<<< HEAD Ok(( bytes, BinaryDataSectionSizes { @@ -1009,6 +1050,9 @@ fn serialize_binary_data_section( vfs: vfs_len.get(), }, )) +======= + Ok(bytes) +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } fn serialize_npm_snapshot( diff --git a/cli/standalone/virtual_fs.rs b/cli/standalone/virtual_fs.rs index a3e023620f98dc..4cb36886b5bd2d 100644 --- a/cli/standalone/virtual_fs.rs +++ b/cli/standalone/virtual_fs.rs @@ -30,7 +30,15 @@ pub fn output_vfs(vfs: &BuiltVfs, executable_name: &str) { let display_tree = vfs_as_display_tree(vfs, executable_name); display_tree.print(&mut text).unwrap(); // unwrap ok because it's writing to a string log::info!("\n{}\n", deno_terminal::colors::bold("Embedded Files")); +<<<<<<< HEAD log::info!("{}", text.trim()); +======= + log::info!("{}\n", text.trim()); + log::info!( + "Size: {}\n", + human_size(vfs.files.iter().map(|f| f.len() as f64).sum()) + ); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } fn vfs_as_display_tree( diff --git a/cli/tools/info.rs b/cli/tools/info.rs index e6bf1baa36b5d2..1d00c37401c694 100644 --- a/cli/tools/info.rs +++ b/cli/tools/info.rs @@ -56,11 +56,17 @@ pub async fn info( let cwd_url = url::Url::from_directory_path(cli_options.initial_cwd()).unwrap(); +<<<<<<< HEAD let maybe_import_specifier = if let Ok(resolved) = resolver.resolve( &specifier, &cwd_url, deno_config::workspace::ResolutionKind::Execution, ) { +======= + let maybe_import_specifier = if let Ok(resolved) = + resolver.resolve(&specifier, &cwd_url) + { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) match resolved { deno_config::workspace::MappedResolution::Normal { specifier, .. diff --git a/cli/tools/lint/mod.rs b/cli/tools/lint/mod.rs index 49a5c6896bb081..702176005bd386 100644 --- a/cli/tools/lint/mod.rs +++ b/cli/tools/lint/mod.rs @@ -461,6 +461,7 @@ fn collect_lint_files( #[allow(clippy::print_stdout)] pub fn print_rules_list(json: bool, maybe_rules_tags: Option>) { let rule_provider = LintRuleProvider::new(None, None); +<<<<<<< HEAD let mut all_rules = rule_provider.all_rules(); let configured_rules = rule_provider.resolve_lint_rules( LintRulesConfig { @@ -471,10 +472,23 @@ pub fn print_rules_list(json: bool, maybe_rules_tags: Option>) { None, ); all_rules.sort_by_cached_key(|rule| rule.code().to_string()); +======= + let lint_rules = rule_provider + .resolve_lint_rules( + LintRulesConfig { + tags: maybe_rules_tags.clone(), + include: None, + exclude: None, + }, + None, + ) + .rules; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) if json { let json_output = serde_json::json!({ "version": JSON_SCHEMA_VERSION, +<<<<<<< HEAD "rules": all_rules .iter() .map(|rule| { @@ -483,6 +497,15 @@ pub fn print_rules_list(json: bool, maybe_rules_tags: Option>) { "code": rule.code(), "tags": rule.tags().iter().map(|t| t.display()).collect::>(), "docs": rule.help_docs_url(), +======= + "rules": lint_rules + .iter() + .map(|rule| { + serde_json::json!({ + "code": rule.code(), + "tags": rule.tags(), + "docs": rule.docs(), +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) }) }) .collect::>(), @@ -492,6 +515,7 @@ pub fn print_rules_list(json: bool, maybe_rules_tags: Option>) { // The rules should still be printed even if `--quiet` option is enabled, // so use `println!` here instead of `info!`. println!("Available rules:"); +<<<<<<< HEAD for rule in all_rules.iter() { // TODO(bartlomieju): this is O(n) search, fix before landing let enabled = if configured_rules.rules.contains(rule) { @@ -520,6 +544,19 @@ pub fn print_rules_list(json: bool, maybe_rules_tags: Option>) { )) ); } +======= + for rule in lint_rules.iter() { + print!(" - {}", colors::cyan(rule.code())); + if rule.tags().is_empty() { + println!(); + } else { + println!(" [{}]", colors::gray(rule.tags().join(", "))) + } + println!( + "{}", + colors::gray(format!(" help: {}", rule.help_docs_url())) + ); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) println!(); } } @@ -672,6 +709,7 @@ mod tests { std::fs::write( &rules_schema_path, +<<<<<<< HEAD format!( "{}\n", serde_json::to_string_pretty(&RulesSchema { @@ -680,6 +718,13 @@ mod tests { }) .unwrap(), ), +======= + serde_json::to_string_pretty(&RulesSchema { + schema: schema.schema, + rules: all_rules, + }) + .unwrap(), +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ) .unwrap(); } diff --git a/cli/tools/lint/rules/mod.rs b/cli/tools/lint/rules/mod.rs index f8c65428aca6ad..0e5c2ed0e2884e 100644 --- a/cli/tools/lint/rules/mod.rs +++ b/cli/tools/lint/rules/mod.rs @@ -13,10 +13,15 @@ use deno_core::error::AnyError; use deno_graph::ModuleGraph; use deno_lint::diagnostic::LintDiagnostic; use deno_lint::rules::LintRule; +<<<<<<< HEAD use deno_lint::tags; use crate::resolver::CliSloppyImportsResolver; use crate::sys::CliSys; +======= + +use crate::resolver::CliSloppyImportsResolver; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) mod no_sloppy_imports; mod no_slow_types; @@ -27,10 +32,19 @@ pub use no_slow_types::collect_no_slow_type_diagnostics; pub trait PackageLintRule: std::fmt::Debug + Send + Sync { fn code(&self) -> &'static str; +<<<<<<< HEAD fn tags(&self) -> tags::Tags { &[] } +======= + fn tags(&self) -> &'static [&'static str] { + &[] + } + + fn docs(&self) -> &'static str; + +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) fn help_docs_url(&self) -> Cow<'static, str>; fn lint_package( @@ -64,12 +78,15 @@ enum CliLintRuleKind { #[derive(Debug)] pub struct CliLintRule(CliLintRuleKind); +<<<<<<< HEAD impl PartialEq for CliLintRule { fn eq(&self, other: &Self) -> bool { self.code() == other.code() } } +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) impl CliLintRule { pub fn code(&self) -> &'static str { use CliLintRuleKind::*; @@ -80,7 +97,11 @@ impl CliLintRule { } } +<<<<<<< HEAD pub fn tags(&self) -> tags::Tags { +======= + pub fn tags(&self) -> &'static [&'static str] { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use CliLintRuleKind::*; match &self.0 { DenoLint(rule) => rule.tags(), @@ -89,11 +110,27 @@ impl CliLintRule { } } +<<<<<<< HEAD +======= + pub fn docs(&self) -> &'static str { + use CliLintRuleKind::*; + match &self.0 { + DenoLint(rule) => rule.docs(), + Extended(rule) => rule.docs(), + Package(rule) => rule.docs(), + } + } + +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) pub fn help_docs_url(&self) -> Cow<'static, str> { use CliLintRuleKind::*; match &self.0 { DenoLint(rule) => { +<<<<<<< HEAD Cow::Owned(format!("https://docs.deno.com/lint/rules/{}", rule.code())) +======= + Cow::Owned(format!("https://lint.deno.land/rules/{}", rule.code())) +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } Extended(rule) => rule.help_docs_url(), Package(rule) => rule.help_docs_url(), @@ -142,13 +179,21 @@ impl ConfiguredRules { pub struct LintRuleProvider { sloppy_imports_resolver: Option>, +<<<<<<< HEAD workspace_resolver: Option>>, +======= + workspace_resolver: Option>, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } impl LintRuleProvider { pub fn new( sloppy_imports_resolver: Option>, +<<<<<<< HEAD workspace_resolver: Option>>, +======= + workspace_resolver: Option>, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ) -> Self { Self { sloppy_imports_resolver, @@ -168,7 +213,15 @@ impl LintRuleProvider { Ok(lint_rules) } +<<<<<<< HEAD pub fn all_rules(&self) -> Vec { +======= + pub fn resolve_lint_rules( + &self, + rules: LintRulesConfig, + maybe_config_file: Option<&ConfigFile>, + ) -> ConfiguredRules { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) let deno_lint_rules = deno_lint::rules::get_all_rules(); let cli_lint_rules = vec![CliLintRule(CliLintRuleKind::Extended( Box::new(no_sloppy_imports::NoSloppyImportsRule::new( @@ -179,11 +232,19 @@ impl LintRuleProvider { let cli_graph_rules = vec![CliLintRule(CliLintRuleKind::Package( Box::new(no_slow_types::NoSlowTypesRule), ))]; +<<<<<<< HEAD deno_lint_rules +======= + let mut all_rule_names = HashSet::with_capacity( + deno_lint_rules.len() + cli_lint_rules.len() + cli_graph_rules.len(), + ); + let all_rules = deno_lint_rules +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) .into_iter() .map(|rule| CliLintRule(CliLintRuleKind::DenoLint(rule))) .chain(cli_lint_rules) .chain(cli_graph_rules) +<<<<<<< HEAD .collect() } @@ -199,6 +260,13 @@ impl LintRuleProvider { } let rules = filtered_rules( all_rules.into_iter(), +======= + .inspect(|rule| { + all_rule_names.insert(rule.code()); + }); + let rules = filtered_rules( + all_rules, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) rules .tags .or_else(|| Some(get_default_tags(maybe_config_file))), @@ -286,7 +354,11 @@ mod test { .resolve_lint_rules(Default::default(), None) .rules .into_iter() +<<<<<<< HEAD .filter(|r| r.tags().iter().any(|t| *t == tags::RECOMMENDED)) +======= + .filter(|r| r.tags().iter().any(|t| *t == "recommended")) +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) .map(|r| r.code().to_string()) .filter(|n| n != "no-debugger") .collect::>(); diff --git a/cli/tools/lint/rules/no_sloppy_imports.rs b/cli/tools/lint/rules/no_sloppy_imports.rs index 34eeef521d95ae..bae3b85897e1de 100644 --- a/cli/tools/lint/rules/no_sloppy_imports.rs +++ b/cli/tools/lint/rules/no_sloppy_imports.rs @@ -16,7 +16,10 @@ use deno_lint::diagnostic::LintDiagnosticRange; use deno_lint::diagnostic::LintFix; use deno_lint::diagnostic::LintFixChange; use deno_lint::rules::LintRule; +<<<<<<< HEAD use deno_lint::tags; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use deno_resolver::sloppy_imports::SloppyImportsResolution; use deno_resolver::sloppy_imports::SloppyImportsResolutionKind; use text_lines::LineAndColumnIndex; @@ -24,19 +27,30 @@ use text_lines::LineAndColumnIndex; use super::ExtendedLintRule; use crate::graph_util::CliJsrUrlProvider; use crate::resolver::CliSloppyImportsResolver; +<<<<<<< HEAD use crate::sys::CliSys; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) #[derive(Debug)] pub struct NoSloppyImportsRule { sloppy_imports_resolver: Option>, // None for making printing out the lint rules easy +<<<<<<< HEAD workspace_resolver: Option>>, +======= + workspace_resolver: Option>, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } impl NoSloppyImportsRule { pub fn new( sloppy_imports_resolver: Option>, +<<<<<<< HEAD workspace_resolver: Option>>, +======= + workspace_resolver: Option>, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ) -> Self { NoSloppyImportsRule { sloppy_imports_resolver, @@ -163,6 +177,7 @@ impl LintRule for NoSloppyImportsRule { CODE } +<<<<<<< HEAD // TODO(bartlomieju): this document needs to be exposed to `https://lint.deno.land`. // fn docs(&self) -> &'static str { // include_str!("no_sloppy_imports.md") @@ -170,12 +185,24 @@ impl LintRule for NoSloppyImportsRule { fn tags(&self) -> tags::Tags { &[tags::RECOMMENDED] +======= + fn docs(&self) -> &'static str { + include_str!("no_sloppy_imports.md") + } + + fn tags(&self) -> &'static [&'static str] { + &["recommended"] +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } } #[derive(Debug)] struct SloppyImportCaptureResolver<'a> { +<<<<<<< HEAD workspace_resolver: &'a WorkspaceResolver, +======= + workspace_resolver: &'a WorkspaceResolver, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) sloppy_imports_resolver: &'a CliSloppyImportsResolver, captures: RefCell>, } @@ -189,6 +216,7 @@ impl<'a> deno_graph::source::Resolver for SloppyImportCaptureResolver<'a> { ) -> Result { let resolution = self .workspace_resolver +<<<<<<< HEAD .resolve( specifier_text, &referrer_range.specifier, @@ -201,6 +229,9 @@ impl<'a> deno_graph::source::Resolver for SloppyImportCaptureResolver<'a> { } }, ) +======= + .resolve(specifier_text, &referrer_range.specifier) +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) .map_err(|err| ResolveError::Other(JsErrorBox::from_err(err)))?; match resolution { diff --git a/cli/tools/lint/rules/no_slow_types.rs b/cli/tools/lint/rules/no_slow_types.rs index 668bc3768926dd..36cb770567381e 100644 --- a/cli/tools/lint/rules/no_slow_types.rs +++ b/cli/tools/lint/rules/no_slow_types.rs @@ -9,7 +9,10 @@ use deno_graph::ModuleGraph; use deno_lint::diagnostic::LintDiagnostic; use deno_lint::diagnostic::LintDiagnosticDetails; use deno_lint::diagnostic::LintDiagnosticRange; +<<<<<<< HEAD use deno_lint::tags; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use super::PackageLintRule; @@ -23,6 +26,7 @@ impl PackageLintRule for NoSlowTypesRule { CODE } +<<<<<<< HEAD fn tags(&self) -> tags::Tags { &[tags::JSR] } @@ -31,6 +35,15 @@ impl PackageLintRule for NoSlowTypesRule { // fn docs(&self) -> &'static str { // include_str!("no_slow_types.md") // } +======= + fn tags(&self) -> &'static [&'static str] { + &["jsr"] + } + + fn docs(&self) -> &'static str { + include_str!("no_slow_types.md") + } +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) fn help_docs_url(&self) -> Cow<'static, str> { Cow::Borrowed("https://jsr.io/docs/about-slow-types") diff --git a/cli/tools/registry/mod.rs b/cli/tools/registry/mod.rs index c2ed94e8473aee..804bbdd763798a 100644 --- a/cli/tools/registry/mod.rs +++ b/cli/tools/registry/mod.rs @@ -94,10 +94,18 @@ pub async fn publish( match cli_options.start_dir.maybe_deno_json() { Some(deno_json) => { debug_assert!(!deno_json.is_package()); +<<<<<<< HEAD if deno_json.json.name.is_none() { bail!("Missing 'name' field in '{}'.", deno_json.specifier); } error_missing_exports_field(deno_json)?; +======= + error_missing_exports_field(deno_json)?; + bail!( + "Missing 'name' or 'exports' field in '{}'.", + deno_json.specifier + ); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } None => { bail!( diff --git a/cli/tools/registry/unfurl.rs b/cli/tools/registry/unfurl.rs index 469a19fdf4124f..6e22d302c64a13 100644 --- a/cli/tools/registry/unfurl.rs +++ b/cli/tools/registry/unfurl.rs @@ -33,7 +33,10 @@ use deno_semver::Version; use deno_semver::VersionReq; use crate::resolver::CliSloppyImportsResolver; +<<<<<<< HEAD use crate::sys::CliSys; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) #[derive(Debug, Clone)] pub enum SpecifierUnfurlerDiagnostic { @@ -191,14 +194,22 @@ enum UnfurlSpecifierError { pub struct SpecifierUnfurler { sloppy_imports_resolver: Option>, +<<<<<<< HEAD workspace_resolver: Arc>, +======= + workspace_resolver: Arc, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) bare_node_builtins: bool, } impl SpecifierUnfurler { pub fn new( sloppy_imports_resolver: Option>, +<<<<<<< HEAD workspace_resolver: Arc>, +======= + workspace_resolver: Arc, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) bare_node_builtins: bool, ) -> Self { debug_assert_eq!( @@ -253,11 +264,17 @@ impl SpecifierUnfurler { specifier: &str, resolution_kind: SloppyImportsResolutionKind, ) -> Result, UnfurlSpecifierError> { +<<<<<<< HEAD let resolved = if let Ok(resolved) = self.workspace_resolver.resolve( specifier, referrer, resolution_kind.into(), ) { +======= + let resolved = if let Ok(resolved) = + self.workspace_resolver.resolve(specifier, referrer) + { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) match resolved { MappedResolution::Normal { specifier, .. } | MappedResolution::ImportMap { specifier, .. } => Some(specifier), @@ -761,9 +778,12 @@ mod tests { }], vec![Arc::new(package_json)], deno_config::workspace::PackageJsonDepResolution::Enabled, +<<<<<<< HEAD Default::default(), Default::default(), CliSys::default(), +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ); let unfurler = SpecifierUnfurler::new( Some(Arc::new(CliSloppyImportsResolver::new( @@ -906,7 +926,10 @@ export type * from "./c.d.ts"; cwd.join("package.json"), json!({ "workspaces": ["./publish", "./subtract", "./add"] }), ); +<<<<<<< HEAD let sys = CliSys::default(); +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) let workspace_resolver = WorkspaceResolver::new_raw( Arc::new(ModuleSpecifier::from_directory_path(&cwd).unwrap()), None, @@ -927,10 +950,15 @@ export type * from "./c.d.ts"; Arc::new(pkg_json_publishing), ], deno_config::workspace::PackageJsonDepResolution::Enabled, +<<<<<<< HEAD Default::default(), Default::default(), sys.clone(), ); +======= + ); + let sys = CliSys::default(); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) let unfurler = SpecifierUnfurler::new( Some(Arc::new(CliSloppyImportsResolver::new( SloppyImportsCachedFs::new(sys), diff --git a/cli/tools/task.rs b/cli/tools/task.rs index d65a321504dd1d..0abb084d6b765a 100644 --- a/cli/tools/task.rs +++ b/cli/tools/task.rs @@ -28,7 +28,10 @@ use deno_path_util::normalize_path; use deno_task_shell::KillSignal; use deno_task_shell::ShellCommand; use indexmap::IndexMap; +<<<<<<< HEAD use indexmap::IndexSet; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use regex::Regex; use crate::args::CliOptions; @@ -71,10 +74,26 @@ pub async fn execute_script( }) .unwrap_or(false); +<<<<<<< HEAD // TODO(bartlomieju): this whole huge if statement should be a separate function, preferably with unit tests let (packages_task_configs, name) = if let Some(filter) = &task_flags.filter { // Filter based on package name let package_regex = package_filter_to_regex(filter)?; +======= + fn arg_to_regex(input: &str) -> Result { + let mut regex_str = regex::escape(input); + regex_str = regex_str.replace("\\*", ".*"); + + Regex::new(®ex_str) + } + + let packages_task_configs: Vec = if let Some(filter) = + &task_flags.filter + { + // Filter based on package name + let package_regex = arg_to_regex(filter)?; + let workspace = cli_options.workspace(); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) let Some(task_name) = &task_flags.task else { print_available_tasks_workspace( @@ -87,11 +106,18 @@ pub async fn execute_script( return Ok(0); }; +<<<<<<< HEAD let task_regex = arg_to_task_name_filter(task_name)?; let mut packages_task_info: Vec = vec![]; let workspace = cli_options.workspace(); +======= + + let task_name_filter = arg_to_task_name_filter(task_name)?; + let mut packages_task_info: Vec = vec![]; + +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) for folder in workspace.config_folders() { if !task_flags.recursive && !matches_package(folder.1, force_use_pkg_json, &package_regex) @@ -105,14 +131,62 @@ pub async fn execute_script( tasks_config = tasks_config.with_only_pkg_json(); } +<<<<<<< HEAD let matched_tasks = match_tasks(&tasks_config, &task_regex); if matched_tasks.is_empty() { +======= + // Any of the matched tasks could be a child task of another matched + // one. Therefore we need to filter these out to ensure that every + // task is only run once. + let mut matched: HashSet = HashSet::new(); + let mut visited: HashSet = HashSet::new(); + + fn visit_task( + tasks_config: &WorkspaceTasksConfig, + visited: &mut HashSet, + name: &str, + ) { + if visited.contains(name) { + return; + } + + visited.insert(name.to_string()); + + if let Some((_, TaskOrScript::Task(_, task))) = &tasks_config.task(name) + { + for dep in &task.dependencies { + visit_task(tasks_config, visited, dep); + } + } + } + + // Match tasks in deno.json + for name in tasks_config.task_names() { + let matches_filter = match &task_name_filter { + TaskNameFilter::Exact(n) => *n == name, + TaskNameFilter::Regex(re) => re.is_match(name), + }; + if matches_filter && !visited.contains(name) { + matched.insert(name.to_string()); + visit_task(&tasks_config, &mut visited, name); + } + } + + if matched.is_empty() { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) continue; } packages_task_info.push(PackageTaskInfo { +<<<<<<< HEAD matched_tasks, +======= + matched_tasks: matched + .iter() + .map(|s| s.to_string()) + .collect::>(), +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) tasks_config, }); } @@ -133,7 +207,14 @@ pub async fn execute_script( return Ok(0); } +<<<<<<< HEAD (packages_task_info, task_name) +======= + // FIXME: Sort packages topologically + // + + packages_task_info +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } else { let mut tasks_config = start_dir.to_tasks_config()?; @@ -151,6 +232,7 @@ pub async fn execute_script( return Ok(0); }; +<<<<<<< HEAD let task_regex = arg_to_task_name_filter(task_name)?; let matched_tasks = match_tasks(&tasks_config, &task_regex); @@ -161,6 +243,12 @@ pub async fn execute_script( }], task_name, ) +======= + vec![PackageTaskInfo { + tasks_config, + matched_tasks: vec![task_name.to_string()], + }] +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) }; let npm_installer = factory.npm_installer_if_managed()?; @@ -205,7 +293,11 @@ pub async fn execute_script( for task_config in &packages_task_configs { let exit_code = task_runner +<<<<<<< HEAD .run_tasks(task_config, name, &kill_signal, cli_options.argv()) +======= + .run_tasks(task_config, &kill_signal, cli_options.argv()) +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) .await?; if exit_code > 0 { return Ok(exit_code); @@ -240,11 +332,18 @@ impl<'a> TaskRunner<'a> { pub async fn run_tasks( &self, pkg_tasks_config: &PackageTaskInfo, +<<<<<<< HEAD task_name: &str, kill_signal: &KillSignal, argv: &[String], ) -> Result { match sort_tasks_topo(pkg_tasks_config, task_name) { +======= + kill_signal: &KillSignal, + argv: &[String], + ) -> Result { + match sort_tasks_topo(pkg_tasks_config) { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Ok(sorted) => self.run_tasks_in_parallel(sorted, kill_signal, argv).await, Err(err) => match err { TaskError::NotFound(name) => { @@ -560,7 +659,10 @@ struct ResolvedTask<'a> { fn sort_tasks_topo<'a>( pkg_task_config: &'a PackageTaskInfo, +<<<<<<< HEAD task_name: &str, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ) -> Result>, TaskError> { trait TasksConfig { fn task( @@ -655,10 +757,13 @@ fn sort_tasks_topo<'a>( sort_visit(name, &mut sorted, Vec::new(), &pkg_task_config.tasks_config)?; } +<<<<<<< HEAD if sorted.is_empty() { return Err(TaskError::NotFound(task_name.to_string())); } +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Ok(sorted) } @@ -892,6 +997,7 @@ fn strip_ansi_codes_and_escape_control_chars(s: &str) -> String { .collect() } +<<<<<<< HEAD fn visit_task_and_dependencies( tasks_config: &WorkspaceTasksConfig, visited: &mut HashSet, @@ -943,6 +1049,8 @@ fn package_filter_to_regex(input: &str) -> Result { Regex::new(®ex_str) } +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) fn arg_to_task_name_filter(input: &str) -> Result { if !input.contains("*") { return Ok(TaskNameFilter::Exact(input)); diff --git a/ext/broadcast_channel/Cargo.toml b/ext/broadcast_channel/Cargo.toml index ee183081fb8fa1..9bd24aee5a54c4 100644 --- a/ext/broadcast_channel/Cargo.toml +++ b/ext/broadcast_channel/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_broadcast_channel" +<<<<<<< HEAD version = "0.182.0" +======= +version = "0.183.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/cache/Cargo.toml b/ext/cache/Cargo.toml index a17b3ab7d27176..25633318059ac1 100644 --- a/ext/cache/Cargo.toml +++ b/ext/cache/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_cache" +<<<<<<< HEAD version = "0.120.0" +======= +version = "0.121.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true @@ -14,6 +18,7 @@ description = "Implementation of Cache API for Deno" path = "lib.rs" [dependencies] +<<<<<<< HEAD anyhow.workspace = true async-stream.workspace = true async-trait.workspace = true @@ -36,3 +41,13 @@ slab.workspace = true thiserror.workspace = true tokio.workspace = true tokio-util.workspace = true +======= +async-trait.workspace = true +deno_core.workspace = true +deno_error.workspace = true +rusqlite.workspace = true +serde.workspace = true +sha2.workspace = true +thiserror.workspace = true +tokio.workspace = true +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/ext/cache/lib.rs b/ext/cache/lib.rs index 0a69b6229e3b69..affef8d8c80ecc 100644 --- a/ext/cache/lib.rs +++ b/ext/cache/lib.rs @@ -1,24 +1,36 @@ // Copyright 2018-2025 the Deno authors. MIT license. +<<<<<<< HEAD use std::borrow::Cow; use std::cell::RefCell; use std::path::PathBuf; use std::pin::Pin; +======= +use std::cell::RefCell; +use std::path::PathBuf; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use std::rc::Rc; use std::sync::Arc; use async_trait::async_trait; +<<<<<<< HEAD use bytes::Bytes; use deno_core::op2; use deno_core::serde::Deserialize; use deno_core::serde::Serialize; use deno_core::AsyncRefCell; use deno_core::AsyncResult; +======= +use deno_core::op2; +use deno_core::serde::Deserialize; +use deno_core::serde::Serialize; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use deno_core::ByteString; use deno_core::OpState; use deno_core::Resource; use deno_core::ResourceId; use deno_error::JsErrorBox; +<<<<<<< HEAD use futures::Stream; use tokio::io::AsyncRead; use tokio::io::AsyncReadExt; @@ -31,12 +43,18 @@ pub use lsc_shard::CacheShard; pub use lscache::LscBackend; pub use sqlite::SqliteBackedCache; use tokio_util::io::StreamReader; +======= + +mod sqlite; +pub use sqlite::SqliteBackedCache; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) #[derive(Debug, thiserror::Error, deno_error::JsError)] pub enum CacheError { #[class(type)] #[error("CacheStorage is not available in this context")] ContextUnsupported, +<<<<<<< HEAD #[class(type)] #[error("Cache name cannot be empty")] EmptyName, @@ -52,6 +70,8 @@ pub enum CacheError { #[class(type)] #[error("Content-Encoding is not allowed in response headers")] ContentEncodingNotAllowed, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) #[class(generic)] #[error(transparent)] Sqlite(#[from] rusqlite::Error), @@ -67,6 +87,7 @@ pub enum CacheError { #[class(inherit)] #[error("{0}")] Io(#[from] std::io::Error), +<<<<<<< HEAD #[class(type)] #[error(transparent)] InvalidHeaderName(#[from] hyper::header::InvalidHeaderName), @@ -79,6 +100,8 @@ pub enum CacheError { #[class(generic)] #[error(transparent)] ClientError(#[from] hyper_util::client::legacy::Error), +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) #[class(generic)] #[error("Failed to create cache storage directory {}", .dir.display())] CacheStorageDirectory { @@ -86,6 +109,7 @@ pub enum CacheError { #[source] source: std::io::Error, }, +<<<<<<< HEAD #[class(generic)] #[error("cache {method} request failed: {status}")] RequestFailed { @@ -110,6 +134,29 @@ deno_core::extension!(deno_cache, esm = [ "01_cache.js" ], options = { maybe_create_cache: Option, +======= +} + +#[derive(Clone)] +pub struct CreateCache( + pub Arc Result>, +); + +deno_core::extension!(deno_cache, + deps = [ deno_webidl, deno_web, deno_url, deno_fetch ], + parameters=[CA: Cache], + ops = [ + op_cache_storage_open, + op_cache_storage_has, + op_cache_storage_delete, + op_cache_put, + op_cache_match, + op_cache_delete, + ], + esm = [ "01_cache.js" ], + options = { + maybe_create_cache: Option>, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) }, state = |state, options| { if let Some(create_cache) = options.maybe_create_cache { @@ -193,6 +240,7 @@ pub trait Cache: Clone + 'static { ) -> Result; } +<<<<<<< HEAD #[derive(Clone)] pub enum CacheImpl { Sqlite(SqliteBackedCache), @@ -320,33 +368,78 @@ pub async fn op_cache_storage_open( #[string] cache_name: String, ) -> Result { let cache = get_cache(&state)?; +======= +#[op2(async)] +#[number] +pub async fn op_cache_storage_open( + state: Rc>, + #[string] cache_name: String, +) -> Result +where + CA: Cache, +{ + let cache = get_cache::(&state)?; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) cache.storage_open(cache_name).await } #[op2(async)] +<<<<<<< HEAD pub async fn op_cache_storage_has( state: Rc>, #[string] cache_name: String, ) -> Result { let cache = get_cache(&state)?; +======= +pub async fn op_cache_storage_has( + state: Rc>, + #[string] cache_name: String, +) -> Result +where + CA: Cache, +{ + let cache = get_cache::(&state)?; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) cache.storage_has(cache_name).await } #[op2(async)] +<<<<<<< HEAD pub async fn op_cache_storage_delete( state: Rc>, #[string] cache_name: String, ) -> Result { let cache = get_cache(&state)?; +======= +pub async fn op_cache_storage_delete( + state: Rc>, + #[string] cache_name: String, +) -> Result +where + CA: Cache, +{ + let cache = get_cache::(&state)?; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) cache.storage_delete(cache_name).await } #[op2(async)] +<<<<<<< HEAD pub async fn op_cache_put( state: Rc>, #[serde] request_response: CachePutRequest, ) -> Result<(), CacheError> { let cache = get_cache(&state)?; +======= +pub async fn op_cache_put( + state: Rc>, + #[serde] request_response: CachePutRequest, +) -> Result<(), CacheError> +where + CA: Cache, +{ + let cache = get_cache::(&state)?; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) let resource = match request_response.response_rid { Some(rid) => Some( state @@ -362,11 +455,22 @@ pub async fn op_cache_put( #[op2(async)] #[serde] +<<<<<<< HEAD pub async fn op_cache_match( state: Rc>, #[serde] request: CacheMatchRequest, ) -> Result, CacheError> { let cache = get_cache(&state)?; +======= +pub async fn op_cache_match( + state: Rc>, + #[serde] request: CacheMatchRequest, +) -> Result, CacheError> +where + CA: Cache, +{ + let cache = get_cache::(&state)?; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) match cache.r#match(request).await? { Some((meta, None)) => Ok(Some(CacheMatchResponse(meta, None))), Some((meta, Some(resource))) => { @@ -378,6 +482,7 @@ pub async fn op_cache_match( } #[op2(async)] +<<<<<<< HEAD pub async fn op_cache_delete( state: Rc>, #[serde] request: CacheDeleteRequest, @@ -396,6 +501,30 @@ pub fn get_cache( let cache = create_cache.0()?; state.put(cache); Ok(state.borrow::().clone()) +======= +pub async fn op_cache_delete( + state: Rc>, + #[serde] request: CacheDeleteRequest, +) -> Result +where + CA: Cache, +{ + let cache = get_cache::(&state)?; + cache.delete(request).await +} + +pub fn get_cache(state: &Rc>) -> Result +where + CA: Cache, +{ + let mut state = state.borrow_mut(); + if let Some(cache) = state.try_borrow::() { + Ok(cache.clone()) + } else if let Some(create_cache) = state.try_borrow::>() { + let cache = create_cache.0()?; + state.put(cache); + Ok(state.borrow::().clone()) +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } else { Err(CacheError::ContextUnsupported) } diff --git a/ext/cache/sqlite.rs b/ext/cache/sqlite.rs index 37463316cf6c2f..f916d390cfb736 100644 --- a/ext/cache/sqlite.rs +++ b/ext/cache/sqlite.rs @@ -1,4 +1,8 @@ // Copyright 2018-2025 the Deno authors. MIT license. +<<<<<<< HEAD +======= +use std::borrow::Cow; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use std::path::PathBuf; use std::pin::Pin; use std::rc::Rc; @@ -6,15 +10,28 @@ use std::sync::Arc; use std::time::SystemTime; use std::time::UNIX_EPOCH; +<<<<<<< HEAD use deno_core::futures::future::poll_fn; use deno_core::parking_lot::Mutex; use deno_core::unsync::spawn_blocking; +======= +use async_trait::async_trait; +use deno_core::futures::future::poll_fn; +use deno_core::parking_lot::Mutex; +use deno_core::unsync::spawn_blocking; +use deno_core::AsyncRefCell; +use deno_core::AsyncResult; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use deno_core::BufMutView; use deno_core::ByteString; use deno_core::Resource; use rusqlite::params; use rusqlite::Connection; use rusqlite::OptionalExtension; +<<<<<<< HEAD +======= +use tokio::io::AsyncReadExt; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use tokio::io::AsyncWrite; use tokio::io::AsyncWriteExt; @@ -22,12 +39,19 @@ use crate::deserialize_headers; use crate::get_header; use crate::serialize_headers; use crate::vary_header_matches; +<<<<<<< HEAD +======= +use crate::Cache; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use crate::CacheDeleteRequest; use crate::CacheError; use crate::CacheMatchRequest; use crate::CacheMatchResponseMeta; use crate::CachePutRequest; +<<<<<<< HEAD use crate::CacheResponseResource; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) #[derive(Clone)] pub struct SqliteBackedCache { @@ -89,6 +113,7 @@ impl SqliteBackedCache { } } +<<<<<<< HEAD impl SqliteBackedCache { /// Open a cache storage. Internally, this creates a row in the /// sqlite db if the cache doesn't exist and returns the internal id @@ -97,6 +122,16 @@ impl SqliteBackedCache { &self, cache_name: String, ) -> Result { +======= +#[async_trait(?Send)] +impl Cache for SqliteBackedCache { + type CacheMatchResourceType = CacheResponseResource; + + /// Open a cache storage. Internally, this creates a row in the + /// sqlite db if the cache doesn't exist and returns the internal id + /// of the cache. + async fn storage_open(&self, cache_name: String) -> Result { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) let db = self.connection.clone(); let cache_storage_dir = self.cache_storage_dir.clone(); spawn_blocking(move || { @@ -122,10 +157,14 @@ impl SqliteBackedCache { /// Check if a cache with the provided name exists. /// Note: this doesn't check the disk, it only checks the sqlite db. +<<<<<<< HEAD pub async fn storage_has( &self, cache_name: String, ) -> Result { +======= + async fn storage_has(&self, cache_name: String) -> Result { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) let db = self.connection.clone(); spawn_blocking(move || { let db = db.lock(); @@ -143,7 +182,11 @@ impl SqliteBackedCache { } /// Delete a cache storage. Internally, this deletes the row in the sqlite db. +<<<<<<< HEAD pub async fn storage_delete( +======= + async fn storage_delete( +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) &self, cache_name: String, ) -> Result { @@ -172,7 +215,11 @@ impl SqliteBackedCache { .await? } +<<<<<<< HEAD pub async fn put( +======= + async fn put( +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) &self, request_response: CachePutRequest, resource: Option>, @@ -225,7 +272,11 @@ impl SqliteBackedCache { Ok(()) } +<<<<<<< HEAD pub async fn r#match( +======= + async fn r#match( +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) &self, request: CacheMatchRequest, ) -> Result< @@ -296,17 +347,25 @@ impl SqliteBackedCache { } Err(err) => return Err(err.into()), }; +<<<<<<< HEAD Ok(Some(( cache_meta, Some(CacheResponseResource::sqlite(file)), ))) +======= + Ok(Some((cache_meta, Some(CacheResponseResource::new(file))))) +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } Some((cache_meta, None)) => Ok(Some((cache_meta, None))), None => Ok(None), } } +<<<<<<< HEAD pub async fn delete( +======= + async fn delete( +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) &self, request: CacheDeleteRequest, ) -> Result { @@ -371,6 +430,39 @@ impl deno_core::Resource for SqliteBackedCache { } } +<<<<<<< HEAD +======= +pub struct CacheResponseResource { + file: AsyncRefCell, +} + +impl CacheResponseResource { + fn new(file: tokio::fs::File) -> Self { + Self { + file: AsyncRefCell::new(file), + } + } + + async fn read( + self: Rc, + data: &mut [u8], + ) -> Result { + let resource = deno_core::RcRef::map(&self, |r| &r.file); + let mut file = resource.borrow_mut().await; + let nread = file.read(data).await?; + Ok(nread) + } +} + +impl Resource for CacheResponseResource { + deno_core::impl_readable_byob!(); + + fn name(&self) -> Cow { + "CacheResponseResource".into() + } +} + +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) pub fn hash(token: &str) -> String { use sha2::Digest; format!("{:x}", sha2::Sha256::digest(token.as_bytes())) diff --git a/ext/canvas/Cargo.toml b/ext/canvas/Cargo.toml index 3f7878da4e3997..b8073dc9e0e48a 100644 --- a/ext/canvas/Cargo.toml +++ b/ext/canvas/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_canvas" +<<<<<<< HEAD version = "0.57.0" +======= +version = "0.58.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/console/Cargo.toml b/ext/console/Cargo.toml index b956a9964be9d4..bd29504b2f3486 100644 --- a/ext/console/Cargo.toml +++ b/ext/console/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_console" +<<<<<<< HEAD version = "0.188.0" +======= +version = "0.189.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/cron/Cargo.toml b/ext/cron/Cargo.toml index c77827275b903d..4ddaef96f4a3eb 100644 --- a/ext/cron/Cargo.toml +++ b/ext/cron/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_cron" +<<<<<<< HEAD version = "0.68.0" +======= +version = "0.69.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/crypto/Cargo.toml b/ext/crypto/Cargo.toml index 801c257f2af2f5..6628ecb2caede7 100644 --- a/ext/crypto/Cargo.toml +++ b/ext/crypto/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_crypto" +<<<<<<< HEAD version = "0.202.0" +======= +version = "0.203.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/fetch/Cargo.toml b/ext/fetch/Cargo.toml index b3e23635262444..ae0d4bb3e9948a 100644 --- a/ext/fetch/Cargo.toml +++ b/ext/fetch/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_fetch" +<<<<<<< HEAD version = "0.212.0" +======= +version = "0.213.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/ffi/Cargo.toml b/ext/ffi/Cargo.toml index f1227afaaae710..1fafa64990c61f 100644 --- a/ext/ffi/Cargo.toml +++ b/ext/ffi/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_ffi" +<<<<<<< HEAD version = "0.175.0" +======= +version = "0.176.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/fs/Cargo.toml b/ext/fs/Cargo.toml index 99d92f4bf37b9c..dcb5aeeaf83e91 100644 --- a/ext/fs/Cargo.toml +++ b/ext/fs/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_fs" +<<<<<<< HEAD version = "0.98.0" +======= +version = "0.99.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/fs/ops.rs b/ext/fs/ops.rs index c5c2b256315250..c5cafa1e3b6a62 100644 --- a/ext/fs/ops.rs +++ b/ext/fs/ops.rs @@ -171,6 +171,12 @@ where { let fs = state.borrow::(); let path = fs.cwd()?; +<<<<<<< HEAD +======= + state + .borrow_mut::

() + .check_read_blind(&path, "CWD", "Deno.cwd()")?; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) let path_str = path_into_string(path.into_os_string())?; Ok(path_str) } diff --git a/ext/http/Cargo.toml b/ext/http/Cargo.toml index 8f039591ad3bc2..fcbdc7d8a1d161 100644 --- a/ext/http/Cargo.toml +++ b/ext/http/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_http" +<<<<<<< HEAD version = "0.186.0" +======= +version = "0.187.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/io/Cargo.toml b/ext/io/Cargo.toml index 888e2f12a73d66..fd2cb325a9eb84 100644 --- a/ext/io/Cargo.toml +++ b/ext/io/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_io" +<<<<<<< HEAD version = "0.98.0" +======= +version = "0.99.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/kv/Cargo.toml b/ext/kv/Cargo.toml index 32394c6319dbef..12ecb43f9b4420 100644 --- a/ext/kv/Cargo.toml +++ b/ext/kv/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_kv" +<<<<<<< HEAD version = "0.96.0" +======= +version = "0.97.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/napi/Cargo.toml b/ext/napi/Cargo.toml index cece80f14a4cf4..c49a2e10184309 100644 --- a/ext/napi/Cargo.toml +++ b/ext/napi/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_napi" +<<<<<<< HEAD version = "0.119.0" +======= +version = "0.120.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/napi/sym/Cargo.toml b/ext/napi/sym/Cargo.toml index b351d39c1af267..21af478a233c7b 100644 --- a/ext/napi/sym/Cargo.toml +++ b/ext/napi/sym/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "napi_sym" +<<<<<<< HEAD version = "0.118.0" +======= +version = "0.119.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/net/03_quic.js b/ext/net/03_quic.js index a07eef8e7986f8..5ec8b681a9dea9 100644 --- a/ext/net/03_quic.js +++ b/ext/net/03_quic.js @@ -34,8 +34,11 @@ import { op_quic_send_stream_get_id, op_quic_send_stream_get_priority, op_quic_send_stream_set_priority, +<<<<<<< HEAD op_webtransport_accept, op_webtransport_connect, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } from "ext:core/ops"; import { getReadableStreamResourceBacking, @@ -52,7 +55,10 @@ const { const { ObjectPrototypeIsPrototypeOf, PromisePrototypeThen, +<<<<<<< HEAD ReflectConstruct, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Symbol, SymbolAsyncIterator, SafePromisePrototypeFinally, @@ -208,9 +214,12 @@ class QuicIncoming { } } +<<<<<<< HEAD let webtransportConnect; let webtransportAccept; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) class QuicConn { #resource; #bidiStream = null; @@ -315,6 +324,7 @@ class QuicConn { close({ closeCode = 0, reason = "" } = { __proto__: null }) { op_quic_connection_close(this.#resource, closeCode, reason); } +<<<<<<< HEAD static { webtransportConnect = async function webtransportConnect(conn, url) { @@ -352,6 +362,8 @@ class QuicConn { return { url, connect, settingsTx, settingsRx }; }; } +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } class QuicSendStream extends WritableStream { @@ -388,11 +400,15 @@ function readableStream(rid, closed) { SafePromisePrototypeFinally(closed, () => { core.tryClose(rid); }); +<<<<<<< HEAD return readableStreamForRid( rid, true, (...args) => ReflectConstruct(QuicReceiveStream, args), ); +======= + return readableStreamForRid(rid, true, QuicReceiveStream); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } function writableStream(rid, closed) { @@ -400,11 +416,15 @@ function writableStream(rid, closed) { SafePromisePrototypeFinally(closed, () => { core.tryClose(rid); }); +<<<<<<< HEAD return writableStreamForRid( rid, true, (...args) => ReflectConstruct(QuicSendStream, args), ); +======= + return writableStreamForRid(rid, true, QuicSendStream); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } class QuicBidirectionalStream { @@ -472,7 +492,10 @@ function connectQuic(options) { caCerts: options.caCerts, alpnProtocols: options.alpnProtocols, serverName: options.serverName, +<<<<<<< HEAD serverCertificateHashes: options.serverCertificateHashes, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) }, transportOptions(options), keyPair, @@ -500,6 +523,9 @@ export { QuicListener, QuicReceiveStream, QuicSendStream, +<<<<<<< HEAD webtransportAccept, webtransportConnect, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) }; diff --git a/ext/net/Cargo.toml b/ext/net/Cargo.toml index 481b8a98114063..0e1d3db0d46c24 100644 --- a/ext/net/Cargo.toml +++ b/ext/net/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_net" +<<<<<<< HEAD version = "0.180.0" +======= +version = "0.181.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true @@ -24,9 +28,15 @@ pin-project.workspace = true quinn = { version = "0.11.6", default-features = false, features = ["runtime-tokio", "rustls", "ring"] } rustls-tokio-stream.workspace = true serde.workspace = true +<<<<<<< HEAD sha2.workspace = true socket2.workspace = true thiserror.workspace = true tokio.workspace = true url.workspace = true web-transport-proto = "0.2.3" +======= +socket2.workspace = true +thiserror.workspace = true +tokio.workspace = true +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/ext/net/lib.deno_net.d.ts b/ext/net/lib.deno_net.d.ts index f9dab79e688c8b..9f6cf2db2cb5e4 100644 --- a/ext/net/lib.deno_net.d.ts +++ b/ext/net/lib.deno_net.d.ts @@ -851,6 +851,7 @@ declare namespace Deno { options: ConnectQuicOptions, ): ZRTT extends true ? (QuicConn | Promise) : Promise; +<<<<<<< HEAD /** * **UNSTABLE**: New API, yet to be vetted. * @@ -863,5 +864,7 @@ declare namespace Deno { conn: QuicConn, ): Promise; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) export {}; // only export exports } diff --git a/ext/net/lib.rs b/ext/net/lib.rs index 739d331a02e247..5a2f455c211211 100644 --- a/ext/net/lib.rs +++ b/ext/net/lib.rs @@ -196,8 +196,11 @@ deno_core::extension!(deno_net, quic::op_quic_send_stream_get_id, quic::op_quic_send_stream_get_priority, quic::op_quic_send_stream_set_priority, +<<<<<<< HEAD quic::webtransport::op_webtransport_accept, quic::webtransport::op_webtransport_connect, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ], esm = [ "01_net.js", "02_tls.js" ], lazy_loaded_esm = [ "03_quic.js" ], diff --git a/ext/net/quic.rs b/ext/net/quic.rs index 29176da221b909..09fde1fccd3941 100644 --- a/ext/net/quic.rs +++ b/ext/net/quic.rs @@ -93,18 +93,22 @@ pub enum QuicError { #[class("BadResource")] #[error("{0}")] ClosedStream(#[from] quinn::ClosedStream), +<<<<<<< HEAD #[class(generic)] #[error("{0}")] ReadError(#[from] quinn::ReadError), #[class(generic)] #[error("{0}")] WriteError(#[from] quinn::WriteError), +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) #[class("BadResource")] #[error("Invalid {0} resource")] BadResource(&'static str), #[class(range)] #[error("Connection has reached the maximum number of concurrent outgoing {0} streams")] MaxStreams(&'static str), +<<<<<<< HEAD #[class(generic)] #[error("Peer does not support WebTransport")] WebTransportPeerUnsupported, @@ -114,6 +118,8 @@ pub enum QuicError { #[class(generic)] #[error("{0}")] WebTransportConnectError(#[from] web_transport_proto::ConnectError), +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) #[class(inherit)] #[error(transparent)] Other(#[from] JsErrorBox), @@ -490,6 +496,7 @@ struct ConnectArgs { ca_certs: Option>, alpn_protocols: Option>, server_name: Option, +<<<<<<< HEAD server_certificate_hashes: Option>, } @@ -498,6 +505,8 @@ struct ConnectArgs { struct CertificateHash { algorithm: String, value: JsBuffer, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } #[op2] @@ -538,6 +547,7 @@ where .map(|s| s.into_bytes()) .collect::>(); +<<<<<<< HEAD let mut tls_config = if let Some(hashes) = args.server_certificate_hashes { deno_tls::rustls::ClientConfig::builder() .dangerous() @@ -560,6 +570,15 @@ where SocketUse::GeneralSsl, )? }; +======= + let mut tls_config = create_client_config( + root_cert_store, + ca_certs, + unsafely_ignore_certificate_errors, + key_pair.take(), + SocketUse::GeneralSsl, + )?; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) if let Some(alpn_protocols) = args.alpn_protocols { tls_config.alpn_protocols = @@ -963,6 +982,7 @@ pub(crate) fn op_quic_recv_stream_get_id( let stream_id = quinn::VarInt::from(resource.stream_id).into_inner(); Ok(stream_id) } +<<<<<<< HEAD pub(crate) mod webtransport { // MIT License @@ -1265,3 +1285,5 @@ pub(crate) mod webtransport { } } } +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/ext/node/Cargo.toml b/ext/node/Cargo.toml index b6dc6673cc2dcd..4cd609a3aef60f 100644 --- a/ext/node/Cargo.toml +++ b/ext/node/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_node" +<<<<<<< HEAD version = "0.126.0" +======= +version = "0.127.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true @@ -60,7 +64,10 @@ ipnetwork = "0.20.0" k256 = "0.13.1" lazy-regex.workspace = true libc.workspace = true +<<<<<<< HEAD libsqlite3-sys = "0.30.1" +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) libz-sys.workspace = true md-5 = { version = "0.10.5", features = ["oid"] } md4 = "0.10.2" @@ -82,7 +89,10 @@ regex.workspace = true ring.workspace = true ripemd = { version = "0.1.3", features = ["oid"] } rsa.workspace = true +<<<<<<< HEAD rusqlite.workspace = true +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) scrypt = "0.11.0" sec1.workspace = true serde = "1.0.149" diff --git a/ext/node/lib.rs b/ext/node/lib.rs index 68d16bfd6a2b80..0bb01a0608abdb 100644 --- a/ext/node/lib.rs +++ b/ext/node/lib.rs @@ -441,9 +441,13 @@ deno_core::extension!(deno_node, ops::inspector::op_inspector_enabled, ], objects = [ +<<<<<<< HEAD ops::perf_hooks::EldHistogram, ops::sqlite::DatabaseSync, ops::sqlite::StatementSync +======= + ops::perf_hooks::EldHistogram +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) ], esm_entry_point = "ext:deno_node/02_init.js", esm = [ @@ -666,7 +670,10 @@ deno_core::extension!(deno_node, "node:readline" = "readline.ts", "node:readline/promises" = "readline/promises.ts", "node:repl" = "repl.ts", +<<<<<<< HEAD "node:sqlite" = "sqlite.ts", +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "node:stream" = "stream.ts", "node:stream/consumers" = "stream/consumers.mjs", "node:stream/promises" = "stream/promises.mjs", diff --git a/ext/node/ops/mod.rs b/ext/node/ops/mod.rs index 8dae6aeff68259..ef081b7c856a5c 100644 --- a/ext/node/ops/mod.rs +++ b/ext/node/ops/mod.rs @@ -13,7 +13,10 @@ pub mod os; pub mod perf_hooks; pub mod process; pub mod require; +<<<<<<< HEAD pub mod sqlite; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) pub mod tls; pub mod util; pub mod v8; diff --git a/ext/node/polyfills/01_require.js b/ext/node/polyfills/01_require.js index 3f7b806eeace8a..21cf841d589dd1 100644 --- a/ext/node/polyfills/01_require.js +++ b/ext/node/polyfills/01_require.js @@ -141,7 +141,10 @@ import querystring from "node:querystring"; import readline from "node:readline"; import readlinePromises from "node:readline/promises"; import repl from "node:repl"; +<<<<<<< HEAD import sqlite from "node:sqlite"; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) import stream from "node:stream"; import streamConsumers from "node:stream/consumers"; import streamPromises from "node:stream/promises"; @@ -252,7 +255,10 @@ function setupBuiltinModules() { readline, "readline/promises": readlinePromises, repl, +<<<<<<< HEAD sqlite, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) stream, "stream/consumers": streamConsumers, "stream/promises": streamPromises, diff --git a/ext/node/polyfills/process.ts b/ext/node/polyfills/process.ts index e10f2d67d4a598..4c9a94eb75ba0f 100644 --- a/ext/node/polyfills/process.ts +++ b/ext/node/polyfills/process.ts @@ -441,7 +441,15 @@ Process.prototype.config = { }; Process.prototype.cpuUsage = function () { +<<<<<<< HEAD return Deno.cpuUsage(); +======= + warnNotImplemented("process.cpuUsage()"); + return { + user: 0, + system: 0, + }; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) }; /** https://nodejs.org/api/process.html#process_process_cwd */ diff --git a/ext/os/Cargo.toml b/ext/os/Cargo.toml index 65ee47f9d13700..95f905ae2ec0c9 100644 --- a/ext/os/Cargo.toml +++ b/ext/os/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_os" +<<<<<<< HEAD version = "0.5.0" +======= +version = "0.6.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/os/README.md b/ext/os/README.md index 7c553241fdda38..e5144244c0e21d 100644 --- a/ext/os/README.md +++ b/ext/os/README.md @@ -32,6 +32,7 @@ This crate implements OS specific APIs for Deno | Linux | sysinfo and `/proc/meminfo` | - | | Windows | `sysinfoapi::GlobalMemoryStatusEx` | - | | macOS |

 sysctl([CTL_HW, HW_MEMSIZE]); 
sysctl([CTL_VM, VM_SWAPUSAGE]);
host_statistics64(mach_host_self(), HOST_VM_INFO64)
| - | +<<<<<<< HEAD `cpu_usage` @@ -40,3 +41,5 @@ This crate implements OS specific APIs for Deno | Linux | getrusage | - | | Windows | `processthreadsapi::GetProcessTimes` | - | | macOS | getrusage | - | +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/ext/os/lib.rs b/ext/os/lib.rs index 7939e079acc26b..a537b2e7b3b96a 100644 --- a/ext/os/lib.rs +++ b/ext/os/lib.rs @@ -69,7 +69,10 @@ deno_core::extension!( op_get_exit_code, op_system_memory_info, op_uid, +<<<<<<< HEAD op_runtime_cpu_usage, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) op_runtime_memory_usage, ops::signal::op_signal_bind, ops::signal::op_signal_unbind, @@ -107,7 +110,10 @@ deno_core::extension!( op_get_exit_code, op_system_memory_info, op_uid, +<<<<<<< HEAD op_runtime_cpu_usage, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) op_runtime_memory_usage, ops::signal::op_signal_bind, ops::signal::op_signal_unbind, @@ -422,6 +428,7 @@ fn op_uid(state: &mut OpState) -> Result, PermissionCheckError> { Ok(None) } +<<<<<<< HEAD #[op2] #[serde] fn op_runtime_cpu_usage() -> (usize, usize) { @@ -525,10 +532,21 @@ fn get_cpu_usage() -> (std::time::Duration, std::time::Duration) { #[cfg(not(any(windows, unix)))] fn get_cpu_usage() -> (std::time::Duration, std::time::Duration) { Default::default() +======= +// HeapStats stores values from a isolate.get_heap_statistics() call +#[derive(Serialize)] +#[serde(rename_all = "camelCase")] +struct MemoryUsage { + rss: usize, + heap_total: usize, + heap_used: usize, + external: usize, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } #[op2] #[serde] +<<<<<<< HEAD fn op_runtime_memory_usage( scope: &mut v8::HandleScope, ) -> (usize, usize, usize, usize) { @@ -543,6 +561,17 @@ fn op_runtime_memory_usage( ); (rss, heap_total, heap_used, external) +======= +fn op_runtime_memory_usage(scope: &mut v8::HandleScope) -> MemoryUsage { + let mut s = v8::HeapStatistics::default(); + scope.get_heap_statistics(&mut s); + MemoryUsage { + rss: rss(), + heap_total: s.total_heap_size(), + heap_used: s.used_heap_size(), + external: s.external_memory(), + } +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } #[cfg(any(target_os = "android", target_os = "linux"))] diff --git a/ext/process/Cargo.toml b/ext/process/Cargo.toml index 4b58328256db2a..5eafb9187179f5 100644 --- a/ext/process/Cargo.toml +++ b/ext/process/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_process" +<<<<<<< HEAD version = "0.3.0" +======= +version = "0.4.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/telemetry/Cargo.toml b/ext/telemetry/Cargo.toml index a70e33c7bc7312..bfdc71c091a574 100644 --- a/ext/telemetry/Cargo.toml +++ b/ext/telemetry/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_telemetry" +<<<<<<< HEAD version = "0.10.0" +======= +version = "0.11.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/telemetry/lib.rs b/ext/telemetry/lib.rs index 5d19f2bdcf8452..efe1ea09ad4f55 100644 --- a/ext/telemetry/lib.rs +++ b/ext/telemetry/lib.rs @@ -42,7 +42,10 @@ use opentelemetry::metrics::InstrumentBuilder; use opentelemetry::metrics::MeterProvider as _; use opentelemetry::otel_debug; use opentelemetry::otel_error; +<<<<<<< HEAD use opentelemetry::trace::Link; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use opentelemetry::trace::SpanContext; use opentelemetry::trace::SpanId; use opentelemetry::trace::SpanKind; @@ -95,7 +98,10 @@ deno_core::extension!( op_otel_span_attribute1, op_otel_span_attribute2, op_otel_span_attribute3, +<<<<<<< HEAD op_otel_span_add_link, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) op_otel_span_update_name, op_otel_metric_attribute3, op_otel_metric_record0, @@ -1361,6 +1367,20 @@ impl OtelSpan { } #[fast] +<<<<<<< HEAD +======= + fn drop_link(&self) { + let mut state = self.0.borrow_mut(); + match &mut **state { + OtelSpanState::Recording(span) => { + span.links.dropped_count += 1; + } + OtelSpanState::Done(_) => {} + } + } + + #[fast] +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) fn end(&self, end_time: f64) { let end_time = if end_time.is_nan() { SystemTime::now() @@ -1473,6 +1493,7 @@ fn op_otel_span_update_name<'s>( } } +<<<<<<< HEAD #[op2(fast)] fn op_otel_span_add_link<'s>( scope: &mut v8::HandleScope<'s>, @@ -1515,6 +1536,8 @@ fn op_otel_span_add_link<'s>( true } +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) struct OtelMeter(opentelemetry::metrics::Meter); impl deno_core::GarbageCollected for OtelMeter {} diff --git a/ext/telemetry/telemetry.ts b/ext/telemetry/telemetry.ts index 7ce44f74ed122c..95e8ae069cff90 100644 --- a/ext/telemetry/telemetry.ts +++ b/ext/telemetry/telemetry.ts @@ -15,7 +15,10 @@ import { op_otel_metric_record2, op_otel_metric_record3, op_otel_metric_wait_to_observe, +<<<<<<< HEAD op_otel_span_add_link, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) op_otel_span_attribute1, op_otel_span_attribute2, op_otel_span_attribute3, @@ -187,6 +190,10 @@ interface OtelSpan { spanContext(): SpanContext; setStatus(status: SpanStatusCode, errorDescription: string): void; dropEvent(): void; +<<<<<<< HEAD +======= + dropLink(): void; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) end(endTime: number): void; } @@ -359,6 +366,7 @@ class Span { return this; } +<<<<<<< HEAD addLink(link: Link): Span { const droppedAttributeCount = (link.droppedAttributesCount ?? 0) + (link.attributes ? ObjectKeys(link.attributes).length : 0); @@ -371,12 +379,20 @@ class Span { droppedAttributeCount, ); if (!valid) return this; +======= + addLink(_link: Link): Span { + this.#otelSpan?.dropLink(); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) return this; } addLinks(links: Link[]): Span { for (let i = 0; i < links.length; i++) { +<<<<<<< HEAD this.addLink(links[i]); +======= + this.#otelSpan?.dropLink(); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } return this; } diff --git a/ext/tls/Cargo.toml b/ext/tls/Cargo.toml index df67e689c4a66a..54ccc6cc29f525 100644 --- a/ext/tls/Cargo.toml +++ b/ext/tls/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_tls" +<<<<<<< HEAD version = "0.175.0" +======= +version = "0.176.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/url/Cargo.toml b/ext/url/Cargo.toml index 7336ea0d428f20..50540ff4f21f55 100644 --- a/ext/url/Cargo.toml +++ b/ext/url/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_url" +<<<<<<< HEAD version = "0.188.0" +======= +version = "0.189.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/web/06_streams.js b/ext/web/06_streams.js index 2ad350c5531e90..6b5eac8fce90c8 100644 --- a/ext/web/06_streams.js +++ b/ext/web/06_streams.js @@ -908,8 +908,13 @@ const _original = Symbol("[[original]]"); * @param {boolean=} autoClose If the resource should be auto-closed when the stream closes. Defaults to true. * @returns {ReadableStream} */ +<<<<<<< HEAD function readableStreamForRid(rid, autoClose = true, cfn, onError) { const stream = cfn ? cfn(_brand) : new ReadableStream(_brand); +======= +function readableStreamForRid(rid, autoClose = true, Super, onError) { + const stream = new (Super ?? ReadableStream)(_brand); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) stream[_resourceBacking] = { rid, autoClose }; const tryClose = () => { @@ -1134,8 +1139,13 @@ async function readableStreamCollectIntoUint8Array(stream) { * @param {boolean=} autoClose If the resource should be auto-closed when the stream closes. Defaults to true. * @returns {ReadableStream} */ +<<<<<<< HEAD function writableStreamForRid(rid, autoClose = true, cfn) { const stream = cfn ? cfn(_brand) : new WritableStream(_brand); +======= +function writableStreamForRid(rid, autoClose = true, Super) { + const stream = new (Super ?? WritableStream)(_brand); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) stream[_resourceBacking] = { rid, autoClose }; const tryClose = () => { diff --git a/ext/web/Cargo.toml b/ext/web/Cargo.toml index 3af16f8f7e0c51..6fd8d1724203d6 100644 --- a/ext/web/Cargo.toml +++ b/ext/web/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_web" +<<<<<<< HEAD version = "0.219.0" +======= +version = "0.220.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/web/lib.deno_web.d.ts b/ext/web/lib.deno_web.d.ts index f9a9d42ae7fedb..4748c986b713cb 100644 --- a/ext/web/lib.deno_web.d.ts +++ b/ext/web/lib.deno_web.d.ts @@ -1378,6 +1378,7 @@ declare var ImageData: { settings?: ImageDataSettings, ): ImageData; }; +<<<<<<< HEAD /** @category Platform */ interface WebTransportCloseInfo { @@ -1596,3 +1597,5 @@ type WebTransportCongestionControl = "default" | "low-latency" | "throughput"; /** @category Platform */ type WebTransportErrorSource = "session" | "stream"; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/ext/web/lib.rs b/ext/web/lib.rs index 387a4d52637e1e..2fc6a2893eb48e 100644 --- a/ext/web/lib.rs +++ b/ext/web/lib.rs @@ -113,7 +113,10 @@ deno_core::extension!(deno_web, "15_performance.js", "16_image_data.js", ], +<<<<<<< HEAD lazy_loaded_esm = [ "webtransport.js" ], +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) options = { blob_store: Arc, maybe_location: Option, diff --git a/ext/webgpu/Cargo.toml b/ext/webgpu/Cargo.toml index f464b183b924fd..7057b677db2704 100644 --- a/ext/webgpu/Cargo.toml +++ b/ext/webgpu/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_webgpu" +<<<<<<< HEAD version = "0.155.0" +======= +version = "0.156.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors = ["the Deno authors"] edition.workspace = true license = "MIT" diff --git a/ext/webidl/00_webidl.js b/ext/webidl/00_webidl.js index 034c077e2914e9..399b2a611359c8 100644 --- a/ext/webidl/00_webidl.js +++ b/ext/webidl/00_webidl.js @@ -324,6 +324,7 @@ converters.short = createIntegerConversion(16, { unsigned: false }); converters["unsigned short"] = createIntegerConversion(16, { unsigned: true, }); +<<<<<<< HEAD converters["unsigned short?"] = createNullableConverter( converters["unsigned short"], ); @@ -333,6 +334,11 @@ converters["unsigned long"] = createIntegerConversion(32, { unsigned: true }); converters["unsigned long?"] = createNullableConverter( converters["unsigned long"], ); +======= + +converters.long = createIntegerConversion(32, { unsigned: false }); +converters["unsigned long"] = createIntegerConversion(32, { unsigned: true }); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) converters["long long"] = createLongLongConversion(64, { unsigned: false }); converters["unsigned long long"] = createLongLongConversion(64, { @@ -404,10 +410,13 @@ converters["unrestricted double"] = (V, _prefix, _context, _opts) => { return x; }; +<<<<<<< HEAD converters["unrestricted double?"] = createNullableConverter( converters["unrestricted double"], ); +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) converters.DOMString = function ( V, prefix, diff --git a/ext/webidl/Cargo.toml b/ext/webidl/Cargo.toml index 2c1143cba8158c..f86b204f68e810 100644 --- a/ext/webidl/Cargo.toml +++ b/ext/webidl/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_webidl" +<<<<<<< HEAD version = "0.188.0" +======= +version = "0.189.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/websocket/Cargo.toml b/ext/websocket/Cargo.toml index 1a8a32420a1fe2..012686cfafe73e 100644 --- a/ext/websocket/Cargo.toml +++ b/ext/websocket/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_websocket" +<<<<<<< HEAD version = "0.193.0" +======= +version = "0.194.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/ext/webstorage/Cargo.toml b/ext/webstorage/Cargo.toml index 281bb5f26417f3..8392d063d81f1f 100644 --- a/ext/webstorage/Cargo.toml +++ b/ext/webstorage/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_webstorage" +<<<<<<< HEAD version = "0.183.0" +======= +version = "0.184.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/resolvers/deno/Cargo.toml b/resolvers/deno/Cargo.toml index cfa5a6b5f443a5..655c584de4772c 100644 --- a/resolvers/deno/Cargo.toml +++ b/resolvers/deno/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_resolver" +<<<<<<< HEAD version = "0.19.0" +======= +version = "0.20.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/resolvers/deno/factory.rs b/resolvers/deno/factory.rs index e993d8c7342162..41e5f2d683417d 100644 --- a/resolvers/deno/factory.rs +++ b/resolvers/deno/factory.rs @@ -203,6 +203,7 @@ pub struct WorkspaceFactoryOptions< pub type WorkspaceFactoryRc = crate::sync::MaybeArc>; +<<<<<<< HEAD pub trait WorkspaceFactorySys: EnvCacheDir + EnvHomeDir @@ -229,6 +230,45 @@ pub trait WorkspaceFactorySys: impl< T: EnvCacheDir +======= +pub struct WorkspaceFactory< + TSys: EnvCacheDir + + EnvHomeDir + + EnvVar + + EnvCurrentDir + + FsCanonicalize + + FsCreateDirAll + + FsMetadata + + FsOpen + + FsRead + + FsReadDir + + FsRemoveFile + + FsRename + + SystemRandom + + SystemTimeNow + + ThreadSleep + + std::fmt::Debug + + MaybeSend + + MaybeSync + + Clone + + 'static, +> { + sys: TSys, + deno_dir_path: DenoDirPathProviderRc, + global_http_cache: Deferred>, + http_cache: Deferred, + node_modules_dir_path: Deferred>, + npm_cache_dir: Deferred, + npmrc: Deferred, + node_modules_dir_mode: Deferred, + workspace_directory: Deferred, + initial_cwd: PathBuf, + options: WorkspaceFactoryOptions, +} + +impl< + TSys: EnvCacheDir +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) + EnvHomeDir + EnvVar + EnvCurrentDir @@ -248,6 +288,7 @@ impl< + MaybeSync + Clone + 'static, +<<<<<<< HEAD > WorkspaceFactorySys for T { } @@ -267,6 +308,10 @@ pub struct WorkspaceFactory { } impl WorkspaceFactory { +======= + > WorkspaceFactory +{ +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) pub fn new( sys: TSys, initial_cwd: PathBuf, @@ -567,7 +612,32 @@ pub struct ResolverFactoryOptions { pub unstable_sloppy_imports: bool, } +<<<<<<< HEAD pub struct ResolverFactory { +======= +pub struct ResolverFactory< + TSys: EnvCacheDir + + EnvCurrentDir + + EnvHomeDir + + EnvVar + + FsCanonicalize + + FsCreateDirAll + + FsMetadata + + FsOpen + + FsRead + + FsReadDir + + FsRemoveFile + + FsRename + + ThreadSleep + + SystemRandom + + SystemTimeNow + + std::fmt::Debug + + MaybeSend + + MaybeSync + + Clone + + 'static, +> { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) options: ResolverFactoryOptions, deno_resolver: async_once_cell::OnceCell>, in_npm_package_checker: Deferred, @@ -593,10 +663,39 @@ pub struct ResolverFactory { sloppy_imports_resolver: Deferred>>>, workspace_factory: WorkspaceFactoryRc, +<<<<<<< HEAD workspace_resolver: async_once_cell::OnceCell>, } impl ResolverFactory { +======= + workspace_resolver: async_once_cell::OnceCell, +} + +impl< + TSys: EnvCacheDir + + EnvCurrentDir + + EnvHomeDir + + EnvVar + + FsCanonicalize + + FsCreateDirAll + + FsMetadata + + FsOpen + + FsRead + + FsReadDir + + FsRemoveFile + + FsRename + + ThreadSleep + + SystemRandom + + SystemTimeNow + + std::fmt::Debug + + MaybeSend + + MaybeSync + + Clone + + 'static, + > ResolverFactory +{ +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) pub fn new( workspace_factory: WorkspaceFactoryRc, options: ResolverFactoryOptions, @@ -797,7 +896,11 @@ impl ResolverFactory { pub async fn workspace_resolver( &self, +<<<<<<< HEAD ) -> Result<&WorkspaceResolverRc, anyhow::Error> { +======= + ) -> Result<&WorkspaceResolverRc, anyhow::Error> { +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) self .workspace_resolver .get_or_try_init( @@ -828,13 +931,22 @@ impl ResolverFactory { }, specified_import_map, }; +<<<<<<< HEAD let resolver = workspace .create_resolver(self.workspace_factory.sys.clone(), options)?; +======= + let resolver = + workspace.create_resolver(&self.workspace_factory.sys, options)?; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) if !resolver.diagnostics().is_empty() { // todo(dsherret): do not log this in this crate... that should be // a CLI responsibility log::warn!( +<<<<<<< HEAD "Resolver diagnostics:\n{}", +======= + "Import map diagnostics:\n{}", +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) resolver .diagnostics() .iter() diff --git a/resolvers/deno/lib.rs b/resolvers/deno/lib.rs index 26272af3bcb1ca..dd098f3bb89fc4 100644 --- a/resolvers/deno/lib.rs +++ b/resolvers/deno/lib.rs @@ -49,8 +49,12 @@ pub mod sloppy_imports; mod sync; #[allow(clippy::disallowed_types)] +<<<<<<< HEAD pub type WorkspaceResolverRc = crate::sync::MaybeArc>; +======= +pub type WorkspaceResolverRc = crate::sync::MaybeArc; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) #[allow(clippy::disallowed_types)] pub(crate) type NpmCacheDirRc = crate::sync::MaybeArc; @@ -142,7 +146,11 @@ pub struct DenoResolverOptions< >, pub sloppy_imports_resolver: Option>, +<<<<<<< HEAD pub workspace_resolver: WorkspaceResolverRc, +======= + pub workspace_resolver: WorkspaceResolverRc, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) /// Whether "bring your own node_modules" is enabled where Deno does not /// setup the node_modules directories automatically, but instead uses /// what already exists on the file system. @@ -198,7 +206,11 @@ pub struct DenoResolver< >, sloppy_imports_resolver: Option>, +<<<<<<< HEAD workspace_resolver: WorkspaceResolverRc, +======= + workspace_resolver: WorkspaceResolverRc, +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) is_byonm: bool, maybe_vendor_specifier: Option, } @@ -270,7 +282,11 @@ impl< // Attempt to resolve with the workspace resolver let result: Result<_, DenoResolveError> = self .workspace_resolver +<<<<<<< HEAD .resolve(raw_specifier, referrer, resolution_kind.into()) +======= + .resolve(raw_specifier, referrer) +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) .map_err(|err| err.into()); let result = match result { Ok(resolution) => match resolution { diff --git a/resolvers/deno/sloppy_imports.rs b/resolvers/deno/sloppy_imports.rs index 8a43be16aa3917..f66967854ce991 100644 --- a/resolvers/deno/sloppy_imports.rs +++ b/resolvers/deno/sloppy_imports.rs @@ -97,6 +97,7 @@ impl SloppyImportsResolutionKind { } } +<<<<<<< HEAD impl From for deno_config::workspace::ResolutionKind { @@ -108,6 +109,8 @@ impl From } } +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) pub trait SloppyImportResolverFs { fn stat_sync(&self, path: &Path) -> Option; diff --git a/resolvers/node/Cargo.toml b/resolvers/node/Cargo.toml index ff164da37c7e6b..7bb386918a4c56 100644 --- a/resolvers/node/Cargo.toml +++ b/resolvers/node/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "node_resolver" +<<<<<<< HEAD version = "0.26.0" +======= +version = "0.27.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true @@ -21,7 +25,10 @@ anyhow.workspace = true async-trait.workspace = true boxed_error.workspace = true dashmap.workspace = true +<<<<<<< HEAD deno_config.workspace = true +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) deno_error.workspace = true deno_media_type.workspace = true deno_package_json.workspace = true diff --git a/resolvers/node/builtin_modules.rs b/resolvers/node/builtin_modules.rs index 629429743e9452..ee155fbd2b1c88 100644 --- a/resolvers/node/builtin_modules.rs +++ b/resolvers/node/builtin_modules.rs @@ -69,7 +69,10 @@ pub static DENO_SUPPORTED_BUILTIN_NODE_MODULES: &[&str] = &[ "readline", "readline/promises", "repl", +<<<<<<< HEAD "sqlite", +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "stream", "stream/consumers", "stream/promises", diff --git a/resolvers/node/resolution.rs b/resolvers/node/resolution.rs index 481e4d679f581f..e9b828947eb5b7 100644 --- a/resolvers/node/resolution.rs +++ b/resolvers/node/resolution.rs @@ -109,6 +109,7 @@ pub enum NodeResolutionKind { Types, } +<<<<<<< HEAD impl From for deno_config::workspace::ResolutionKind { fn from(value: NodeResolutionKind) -> Self { match value { @@ -118,6 +119,8 @@ impl From for deno_config::workspace::ResolutionKind { } } +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) impl NodeResolutionKind { pub fn is_types(&self) -> bool { matches!(self, NodeResolutionKind::Types) diff --git a/resolvers/npm_cache/Cargo.toml b/resolvers/npm_cache/Cargo.toml index e7c47079a4ba7a..11845d370aa399 100644 --- a/resolvers/npm_cache/Cargo.toml +++ b/resolvers/npm_cache/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_npm_cache" +<<<<<<< HEAD version = "0.7.0" +======= +version = "0.8.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index c6646ff4447157..e03062b1ddac5d 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_runtime" +<<<<<<< HEAD version = "0.196.0" +======= +version = "0.197.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/runtime/js/90_deno_ns.js b/runtime/js/90_deno_ns.js index f8ae87c9946ecf..2e6c8c875c6f63 100644 --- a/runtime/js/90_deno_ns.js +++ b/runtime/js/90_deno_ns.js @@ -4,7 +4,10 @@ import { core, primordials } from "ext:core/mod.js"; import { op_net_listen_udp, op_net_listen_unixpacket, +<<<<<<< HEAD op_runtime_cpu_usage, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) op_runtime_memory_usage, } from "ext:core/ops"; @@ -35,7 +38,10 @@ import * as telemetry from "ext:deno_telemetry/telemetry.ts"; const { ObjectDefineProperties } = primordials; const loadQuic = core.createLazyLoader("ext:deno_net/03_quic.js"); +<<<<<<< HEAD const loadWebTransport = core.createLazyLoader("ext:deno_web/webtransport.js"); +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) const denoNs = { Process: process.Process, @@ -60,6 +66,7 @@ const denoNs = { makeTempDir: fs.makeTempDir, makeTempFileSync: fs.makeTempFileSync, makeTempFile: fs.makeTempFile, +<<<<<<< HEAD cpuUsage: () => { const { 0: system, 1: user } = op_runtime_cpu_usage(); return { system, user }; @@ -69,6 +76,9 @@ const denoNs = { op_runtime_memory_usage(); return { rss, heapTotal, heapUsed, external }; }, +======= + memoryUsage: () => op_runtime_memory_usage(), +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) mkdirSync: fs.mkdirSync, mkdir: fs.mkdir, chdir: fs.chdir, @@ -208,10 +218,13 @@ ObjectDefineProperties(denoNsUnstableById[unstableIds.net], { loadQuic, ), QuicIncoming: core.propWritableLazyLoaded((q) => q.QuicIncoming, loadQuic), +<<<<<<< HEAD upgradeWebTransport: core.propWritableLazyLoaded( (wt) => wt.upgradeWebTransport, loadWebTransport, ), +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) }); // denoNsUnstableById[unstableIds.unsafeProto] = { __proto__: null } diff --git a/runtime/js/98_global_scope_shared.js b/runtime/js/98_global_scope_shared.js index 36543a869d2930..ba8db5aa46900c 100644 --- a/runtime/js/98_global_scope_shared.js +++ b/runtime/js/98_global_scope_shared.js @@ -39,7 +39,10 @@ import * as webgpuSurface from "ext:deno_webgpu/02_surface.js"; import { unstableIds } from "ext:runtime/90_deno_ns.js"; const loadImage = core.createLazyLoader("ext:deno_canvas/01_image.js"); +<<<<<<< HEAD const loadWebTransport = core.createLazyLoader("ext:deno_web/webtransport.js"); +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) // https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope const windowOrWorkerGlobalScope = { @@ -299,6 +302,7 @@ unstableForWindowOrWorkerGlobalScope[unstableIds.broadcastChannel] = { unstableForWindowOrWorkerGlobalScope[unstableIds.net] = { WebSocketStream: core.propNonEnumerable(webSocketStream.WebSocketStream), WebSocketError: core.propNonEnumerable(webSocketStream.WebSocketError), +<<<<<<< HEAD WebTransport: core.propNonEnumerableLazyLoaded( (wt) => wt.WebTransport, loadWebTransport, @@ -327,6 +331,8 @@ unstableForWindowOrWorkerGlobalScope[unstableIds.net] = { (wt) => wt.WebTransportError, loadWebTransport, ), +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) }; unstableForWindowOrWorkerGlobalScope[unstableIds.webgpu] = {}; diff --git a/runtime/permissions/Cargo.toml b/runtime/permissions/Cargo.toml index 25b22c06d74a14..955112a45411a8 100644 --- a/runtime/permissions/Cargo.toml +++ b/runtime/permissions/Cargo.toml @@ -2,7 +2,11 @@ [package] name = "deno_permissions" +<<<<<<< HEAD version = "0.47.0" +======= +version = "0.48.0" +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) authors.workspace = true edition.workspace = true license.workspace = true diff --git a/runtime/snapshot.rs b/runtime/snapshot.rs index 237c05f40b7ae6..d44bb756524532 100644 --- a/runtime/snapshot.rs +++ b/runtime/snapshot.rs @@ -7,6 +7,10 @@ use std::path::PathBuf; use std::rc::Rc; use std::sync::Arc; +<<<<<<< HEAD +======= +use deno_cache::SqliteBackedCache; +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use deno_core::snapshot::*; use deno_core::v8; use deno_core::Extension; @@ -281,7 +285,11 @@ pub fn create_runtime_snapshot( deno_webgpu::deno_webgpu::init_ops_and_esm(), deno_canvas::deno_canvas::init_ops_and_esm(), deno_fetch::deno_fetch::init_ops_and_esm::(Default::default()), +<<<<<<< HEAD deno_cache::deno_cache::init_ops_and_esm(None), +======= + deno_cache::deno_cache::init_ops_and_esm::(None), +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) deno_websocket::deno_websocket::init_ops_and_esm::( "".to_owned(), None, diff --git a/runtime/web_worker.rs b/runtime/web_worker.rs index b47e2da8a01841..10a579412e3677 100644 --- a/runtime/web_worker.rs +++ b/runtime/web_worker.rs @@ -11,7 +11,10 @@ use std::task::Context; use std::task::Poll; use deno_broadcast_channel::InMemoryBroadcastChannel; +<<<<<<< HEAD use deno_cache::CacheImpl; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use deno_cache::CreateCache; use deno_cache::SqliteBackedCache; use deno_core::error::CoreError; @@ -453,6 +456,7 @@ impl WebWorker { // Permissions: many ops depend on this let enable_testing_features = options.bootstrap.enable_testing_features; +<<<<<<< HEAD fn create_cache_inner(options: &WebWorkerOptions) -> Option { if let Ok(var) = std::env::var("DENO_CACHE_LSC_ENDPOINT") { @@ -487,6 +491,12 @@ impl WebWorker { None } let create_cache = create_cache_inner(&options); +======= + let create_cache = options.cache_storage_dir.map(|storage_dir| { + let create_cache_fn = move || SqliteBackedCache::new(storage_dir.clone()); + CreateCache(Arc::new(create_cache_fn)) + }); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) // NOTE(bartlomieju): ordering is important here, keep it in sync with // `runtime/worker.rs` and `runtime/snapshot.rs`! @@ -514,7 +524,13 @@ impl WebWorker { ..Default::default() }, ), +<<<<<<< HEAD deno_cache::deno_cache::init_ops_and_esm(create_cache), +======= + deno_cache::deno_cache::init_ops_and_esm::( + create_cache, + ), +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) deno_websocket::deno_websocket::init_ops_and_esm::( options.bootstrap.user_agent.clone(), services.root_cert_store_provider.clone(), diff --git a/runtime/worker.rs b/runtime/worker.rs index f15894653ed019..5cce47a17f3966 100644 --- a/runtime/worker.rs +++ b/runtime/worker.rs @@ -8,7 +8,10 @@ use std::time::Duration; use std::time::Instant; use deno_broadcast_channel::InMemoryBroadcastChannel; +<<<<<<< HEAD use deno_cache::CacheImpl; +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) use deno_cache::CreateCache; use deno_cache::SqliteBackedCache; use deno_core::error::CoreError; @@ -341,6 +344,7 @@ impl MainWorker { }, ); +<<<<<<< HEAD fn create_cache_inner(options: &WorkerOptions) -> Option { if let Ok(var) = std::env::var("DENO_CACHE_LSC_ENDPOINT") { let elems: Vec<_> = var.split(",").collect(); @@ -375,6 +379,8 @@ impl MainWorker { } let create_cache = create_cache_inner(&options); +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) // Get our op metrics let (op_summary_metrics, op_metrics_factory_fn) = create_op_metrics( options.bootstrap.enable_op_summary_metrics, @@ -384,6 +390,13 @@ impl MainWorker { // Permissions: many ops depend on this let enable_testing_features = options.bootstrap.enable_testing_features; let exit_code = ExitCode::default(); +<<<<<<< HEAD +======= + let create_cache = options.cache_storage_dir.map(|storage_dir| { + let create_cache_fn = move || SqliteBackedCache::new(storage_dir.clone()); + CreateCache(Arc::new(create_cache_fn)) + }); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) // NOTE(bartlomieju): ordering is important here, keep it in sync with // `runtime/web_worker.rs` and `runtime/snapshot.rs`! @@ -411,7 +424,13 @@ impl MainWorker { ..Default::default() }, ), +<<<<<<< HEAD deno_cache::deno_cache::init_ops_and_esm(create_cache), +======= + deno_cache::deno_cache::init_ops_and_esm::( + create_cache, + ), +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) deno_websocket::deno_websocket::init_ops_and_esm::( options.bootstrap.user_agent.clone(), services.root_cert_store_provider.clone(), diff --git a/tests/integration/compile_tests.rs b/tests/integration/compile_tests.rs index 503538d24a84f1..14b62b7fb093a6 100644 --- a/tests/integration/compile_tests.rs +++ b/tests/integration/compile_tests.rs @@ -820,6 +820,7 @@ fn compile_npm_cowsay_main() { #[test] fn compile_npm_no_permissions() { run_npm_bin_compile_test(RunNpmBinCompileOptions { +<<<<<<< HEAD input_specifier: "npm:@denotest/cli-with-permissions@1.0.0", copy_temp_dir: None, compile_args: vec!["-o", "denotest"], @@ -828,6 +829,16 @@ fn compile_npm_no_permissions() { node_modules_local: false, input_name: None, expected_name: "denotest", +======= + input_specifier: "npm:cowsay@1.5.0", + copy_temp_dir: None, + compile_args: vec![], + run_args: vec!["Hello"], + output_file: "npm/deno_run_cowsay_no_permissions.out", + node_modules_local: false, + input_name: None, + expected_name: "cowsay", +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) exit_code: 1, }); } diff --git a/tests/integration/lsp_tests.rs b/tests/integration/lsp_tests.rs index 46d2f16809944f..6d36582d05fff9 100644 --- a/tests/integration/lsp_tests.rs +++ b/tests/integration/lsp_tests.rs @@ -306,6 +306,10 @@ fn lsp_import_map() { } }"#; temp_dir.write("import-map.json", import_map); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("lib"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("lib/b.ts", r#"export const b = "b";"#); let mut client = context.new_lsp_command().build(); @@ -438,6 +442,10 @@ fn lsp_import_map_config_file() { } }"#, ); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("lib"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("lib/b.ts", r#"export const b = "b";"#); let mut client = context.new_lsp_command().build(); @@ -499,6 +507,10 @@ fn lsp_import_map_embedded_in_config_file() { } }"#, ); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("lib"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("lib/b.ts", r#"export const b = "b";"#); let mut client = context.new_lsp_command().build(); @@ -552,6 +564,10 @@ fn lsp_import_map_embedded_in_config_file_after_initialize() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); temp_dir.write("deno.embedded_import_map.jsonc", "{}"); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("lib"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("lib/b.ts", r#"export const b = "b";"#); let mut client = context.new_lsp_command().build(); @@ -623,6 +639,10 @@ fn lsp_import_map_embedded_in_config_file_after_initialize() { fn lsp_import_map_config_file_auto_discovered() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("lib"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("lib/b.ts", r#"export const b = "b";"#); let mut client = context.new_lsp_command().capture_stderr().build(); @@ -742,6 +762,10 @@ fn lsp_import_map_config_file_auto_discovered_symlink() { .use_temp_cwd() .build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("lib"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("lib/b.ts", r#"export const b = "b";"#); let mut client = context.new_lsp_command().capture_stderr().build(); @@ -749,6 +773,10 @@ fn lsp_import_map_config_file_auto_discovered_symlink() { // now create a symlink in the current directory to a subdir/deno.json // and ensure the watched files notification still works +<<<<<<< HEAD +======= + temp_dir.create_dir_all("subdir"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("subdir/deno.json", r#"{ }"#); temp_dir.symlink_file( temp_dir.path().join("subdir").join("deno.json"), @@ -1045,6 +1073,13 @@ fn lsp_workspace_enable_paths_no_workspace_configuration() { fn lsp_did_refresh_deno_configuration_tree_notification() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("workspace/member1"); + temp_dir.create_dir_all("workspace/member2"); + temp_dir.create_dir_all("non_workspace1"); + temp_dir.create_dir_all("non_workspace2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "workspace/deno.json", json!({ @@ -1530,6 +1565,10 @@ fn lsp_import_map_import_completions() { }) .to_string(), ); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("lib"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("lib/b.ts", r#"export const b = "b";"#); let mut client = context.new_lsp_command().build(); @@ -2156,6 +2195,10 @@ fn lsp_workspace_disable_enable_paths() { fn run_test(use_trailing_slash: bool) { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("worker"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("worker/shared.ts", "export const a = 1"); temp_dir.write("worker/other.ts", "import { a } from './shared.ts';\na;"); temp_dir.write("worker/node.ts", "Buffer.alloc(1);"); @@ -2373,11 +2416,19 @@ fn lsp_workspace_disable_enable_paths() { fn lsp_exclude_config() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("other"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "other/shared.ts", // this should not be found in the "find references" since this file is excluded "import { a } from '../worker/shared.ts'; console.log(a);", ); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("worker"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("worker/shared.ts", "export const a = 1"); temp_dir.write( "deno.json", @@ -6419,6 +6470,10 @@ fn lsp_code_actions_deno_types_for_npm() { }) .to_string(), ); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("managed_node_modules"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "managed_node_modules/deno.json", json!({ @@ -8716,7 +8771,10 @@ fn lsp_completions_node_specifier() { "node:readline", "node:readline/promises", "node:repl", +<<<<<<< HEAD "node:sqlite", +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "node:stream", "node:stream/consumers", "node:stream/promises", @@ -13841,6 +13899,10 @@ fn lsp_closed_file_find_references() { fn lsp_closed_file_find_references_low_document_pre_load() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("sub_dir"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("./other_file.ts", "export const b = 5;"); temp_dir.write("./sub_dir/mod.ts", "export const a = 5;"); temp_dir.write( @@ -13885,6 +13947,11 @@ fn lsp_closed_file_find_references_excluded_path() { // the config file from being pre-loaded let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("sub_dir"); + temp_dir.create_dir_all("other_dir/sub_dir"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("./sub_dir/mod.ts", "export const a = 5;"); temp_dir.write( "./sub_dir/mod.test.ts", @@ -14364,6 +14431,11 @@ fn lsp_vendor_dir() { fn lsp_deno_json_scopes_import_map() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); + temp_dir.create_dir_all("project2/project3"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "project1/deno.json", json!({ @@ -14496,6 +14568,11 @@ fn lsp_deno_json_scopes_vendor_dir() { .use_temp_cwd() .build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); + temp_dir.create_dir_all("project2/project3"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "project1/deno.json", json!({ @@ -14679,6 +14756,11 @@ fn lsp_deno_json_scopes_node_modules_dir() { .use_temp_cwd() .build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); + temp_dir.create_dir_all("project2/project3"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "project1/deno.json", json!({ @@ -14862,6 +14944,11 @@ fn lsp_deno_json_scopes_node_modules_dir() { fn lsp_deno_json_scopes_ts_config() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); + temp_dir.create_dir_all("project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("project1/deno.json", json!({}).to_string()); temp_dir.write( "project2/deno.json", @@ -14934,6 +15021,11 @@ fn lsp_deno_json_scopes_ts_config() { fn lsp_deno_json_scopes_declaration_files() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); + temp_dir.create_dir_all("project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("project1/deno.json", json!({}).to_string()); temp_dir.write("project2/deno.json", json!({}).to_string()); temp_dir.write("project1/foo.d.ts", "declare type Foo = number;\n"); @@ -15000,6 +15092,11 @@ fn lsp_deno_json_scopes_declaration_files() { fn lsp_deno_json_scopes_find_references() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); + temp_dir.create_dir_all("project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("project1/deno.json", json!({}).to_string()); temp_dir.write("project2/deno.json", json!({}).to_string()); let file1 = source_file( @@ -15042,6 +15139,11 @@ fn lsp_deno_json_scopes_find_references() { fn lsp_deno_json_scopes_file_rename_import_edits() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); + temp_dir.create_dir_all("project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("project1/deno.json", json!({}).to_string()); temp_dir.write("project2/deno.json", json!({}).to_string()); let file1 = source_file(temp_dir.path().join("project1/file.ts"), ""); @@ -15088,6 +15190,11 @@ fn lsp_deno_json_scopes_file_rename_import_edits() { fn lsp_deno_json_scopes_goto_implementations() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); + temp_dir.create_dir_all("project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("project1/deno.json", json!({}).to_string()); temp_dir.write("project2/deno.json", json!({}).to_string()); let file1 = source_file( @@ -15127,6 +15234,12 @@ fn lsp_deno_json_scopes_goto_implementations() { fn lsp_deno_json_scopes_call_hierarchy() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); + temp_dir.create_dir_all("project2"); + temp_dir.create_dir_all("project3"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("project1/deno.json", json!({}).to_string()); temp_dir.write("project2/deno.json", json!({}).to_string()); temp_dir.write("project3/deno.json", json!({}).to_string()); @@ -15237,6 +15350,11 @@ fn lsp_deno_json_scopes_call_hierarchy() { fn lsp_deno_json_scopes_rename_symbol() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); + temp_dir.create_dir_all("project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("project1/deno.json", json!({}).to_string()); temp_dir.write("project2/deno.json", json!({}).to_string()); let file1 = source_file( @@ -15295,6 +15413,11 @@ fn lsp_deno_json_scopes_rename_symbol() { fn lsp_deno_json_scopes_search_symbol() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); + temp_dir.create_dir_all("project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("project1/deno.json", json!({}).to_string()); temp_dir.write("project2/deno.json", json!({}).to_string()); let file1 = source_file( @@ -15349,6 +15472,10 @@ fn lsp_deno_json_workspace_fmt_config() { }) .to_string(), ); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "project1/deno.json", json!({ @@ -15358,6 +15485,10 @@ fn lsp_deno_json_workspace_fmt_config() { }) .to_string(), ); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("project2/deno.json", json!({}).to_string()); let mut client = context.new_lsp_command().build(); client.initialize_default(); @@ -15472,6 +15603,10 @@ fn lsp_deno_json_workspace_lint_config() { }) .to_string(), ); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "project1/deno.json", json!({ @@ -15483,6 +15618,10 @@ fn lsp_deno_json_workspace_lint_config() { }) .to_string(), ); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write("project2/deno.json", json!({}).to_string()); let mut client = context.new_lsp_command().build(); client.initialize_default(); @@ -15607,6 +15746,10 @@ fn lsp_deno_json_workspace_lint_config() { fn lsp_deno_json_workspace_import_map() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1/project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "project1/deno.json", json!({ @@ -15709,6 +15852,10 @@ fn lsp_workspace_lockfile() { .use_temp_cwd() .build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1/project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "project1/deno.json", json!({ @@ -15773,6 +15920,10 @@ fn lsp_deno_json_workspace_vendor_dir() { .use_temp_cwd() .build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1/project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "project1/deno.json", json!({ @@ -15844,6 +15995,10 @@ fn lsp_deno_json_workspace_node_modules_dir() { .use_temp_cwd() .build(); let temp_dir = context.temp_dir(); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1/project2"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "project1/deno.json", json!({ @@ -15922,6 +16077,10 @@ fn lsp_deno_json_workspace_jsr_resolution() { }) .to_string(), ); +<<<<<<< HEAD +======= + temp_dir.create_dir_all("project1"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "project1/deno.json", json!({ @@ -15972,6 +16131,7 @@ fn lsp_deno_json_workspace_jsr_resolution() { } #[test] +<<<<<<< HEAD fn lsp_workspace_compiler_options_root_dirs() { let context = TestContextBuilder::new().use_temp_cwd().build(); let temp_dir = context.temp_dir(); @@ -16032,6 +16192,8 @@ fn lsp_workspace_compiler_options_root_dirs() { } #[test] +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) fn lsp_npm_workspace() { let context = TestContextBuilder::new() .use_http_server() @@ -16055,6 +16217,10 @@ fn lsp_npm_workspace() { .to_string(), ); { +<<<<<<< HEAD +======= + temp_dir.create_dir_all("packages/add"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "packages/add/package.json", json!({ @@ -16070,6 +16236,10 @@ fn lsp_npm_workspace() { ); } { +<<<<<<< HEAD +======= + temp_dir.create_dir_all("packages/subtract"); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) temp_dir.write( "packages/subtract/package.json", json!({ diff --git a/tests/integration/node_unit_tests.rs b/tests/integration/node_unit_tests.rs index ed314e886ef4d6..d27a803141671d 100644 --- a/tests/integration/node_unit_tests.rs +++ b/tests/integration/node_unit_tests.rs @@ -90,7 +90,10 @@ util::unit_test_factory!( querystring_test, readline_test, repl_test, +<<<<<<< HEAD sqlite_test, +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) stream_test, string_decoder_test, timers_test, diff --git a/tests/integration/run_tests.rs b/tests/integration/run_tests.rs index 5485c6e4eb386c..7f8397732a88fa 100644 --- a/tests/integration/run_tests.rs +++ b/tests/integration/run_tests.rs @@ -358,12 +358,19 @@ fn permissions_prompt_allow_all_2() { console.write_line_raw("A"); console.expect("✅ Granted all sys access."); +<<<<<<< HEAD let text = console.read_until("Allow? [y/n/A] (y = yes, allow; n = no, deny; A = allow all read permissions)"); // "read" permissions test_util::assertions::assert_wildcard_match(&text, concat!( "\r\n", "┏ ⚠️ Deno requests read access to \"[WILDCARD]tests[WILDCHAR]testdata[WILDCHAR]\".\r\n", "┠─ Requested by `Deno.lstatSync()` API.\r\n", +======= + // "read" permissions + console.expect(concat!( + "┏ ⚠️ Deno requests read access to .\r\n", + "┠─ Requested by `Deno.cwd()` API.\r\n", +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "┠─ To see a stack trace for this prompt, set the DENO_TRACE_PERMISSIONS environmental variable.\r\n", "┠─ Learn more at: https://docs.deno.com/go/--allow-read\r\n", "┠─ Run again with --allow-read to bypass this prompt.\r\n", diff --git a/tests/specs/cli/otel_basic/__test__.jsonc b/tests/specs/cli/otel_basic/__test__.jsonc index 4f7992cc110502..69fc7d42d02ab7 100644 --- a/tests/specs/cli/otel_basic/__test__.jsonc +++ b/tests/specs/cli/otel_basic/__test__.jsonc @@ -22,10 +22,13 @@ }, "args": "run -A main.ts metric.ts", "output": "metric.out" +<<<<<<< HEAD }, "links": { "args": "run -A main.ts links.ts", "output": "links.out" +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } } } diff --git a/tests/specs/compile/case_insensitive_building/compile.out b/tests/specs/compile/case_insensitive_building/compile.out index 2f63dabf702128..d365602326fdd5 100644 --- a/tests/specs/compile/case_insensitive_building/compile.out +++ b/tests/specs/compile/case_insensitive_building/compile.out @@ -6,7 +6,11 @@ main[WILDLINE] ├── file.txt ([WILDLINE]) └── main.js ([WILDLINE]) +<<<<<<< HEAD Files: [WILDLINE] Metadata: [WILDLINE] Remote modules: [WILDLINE] +======= +Size: [WILDLINE] +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/tests/specs/compile/env_vars_support/compile.out b/tests/specs/compile/env_vars_support/compile.out index c8646d49c0afb4..1ab95491788812 100644 --- a/tests/specs/compile/env_vars_support/compile.out +++ b/tests/specs/compile/env_vars_support/compile.out @@ -8,7 +8,11 @@ Embedded Files out[WILDLINE] └── main.ts ([WILDLINE]) +<<<<<<< HEAD Files: [WILDLINE] Metadata: [WILDLINE] Remote modules: [WILDLINE] +======= +Size: [WILDLINE] +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/tests/specs/compile/global_npm_cache_implicit_read_permission/compile.out b/tests/specs/compile/global_npm_cache_implicit_read_permission/compile.out index 0bbc1ab3affc4a..3f8edc74b961a6 100644 --- a/tests/specs/compile/global_npm_cache_implicit_read_permission/compile.out +++ b/tests/specs/compile/global_npm_cache_implicit_read_permission/compile.out @@ -45,7 +45,11 @@ main[WILDLINE] │ └── yargs-parser/18.1.3/* ([WILDLINE]) └── main.ts ([WILDLINE]) +<<<<<<< HEAD Files: [WILDLINE] Metadata: [WILDLINE] Remote modules: [WILDLINE] +======= +Size: [WILDLINE] +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/tests/specs/compile/include/symlink_twice/compile.out b/tests/specs/compile/include/symlink_twice/compile.out index a862d5d3264c2e..9716dadf897868 100644 --- a/tests/specs/compile/include/symlink_twice/compile.out +++ b/tests/specs/compile/include/symlink_twice/compile.out @@ -7,7 +7,11 @@ main[WILDLINE] ├── link.js --> index.js └── setup.js ([WILDLINE]) +<<<<<<< HEAD Files: [WILDLINE] Metadata: [WILDLINE] Remote modules: [WILDLINE] +======= +Size: [WILDLINE] +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/tests/specs/compile/npm_fs/compile.out b/tests/specs/compile/npm_fs/compile.out index 71067090a65df3..5b4170299a28ca 100644 --- a/tests/specs/compile/npm_fs/compile.out +++ b/tests/specs/compile/npm_fs/compile.out @@ -6,7 +6,11 @@ main[WILDLINE] ├── main.ts ([WILDLINE]) └── node_modules/* ([WILDLINE]) +<<<<<<< HEAD Files: [WILDLINE] Metadata: [WILDLINE] Remote modules: [WILDLINE] +======= +Size: [WILDLINE] +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/tests/specs/lint/bom/mod.out b/tests/specs/lint/bom/mod.out index 18d9927958c5d7..da56420abb8021 100644 --- a/tests/specs/lint/bom/mod.out +++ b/tests/specs/lint/bom/mod.out @@ -5,7 +5,11 @@ error[no-unused-vars]: `t` is never used | ^ = hint: If this is intentional, prefix it with an underscore like `_t` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Found 1 problem diff --git a/tests/specs/lint/gitignore/expected.out b/tests/specs/lint/gitignore/expected.out index ac982926bd13b0..01ff9d3ef3dd78 100644 --- a/tests/specs/lint/gitignore/expected.out +++ b/tests/specs/lint/gitignore/expected.out @@ -5,7 +5,11 @@ error[no-empty]: Empty block statement | ^^ = hint: Add code or comment to the empty block +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-empty +======= + docs: https://lint.deno.land/rules/no-empty +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Found 1 problem diff --git a/tests/specs/lint/jsr_tag/package.out b/tests/specs/lint/jsr_tag/package.out index ff26e5104fe335..f3a3a06c64b2c0 100644 --- a/tests/specs/lint/jsr_tag/package.out +++ b/tests/specs/lint/jsr_tag/package.out @@ -5,7 +5,11 @@ error[verbatim-module-syntax]: All import identifiers are used in types | ^^^^^^ = hint: Change `import` to `import type` and optionally add an explicit side effect import +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/verbatim-module-syntax +======= + docs: https://lint.deno.land/rules/verbatim-module-syntax +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Found 1 problem (1 fixable via --fix) diff --git a/tests/specs/lint/jsx/lint.out b/tests/specs/lint/jsx/lint.out index 0435136e32fb70..48f73fe4f8307b 100644 --- a/tests/specs/lint/jsx/lint.out +++ b/tests/specs/lint/jsx/lint.out @@ -5,7 +5,11 @@ error[no-unused-vars]: `React` is never used | ^^^^^ = hint: If this is intentional, prefix it with an underscore like `_React` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Found 1 problem diff --git a/tests/specs/lint/node_globals_no_duplicate_imports/lint.out b/tests/specs/lint/node_globals_no_duplicate_imports/lint.out index 7f2fcf7860a938..ad5de60574e314 100644 --- a/tests/specs/lint/node_globals_no_duplicate_imports/lint.out +++ b/tests/specs/lint/node_globals_no_duplicate_imports/lint.out @@ -5,7 +5,11 @@ error[no-node-globals]: NodeJS globals are not available in Deno | ^^^^^^^^^^^^ = hint: Add `import { setImmediate } from "node:timers";` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-node-globals +======= + docs: https://lint.deno.land/rules/no-node-globals +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-node-globals]: NodeJS globals are not available in Deno @@ -15,7 +19,11 @@ error[no-node-globals]: NodeJS globals are not available in Deno | ^^^^^^^^^^^^ = hint: Add `import { setImmediate } from "node:timers";` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-node-globals +======= + docs: https://lint.deno.land/rules/no-node-globals +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Found 2 problems (2 fixable via --fix) diff --git a/tests/specs/lint/opt_out_top_level_exclude_via_lint_inexclude/main_unix.out b/tests/specs/lint/opt_out_top_level_exclude_via_lint_inexclude/main_unix.out index c603aab53ac8cd..f6b08ee1afb836 100644 --- a/tests/specs/lint/opt_out_top_level_exclude_via_lint_inexclude/main_unix.out +++ b/tests/specs/lint/opt_out_top_level_exclude_via_lint_inexclude/main_unix.out @@ -6,7 +6,11 @@ error[no-unused-vars]: `a` is never used | ^ = hint: If this is intentional, prefix it with an underscore like `_a` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `a` is never used @@ -16,7 +20,11 @@ error[no-unused-vars]: `a` is never used | ^ = hint: If this is intentional, prefix it with an underscore like `_a` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) [UNORDERED_END] diff --git a/tests/specs/lint/opt_out_top_level_exclude_via_lint_inexclude/main_windows.out b/tests/specs/lint/opt_out_top_level_exclude_via_lint_inexclude/main_windows.out index ccd4faaad7ac58..0ae2417d4b0614 100644 --- a/tests/specs/lint/opt_out_top_level_exclude_via_lint_inexclude/main_windows.out +++ b/tests/specs/lint/opt_out_top_level_exclude_via_lint_inexclude/main_windows.out @@ -6,7 +6,11 @@ error[no-unused-vars]: `a` is never used | ^ = hint: If this is intentional, prefix it with an underscore like `_a` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `a` is never used @@ -16,7 +20,11 @@ error[no-unused-vars]: `a` is never used | ^ = hint: If this is intentional, prefix it with an underscore like `_a` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) [UNORDERED_END] diff --git a/tests/specs/lint/quiet/expected_quiet.out b/tests/specs/lint/quiet/expected_quiet.out index 3e154a49fd73e2..9bacfc0be5fbb5 100644 --- a/tests/specs/lint/quiet/expected_quiet.out +++ b/tests/specs/lint/quiet/expected_quiet.out @@ -5,7 +5,11 @@ error[ban-untagged-ignore]: Ignore directive requires lint rule name(s) | ^^^^^^^^^^^^^^^^^^^ = hint: Add one or more lint rule names. E.g. // deno-lint-ignore adjacent-overload-signatures +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/ban-untagged-ignore +======= + docs: https://lint.deno.land/rules/ban-untagged-ignore +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-empty]: Empty block statement @@ -15,6 +19,10 @@ error[no-empty]: Empty block statement | ^^ = hint: Add code or comment to the empty block +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-empty +======= + docs: https://lint.deno.land/rules/no-empty +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/tests/specs/lint/stdin/expected_from_stdin.out b/tests/specs/lint/stdin/expected_from_stdin.out index 58f080448132e7..8d976967d4dc6f 100644 --- a/tests/specs/lint/stdin/expected_from_stdin.out +++ b/tests/specs/lint/stdin/expected_from_stdin.out @@ -5,7 +5,11 @@ error[no-explicit-any]: `any` type is not allowed | ^^^ = hint: Use a specific type other than `any` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-explicit-any +======= + docs: https://lint.deno.land/rules/no-explicit-any +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Found 1 problem diff --git a/tests/specs/lint/syntax_error_reporting/lint.out b/tests/specs/lint/syntax_error_reporting/lint.out index c317faa205a674..f637112ae13869 100644 --- a/tests/specs/lint/syntax_error_reporting/lint.out +++ b/tests/specs/lint/syntax_error_reporting/lint.out @@ -9,7 +9,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Found 1 problem diff --git a/tests/specs/lint/with_config/with_config.out b/tests/specs/lint/with_config/with_config.out index caccc81aba8b96..1be835b5627e26 100644 --- a/tests/specs/lint/with_config/with_config.out +++ b/tests/specs/lint/with_config/with_config.out @@ -5,7 +5,11 @@ error[ban-untagged-todo]: TODO should be tagged with (@username) or (#issue) | ^^^^^^^^^^^^ = hint: Add a user tag or issue reference to the TODO comment, e.g. TODO(@djones), TODO(djones), TODO(#123) +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/ban-untagged-todo +======= + docs: https://lint.deno.land/rules/ban-untagged-todo +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `add` is never used @@ -15,7 +19,11 @@ error[no-unused-vars]: `add` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_add` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Found 2 problems diff --git a/tests/specs/lint/with_config_and_flags/with_config_and_flags.out b/tests/specs/lint/with_config_and_flags/with_config_and_flags.out index c42ecbe3d85fad..41c73e7ed5ab2d 100644 --- a/tests/specs/lint/with_config_and_flags/with_config_and_flags.out +++ b/tests/specs/lint/with_config_and_flags/with_config_and_flags.out @@ -5,7 +5,11 @@ error[ban-untagged-todo]: TODO should be tagged with (@username) or (#issue) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = hint: Add a user tag or issue reference to the TODO comment, e.g. TODO(@djones), TODO(djones), TODO(#123) +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/ban-untagged-todo +======= + docs: https://lint.deno.land/rules/ban-untagged-todo +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `subtract` is never used @@ -15,7 +19,11 @@ error[no-unused-vars]: `subtract` is never used | ^^^^^^^^ = hint: If this is intentional, prefix it with an underscore like `_subtract` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Found 2 problems diff --git a/tests/specs/lint/with_config_without_args/with_config_without_tags.out b/tests/specs/lint/with_config_without_args/with_config_without_tags.out index caccc81aba8b96..1be835b5627e26 100644 --- a/tests/specs/lint/with_config_without_args/with_config_without_tags.out +++ b/tests/specs/lint/with_config_without_args/with_config_without_tags.out @@ -5,7 +5,11 @@ error[ban-untagged-todo]: TODO should be tagged with (@username) or (#issue) | ^^^^^^^^^^^^ = hint: Add a user tag or issue reference to the TODO comment, e.g. TODO(@djones), TODO(djones), TODO(#123) +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/ban-untagged-todo +======= + docs: https://lint.deno.land/rules/ban-untagged-todo +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `add` is never used @@ -15,7 +19,11 @@ error[no-unused-vars]: `add` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_add` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Found 2 problems diff --git a/tests/specs/lint/with_glob_config/with_glob_config_unix.out b/tests/specs/lint/with_glob_config/with_glob_config_unix.out index 1224bd5f900ad6..c14233c0d7c93d 100644 --- a/tests/specs/lint/with_glob_config/with_glob_config_unix.out +++ b/tests/specs/lint/with_glob_config/with_glob_config_unix.out @@ -6,7 +6,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -16,7 +20,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -26,7 +34,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -36,7 +48,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -46,7 +62,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -56,7 +76,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -66,7 +90,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -76,7 +104,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -86,7 +118,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) [UNORDERED_END] diff --git a/tests/specs/lint/with_glob_config/with_glob_config_windows.out b/tests/specs/lint/with_glob_config/with_glob_config_windows.out index a09ac13155f31f..be76db75f26200 100644 --- a/tests/specs/lint/with_glob_config/with_glob_config_windows.out +++ b/tests/specs/lint/with_glob_config/with_glob_config_windows.out @@ -6,7 +6,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -16,7 +20,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -26,7 +34,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -36,7 +48,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -46,7 +62,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -56,7 +76,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -66,7 +90,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -76,7 +104,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -86,7 +118,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) [UNORDERED_END] diff --git a/tests/specs/lint/with_glob_config_and_flags/with_glob_config_and_flags_unix.out b/tests/specs/lint/with_glob_config_and_flags/with_glob_config_and_flags_unix.out index 7e8cb919eba3c5..cc17fdc7c81017 100644 --- a/tests/specs/lint/with_glob_config_and_flags/with_glob_config_and_flags_unix.out +++ b/tests/specs/lint/with_glob_config_and_flags/with_glob_config_and_flags_unix.out @@ -6,7 +6,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -16,7 +20,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -26,7 +34,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -36,7 +48,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -46,7 +62,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -56,7 +76,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -66,7 +90,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -76,7 +104,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -86,7 +118,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -96,7 +132,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -106,7 +146,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) [UNORDERED_END] diff --git a/tests/specs/lint/with_glob_config_and_flags/with_glob_config_and_flags_windows.out b/tests/specs/lint/with_glob_config_and_flags/with_glob_config_and_flags_windows.out index 3832a4a65ca8fe..6a43504e6bdfa3 100644 --- a/tests/specs/lint/with_glob_config_and_flags/with_glob_config_and_flags_windows.out +++ b/tests/specs/lint/with_glob_config_and_flags/with_glob_config_and_flags_windows.out @@ -6,7 +6,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -16,7 +20,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -26,7 +34,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -36,7 +48,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -46,7 +62,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -56,7 +76,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -66,7 +90,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -76,7 +104,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -86,7 +118,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -96,7 +132,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `foo` is never used @@ -106,7 +146,11 @@ error[no-unused-vars]: `foo` is never used | ^^^ = hint: If this is intentional, prefix it with an underscore like `_foo` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) [UNORDERED_END] diff --git a/tests/specs/lint/workspace/a.out b/tests/specs/lint/workspace/a.out index 002fc886c32d38..764fdaf040aebf 100644 --- a/tests/specs/lint/workspace/a.out +++ b/tests/specs/lint/workspace/a.out @@ -5,7 +5,11 @@ error[no-eval]: `eval` call is not allowed | ^^^^^^^^ = hint: Remove the use of `eval` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-eval +======= + docs: https://lint.deno.land/rules/no-eval +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-await-in-loop]: Unexpected `await` inside a loop. @@ -15,7 +19,11 @@ error[no-await-in-loop]: Unexpected `await` inside a loop. | ^^^^^^^^^^^^^^^^^^^^^^^ = hint: Remove `await` in loop body, store all promises generated and then `await Promise.all(storedPromises)` after the loop +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-await-in-loop +======= + docs: https://lint.deno.land/rules/no-await-in-loop +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-explicit-any]: `any` type is not allowed @@ -25,7 +33,11 @@ error[no-explicit-any]: `any` type is not allowed | ^^^ = hint: Use a specific type other than `any` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-explicit-any +======= + docs: https://lint.deno.land/rules/no-explicit-any +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Found 3 problems diff --git a/tests/specs/lint/workspace/root.out b/tests/specs/lint/workspace/root.out index e2db1a6e095017..50b6405d2f3103 100644 --- a/tests/specs/lint/workspace/root.out +++ b/tests/specs/lint/workspace/root.out @@ -5,7 +5,11 @@ error[no-eval]: `eval` call is not allowed | ^^^^^^^^ = hint: Remove the use of `eval` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-eval +======= + docs: https://lint.deno.land/rules/no-eval +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `unused` is never used @@ -15,7 +19,11 @@ error[no-unused-vars]: `unused` is never used | ^^^^^^ = hint: If this is intentional, prefix it with an underscore like `_unused` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-explicit-any]: `any` type is not allowed @@ -25,7 +33,11 @@ error[no-explicit-any]: `any` type is not allowed | ^^^ = hint: Use a specific type other than `any` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-explicit-any +======= + docs: https://lint.deno.land/rules/no-explicit-any +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-eval]: `eval` call is not allowed @@ -35,7 +47,11 @@ error[no-eval]: `eval` call is not allowed | ^^^^^^^^ = hint: Remove the use of `eval` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-eval +======= + docs: https://lint.deno.land/rules/no-eval +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-await-in-loop]: Unexpected `await` inside a loop. @@ -45,7 +61,11 @@ error[no-await-in-loop]: Unexpected `await` inside a loop. | ^^^^^^^^^^^^^^^^^^^^^^^ = hint: Remove `await` in loop body, store all promises generated and then `await Promise.all(storedPromises)` after the loop +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-await-in-loop +======= + docs: https://lint.deno.land/rules/no-await-in-loop +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-explicit-any]: `any` type is not allowed @@ -55,7 +75,11 @@ error[no-explicit-any]: `any` type is not allowed | ^^^ = hint: Use a specific type other than `any` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-explicit-any +======= + docs: https://lint.deno.land/rules/no-explicit-any +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-eval]: `eval` call is not allowed @@ -65,7 +89,11 @@ error[no-eval]: `eval` call is not allowed | ^^^^^^^^ = hint: Remove the use of `eval` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-eval +======= + docs: https://lint.deno.land/rules/no-eval +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) error[no-unused-vars]: `unused` is never used @@ -75,7 +103,11 @@ error[no-unused-vars]: `unused` is never used | ^^^^^^ = hint: If this is intentional, prefix it with an underscore like `_unused` +<<<<<<< HEAD docs: https://docs.deno.com/lint/rules/no-unused-vars +======= + docs: https://lint.deno.land/rules/no-unused-vars +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Found 8 problems diff --git a/tests/testdata/compile/node_modules_symlink_outside/main_compile_folder.out b/tests/testdata/compile/node_modules_symlink_outside/main_compile_folder.out index b6083bdd6dc4db..04bbce864184d0 100644 --- a/tests/testdata/compile/node_modules_symlink_outside/main_compile_folder.out +++ b/tests/testdata/compile/node_modules_symlink_outside/main_compile_folder.out @@ -13,7 +13,11 @@ bin[WILDLINE] │ └── node_modules/* ([WILDLINE]) └── some_folder/* ([WILDLINE]) +<<<<<<< HEAD Files: [WILDLINE] Metadata: [WILDLINE] Remote modules: [WILDLINE] +======= +Size: [WILDLINE] +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) diff --git a/tests/testdata/npm/deno_run_cowsay_no_permissions.out b/tests/testdata/npm/deno_run_cowsay_no_permissions.out new file mode 100644 index 00000000000000..25b79d9a7dce23 --- /dev/null +++ b/tests/testdata/npm/deno_run_cowsay_no_permissions.out @@ -0,0 +1,2 @@ +error: Uncaught (in promise) NotCapable: Requires read access to , specify the required permissions during compilation using `deno compile --allow-read` +[WILDCARD] diff --git a/tests/unit/dir_test.ts b/tests/unit/dir_test.ts index 757c8fec3608fa..a93d317e3827a7 100644 --- a/tests/unit/dir_test.ts +++ b/tests/unit/dir_test.ts @@ -38,6 +38,19 @@ Deno.test({ permissions: { read: true, write: true } }, function dirCwdError() { } }); +<<<<<<< HEAD +======= +Deno.test({ permissions: { read: false } }, function dirCwdPermError() { + assertThrows( + () => { + Deno.cwd(); + }, + Deno.errors.NotCapable, + "Requires read access to , run again with the --allow-read flag", + ); +}); + +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) Deno.test( { permissions: { read: true, write: true } }, function dirChdirError() { diff --git a/tests/util/server/src/fs.rs b/tests/util/server/src/fs.rs index 062ca59ef3a202..6938b69aa0b7f6 100644 --- a/tests/util/server/src/fs.rs +++ b/tests/util/server/src/fs.rs @@ -162,11 +162,15 @@ impl PathRef { #[track_caller] pub fn rename(&self, to: impl AsRef) { +<<<<<<< HEAD let to = self.join(to); if let Some(parent_path) = to.as_path().parent() { fs::create_dir_all(parent_path).unwrap() } fs::rename(self, to).unwrap(); +======= + fs::rename(self, self.join(to)).unwrap(); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } #[track_caller] @@ -177,9 +181,12 @@ impl PathRef { #[track_caller] pub fn write(&self, text: impl AsRef<[u8]>) { +<<<<<<< HEAD if let Some(parent_path) = self.as_path().parent() { fs::create_dir_all(parent_path).unwrap() } +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) fs::write(self, text).unwrap(); } @@ -195,6 +202,7 @@ impl PathRef { oldpath: impl AsRef, newpath: impl AsRef, ) { +<<<<<<< HEAD let oldpath = self.as_path().join(oldpath); let newpath = self.as_path().join(newpath); if let Some(parent_path) = newpath.parent() { @@ -204,11 +212,23 @@ impl PathRef { { use std::os::unix::fs::symlink; symlink(oldpath, newpath).unwrap(); +======= + #[cfg(unix)] + { + use std::os::unix::fs::symlink; + symlink(self.as_path().join(oldpath), self.as_path().join(newpath)) + .unwrap(); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } #[cfg(not(unix))] { use std::os::windows::fs::symlink_dir; +<<<<<<< HEAD symlink_dir(oldpath, newpath).unwrap(); +======= + symlink_dir(self.as_path().join(oldpath), self.as_path().join(newpath)) + .unwrap(); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } } @@ -218,6 +238,7 @@ impl PathRef { oldpath: impl AsRef, newpath: impl AsRef, ) { +<<<<<<< HEAD let oldpath = self.as_path().join(oldpath); let newpath = self.as_path().join(newpath); if let Some(parent_path) = newpath.as_path().parent() { @@ -227,11 +248,23 @@ impl PathRef { { use std::os::unix::fs::symlink; symlink(oldpath, newpath).unwrap(); +======= + #[cfg(unix)] + { + use std::os::unix::fs::symlink; + symlink(self.as_path().join(oldpath), self.as_path().join(newpath)) + .unwrap(); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } #[cfg(not(unix))] { use std::os::windows::fs::symlink_file; +<<<<<<< HEAD symlink_file(oldpath, newpath).unwrap(); +======= + symlink_file(self.as_path().join(oldpath), self.as_path().join(newpath)) + .unwrap(); +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) } } diff --git a/tools/core_import_map.json b/tools/core_import_map.json index fd3b9f7f363b71..9be8342f794489 100644 --- a/tools/core_import_map.json +++ b/tools/core_import_map.json @@ -232,7 +232,10 @@ "ext:deno_web/14_compression.js": "../ext/web/14_compression.js", "ext:deno_web/15_performance.js": "../ext/web/15_performance.js", "ext:deno_web/16_image_data.js": "../ext/web/16_image_data.js", +<<<<<<< HEAD "ext:deno_web/webtransport.js": "../ext/web/webtransport.js", +======= +>>>>>>> 46e2f9a47 (2.1.9 (#27886)) "ext:deno_webidl/00_webidl.js": "../ext/webidl/00_webidl.js", "ext:deno_websocket/01_websocket.js": "../ext/websocket/01_websocket.js", "ext:deno_websocket/02_websocketstream.js": "../ext/websocket/02_websocketstream.js",