summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-04-24chore: use deno_unsync through deno_core (#23532)Matt Mastracci
2024-04-24fix(ext/node): worker_threads copies env object (#23536)Bartek Iwańczuk
Most common argument to `env` option for `worker_threads.Worker` will be `process.env`. In Deno `process.env` is a `Proxy` which can't be cloned using structured clone algorithm. So to be safe, I'm creating a copy of actual object before it's sent to the worker thread. Ref #23522
2024-04-23fix(lsp): Fix logic for coalescing pending changes + clear script names ↵Nathan Whitaker
cache when file is closed (#23517)
2024-04-23chore(lsp): respect shouldCreateNewSourceFile parameter (#23515)David Sherret
2024-04-23test: add private npm registry (#23510)Bartek Iwańczuk
This commit adds a "private npm registry" to the test server. This registry requires to send an appropriate Authorization header. Towards https://github.com/denoland/deno/issues/16105
2024-04-23fix: Float16Array support (#23512)Kenta Moriuchi
Ref #23490, #23277 * remove `--js-float16array` flag (This flag has already added to deno_core) * add some `Float16Array` support
2024-04-23chore: bump deno_core (#23497)Matt Mastracci
Fixes #21686 Unblocks #23490
2024-04-23fix(cli): Don't panic on invalid emit options (#23463)Nathan Whitaker
Fixes #23456.
2024-04-23perf(lsp): Call `serverRequest` via V8 instead of via `executeScript` (#23409)Nathan Whitaker
Doesn't have a noticeable perf impact from my benchmarking, but theoretically should be better.
2024-04-23fix(workspace): provide workspace members as 'imports' in import map (#23492)Bartek Iwańczuk
This commit changes the workspace support to provide all workspace members to be available as imports based on their names and versions. Closes https://github.com/denoland/deno/issues/23343
2024-04-23feat: enable Float16Array support (#23490)Bartek Iwańczuk
Closes https://github.com/denoland/deno/issues/23450
2024-04-23fix: update CLI flags for WPT (#23501)Asher Gomez
Fixes #23500
2024-04-22refactor(lsp): use CliGraphResolver in documents params (#23499)Nayeem Rahman
2024-04-22fix(lsp): remove Document::open_data on close (#23483)Nayeem Rahman
2024-04-22feat: add jsx precompile skip element option (#23457)Marvin Hagemeister
<!-- Before submitting a PR, please read https://docs.deno.com/runtime/manual/references/contributing 1. Give the PR a descriptive title. Examples of good title: - fix(std/http): Fix race condition in server - docs(console): Update docstrings - feat(doc): Handle nested reexports Examples of bad title: - fix #7123 - update docs - fix bugs 2. Ensure there is a related issue and it is referenced in the PR text. 3. Ensure there are tests that cover the changes. 4. Ensure `cargo test` passes. 5. Ensure `./tools/format.js` passes without changing files. 6. Ensure `./tools/lint.js` passes. 7. Open as a draft PR if your work is still in progress. The CI won't run all steps, but you can add '[ci]' to a commit message to force it to. 8. If you would like to run the benchmarks on the CI, add the 'ci-bench' label. --> This PR wires up a new `jsxPrecompileSkipElements` option in `compilerOptions` that can be used to exempt a list of elements from being precompiled with the `precompile` JSX transform.
2024-04-22perf(lsp): Batch "$projectChanged" notification in with the next JS request ↵Nathan Whitaker
(#23451) The actual handling of `$projectChanged` is quick, but JS requests are not. The cleared caches only get repopulated on the next actual request, so just batch the change notification in with the next actual request. No significant difference in benchmarks on my machine, but this speeds up `did_change` handling and reduces our total number of JS requests (in addition to coalescing multiple JS change notifs into one).
2024-04-21FUTURE(ext/net): remove ↵Asher Gomez
`Deno.ConnectTlsOptions.(certFile|certChain|privateKey)` (#23270) Towards #23089 --------- Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
2024-04-21fix(ext/node): define http.maxHeaderSize (#23479)Bartek Iwańczuk
Closes https://github.com/denoland/deno/issues/23432
2024-04-21FUTURE(ext/net): remove `Deno.ListenTlsOptions.(keyFile|certFile)` (#23271)Asher Gomez
Towards #23089 --------- Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
2024-04-21chore: update deno_config to 0.16.1 (#23480)Bartek Iwańczuk
Closes https://github.com/denoland/deno/issues/23343
2024-04-20feat(task): support running npm binary commands in deno.json (#23478)David Sherret
npm binary commands like `vite` from a `node_modules/.bin` folder will now execute when defined in a deno.json Closes https://github.com/denoland/deno/issues/23477
2024-04-21fix: Fix some typos in comments (#23470)welfuture
Signed-off-by: welfuture <wellfuture@qq.com>
2024-04-20chore: auto-complete for __spec__.jsonc file (#23476)David Sherret
This makes writing these tests a little easier.
2024-04-20chore: add lint script to ensure no new `itest!` tests (#23475)David Sherret
2024-04-20perf(lsp): Pass code action trigger kind to TSC (#23466)Nathan Whitaker
2024-04-20fix(ext/node): implement process.kill in Rust (#23130)Divy Srivastava
Closes https://github.com/denoland/deno/issues/23056
2024-04-20fix(ext/node): `cp` into non-existent parent directory (#23469)Divy Srivastava
Fixes https://github.com/denoland/deno/issues/20604
2024-04-20fix(ext/node): Support `env` option in worker_thread (#23462)Divy Srivastava
Fixes https://github.com/denoland/deno/issues/23455
2024-04-19refactor(ext/http): extract 02_websocket.ts from 01_http.js (#23460)Matt Mastracci
Landing part of https://github.com/denoland/deno/pull/21903 This will allow us to more easily refactor `serveHttp` to live on top of `serve` by splitting the websocket code out. There's probably a lot more we could do here but this helps.
2024-04-20perf(lsp): only store parsed sources for open documents (#23454)Nayeem Rahman
2024-04-19feat(runtime): Allow embedders to perform additional access checks on file ↵Matt Mastracci
open (#23208) Embedders may have special requirements around file opening, so we add a new `check_open` permission check that is called as part of the file open process.
2024-04-19feat(ext/http): Add `addr` to HttpServer (#23442)Matt Mastracci
Adds an `addr` field to `HttpServer` to simplify the pattern `Deno.serve({ onListen({ port } => listenPort = port })`. This becomes: `const server = Deno.serve({}); port = server.addr.port`. Changes: - Refactors `serve` overloads to split TLS out (in preparation for landing a place for the TLS SNI information) - Adds an `addr` field to `HttpServer` that matches the `addr` field of the corresponding `Deno.Listener`s.
2024-04-19chore(deps): bump rustls from 0.21.10 to 0.21.11 (#23464)dependabot[bot]
Bumps [rustls](https://github.com/rustls/rustls) from 0.21.10 to 0.21.11. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/rustls/rustls/commit/7b8d1dbc1e666dc4d83640c64e96d257d39cfda4"><code>7b8d1db</code></a> Prepare 0.21.11</li> <li><a href="https://github.com/rustls/rustls/commit/ebcb4782f23b4edf9b10a7065d9e8d4362439d9c"><code>ebcb478</code></a> complete_io: bail out if progress is impossible</li> <li><a href="https://github.com/rustls/rustls/commit/20f35dfb6d3c353294c562723d4cb6639a8bd01b"><code>20f35df</code></a> Regression test for <code>complete_io</code> infinite loop bug</li> <li><a href="https://github.com/rustls/rustls/commit/2f2aae15a4293639669291ab2b257835a2d4bdca"><code>2f2aae1</code></a> Don't specially handle unauthenticated close_notify alerts</li> <li><a href="https://github.com/rustls/rustls/commit/e163587b985c894a6ce651992b91eb6897edde8b"><code>e163587</code></a> Don't deny warnings from nightly clippy</li> <li><a href="https://github.com/rustls/rustls/commit/9f864874cff7d977cccd4204463ea34fd161a2fe"><code>9f86487</code></a> server::handy: fix new nightly clippy lint</li> <li><a href="https://github.com/rustls/rustls/commit/7e0e8ab599a19c2a733be294aaf91eeb6fdebaaa"><code>7e0e8ab</code></a> Correct assorted clippy warnings in test code</li> <li><a href="https://github.com/rustls/rustls/commit/3587d98f4ea434495facc0688b8b07313cb02e4a"><code>3587d98</code></a> Apply clippy suggestions from Rust 1.72</li> <li><a href="https://github.com/rustls/rustls/commit/d082e837b34c0605b1851e45c421c91c1d15391c"><code>d082e83</code></a> Address <code>clippy::redundant_static_lifetimes</code></li> <li><a href="https://github.com/rustls/rustls/commit/5e7a06ca457a6fe67dfbb57193f55138be7ef611"><code>5e7a06c</code></a> Address <code>clippy::slow_vector_initialization</code></li> <li>Additional commits viewable in <a href="https://github.com/rustls/rustls/compare/v/0.21.10...v/0.21.11">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rustls&package-manager=cargo&previous-version=0.21.10&new-version=0.21.11)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/denoland/deno/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-19perf(lsp): Avoid passing struct into op_resolve (#23452)Nathan Whitaker
Going through serde_v8 is slow, so just pass the args separately. `op_resolve` is especially hot, so any speedups are good.
2024-04-19feat: upgrade V8 to 12.4 (#23435)Bartek Iwańczuk
2024-04-19FUTURE: remove `Deno.customInspect` (#23453)Asher Gomez
2024-04-19refactor: move redirect handling into deno_graph (#23444)David Sherret
2024-04-19perf(lsp): cleanup document dependencies (#23426)Nayeem Rahman
2024-04-18fix(fmt): error for more unterminated nodes (#23449)David Sherret
https://github.com/dprint/dprint-plugin-typescript/pull/628 Closes https://github.com/denoland/deno/issues/23438
2024-04-18fix(ext/node): remove unwraps from fallible conversions (#23447)Bartek Iwańczuk
Removes `.unwrap()` calls from fallible conversion and replaces with graceful error returns.
2024-04-19test: fix node_compat_test (#23446)Bartek Iwańczuk
It's not clear to me how these tests worked correctly on CI, but they were failing hard locally because of two problems: - missing env var that tests URL for fake npm registry - trying to run a directory that contains native Node.js tests that require a special harness
2024-04-18test: deflake tests for rejection handled (#23448)Bartek Iwańczuk
Fixes flakiness for rejection handled tests on Windows (7 failures in the past day).
2024-04-18fix(cli): avoid `deno add` and `deno vendor` errors when deno.json is empty ↵nokazn
(#23439)
2024-04-18chore: make remaining submodules shallow (#23441)David Sherret
2024-04-18chore: remove unused, unstable 'http' namespace (#23436)Matt Mastracci
Landing parts of #21903 in preparation for the removal of serveHttp.
2024-04-18feat(ext/net): extract TLS key and certificate from interfaces (#23327)Bartek Iwańczuk
Relands #23325
2024-04-18fix(ext/node): Correctly send ALPN on node TLS connections (#23434)Matt Mastracci
Landing work from #21903, plus fixing a node compat bug. We were always sending the HTTP/2 ALPN on TLS connections which might confuse upstream servers. Changes: - Configure HTTP/2 ALPN when making the TLS connection from the HTTP/2 code - Read the `ALPNProtocols` property from the TLS connection options rather than the deno `alpnProtocols` field - Add tests Prereq for landing Deno.serveHttp on Deno.serve: removing older HTTP servers from the codebase.
2024-04-17test(publish): check specifiers outside fast check module graph (#23369)Asher Gomez
Closes #23023
2024-04-17perf(lsp): release unused documents (#23398)Nayeem Rahman
2024-04-17chore(lsp): Include new benchmark in the collected benchmark data (#23420)Nathan Whitaker
So it will actually show up on the [deno benchmarks site](http://deno.com/benchmarks)