Commit graph

14322 commits

Author SHA1 Message Date
Yoshiya Hinosawa
795c904322
fix(ext/web): fix property configuration of event phase fields (#29635)
The properties like `Event.NONE` should have property configuration of
`writable: false, enumerable: true, configurable: false`, but they
currently have `enumerable: false, configurable: true, getter, setter:
undefined`.

This commit fixes it. This enables `parallel/test-event-target.js` node
compat test case.
2025-06-09 13:52:35 +09:00
Yoshiya Hinosawa
9c28cb5d66
fix(ext/node): update interaction between event emitters and domains (#29632) 2025-06-09 12:06:43 +09:00
Divy Srivastava
b8edafd446
fix(ext/node): match WebCrypto tag too small error msg with Node (#29654)
Some checks are pending
ci / publish canary (push) Blocked by required conditions
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
Enables `parallel/test-crypto-webcrypto-aes-decrypt-tag-too-small.js`

Ref https://github.com/denoland/deno/issues/29637
2025-06-08 21:07:31 +05:30
Divy Srivastava
dfe56f8b45
fix(ext/node): internal getOpenSSLSecLevel() for tests (#29657)
Enables `parallel/test-crypto-sec-level.js`

Ref https://github.com/denoland/deno/issues/29637
2025-06-08 21:07:14 +05:30
Divy Srivastava
f3920ef2ec
fix(ext/node): validate randomUUID() options (#29656)
Enables `parallel/test-crypto-randomuuid.js`

Ref https://github.com/denoland/deno/issues/29637
2025-06-08 21:06:52 +05:30
Divy Srivastava
635e3744bd
fix(ext/node): add events getMaxListeners (#29636)
Some checks are pending
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
Enables `parallel/test-events-getmaxlisteners.js`

Towards #29595
2025-06-08 04:07:03 +00:00
Nathan Whitaker
7a837f9fdb
feat(bundle, unstable): bundling backed by esbuild (#29470)
Some checks are pending
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
todo:
- [ ] cleanup cli, decide what flags we want to commit to
- [x] decide what to do about node addons - (you can mark them external
via `--external`)
- [x] move `esbuild_rs` to the `denoland` org
- [x] figure out the dynamic require issue
- [x] figure out how to test this
- [x] clean up / revert all the random changes
2025-06-07 21:20:10 +02:00
David Sherret
1323aca15e
refactor(npm_cache): fix Wasm build to not use tokio code (#29641)
Some checks are pending
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
2025-06-07 03:17:03 +00:00
Nayeem Rahman
74b73b3c9f
refactor(lsp): remove resolution lookup store from node resolver (#29627)
Some checks are pending
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
2025-06-06 21:22:03 +01:00
David Sherret
dff5d73cd9
fix: revert back to prefering highest previously resolved version for a req (#29642)
This is a revert

* https://github.com/denoland/deno_graph/pull/589
2025-06-06 20:09:50 +00:00
David Sherret
fb0241388e
fix(install): clean-up lock poll file for a more deterministic node_modules folder output (#29623)
Closes https://github.com/denoland/deno/issues/29619
2025-06-06 12:58:10 -04:00
Yoshiya Hinosawa
d0910c463d
chore: record whether node test uses node:test to report.json (#29633)
Some checks are pending
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
This PR adds the info about whether each test case uses `node:test` or
not to daily node compat test report.

This info is useful for displaying more correct command for executing a
single test case in Tooltip UI in test viewer web page.
2025-06-06 21:44:42 +09:00
Yoshiya Hinosawa
a2faf237b5
fix(ext/node): fix addAbortListener (#29634) 2025-06-06 21:31:41 +09:00
Yoshiya Hinosawa
2f5dbe1c87
fix(ext/node): fix validation of input in setMaxListeners (#29630)
Some checks are pending
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
2025-06-06 14:39:03 +09:00
Yoshiya Hinosawa
8e69075889
fix(ext/node): handle -p flag in spawn, fix "from dependency" check in windows (#29611)
This PR updates `op_node_call_is_from_dependency` op, which now detects
node_modules path on windows correctly.

This PR also updates the handling of
`child_process.spawn(process.execPath, ["-p", souceCode])`. It runs the
given string as source code, and prints the last evaluated value. This
PR adds wrapper for simulating that behavior.
2025-06-06 11:53:04 +09:00
Yoshiya Hinosawa
15beca3f66
fix(ext/node): update message for MaxListenersExceededWarning (#29613) 2025-06-06 09:38:26 +09:00
David Sherret
512a0072b1
refactor: make import and require conditions an override in ConditionResolver (#29622)
Some checks are pending
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
2025-06-05 16:18:03 +00:00
Divy Srivastava
22a615c7eb
fix(ext/node): ignore parallel/test-eventsource-disabled.js test (#29618)
Some checks are pending
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
EventSource web API is always available in Deno

Towards https://github.com/denoland/deno/issues/29595
2025-06-05 12:06:59 +00:00
Nayeem Rahman
cc6baf4446
fix(lsp): use canonicalized fallback filesystem root (#29566) 2025-06-05 11:41:26 +01:00
Bartek Iwańczuk
ea4506c657
feat(unstable): add --unstable-node-conditions flag for node resolution (#29586)
This commit adds support for `--unstable-node-conditions` flag
that allows to customize "conditional exports" used by Deno.

See https://nodejs.org/api/packages.html#resolving-user-conditions for
more details.

Ref https://github.com/denoland/deno/issues/23757

---------

Co-authored-by: Nayeem Rahman <nayeemrmn99@gmail.com>
2025-06-05 12:32:24 +02:00
Divy Srivastava
5039ce8e32
fix(ext/node): fix Buffer.inspect compatiblity (#29617)
Enables `parallel/test-buffer-inspect.js`

Towards #29589
2025-06-05 14:44:06 +05:30
Luca Casonato
eb97f51dad
tests(otel): ensure delta temporality is working (#29602) 2025-06-05 10:19:41 +02:00
Divy Srivastava
426e3e7228
fix(ext/node): Buffer.fill compatibility fixes (#29525)
Enables `parallel/test-buffer-fill.js`

Towards https://github.com/denoland/deno/issues/29589
2025-06-05 13:29:44 +05:30
Divy Srivastava
104084876c
fix(ext/node): mark pool ArrayBuffer as untransferable (#29612)
Enables `parallel/test-buffer-pool-untransferable.js`

Towards https://github.com/denoland/deno/issues/29589
2025-06-05 11:44:48 +05:30
Simon Lecoq
97a38fa584
fix(coverage): deno test --coverage fails when importing modules from data: urls (#29607)
Some checks are pending
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
2025-06-05 13:42:10 +09:00
Divy Srivastava
8b81644b59
fix(ext/node): enable Buffer pool for strings (#29592)
Part 1 towards enabling `parallel/test-buffer-pool-untransferable.js`
2025-06-05 12:04:32 +09:00
Yoshiya Hinosawa
1e6aca57e8
fix(ext/node): pass node.js specific flags via NODE_OPTIONS env var in spawn (#29600)
This commit changes the interpretation of command line args when
`child_process.spawn` is called with `Deno.execPath()` executable.

We modify cli args for `spawn(process.execPath, ...)` call to simulate
Node.js cli. This commit adds the handling of `--pending-deprecation` flag.
Now if `--pending-deprecation` is specified, it's set to `NODE_OPTIONS`
env var of the child process, which correctly affects the printing of
deprecation warning of Buffer constructor.
2025-06-05 10:38:34 +09:00
James Bronder
5bd9a337c1
fix(ext/node): use primordials in ext/node/polyfills/internal/console/constructor.mjs (#29605)
Towards #24236. Replaces JS builtins with equivalent primordials.
2025-06-05 01:12:58 +02:00
David Sherret
cdd09fff20
chore: bump deno_cache_dir to 0.22.2 (#29606) 2025-06-04 22:29:13 +00:00
David Sherret
cf372ba402
refactor(install): support tarball extract in Wasm (#29587)
Some checks are pending
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
2025-06-04 13:51:26 +00:00
Yoshiya Hinosawa
d39343373c
fix(ext/node): fix buffer.indexOf for ucs2 encoding (#29593)
Some checks are pending
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
2025-06-04 21:34:10 +09:00
Yoshiya Hinosawa
0f6d515c91
fix(ext/node): fix buffer.includes edge cases (#29591) 2025-06-04 14:39:27 +09:00
Yoshiya Hinosawa
ff8160b594
fix(ext/node): support DEP0005 deprecation warning (#29530)
Some checks are pending
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
This commit adds support of `DEP0005` warning which is emitted when the user
calls `Buffer` as constructor.
2025-06-04 12:25:32 +09:00
Edilson Pateguana
6bb3f6fad6
fix(node/assert): throw on deepStrictEqual({}, Object.create(null)) (#29428) 2025-06-04 11:00:54 +09:00
David Sherret
34ed9bab2b
refactor: support compiling deno_npm_installer to wasm32-unknown-unknown (#29583) 2025-06-03 17:24:58 -04:00
William Perron
a3395ba972
fix(otel): set timestamp on opentelemetry log records (#28625)
Some checks are pending
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
Co-authored-by: David Sherret <dsherret@users.noreply.github.com>
2025-06-03 17:56:32 +00:00
David Sherret
b42d5906cd
refactor: upgrade to deno_graph 0.95 (#29575) 2025-06-03 17:52:23 +00:00
David Sherret
5f8373309b
refactor(node): improve ResolutionMode::Require resolution (reland) (#29581)
Reverts denoland/deno#29579
2025-06-03 15:55:18 +00:00
David Sherret
84e2948220
refactor: use sys_traits in deno_npm_installer (#29574) 2025-06-03 09:26:08 -04:00
Yoshiya Hinosawa
a756a7bf8e
fix(ext/node): fix prototype of asymmetricKeyDetails of AsymmetricKeyObject (#29576) 2025-06-03 21:45:28 +09:00
Divy Srivastava
0e92f1a312
fix(ext/node): make Buffer work with resizable ABs (#29578)
Some checks are pending
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
2025-06-03 09:45:39 +00:00
Bartek Iwańczuk
f408a502e0
Revert "refactor(node): improve ResolutionMode::Require resolution … (#29579)
…(#29551)"

This reverts commit 6b00b58d04.

Causes CI failures on `main`.
2025-06-03 09:03:36 +00:00
David Sherret
6b00b58d04
refactor(node): improve ResolutionMode::Require resolution (#29551)
Some checks are pending
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
Co-authored-by: nathanwhit <nathanwhit@users.noreply.github.com>
2025-06-02 18:53:34 -04:00
Nathan Whitaker
a08a10262a
perf(process): make sure we can take process spawning fast path on unix (#29573)
The rust standard library has a fast path for process spawning, where it
will use `posix_spawn` instead of `fork` + `exec`. In order to take that
fast path, you can't have a `pre_exec` hook and you have to pass an
absolute path for the program path.

We were already resolving the program path, but we were unconditionally
doing a `pre_exec` hook. This PR makes the `pre_exec` hook conditional,
which lets us take the fast path in most cases.

**Results**
on an m3 max

canary:
```
took 318755.68ms
```

this PR:
```
took 17184.64ms
```

So an improvement from 318.76 seconds to 17.18 seconds, or about 18.5x
faster

**Benchmark**:
```js
import { fileURLToPath } from "node:url";
const performance = globalThis.performance;

const __filename = fileURLToPath(import.meta.url);

async function spawn() {
  const child = new Deno.Command("cat", {
    args: [__filename],
    stderr: "null",
    stdin: "null",
    stdout: "null",
  }).spawn();
  await child.status;
}

async function spawn100() {
  const procs = [];
  for (let i = 0; i < 100; i++) {
    procs.push(spawn());
  }
  await Promise.all(procs);
}

const start = performance.now();

for (let i = 0; i < 1000; i++) {
  console.log(`on ${(i + 1) * 100}`);
  await spawn100();
}
const end = performance.now();

console.log(`took ${end - start}ms`);
```
2025-06-02 22:33:21 +00:00
Divy Srivastava
fc02cf6a1b
fix(ext/node): various node:sqlite fixes (#29404)
Some checks are pending
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
2025-06-02 10:44:52 -07:00
Divy Srivastava
cb1e8a87a5
fix(ext/node): return undefined instead of null in sqlite (#29567)
<!--
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.
-->
2025-06-02 15:00:23 +00:00
David Sherret
4d47fcac55
refactor: extract out resolving with graph to deno_resolver (#29549) 2025-06-02 10:05:13 -04:00
Divy Srivastava
7b7aa8846b
fix(ext/node): make DatabaseSync readOnly optional (#29564)
Extracted from https://github.com/denoland/deno/pull/29404
2025-06-02 15:10:29 +02:00
Bartek Iwańczuk
02404333f1
fix(ext/node): add back perf_hooks.markResourceTiming (#29562)
Adding back a sham for "perf_hooks.markResourceTiming" that was removed
by accident in https://github.com/denoland/deno/pull/29323; a test was
added too, to ensure it doesn't regress in the future.

Closes https://github.com/denoland/deno/issues/29539
2025-06-02 17:53:38 +05:30
Divy Srivastava
fb723098a5
fix(ext/node): export StatementSync from node:sqlite (#29563)
Some checks are pending
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
Extracted from https://github.com/denoland/deno/pull/29404

Upgrades deno_core to 0.350.0
2025-06-02 11:34:41 +00:00