summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-02-18fix: util.parseArgs() missing node:process import (#22405)Javier Hernández
fix parseArgs() not working due to missing import of node:process this commit fixes issue #22363
2024-02-18feat(fs): `Deno.FsFile.{isTerminal,setRaw}()` (#22234)Asher Gomez
Closes #22229. --------- Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
2024-02-18BREAKING(unstable): remove `Deno.HttpClient.rid` (#22075)Asher Gomez
As part of ongoing works to make `rid` private. --------- Co-authored-by: Matt Mastracci <matthew@mastracci.com>
2024-02-18BREAKING: add `Deno.CreateHttpClientOptions.{cert,key}` (#22280)Asher Gomez
This change deprecates `Deno.CreateHttpClientOptions.{certChain,privateKey}` in favour of `Deno.CreateHttpClientOptions.{cert,key}`. Closes #22278 Co-authored-by: Matt Mastracci <matthew@mastracci.com>
2024-02-17chore: bump deno_core (#22443)Matt Mastracci
Migrations: - Use the new SnapshotSerializer for TSC/compiler snapshots
2024-02-16refactor: remove module graph setup from ModuleLoader (#22442)David Sherret
`ModuleLoader` was doing too much duplicate work.
2024-02-16refactor(cli): move op sanitizer to Rust (#22413)Matt Mastracci
The format of the sanitizers will change a little bit: - If multiple async ops leak and traces are on, we repeat the async op header once per stack trace. - All leaks are aggregated under a "Leaks detected:" banner as the new timers are eventually going to be added, and these are neither ops nor resources. - `1 async op` is now `An async op` - If ops and resources leak, we show both (rather than op leaks masking resources) Follow-on to https://github.com/denoland/deno/pull/22226
2024-02-16chore(cli): pre-factor the sanitizer tests (#22436)Matt Mastracci
Moving tests around so that we can make #22413 smaller
2024-02-16chore(release): add deno-lambda to release checklist (#22431)Igor Zinkovsky
Signed-off-by: Igor Zinkovsky <igor@deno.com>
2024-02-16chore(ext/web): refactor timer ops before landing op sanitizer (#22435)Matt Mastracci
Splitting the sleep and interval ops allows us to detect an interval timer. We also remove the use of the `op_async_void_deferred` call. A future PR will be able to split the op sanitizer messages for timers and intervals.
2024-02-16fix(fmt): remove debug output when formatting dynamic imports (#22433)David Sherret
deno fmt sometimes had stuff like: ``` NODE: Evaluation ``` ...in the output.
2024-02-16chore: move `test_util/wpt` to `tests/wpt/suite` (#22412)Asher Gomez
As discussed with @mmastrac. I'll move `tools/wpt` to `tests/wpt` in a follow-up PR. --------- Co-authored-by: Matt Mastracci <matthew@mastracci.com>
2024-02-15feat(unstable): single checksum per JSR package in the lockfile (#22421)David Sherret
This changes the lockfile to not store JSR specifiers in the "remote" section. Instead a single JSR integrity is stored per package in the lockfile, which is a hash of the version's `x.x.x_meta.json` file, which contains hashes for every file in the package. The hashes in this file are then compared against when loading. Additionally, when using `{ "vendor": true }` in a deno.json, the files can be modified without causing lockfile errors—the checksum is only checked when copying into the vendor folder and not afterwards (eventually we should add this behaviour for non-jsr specifiers as well). As part of this change, the `vendor` folder creation is not always automatic in the LSP and running an explicit cache command is necessary. The code required to track checksums in the LSP would have been too complex for this PR, so that all goes through deno_graph now. The vendoring is still automatic when running from the CLI.
2024-02-15chore(release): update asset count for denort (#22425)Divy Srivastava
Signed-off-by: Divy Srivastava <dj.srivastava23@gmail.com>
2024-02-15chore: forward v1.40.5 release commit to main (#22424)denobot
This is the release commit being forwarded back to main for 1.40.5 Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2024-02-15chore: add DENO_FUTURE env var (#22318)Divy Srivastava
Closes https://github.com/denoland/deno/issues/22315 ``` ~> DENO_FUTURE=1 target/debug/deno > globalThis.window undefined ```
2024-02-14feat(lsp): jsr support with cache probing (#22418)Nayeem Rahman
2024-02-14docs: add missing `@category` tags (#22411)Asher Gomez
Fixes the stray, uncategorised symbols seen in the left pane menu on https://deno.land/api@v1.40.4.
2024-02-14chore: rename DENO_REGISTRY_URL to JSR_URL (#22414)Nayeem Rahman
2024-02-14feat(publish): allow passing config flag (#22416)Leo Kettmeir
2024-02-14feat(unstable): define config in publish url (#22406)Leo Kettmeir
2024-02-13chore: deno_core bump (#22407)Matt Mastracci
- Adding `None` flag for warmup script. - Modify opcall trace interface to match new Rust implementation
2024-02-13fix(ext/web): Prevent (De-)CompressionStream resource leak on stream ↵Florian Schwalm
cancellation (#21199) Based on #21074 and #20741 I was looking for further potential use cases of `TransformStream` `cancel()` method, so here go `CompressionStream` and `DecompressionStream`. Fixes #14212
2024-02-13chore: cleanup `ext/net/02_tls.js` (#22032)Asher Gomez
`certFile` was being passed to `op_tls_start()` when it's unused and undocumented. Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com> Co-authored-by: Matt Mastracci <matthew@mastracci.com>
2024-02-13chore: cleanup obsolete `Datagram` export (#22078)Asher Gomez
This isn't used anywhere outside the originating file.
2024-02-13chore: move `test_util/std` to `tests/util/std` (#22402)Asher Gomez
Note: tests are not the only part of the codebase that uses `std`. Other parts, like `tools/`, do too. So, it could be argued that this is a little misleading. Either way, I'm doing this as discussed with @mmastrac.
2024-02-13feat: denort binary for `deno compile` (#22205)Divy Srivastava
This introduces the `denort` binary - a slim version of deno without tooling. The binary is used as the default for `deno compile`. Improves `deno compile` final size by ~2.5x (141 MB -> 61 MB) on Linux x86_64.
2024-02-13fix(ext/node): export process.umask (#22348)Divy Srivastava
Fixes https://github.com/denoland/deno/issues/20914
2024-02-13chore: use `@std` import instead of `@test_util/std` (#22398)Asher Gomez
This PR: 1. Replaces `@test_util/std`-prefixed imports with `@std`. 2. Adds `@std/` import map entries to a few `deno.json` files.
2024-02-13chore: bump deno_graph to 0.65.3 (#22397)Lino Le Van
2024-02-12chore: continue tests/ re-org (#22396)Matt Mastracci
Split `node_compat_tests` into its own top-level test so its stdout doesn't stomp on the remainder of the tests.
2024-02-12feat(lsp): jsr support first pass (#22382)Nayeem Rahman
This implementation heavily depends on there being a lockfile, meaning JSR specifiers will always diagnose as uncached unless it's there. In practice this affects cases where a `deno.json` isn't being used. Our NPM specifier support isn't subject to this. The reason for this is that the version constraint solving code is currently buried in `deno_graph` and not usable from the LSP, so the only way to reuse that logic is the solved-version map in the lockfile's `packages.specifiers`.
2024-02-12chore: move test_ffi and test_nap to tests/ [WIP] (#22394)Matt Mastracci
Moving some additional NAPI and. FFI tests out of the tree root.
2024-02-12fix(console): support NO_COLOR and colors option in all scenarios (#21910)Leo Kettmeir
Noticed in #21607
2024-02-12chore: update to Rust 1.76 (#22376)林炳权
Update to Rust 1.76
2024-02-10chore: deno_core bump (#22379)Matt Mastracci
- Updates to V8 12.1.285.27 https://github.com/denoland/rusty_v8/pull/1383 - Swaps Box for Rc for `source_map_getter`
2024-02-10chore: move cli/tests/ -> tests/ (#22369)Matt Mastracci
This looks like a massive PR, but it's only a move from cli/tests -> tests, and updates of relative paths for files. This is the first step towards aggregate all of the integration test files under tests/, which will lead to a set of integration tests that can run without the CLI binary being built. While we could leave these tests under `cli`, it would require us to keep a more complex directory structure for the various test runners. In addition, we have a lot of complexity to ignore various test files in the `cli` project itself (cargo publish exclusion rules, autotests = false, etc). And finally, the `tests/` folder will eventually house the `test_ffi`, `test_napi` and other testing code, reducing the size of the root repo directory. For easier review, the extremely large and noisy "move" is in the first commit (with no changes -- just a move), while the remainder of the changes to actual files is in the second commit.
2024-02-10fix: cache bust jsr deps on constraint failure (#22372)David Sherret
Removes the `FileFetcher`'s internal cache because I don't believe it's necessary (we already cache this kind of stuff in places like deno_graph or config files in different places). Removing it fixes this bug because this functionality was already implemented in deno_graph and lowers memory usage of the CLI a little bit.
2024-02-10fix(lsp): complete npm specifier versions correctly (#22332)Nayeem Rahman
2024-02-09fix: lockfile was sometimes getting corrupt when changing config deps (#22359)David Sherret
Tests are in the deno_lockfile repo. Closes #22250
2024-02-09refactor: split integration tests from CLI (part 1) (#22308)Matt Mastracci
This PR separates integration tests from CLI tests into a new project named `cli_tests`. This is a prerequisite for an integration test runner that can work with either the CLI binary in the current project, or one that is built ahead of time. ## Background Rust does not have the concept of artifact dependencies yet (https://github.com/rust-lang/cargo/issues/9096). Because of this, the only way we can ensure a binary is built before running associated tests is by hanging tests off the crate with the binary itself. Unfortunately this means that to run those tests, you _must_ build the binary and in the case of the deno executable that might be a 10 minute wait in release mode. ## Implementation To allow for tests to run with and without the requirement that the binary is up-to-date, we split the integration tests into a project of their own. As these tests would not require the binary to build itself before being run as-is, we add a stub integration `[[test]]` target in the `cli` project that invokes these tests using `cargo test`. The stub test runner we add has `harness = false` so that we can get access to a `main` function. This `main` function's sole job is to `execvp` the command `cargo test -p deno_cli`, effectively "calling" another cargo target. This ensures that the deno executable is always correctly rebuilt before running the stub test runner from `cli`, and gets us closer to be able to run the entire integration test suite on arbitrary deno executables (and therefore split the build into multiple phases). The new `cli_tests` project lives within `cli` to avoid a large PR. In later PRs, the test data will be split from the `cli` project. As there are a few thousand files, it'll be better to do this as a completely separate PR to avoid noise.
2024-02-09chore: fix nightly bench (#22362)Matt Mastracci
This has been broken for a while, but I think `setup-deno` is all that it needs.
2024-02-09fix: handle non-file scopes in synthetic import map (#22361)David Sherret
Closes #22353
2024-02-09chore: completely disable websocketstream_test (#22360)Matt Mastracci
2024-02-09fix: upgrade to deno_ast 0.33 (#22341)David Sherret
* Uses diagnostics from deno_ast * Real fix for https://github.com/denoland/deno/pull/22310 * Moves `deno lint --json` code here * Upgrades swc Closes #22117 Closes #22109 Closes #21927 Closes #20993
2024-02-08chore(cli): disable some of the restored WSS tests (#22357)Matt Mastracci
2024-02-08chore: Promote some integration tests to js_unit_tests (#22355)Matt Mastracci
- Move a workers test to js_unit_tests and make it work - (slightly) repair the websocketstream_test and make it a JS unit test. This test was being ignored and rotted quite a bit, but there's some value in running as much of it as we can. - Merge the two websocket test files
2024-02-08chore: Repair arm64-linux (#22352)Matt Mastracci
2024-02-08chore: bump action versions (#22354)Matt Mastracci
These should be our last node v16 actions.
2024-02-08chore: update asset count to 9 in release_doc_template (#22347)Divy Srivastava