summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-08-07fix(upgrade): fallback to Content-Length header for progress bar (#24923)Bartek Iwańczuk
If the "size hint" does not provide a value, fall back to using a "Content-Length" header.
2024-08-07refactor(upgrade): make fetching latest version async (#24919)Bartek Iwańczuk
Additionally some renames in preparation to support "LTS" and "RC" channels.
2024-08-07fix(compile): support workspace members importing other members (#24909)David Sherret
2024-08-07feat(ext/node): rewrite crypto keys (#24463)Luca Casonato
This completely rewrites how we handle key material in ext/node. Changes in this PR: - **Signing** - RSA - RSA-PSS 🆕 - DSA 🆕 - EC - ED25519 🆕 - **Verifying** - RSA - RSA-PSS 🆕 - DSA 🆕 - EC 🆕 - ED25519 🆕 - **Private key import** - Passphrase encrypted private keys 🆕 - RSA - PEM - DER (PKCS#1) 🆕 - DER (PKCS#8) 🆕 - RSA-PSS - PEM - DER (PKCS#1) 🆕 - DER (PKCS#8) 🆕 - DSA 🆕 - EC - PEM - DER (SEC1) 🆕 - DER (PKCS#8) 🆕 - X25519 🆕 - ED25519 🆕 - DH - **Public key import** - RSA - PEM - DER (PKCS#1) 🆕 - DER (PKCS#8) 🆕 - RSA-PSS 🆕 - DSA 🆕 - EC 🆕 - X25519 🆕 - ED25519 🆕 - DH 🆕 - **Private key export** - RSA 🆕 - DSA 🆕 - EC 🆕 - X25519 🆕 - ED25519 🆕 - DH 🆕 - **Public key export** - RSA - DSA 🆕 - EC 🆕 - X25519 🆕 - ED25519 🆕 - DH 🆕 - **Key pair generation** - Overhauled, but supported APIs unchanged This PR adds a lot of new individual functionality. But most importantly because of the new key material representation, it is now trivial to add new algorithms (as shown by this PR). Now, when adding a new algorithm, it is also widely supported - for example previously we supported ED25519 key pair generation, but we could not import, export, sign or verify with ED25519. We can now do all of those things.
2024-08-06feat(lsp): node specifier completions (#24904)Nayeem Rahman
2024-08-06feat: deno run <task> (#24891)Satya Rohith
This PR updates `deno run` to fallback to executing tasks when there is no script with the specified name. If there are both script and a task with the same name then `deno run` will prioritise executing the script.
2024-08-06feat: vm rewrite (#24596)snek
rewrite vm implementation to increase compat. vm.Module+importModuleDynamically callbacks should be added in a followup.
2024-08-06BREAKING(webgpu/unstable): Replace async .requestAdapterInfo() with sync ↵Divy Srivastava
.info (#24783) Closes https://github.com/denoland/deno/issues/24779 Ref https://github.com/gpuweb/gpuweb/pull/4662
2024-08-06fix: errors with CallSite methods (#24907)Marvin Hagemeister
Fixes https://github.com/denoland/deno/issues/24898
2024-08-06fix: update dry run success message (#24885)HasanAlrimawi
2024-08-06docs: improve TextDecoder and TextEncoder jsdoc (#24890)Ryan Dahl
2024-08-06fix(ext/web): make TextDecoderResource use cppgc (#24888)Divy Srivastava
Fixes https://github.com/denoland/deno/issues/24878
2024-08-06feat(fetch): accept async iterables for body (#24623)Leo Kettmeir
Implements https://github.com/whatwg/webidl/pull/1397 Fixes #21454 Closes #24849
2024-08-06fix(ext/web): make CompressionResource garbage collectable (#24884)Divy Srivastava
2024-08-06docs(ext/canvas): document public Canvas APIs (#24895)Yoshiya Hinosawa
2024-08-06perf(lsp): remove fallback config scopes for workspace folders (#24868)Nayeem Rahman
2024-08-05feat: Add Deno.ServeDefaultExport type (#24879)Bartek Iwańczuk
Closes https://github.com/denoland/deno/issues/23725
2024-08-05fix(node): Fix node IPC serialization for objects with undefined values (#24894)Nathan Whitaker
We were serializing `{ a: undefined }` to `{ a: null }` instead of `{}`
2024-08-05feat: upgrade deno_core (#24886)snek
Fixes: https://github.com/denoland/deno/issues/24869 Includes changes for `node:vm` rewrite.
2024-08-05fix(urlpattern): correct typings for added APIs (#24881)Leo Kettmeir
2024-08-05feat(urlpattern): add ignoreCase option & hasRegExpGroups property, and fix ↵Leo Kettmeir
spec discrepancies (#24741) Fixes #20906 Fixes #24266 Closes #21073 --------- Signed-off-by: Leo Kettmeir <crowlkats@toaxl.com> Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
2024-08-05fix(unstable): panic when running deno install with DENO_FUTURE=1 (#24866)David Sherret
Not bothering to add a test for this because we're going to change this to be the default in a couple weeks.
2024-08-02Revert "feat: async context" (#24856)snek
Reverts denoland/deno#24402 deno_web can't depend on code in runtime
2024-08-02feat: async context (#24402)snek
We are switching to ContinuationPreservedEmbedderData. This allows adding async context tracking to the various async operations that deno provides. Fixes: https://github.com/denoland/deno/issues/7010 Fixes: https://github.com/denoland/deno/issues/22886 Fixes: https://github.com/denoland/deno/issues/24368
2024-08-02fix(ext/node): node:zlib coerces quality 10 to 9.5 (#24850)Bartek Iwańczuk
Fixes https://github.com/denoland/deno/issues/24572
2024-08-02Revert "perf(ext/node): improve `Buffer` from string performance" (#24851)Luca Casonato
2024-08-02docs: category should be 'Subprocess', not 'Sub Process' (#24852)Ryan Dahl
2024-08-02feat(unstable/fmt): move yaml formatting behind unstable flag (#24848)David Sherret
This moves YAML formatting behind an unstable flag for Deno 1.46. This will make it opt-in to start and then we can remove the flag to make it on by default in version of Deno after that. This can be specified by doing `deno fmt --unstable-yaml` or by specifying the following in a deno.json file: ```json { "unstable": ["fmt-yaml"] } ```
2024-08-02fix(cli): shorten examples in help text (#24374)i-api
2024-08-02feat(test): rename --allow-none to --permit-no-files (#24809)Luca Casonato
2024-08-02feat(fmt): support YAML (#24717)Pig Fang
2024-08-02docs: fix typos (#24820)Andreas Deininger
This PR fixes various typos I spotted in the project.
2024-08-02fix(fmt): handle using stmt in for of stmt (#24834)David Sherret
Closes #24406
2024-08-02chore: mark upgrade_invalid_canary_version as flaky (#24833)David Sherret
2024-08-02BREAKING(temporal/unstable): Remove obsoleted Temporal APIs (#24836)Kenta Moriuchi
2024-08-02perf(ext/http): Reduce size of `ResponseBytesInner` (#24840)Nathan Whitaker
I noticed [`set_response_body`](https://github.com/nathanwhit/deno/blob/ce42f82b5a985e5f1482dff97a7268019a8e79ea/ext/http/service.rs#L439-L443) was unexpectedly hot in profiles, with most of the time being spent in `memmove`. It turns out that `ResponseBytesInner` was _massive_ (5624 bytes), so every time we moved a `ResponseBytesInner` (for instance in `set_response_body`) we were doing a >5kb memmove, which adds up pretty quickly. This PR boxes the two larger variants (the compression streams), shrinking `ResponseBytesInner` to a reasonable 48 bytes. --- Benchmarked with a simple hello world server: ```ts // hello-server.ts Deno.serve((_req) => { return new Response("Hello world"); }); // run with `deno run -A hello-server.ts` // in separate terminal `wrk -d 10s http://127.0.0.1:8000` ``` Main: ``` Running 10s test @ http://127.0.0.1:8000/ 2 threads and 10 connections Thread Stats Avg Stdev Max +/- Stdev Latency 53.39us 9.53us 0.98ms 92.78% Req/Sec 86.57k 3.56k 91.58k 91.09% 1739319 requests in 10.10s, 248.81MB read Requests/sec: 172220.92 Transfer/sec: 24.64MB ``` This PR: ``` Running 10s test @ http://127.0.0.1:8000/ 2 threads and 10 connections Thread Stats Avg Stdev Max +/- Stdev Latency 45.44us 8.49us 0.91ms 90.04% Req/Sec 100.65k 2.26k 102.65k 96.53% 2022296 requests in 10.10s, 289.29MB read Requests/sec: 200226.20 Transfer/sec: 28.64MB ``` So a nice ~15% bump. (With response body compression, the gain is ~10% for gzip and neutral for brotli)
2024-08-01fix: regressions around Error.prepareStackTrace (#24839)Bartek Iwańczuk
Includes: - https://github.com/denoland/deno_core/pull/858 - https://github.com/denoland/deno_core/pull/856 Fixes https://github.com/denoland/deno/issues/24782 Fixes https://github.com/denoland/deno/issues/24825
2024-08-01fix(ext/webgpu): assign missing `constants` property of shader about ↵Hajime-san
`GPUDevice.createRenderPipeline[Async]` (#24803) fixes https://github.com/denoland/deno/issues/24287
2024-08-01fix(ext/console): render properties of Intl.Locale (#24827)Leo Kettmeir
Fixes #21271 --------- Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com>
2024-08-01fix(ext/http): correctly consume response body in `Deno.serve` (#24811)Luca Casonato
Prior to this commit, you could return a `Response` created from a string or Uint8Array multiple times. Now you can't do that anymore.
2024-08-01chore: upgrade flaky_test, fastwebsockets, base64, base32, notify (#24746)Ryan Dahl
2024-08-01fix: Don't panic if failed to add system certificate (#24823)Bartek Iwańczuk
This commit fixes the panic from https://github.com/denoland/deno/issues/24137. I'm not sure if we want to hard error or maybe instead skip with a warning and continue execution.
2024-08-01fix(compile): adhoc codesign mach-o by default (#24824)Divy Srivastava
2024-08-01fix(ext/crypto): respect offsets when writing into ab views in ↵Luca Casonato
randomFillSync (#24816)
2024-08-01feat: codesign for deno compile binaries (#24604)Divy Srivastava
Uses [sui](https://github.com/littledivy/sui) to inject metadata as a custom section in the denort binary. Metadata is stored as a Mach-O segment on macOS and PE `RT_RCDATA` resource on Windows. Fixes #11154 Fixes https://github.com/denoland/deno/issues/17753 ```cpp deno compile app.tsx # on macOS codesign --sign - ./app # on Windows signtool sign /fd SHA256 .\app.exe ``` --------- Signed-off-by: Divy Srivastava <dj.srivastava23@gmail.com>
2024-07-31feat: upgrade V8 to 12.8 (#24693)snek
- upgrade to v8 12.8 - optimizes DataView bigint methods - fixes global interceptors - includes CPED methods for ALS - fix global resolution - makes global resolution consistent using host_defined_options. originally a separate patch but due to the global interceptor bug it needs to be included in this pr for all tests to pass.
2024-08-01fix(ext/fetch): use correct ALPN to socks5 proxies (#24817)Sean McArthur
Closes #24632 Closes #24719
2024-07-31perf: update deno_ast to 0.41 (#24819)David Sherret
Some perf gains in swc (I measured formatting and it was slightly faster). Includes: * https://github.com/denoland/deno_graph/pull/508 * https://github.com/denoland/eszip/pull/193
2024-07-31chore: forward v1.45.5 release commit to main (#24818)denobot
2024-07-31perf(ext/fetch): speed up `resp.clone()` (#24812)Luca Casonato