1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-21 15:04:11 -05:00
Commit graph

1492 commits

Author SHA1 Message Date
denobot
8f59d18202
2.0.6 (#26803)
Bumped versions for 2.0.6

Signed-off-by: Divy Srivastava <dj.srivastava23@gmail.com>
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2024-11-10 10:08:11 +05:30
snek
811f99dc7d fix: performance.timeOrigin (#26787)
`performance.timeOrigin` was being set from when JS started executing,
but `op_now` measures from an `std::time::Instant` stored in `OpState`,
which is created at a completely different time. This caused
`performance.timeOrigin` to be very incorrect. This PR corrects the
origin and also cleans up some of the timer code.

Compared to `Date.now()`, `performance`'s time origin is now
consistently within 5us (0.005ms) of system time.


![image](https://github.com/user-attachments/assets/0a7be04a-4f6d-4816-bd25-38a2e6136926)
2024-11-10 09:24:22 +05:30
Leo Kettmeir
8441aefc8c refactor: use concrete error type for remaining ops (#26746) 2024-11-10 09:24:22 +05:30
snek
6040d69c15 fix(ext/node): better inspector support (#26471)
implement local inspector

future changes:
- wire up InspectorServer to enable open/close/url
- wire up connectToMainThread

Fixes https://github.com/denoland/deno/issues/25004
2024-11-10 09:24:22 +05:30
denobot
78a799b494
2.0.5 (#26753)
Bumped versions for 2.0.5

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
2024-11-06 01:19:05 +01:00
Leo Kettmeir
1bdecc8c73
refactor(runtime/permissions): use concrete error types (#26464) 2024-11-06 00:36:25 +01:00
Kenta Moriuchi
3bded14144
chore: update dlint to v0.68.0 for internal (#26711) 2024-11-06 00:36:24 +01:00
David Sherret
c5887708a9
fix: improved support for cjs and cts modules (#26558)
* cts support
* better cjs/cts type checking
* deno compile cjs/cts support
* More efficient detect cjs (going towards stabilization)
* Determination of whether .js, .ts, .jsx, or .tsx is cjs or esm is only
done after loading
* Support `import x = require(...);`

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-11-06 00:36:24 +01:00
Divy Srivastava
2e70376451
chore: upgrade to rust 1.82 and LLVM 19 (#26615)
Upgrade to rust 1.82 and LLVM 19 . Removes one webusb test because
`requestAdapter` not working on new ubuntu 24 runners
2024-11-06 00:36:24 +01:00
Nathan Whitaker
8c70b6151a
fix(node): Implement os.userInfo properly, add missing toPrimitive (#24702)
Fixes the implementation of `os.userInfo`, and adds a missing
`toPrimitive` for `tmpdir`. This allows us to enable the corresponding
node_compat test.
2024-11-06 00:36:23 +01:00
Divy Srivastava
13612e7112
fix: clamp smi in fast calls by default (#26506)
Fixes https://github.com/denoland/deno/issues/26480

Ref
d2945fb65b
2024-11-06 00:36:22 +01:00
denobot
b7c282d2f8
2.0.4 (#26630)
Bumped versions for 2.0.4

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
2024-10-30 01:15:35 +01:00
Bartek Iwańczuk
9f9eec1250
fix: provide hints in terminal errors for Node.js globals (#26610)
Add info/hint for terminal errors related to Node.js globals:
- __filename
- __dirname
- Buffer
- global
- setImmediate
- clearImmediate

Closes https://github.com/denoland/deno/issues/17494
2024-10-30 00:16:12 +01:00
denobot
997bd47fc2
2.0.3 (#26532)
Bumped versions for 2.0.3

---------

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-10-25 02:57:52 +02:00
Leo Kettmeir
f62283f0c4
refactor(ext/node): use concrete error types (#26419) 2024-10-25 02:09:38 +02:00
Bartek Iwańczuk
d68c5b9a46
Revert "fix(runtime): send ws ping frames from inspector server (#263… (#26513) 2024-10-25 02:09:38 +02:00
Divy Srivastava
c9400a0969
fix: share inotify fd across watchers (#26200)
Fixes https://github.com/denoland/deno/issues/26104
Fixes https://github.com/denoland/deno/issues/26071
Fixes https://github.com/denoland/deno/issues/17757
2024-10-25 02:09:37 +02:00
Bartek Iwańczuk
22b061489d
refactor: add 'docs' suggestion (#26463)
Adds another kind to `FixSuggestionKind` specifically for links
documentation pages.
2024-10-25 02:09:36 +02:00
Nathan Whitaker
91614bffa9
fix(cli): increase size of blocking task threadpool on windows (#26465)
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).
2024-10-25 02:09:36 +02:00
Leo Kettmeir
19110519f7
refactor(runtime/ops): use concrete error types (#26409) 2024-10-25 02:09:35 +02:00
Leo Kettmeir
b21fe64093
chore: update nix crate (#26422)
Dedupes nix dependency, since `rustyline` depends on a newer version
that what we currently use
2024-10-25 02:09:34 +02:00
Leo Kettmeir
2319d8a79f
refactor(ext/webgpu): use concrete error type (#26198) 2024-10-25 02:09:33 +02:00
Leo Kettmeir
6fdfd02f8f
refactor(ext/fetch): use concrete error types (#26220) 2024-10-25 02:09:33 +02:00
Leo Kettmeir
9f4aadacb2
refactor(ext/http): use concrete error types (#26377) 2024-10-25 02:09:33 +02:00
Leo Kettmeir
1bc3694e79
refactor(ext/crypto): use concrete error types (#26167) 2024-10-25 02:09:33 +02:00
Leo Kettmeir
998a371f5d
refactor(ext/websocket): use concrete error type (#26226) 2024-10-25 02:09:32 +02:00
Leo Kettmeir
ed1b2db88b
refactor(ext/fs): use concrete error types (#26317) 2024-10-25 02:09:32 +02:00
denobot
22a79ea420
2.0.2 (#26374)
Bumped versions for 2.0.2

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-10-18 01:28:36 +02:00
Leo Kettmeir
ca6d293b71
refactor(ext/napi): use concrete error types (#26186) 2024-10-18 01:05:02 +02:00
Leo Kettmeir
f0223a7336
refactor(ext/web): use concrete error types (#26185) 2024-10-18 01:05:02 +02:00
Lucas Nogueira
1aa52fad06
feat(permissions): expose PromptResponse (#26358)
follow-up for #26327
2024-10-18 01:05:02 +02:00
Leo Kettmeir
3b51c2b195
refactor(ext/kv): use concrete error type (#26239) 2024-10-18 01:05:02 +02:00
Leo Kettmeir
1da0ee2d14
refactor(ext/net): use concrete error type (#26227) 2024-10-18 01:05:02 +02:00
Lucas Nogueira
ee35b9d28e
feat(permissions): expose PermissionPrompter and set_prompter function (#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
2024-10-18 01:05:02 +02:00
Luca Casonato
194c453a27
fix(runtime): send ws ping frames from inspector server (#26352)
Every 30 seconds the websocket server will now send a ping frame, so
that the TCP socket stays alive.
2024-10-18 01:04:30 +02:00
Patrick Uftring
f4eb0de669
refactor: use macros for signal table (#26214) 2024-10-18 01:04:30 +02:00
denobot
99c2aa5730
2.0.1 (#26335)
Bumped versions for 2.0.1

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-10-17 00:42:35 +02:00
Bartek Iwańczuk
40b1c42138
fix: improve suggestions and hints when using CommonJS modules (#26287)
Ref https://github.com/denoland/deno/issues/26225
2024-10-15 23:25:24 +00:00
Bartek Iwańczuk
ee904ec06c
fix: add hint for missing document global in terminal error (#26218)
This came up on Discord as a question so I thought it's worth adding a
hint for this as it might be a common pitfall.

---------

Signed-off-by: Bartek Iwańczuk <biwanczuk@gmail.com>
Co-authored-by: David Sherret <dsherret@users.noreply.github.com>
2024-10-15 21:51:39 +00:00
Bartek Iwańczuk
3888806169
refactor: always apply hint when formatting JsError (#26252)
Moves code for generating suggestions and hint to `cli/fmt_errors.rs`.

This effectively applies suggestion to any place that format JS errors
in terminal,
like `deno test`.

Addresses
https://github.com/denoland/deno/pull/26218#issuecomment-2409139055
2024-10-15 18:59:28 +02:00
林炳权
533a9b1086
chore: upgrade to rust 1.81.0 (#26261) 2024-10-15 21:40:07 +05:30
Leo Kettmeir
ee7d450143
refactor(ext/ffi): use concrete error types (#26170) 2024-10-14 15:05:49 -07:00
Leo Kettmeir
48cbf85add
refactor(ext/url): use concrete error types (#26172) 2024-10-14 14:15:31 -07:00
Leo Kettmeir
cb385d9e4a
refactor(ext/webstorage): use concrete error types (#26173) 2024-10-14 13:53:17 -07:00
Leo Kettmeir
64c304a452
refactor(ext/tls): use concrete error types (#26174) 2024-10-12 16:53:38 -07:00
Leo Kettmeir
2ac699fe6e
refactor(ext/cron): use concrete error type (#26135) 2024-10-12 14:23:49 -07:00
Leo Kettmeir
8b2c6fc2d2
refactor(ext/canvas): use concrete error type (#26111) 2024-10-12 10:00:35 -07:00
Leo Kettmeir
938a8ebe34
refactor(ext/cache): use concrete error type (#26109) 2024-10-12 09:15:10 -07:00
Leo Kettmeir
3df8f16500
refactor(ext/broadcastchannel): use concrete error type (#26105) 2024-10-12 08:20:17 -07:00
David Sherret
66929de3ba
fix(unstable/worker): ensure import permissions are passed (#26101)
We only had integration tests for this and not an integration test.

Closes #26074
2024-10-10 14:01:42 +01:00