summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-05-11fix(lsp): preload documents when `deno.documentPreloadLimit` changes (#19103)David Sherret
2023-05-11fix(ext/fs): add more context_path (#19101)David Sherret
2023-05-11feat(lsp): ability to configure document pre-load limit (#19097)David Sherret
Adds a `deno.preloadLimit` option (ex. `"deno.preloadLimit": 2000`) which specifies how many file entries to traverse on the file system when the lsp loads or its configuration changes. Closes #18955
2023-05-11fix(npm): make http2 module available, make 'nodeGlobalThisName' writable ↵Bartek Iwańczuk
(#19092)
2023-05-11fix(lsp): hard to soft error when unable to get completion info (#19091)David Sherret
2023-05-11chore: upgrade thiserror and deno_lockfile (#19073)Miroslav Bajtoš
Upgrade `thiserror` to `1.40.0`. Remove version pinning so that consumers of deno crates can install newer versions of `thiserrors` without waiting for us to upgrade our Cargo.toml. Upgrade `deno_lockfile` to `0.14.0` to bring in `thiserror` upgrade, see https://github.com/denoland/deno_lockfile/pull/1.
2023-05-11fix(cli): upgrade to Typescript 5.0.4 (#19090)David Sherret
2023-05-11fix(console): handle error when inspecting promise-like (#19083)Nayeem Rahman
Fixes https://discord.com/channels/684898665143206084/684911491035430919/1105900195406958672. This was caused by: - A `TypeError` from `core.getPromiseDetails()` for promise-likes which also lead to that code path. - Swallowing internal formatting errors by returning `undefined`. I've made it so that a special message is formatted in that case instead (note that this case is fixed now): ![image](https://github.com/denoland/deno/assets/29990554/65bb9612-60b2-4e31-bf5e-e20976601593)
2023-05-11fix(runtime): `ChildProcess::kill()` doesn't require additional perms (#15339)Nayeem Rahman
Fixes #15217.
2023-05-11chore(deps): bump tokio version to 1.28.1 (#19069)Yarden Shoham
2023-05-11fix(node): expose channels in worker_threads (#19086)Marvin Hagemeister
This PR ensures that node's `worker_threads` module exports `MessageChannel`, `MessagePort` and the `BroadcastChannel` API. Fixing these won't make `esbuild` work, but brings us one step closer 🎉 Fixes #19028 .
2023-05-10feat(compile): unstable npm and node specifier support (#19005)David Sherret
This is the initial support for npm and node specifiers in `deno compile`. The npm packages are included in the binary and read from it via a virtual file system. This also supports the `--node-modules-dir` flag, dependencies specified in a package.json, and npm binary commands (ex. `deno compile --unstable npm:cowsay`) Closes #16632
2023-05-11feat(node): add `Module.runMain()` (#19080)Marvin Hagemeister
This PR adds the missing `Module.runMain()` function which is required for tools like `ts-node`. Fixes #19033
2023-05-10fix(node): conditional exports edge case (#19082)Bartek Iwańczuk
Fixes https://github.com/denoland/deno/issues/18743
2023-05-10fix(dts): align `seekSync` `position` arg with `seek` (#19077)David Sherret
Closes #19060
2023-05-10chore(core): Parallelize all WPT tests and reduce timeouts for expected ↵Matt Mastracci
failures (#19061) This speeds up WPT tests in two ways: 1. The `WebCryptoAPI` tests are slow, so create a parallel bucket for each individual test instead of one for all the `WebCryptoAPI` tests. 2. If a test is expected to fail, use a shorter timeout (1 minute rather than 4).
2023-05-10refactor(ext/http): HTTP trait structs need to be public (#19075)Matt Mastracci
2023-05-10chore(core): fix a warning (#19072)Bartek Iwańczuk
2023-05-10refactor(core): http_next generic over request extractor (#19071)Matt Mastracci
2023-05-10feat(ext/http): Automatic compression for Deno.serve (#19031)Matt Mastracci
`Content-Encoding: gzip` support for `Deno.serve`. This doesn't support Brotli (`br`) yet, however it should not be difficult to add. Heuristics for compression are modelled after those in `Deno.serveHttp`. Tests are provided to ensure that the gzip compression is correct. We chunk a number of different streams (zeros, hard-to-compress data, already-gzipped data) in a number of different ways (regular, random, large/small, small/large).
2023-05-10chore(node/stream): unbundle/unminify readable-streams (#19045)Levente Kurusa
2023-05-09fix(vendor): better handling of redirects (#19063)David Sherret
Closes #17582 Closes #19057
2023-05-09bench: fix benchmarks with extensions (#19059)Bartek Iwańczuk
They broke in f34fcd16ea4d504c8a87c0873c65598d70bb1d07
2023-05-09chore: upgrade tokio to 1.28 (#19053)Satya Rohith
2023-05-09fix(core): let V8 drive extension ESM loads (#18997)Luca Casonato
This now allows circular imports across extensions. Instead of load + eval of all ESM files in declaration order, all files are only loaded. Eval is done recursively by V8, only evaluating files that are listed in `Extension::esm_entry_point` fields. --------- Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-05-09perf(fmt): faster formatting for minified object literals (#19050)David Sherret
Has fix for https://github.com/dprint/dprint-plugin-typescript/issues/520
2023-05-08refactor: prefix ops w/ crate they are defined in (#19044)Luca Casonato
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-05-08refactor(core): make sure to always set embedder wrapper offset (#19048)Bartek Iwańczuk
2023-05-08refactor(core): verify there are no ops with duplicate names (#19047)Bartek Iwańczuk
This commit adds a "debug build" only check that verifies on startup that there are no duplicate ops (ie. the op names are unique).
2023-05-09Revert "perf(core): use jemalloc for V8 array buffer allocator (#18875)" ↵Bartek Iwańczuk
(#19046) This reverts commit 022aae9854bed6219d75eeb82fcf46652c21050d.
2023-05-08refactor(ext/fs): `deno_fs::FileSystem` - conditional `Send + Sync` (#18993)David Sherret
This allows for having a conditional `Send + Sync` on the file system trait for Deploy.
2023-05-08perf(ext/ffi): Use `Box<[NativeType]>` in CallbackInfo parameters (#19032)Aapo Alasuutari
2023-05-08fix(ext/http): Ensure Deno.serve works across --watch restarts (#18998)Matt Mastracci
Fixes #16699 and #18960 by ensuring that we release our HTTP `spawn_local` tasks when the HTTP resource is dropped. Because our cancel handle was being projected from the resource via `RcMap`, the resource was never `Drop`ped. By splitting the handle out into its own `Rc`, we can avoid keeping the resource alive and let it drop to cancel everything.
2023-05-08fix(core): always report the first error on unhandled rejection (#18992)ud2
The root cause of denoland/deno_std#3320, I believe, is that `pending_promise_rejections` is a `HashMap` whose entries are in arbitrary order, and as a result either of the two errors (`AddrInUse` and `TypeError`) may be selected when determining which one to report. I changed the field to a `VecDeque` so that the first error (`AddrInUse` in this case) is always selected.
2023-05-07chore: lint ext/fs/std_fs.rs (#19036)Bartek Iwańczuk
2023-05-07fix(ext/ffi): Callbacks panic on returning isize (#19022)Aapo Alasuutari
2023-05-07fix(ext/ffi): UnsafeCallback can hang with 'deno test' (#19018)Aapo Alasuutari
2023-05-06refactor(core): remove run_in_task helper, use tokio::test macro (#19009)Bartek Iwańczuk
2023-05-05refactor(ext/node): combine `deno_node::Fs` with `deno_fs::FileSystem` (#18991)David Sherret
2023-05-04refactor(ext/fs): boxed deno_fs::FileSystem (#18945)David Sherret
1. Boxed `File` and `FileSystem` to allow more easily passing this through the CLI code (as shown within this pr). 2. `StdFileResource` is now `FileResource`. `FileResource` now contains an `Rc<dyn File>`.
2023-05-04chore: forward v1.33.2 release commit to main (#18990)denobot
**THIS PR HAS GIT CONFLICTS THAT MUST BE RESOLVED** This is the release commit being forwarded back to main for 1.33.2 Please ensure: - [x] Everything looks ok in the PR - [x] The release has been published To make edits to this PR: ```shell git fetch upstream forward_v1.33.2 && git checkout -b forward_v1.33.2 upstream/forward_v1.33.2 ``` Don't need this PR? Close it. cc @levex Co-authored-by: levex <levex@users.noreply.github.com> Co-authored-by: Levente Kurusa <lkurusa@kernelstuff.org>
2023-05-04docs: update Deno.Writer docstring (#18987)Bartek Iwańczuk
Closes https://github.com/denoland/deno/issues/18985#issuecomment-1534493623
2023-05-04refactor(ext/node): remove NodeEnv trait (#18986)Luca Casonato
2023-05-04fix(npm): canonicalize search directory when looking for package.json (#18981)Bartek Iwańczuk
Co-authored-by: David Sherret <dsherret@gmail.com>
2023-05-04fix(core): allow esm extensions not included in snapshot (#18980)Nayeem Rahman
Fixes #18979. This changes the predicate for allowing `ext:` specifier resolution from `snapshot_loaded_and_not_snapshotting` to `ext_resolution_allowed` which is only set to true during the extension module loading phase. Module loaders as used in core are now declared as `ExtModuleLoader` rather than `dyn ModuleLoader`.
2023-05-03fix(test): disable preventDefault() for beforeunload event (#18911)Nayeem Rahman
Fixes #18910.
2023-05-03fix(ext/kv): throw on the Kv constructor (#18978)Luca Casonato
Closes #18963 --------- Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-05-03fix(docs): replace "e.g." with "i.e." in `seek()`/`seekSync()` comment (#18964)kang
Clarify calculation of number "9" in `seek()`/`seekSync()` comment of lib.deno.ns.d.ts by replacing "e.g." with "i.e."
2023-05-03fix(core): rebuild when JS sources for snapshotting change (#18976)Bartek Iwańczuk
2023-05-03chore: update release doc template (#18974)Bartek Iwańczuk