Age | Commit message (Collapse) | Author |
|
Fixes https://github.com/denoland/deno/issues/26180.
|
|
Towards https://github.com/denoland/deno/issues/26127
|
|
Fixes https://github.com/denoland/deno/issues/26104
Fixes https://github.com/denoland/deno/issues/26071
Fixes https://github.com/denoland/deno/issues/17757
|
|
In libuv on windows, `ERROR_INVALID_NAME` is mapped to `ENOENT`, but it
is mapped to `EINVAL` in our compat implementation, which causes the
issue #24899.
ref:
https://github.com/libuv/libuv/blob/d4ab6fbba4669935a6bc23645372dfe4ac29ab39/src/win/error.c#L138
closes #24899
closes #26411
closes #23635
closes #21165
closes #19067
|
|
Fixes https://github.com/denoland/deno/issues/26391
|
|
Adds another kind to `FixSuggestionKind` specifically for links
documentation pages.
|
|
Fixes #26179.
The original error reported in that issue is fixed on canary, but in
local testing on my windows machine, `next build` would just hang
forever.
After some digging, what happens is that at some point in next build,
readFile promises (from `fs/promises` ) just never resolve, and so next
hangs.
It turns out the issue is saturating tokio's blocking task thread pool.
We previously limited the number of blocking threads to 32, and at some
point those threads are all in use and there's no thread available for
the file reads.
What's taking up all of those threads? The answer turns out to be
`tokio::process`. On windows, child process stdio uses the blocking
threadpool: https://github.com/tokio-rs/tokio/pull/4824. When you poll
the child's stdio on windows, it spawns a blocking task per poll, and
calls `std::io::Read::read` in the blocking context. That call can block
until data is available.
Putting it all together, what happens is that Next.js spawns `2 * the
number of CPU cores` deno child subprocesses to do work. We implement
`child_process` with `tokio::process`. When the child processes' stdio
get polled, blocking tasks get spawned, and those blocking tasks might
block until data is available. So if you have 16 cores (as I do), there
are going to be potentially >32 blocking task threadpool threads taken
just by the child processes. That leaves no room for other tasks to make
progress
---
To fix this, for now, increase the size of the blocking threadpool on
windows. 4 * the number of CPU cores should be enough to leave room for
other tasks to make progress.
Longer term, this can be fixed more properly when we handroll our own
subprocess code (needed for detached processes and additional pipes on
windows).
|
|
Fixes https://github.com/denoland/deno/issues/26455
Signed-off-by: Ronny Chan <ronny.chan@okta.com>
|
|
|
|
Fixes #25926
Fixes #26004
|
|
|
|
|
|
This commit makes sure that `deno add`, `deno install` and `deno remove`
update the lockfile if only `package.json` file is present.
Fixes https://github.com/denoland/deno/issues/26270
|
|
|
|
|
|
1. Respects the formatting of the file (ex. keeps four space indents or
tabs).
2. Handles editing of comments.
3. Handles trailing commas.
4. Code is easier to maintain.
|
|
|
|
Towards https://github.com/denoland/deno/issues/24236
|
|
Dedupes nix dependency, since `rustyline` depends on a newer version
that what we currently use
|
|
|
|
Improves HTTP throughput by 8-9k rps on Linux:
this patch
```
Requests/sec: 145001.69
Transfer/sec: 20.74MB
```
main
```
Requests/sec: 137866.61
Transfer/sec: 19.72MB
```
The improvements comes from the reduced number of calls to
`op_run_microtask` per request. Returning `true` from a macrotask
callback already calls `op_run_microtask` so the extra call was
redundant.
Here's `--strace-ops` output for a single request:
main
```
[ 4.667] op_http_wait : CompletedAsync Async
[ 4.667] op_run_microtasks : Dispatched Slow
[ 4.668] op_http_try_wait : Dispatched Slow
[ 4.668] op_http_try_wait : Completed Slow
[ 4.668] op_http_wait : Dispatched Async
[ 4.668] op_http_set_response_header : Dispatched Slow
[ 4.668] op_http_set_response_header : Completed Slow
[ 4.669] op_http_set_response_body_text : Dispatched Slow
[ 4.669] op_http_set_response_body_text : Completed Slow
[ 4.669] op_run_microtasks : Completed Slow
[ 4.669] op_has_tick_scheduled : Dispatched Slow
[ 4.669] op_has_tick_scheduled : Completed Slow
[ 4.669] op_run_microtasks : Dispatched Slow
[ 4.669] op_run_microtasks : Completed Slow
[ 4.669] op_run_microtasks : Dispatched Slow
[ 4.669] op_run_microtasks : Completed Slow
```
this pr
```
[ 3.726] op_http_wait : CompletedAsync Async
[ 3.727] op_run_microtasks : Dispatched Slow
[ 3.727] op_http_try_wait : Dispatched Slow
[ 3.727] op_http_try_wait : Completed Slow
[ 3.727] op_http_wait : Dispatched Async
[ 3.727] op_http_set_response_header : Dispatched Slow
[ 3.728] op_http_set_response_header : Completed Slow
[ 3.728] op_http_set_response_body_text : Dispatched Slow
[ 3.728] op_http_set_response_body_text : Completed Slow
[ 3.728] op_run_microtasks : Completed Slow
[ 3.728] op_run_microtasks : Dispatched Slow
[ 3.728] op_run_microtasks : Completed Slow
```
|
|
|
|
|
|
This reverts commit e22d0e91ef7ce17dca299a44d1ccd292abde34f2.
Reverting because the CI pipeline is actually incorrect.
I intended to only use this self-hosted runner for "release" builds on
`main` branch, but now all PRs are queued waiting for a runner for a "debug"
build.
|
|
|
|
|
|
Supersedes #26337
|
|
Fixes https://github.com/denoland/deno/issues/26394.
|
|
This PR fixes the issue where mapped specifiers in a workspace member
would never be found. Only mapped paths from the workspace root would
resolve.
This was caused by always passing the workspace root url to the import
map resolver instead of the workspace member one.
Fixes https://github.com/denoland/deno/issues/26138
Fixes https://github.com/denoland/fresh/issues/2615
---------
Signed-off-by: Marvin Hagemeister <marvinhagemeister50@gmail.com>
Co-authored-by: David Sherret <dsherret@users.noreply.github.com>
|
|
|
|
Fixes https://github.com/denoland/deno/issues/26385
|
|
|
|
|
|
Was notified of one more occurance where we were missing an explicit
specifier for a `deno add` call.
See
https://github.com/denoland/deno/issues/26295#issuecomment-2421637401
|
|
This is the release commit being forwarded back to main for 2.0.2
Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
|
|
It's not guaranteed that `kStreamBaseField` is not undefined, so
added a check for it.
Closes https://github.com/denoland/deno/issues/26363
|
|
I don't have a reliable reproduction for it, but it makes it
painful to use the Jupyter kernel with semi-frequent random panics.
The completions don't always work correctly anyway, so I think
it's better to just not panic here for the time being.
Fixes https://github.com/denoland/deno/issues/26340
|
|
(#26369)
Fixes https://github.com/denoland/deno/issues/26162
|
|
It was missing an await
|
|
|
|
destination doesn't exist (#26360)
Fixes #26313.
We were checking for the NotFound error, but still calling the callback
with the error / throwing.
|
|
|
|
follow-up for #26327
|
|
|
|
|
|
when defining a custom runtime, it might be useful to define a custom
prompter - for instance when you are not relying on the terminal and
want a GUI prompter instead
|
|
Every 30 seconds the websocket server will now send a ping frame, so
that the TCP socket stays alive.
|
|
Follow-up to #26084
Update to the new logo found here:
https://github.com/denoland/docs/blob/main/static/img/logo.svg
|
|
|
|
<!--
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.
-->
|