summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-04-07chore: fix linting on main (#18633)David Sherret
2023-04-07fix(ext/node): add X509Certificate (#18625)Divy Srivastava
Towards #18455
2023-04-07refactor(ext/node): remove conditional in ServerResponse#enqueue (#18617)Bartek Iwańczuk
It's superfluous, the issue linked is no longer relevant. Closes https://github.com/denoland/deno/issues/18579
2023-04-06fix(npm): reload an npm package's dependency's information when version not ↵David Sherret
found (#18622) This reloads an npm package's dependency's information when a version/version req/tag is not found. This PR applies only to dependencies of npm packages. It does NOT yet cause npm specifiers to have their dependency information cache busted. That requires a different solution, but this should help cache bust in more scenarios. Part of #16901, but doesn't close it yet
2023-04-07chore: remove lockfile/ (#18618)Bartek Iwańczuk
New home at https://github.com/denoland/deno_lockfile.
2023-04-06refactor(npm): use deno_npm and deno_semver (#18602)David Sherret
2023-04-06chore: fix flaky tests checking ms when CI is slow (#18559)David Sherret
2023-04-06fix(ext/node): implement hkdf-expand (#18612)Divy Srivastava
Towards https://github.com/denoland/deno/issues/18455
2023-04-06refactor(ext/node): `NodeFs` - add back altered metadata method (#18613)David Sherret
From https://github.com/denoland/deno/pull/18604/files#r1159992299 We should still have a `metadata` method because it's one system call instead of two on most platforms.
2023-04-06fix(ext/node): fix unable to resolve fraction.js (#18544)Marvin Hagemeister
Turns out `autoprefixer` is a better reproduction case then `microbundle`. Fixes #18535 Fixes #18600 --------- Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-04-06perf(ext/websocket): replace tokio_tungstenite server with fastwebsockets ↵Divy Srivastava
(#18587) https://github.com/littledivy/fastwebsockets ``` # This PR ./load_test 100 0.0.0.0 8080 0 0 Running benchmark now... Msg/sec: 176355.000000 # main ./load_test 100 0.0.0.0 8080 0 0 Running benchmark now... Msg/sec: 157198.750000 ```
2023-04-06fix(ext/node): add symmetric keygen (#18609)Divy Srivastava
Towards #18455
2023-04-06refactor(ext/node): add more methods to 'NodeFs' trait (#18604)Bartek Iwańczuk
Added more methods to `ext/node/clippy.toml` that are not allowed to be used in the crate. Prerequisite for https://github.com/denoland/deno/pull/18544
2023-04-06feat(task): introduce built-in `unset` command to `deno task` (#18606)Yusuke Tanaka
This introduces a new built-in `unset` command to `deno task` by bumping deno_task_shell to the latest version 0.11.0. Also this includes a fix on how `deno task` handles empty environment variables (see https://github.com/denoland/deno_task_shell/pull/80 for details).
2023-04-06fix(ext/node): json encode binary command name (#18596)Geert-Jan Zwiers
Fixes https://github.com/denoland/deno/issues/18588
2023-04-06feat(core): sync io ops in core (#18603)Luca Casonato
This commit adds op_read_sync and op_write_sync to core. These ops are similar to op_read and op_write, but they are synchronous. Just like the async ops, they operate on generic `deno_core::Resource` objects. These now have new `read_byob_sync` and `write_sync` methods, with default implementations throwing "NotSupported" errors, just like the async counterparts. There are no `write_all` or `read` equivalents, because the optimizations they unlock are not useful in synchronous contexts.
2023-04-05perf(ext/io): remove a data copy from File write (#18601)Luca Casonato
Removes a data copy from all async `File::write` operations.
2023-04-05chore(cli/bench): add ws echo bench (#18595)Divy Srivastava
2023-04-05tests: cleanup "node_compat_tests" (#18594)Bartek Iwańczuk
A few drive-by cleanup while I'm working on the "crypto" module. It makes it easier and faster to debug the failing test case.
2023-04-05refactor(core): run pending dynamic imports before ops (#18592)Bartek Iwańczuk
This is in preparation to limit number of times we have to cross Rust -> V8 boundary on each tick of event loop.
2023-04-04refactor(ext/http): bring back 'reusePort' option for 'Deno.serve()' (#18590)Bartek Iwańczuk
Closes https://github.com/denoland/deno/issues/18582
2023-04-04refactor(core): Improve ergonomics of managing ASCII strings (#18498)Matt Mastracci
This is a follow-on to the earlier work in reducing string copies, mainly focused on ensuring that ASCII strings are easy to provide to the JS runtime. While we are replacing a 16-byte reference in a number of places with a 24-byte structure (measured via `std::mem::size_of`), the reduction in copies wins out over the additional size of the arguments passed into functions. Benchmarking shows approximately the same if not slightly less wallclock time/instructions retired, but I believe this continues to open up further refactoring opportunities.
2023-04-04feat(ext/url): `URL.canParse` (#18286)Kenta Moriuchi
2023-04-04refactor: remove remaining references to "flash" server (#18580)Bartek Iwańczuk
Follow up to https://github.com/denoland/deno/pull/18578 We will need to do another pass cleaning up `ext/fetch/23_request.js`
2023-04-03feat(ext/ffi): support marking symbols as optional (#18529)Dj
2023-04-03refactor: remove "ext/flash" (#18578)Bartek Iwańczuk
With https://github.com/denoland/deno/pull/18568 landed we no longer need "ext/flash". This commit removes "deno_flash" extension completely. This should have some impact on the binary and snapshot size. Closes https://github.com/denoland/deno/issues/17356
2023-04-03refactor: "Deno.serve()" API uses "Deno.serveHttp()" internally (#18568)Bartek Iwańczuk
This commit changes implementation of "Deno.serve()" API to use "Deno.serveHttp()" under the hood. This change will allow us to remove the "flash" server implementation, bringing stability to the "Deno.serve()" API. "cli/tests/unit/flash_test.ts" was renamed to "serve_test.ts". Closes https://github.com/denoland/deno/issues/15574 Closes https://github.com/denoland/deno/issues/15504 Closes https://github.com/denoland/deno/issues/15646 Closes https://github.com/denoland/deno/issues/15909 Closes https://github.com/denoland/deno/issues/15911 Closes https://github.com/denoland/deno/issues/16828 Closes https://github.com/denoland/deno/issues/18046 Closes https://github.com/denoland/deno/issues/15869
2023-04-03Revert "fix(cli): don't store blob and data urls in the module cache ↵Yoshiya Hinosawa
(#18261)" (#18572) This reverts commit b4c61c146a50dea0c4a53d8d505a4308ea7da279. cc @nayeemrmn
2023-04-03refactor(ext/node): migrate "http" module to use "Deno.serveHttp" API (#18552)Bartek Iwańczuk
This commit changes "node:http" module to use "Deno.serveHttp" API instead of "Deno.serve" API. --------- Co-authored-by: Matt Mastracci <matthew@mastracci.com>
2023-04-02feat(ext/http): add an op to perform raw HTTP upgrade (#18511)Matt Mastracci
This commit adds new "op_http_upgrade_early", that allows to hijack existing "Deno.HttpConn" acquired from "Deno.serveHttp" API and performing a Websocket upgrade on this connection. This is not a public API and is meant to be used internally in the "ext/node" polyfills for "http" module. --------- Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-04-02ci: improve release docs (#18562)David Sherret
2023-04-02chore: Turn back on dlintPreferPrimordials (#17715)Kenta Moriuchi
Closes #17709
2023-04-01chore: forward v1.32.3 release commit to main (#18561)denobot
Co-authored-by: David Sherret <dsherret@gmail.com>
2023-04-01fix(test): don't swallow sanitizer errors with permissions (#18550)Nayeem Rahman
Missing `return` from #18246.
2023-04-01fix(lsp): add a document preload file system entry limit (#18553)David Sherret
I was testing this out and it's badly needed. For now, it's not configurable and limited to 1,000 file system entries. Related to #18538
2023-04-01chore(release): improve merge commit back to main for patch releases (#18554)David Sherret
This change commits with conflicts that can then be resolved manually.
2023-04-01fix(repl): disable language server document preloading in the repl (#18543)David Sherret
This was an oversight because the repl uses the language server under the hood. Also, never preloads from a root directory. Part of #18538
2023-04-01perf(check): faster source hashing (#18534)David Sherret
2023-04-01fix(check): ensure diagnostics caused by changes in other files get ↵David Sherret
invalidated between runs (#18541) Regression caused by the performance improvement in #18329. Figuring this out was hard. It's luckily still fast after this change. Closes #18516
2023-04-01fix(ext/ffi): crash when same reference struct is used in two fields (#18531)Dj
fix #17482
2023-04-01ci: update to Ubuntu 22.04 runners for all workflows (#18526)Divy Srivastava
2023-04-01chore: forward v1.32.2 release commit to main (#18539)denobot
This is the release commit being forwarded back to main for 1.32.2
2023-03-31Revert "fix(cli): deno upgrade file permission (#18427)" (#18467)Bartek Iwańczuk
This reverts commit 0742ea1170239b7d010e219b3349b2f9edaaefe5. Closes https://github.com/denoland/deno/issues/18466
2023-03-31fix: upgrade to TypeScript 5.0.3 (#18532)David Sherret
2023-03-31fix(lsp): better handling of `data:` urls (#18527)David Sherret
1. Log instead of error when the referrer can't be found 2. Fixes typescript to resolve data urls correctly. Properly documented here: https://github.com/denoland/TypeScript/pull/4/files#diff-180da7c288743d11d8590d30f0c07c48e5dcf291aa671bbea0dd520a9a1359d2 Closes #18524
2023-03-31perf(ext/websocket): use opAsync2 to avoid spread deopt (#18525)Divy Srivastava
This commit adds a new core API `opAsync2` to call an async op with atmost 2 arguments. Spread argument iterators has a pretty big perf hit when calling ops. | name | avg msg/sec/core | | --- | --- | | 1.32.1 | `127820.750000` | | #18506 | `140079.000000` | | #18506 + #18509 | `150104.250000` | | #18506 + #18509 + this | `157340.000000` |
2023-03-31fix(ops): fallback when FastApiOneByteString is not utf8 (#18518)Divy Srivastava
Fixes https://github.com/denoland/deno/issues/18255
2023-03-31perf: `const` op declaration (#18288)Divy Srivastava
Co-authored-by: Levente Kurusa <lkurusa@kernelstuff.org> Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-03-31perf(ext/websocket): efficient event kind serialization (#18509)Divy Srivastava
Use u16 to represent the kind of event (0 - 6) & event code > 6 is treated as the close code. This way we can represent all events + the close code in a single JS number. This is safe because (as per RFC 6455) close code from 0-999 are reserved & not used. | name | avg msg/sec/core | | --- | --- | | deno_main | `127820.750000` | | deno #18506 | `140079.000000` | | deno #18506 + this | `150104.250000` |
2023-03-30fix(lsp): include all diagnosable documents on initialize (#17979)David Sherret
Closes https://github.com/denoland/vscode_deno/issues/797 Closes https://github.com/denoland/deno/issues/11190 Closes https://github.com/denoland/vscode_deno/issues/811 Closes https://github.com/denoland/vscode_deno/issues/761 Closes https://github.com/denoland/vscode_deno/issues/585 Closes https://github.com/denoland/vscode_deno/issues/561 Closes https://github.com/denoland/vscode_deno/issues/410