summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-03-21Revert "perf: disable TSC snapshot compression (#18333)" (#18336)Bartek Iwańczuk
This reverts commit 0d27de943a60f5ca60e2116648719c235163361a.
2023-03-21chore(cli) Use with_context(|| format!(...)) rather than ↵Matt Mastracci
context(format!(...)) to avoid allocations in non-error path (#18332)
2023-03-21perf: disable TSC snapshot compression (#18333)Bartek Iwańczuk
This commit disables compression of the TSC snapshot. The compression only decreased the size of snapshot by 0.5Mb and it took about 40s during release build to compress. With recent gains in TS 5.0 upgrade in terms of size and performance it makes sense to remove this compression.
2023-03-21fix(cli) Better error messages on corrupt databases that aren't ↵Matt Mastracci
automatically re-created (#18330)
2023-03-21chore(tools): Copyright checker had a bad interpolation (#18328)Matt Mastracci
The copyright checker was erroring out with a bad interpolation if errors existed.
2023-03-21feat: TypeScript 5.0.2 (except decorators) (#18294)David Sherret
This upgrades TypeScript to 5.0.2, but does not have ES decorator support because swc does not support that yet.
2023-03-21docs(release): update to include deno_docker release workflow (#18323)David Sherret
2023-03-21chore(core): remove stray log statement (#18322)Bartek Iwańczuk
2023-03-21chore(tools): restore node compat test setup script (#18290)Yoshiya Hinosawa
2023-03-21docs: fix broken `Deno.FsFile#readable` example code (#18277)ayame113
2023-03-21chore(ext/console): inspect anonymous function as `[Function (anonymous)]` ↵Yoshiya Hinosawa
(#18283) This PR changes the inspect result of anonymous functions from `[Function]` to `[Function (anonymous)]`. This behavior is aligned to `util.inspect` of Node.js.
2023-03-20feat(ext/net): Add multicasting APIs to DatagramConn (#10706) (#17811)Sam Gwilym
2023-03-20refactor(ext/node): untangle dependencies between js files (#18284)Bartek Iwańczuk
Moving some code around in `ext/node` is it's a bit better well defined and makes it possible for others to embed it. I expect to see no difference in startup perf with this change.
2023-03-20fix(ext/node): use Deno.Command from `ext:runtime` (#18289)Geert-Jan Zwiers
Fixes https://github.com/denoland/deno/issues/18281. This imports `Deno.Command` from `ext:runtime/40_process.js` instead of using `Deno[Deno.internal]?.nodeUnstable?.Command`.
2023-03-20refactor(ext/node): make initialization functions sync (#18282)Bartek Iwańczuk
These functions don't need to be async, as they are only calling synchronous JavaScript code. As a follow up, all 3 functions should be merge together - this will reduce roundtrips for calling V8 from Rust, which is somewhat expensive
2023-03-19feat(compile): Add support for web workers in standalone mode (#17657)Andreu Botella
This commit adds support for spawning Web Workers in self-contained binaries created with "deno compile" subcommand. As long as module requested in "new Worker" constructor is part of the eszip (by means of statically importing it beforehand, or using "--include" flag), then the worker can be spawned.
2023-03-20test(ext/node): port _fs tests from std/node (#18262)Max Dahlgren
Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com>
2023-03-19test(ext/node): add querystring_test.ts and readline_test.ts (#18256)Sanskar Gauchan
2023-03-19test(ext/node): add _fs_access_test.ts and _fs_watch_test.ts (#18249)Sanskar Gauchan
part of https://github.com/denoland/deno/issues/17840
2023-03-19chore: bump http to ^0.29.0 (#18259)Max
`http` is very stable, it's safe to "unpin" it from `=0.28.0` version. This helps embedders that depend on newer version of `http` crate.
2023-03-19fix(runtime): Extract error code for all OS error variants (#17958)Kamil Ogórek
2023-03-19feat(compile): Enable multiple roots for a standalone module graph (#17663)Andreu Botella
This change will enable dynamic imports and web workers to use modules not reachable from the main module, by passing a list of extra side module roots as options to `deno compile`. This can be done by specifying "--include" flag that accepts a file path or a URL. This flag can be specified multiple times, to include several modules. The modules specified with "--include" flag, will be added to the produced "eszip".
2023-03-19chore: update "deno_third_party" submodule (#18274)Bartek Iwańczuk
This upgrade "dlint" and "hyperfine" tools we use in our CI.
2023-03-18Reland "perf(core): preserve ops between snapshots (#18080)" (#18272)Bartek Iwańczuk
Relanding 4b6305f4f25fc76f974bbdcc9cdb139d5ab8f5f4
2023-03-18chore(ci): allow 'Reland' PR title prefix (#18273)Bartek Iwańczuk
2023-03-18perf(core): use static specifier in ExtensionFileSource (#18271)Bartek Iwańczuk
Relanding #18264 ------- Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2023-03-18chore(bench): add RUNTIME_SNAPSHOT.bin (#18269)Leo Kettmeir
2023-03-18Revert "perf(core): use static specifier in ExtensionFileSource (#182… ↵Bartek Iwańczuk
(#18270) …64)" This reverts commit 8af0c8351935ea7c6c0441055d5164908322c9d6. Causes bench stage to fail on CI.
2023-03-18chore(cli/tests): move macos_shared_libraries test to macos_test.rs (#18268)Divy Srivastava
As per review comment in original PR: https://github.com/denoland/deno/pull/18244#issuecomment-1473769606
2023-03-18Revert "perf(core): preserve ops between snapshots (#18080)" (#18267)Bartek Iwańczuk
This reverts commit 4b6305f4f25fc76f974bbdcc9cdb139d5ab8f5f4.
2023-03-18perf(core): use static specifier in ExtensionFileSource (#18264)Divy Srivastava
Closes #18085 --------- Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-03-18fix(ext/node): add createDecipheriv (#18245)Yoshiya Hinosawa
2023-03-18docs(FFI/UnsafePointerView): fix a typo in a docstring (#18034)Andrew
2023-03-18perf(core): preserve ops between snapshots (#18080)Bartek Iwańczuk
This commit changes the build process in a way that preserves already registered ops in the snapshot. This allows us to skip creating hundreds of "v8::String" on each startup, but sadly there is still some op registration going on startup (however we're registering 49 ops instead of >200 ops). This situation could be further improved, by moving some of the ops from "runtime/" to a separate extension crates. --------- Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2023-03-18chore(core): simplify extension config codegen (#18263)Divy Srivastava
Avoid creating an extra closure when no config needed. I eventually want to make OpStateFn fixed sized to avoid boxing it.
2023-03-17fix(cli): preserve blob store when resetting file watcher (#18253)Geert-Jan Zwiers
Fixes https://github.com/denoland/deno/issues/17733 --------- Co-authored-by: Matt Mastracci <matthew@mastracci.com>
2023-03-17refactor(core): don't require Clone trait bounds in deno_core::extension ↵Bartek Iwańczuk
(#18257) These bounds were needlessly strict.
2023-03-17perf(core) Reduce copying and cloning in extension initialization (#18252)Matt Mastracci
Follow-up to #18210: * we are passing the generated `cfg` object into the state function rather than passing individual config fields * reduce cloning dramatically by making the state_fn `FnOnce` * `take` for `ExtensionBuilder` to avoid more unnecessary copies * renamed `config` to `options`
2023-03-17feat(core) deno_core::extension! macro to simplify extension registration ↵Matt Mastracci
(#18210) This implements two macros to simplify extension registration and centralize a lot of the boilerplate as a base for future improvements: * `deno_core::ops!` registers a block of `#[op]`s, optionally with type parameters, useful for places where we share lists of ops * `deno_core::extension!` is used to register an extension, and creates two methods that can be used at runtime/snapshot generation time: `init_ops` and `init_ops_and_esm`. --------- Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-03-17chore: add tests for node:async_hooks (#18004)Bartek Iwańczuk
Closes https://github.com/denoland/deno/issues/17878 --------- Co-authored-by: crowlkats <crowlkats@toaxl.com>
2023-03-17fix(cli/integration): clippy lints (#18248)Farsen976
This addresses two warnings from clippy, redundant-static-lifetimes and trim-split-whitespace. closes #18247
2023-03-17fix(test_util): parse strace usecs/call in total line if present (#18241)Divy Srivastava
Fixes https://github.com/denoland/deno/issues/18235
2023-03-17chore: add test for macOS shared libraries (#18244)Divy Srivastava
Closes https://github.com/denoland/deno/issues/18243
2023-03-17chore(ext/console): add 'quotes' internal option to Deno.inspect (#18183)Yoshiya Hinosawa
2023-03-17perf: disable runtime snapshot compression (#18239)Bartek Iwańczuk
This commit removes compression for the runtime JS code. It means that we will have a bigger binary, but faster startup. After several discussion in the CLI team we decided it's worth to trade about 3Mb of binary size for 2ms faster startup time. With WebGPU removed in 35196eab279340376929dd75ed717ef4830e2fa9 it shouldn't have such a big impact on the binary size.
2023-03-17BREAKING(unstable): remove WebGPU (#18094)Leo Kettmeir
This PR _**temporarily**_ removes WebGPU (which has behind the `--unstable` flag in Deno), due to performance complications due to its presence. It will be brought back in the future; as a point of reference, Chrome will ship WebGPU to stable on 26/04/2023. --------- Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-03-17BREAKING(ext/fs): FileInfo.dev is defined on Windows (#18237)Bartek Iwańczuk
Addresses feedback from https://github.com/denoland/deno/pull/18073#issuecomment-1471480385. Reverts changes to `FileInfo` fields that are not available on Windows making them `null`. Only `FileInfo.dev` is non-null.
2023-03-16chore(ci): allow 'BREAKING' PR title prefix (#18238)Bartek Iwańczuk
So that we can land PRs like https://github.com/denoland/deno/pull/18237 or https://github.com/denoland/deno/pull/18094
2023-03-16chore: bump rusty_v8 to 0.65.0 (#18231)Divy Srivastava
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-03-16fix(ext/node): resource leak in createHmac (#18229)Divy Srivastava
This commit fixes https://github.com/denoland/deno/issues/18140. Verified that test fails on `main`.