Commit graph

2210 commits

Author SHA1 Message Date
Yoshiya Hinosawa
6c33a7a46f
test(ext/node): enable parallel/test-crypto-dh-odd-key.js (#29724)
Some checks are pending
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 / 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 / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
2025-06-13 10:06:36 +09:00
Nathan Whitaker
be2bb7d5fb
feat(bundle): add --platform flag to bundle (#29697)
Closes #29650.

Currently passing `--platform=browser` does two things:
- makes us prefer the `"browser"` key in package json over module and
main
- makes us prefer the `"browser"` export condition 
but we may add more things in the future
2025-06-12 20:28:54 -04:00
Nathan Whitaker
09f4118529
fix(bundle): enable sloppy imports by default when bundling (#29731)
It's more permissive, aligns more with typical bundler behavior, and
runtime perf is not as much of a concern
2025-06-12 21:43:13 +00:00
Nayeem Rahman
8c3e6a14a1
fix(lsp): respect media type for tsx jupyter cells (#29712) 2025-06-12 22:39:59 +01:00
Nathan Whitaker
4072c2c627
fix(install,outdated): try to avoid building graph with incorrect exports (#29713)
Some checks are pending
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 / 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 / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
Fixes https://github.com/denoland/deno/issues/29707.

Not particularly happy with this one, but the only other idea I had was
to just ignore errors about non-existent exports when we build the graph
for a top level install. That might end up being the best solution.

For background, when you do a top level install that includes a jsr
dependency, we fetch the exports for the jsr package and then use those
exports as roots in the module graph (which triggers caching those
files).
To find those exports correctly, we need to know what version will end
up being cached, otherwise we may end up trying to reference exports
that don't exist on the actual package.

Previously, we could just look up the version in the lockfile and that
worked, but it turns out that was depending on the behavior that was
reverted in https://github.com/denoland/deno/pull/29642.
2025-06-12 09:23:05 -07:00
Nathan Whitaker
9602e13d53
fix(process,node): roll our own process spawning on windows (#29609)
Fixes #16899.
Fixes https://github.com/denoland/deno/issues/23524.
Fixes https://github.com/denoland/deno/issues/23938.
Fixes https://github.com/denoland/deno/issues/27869.

Unblocks #5501.

This PR adds support for additional stdio pipes to windows, as well as
the detached option in `node:child_process`. I also ported over the
`kill` implementation for windows, which means we now can support
`kill(0)` as well as some other signals.

This means that playwright will now work on windows.

Now that we have a way to support detached processes on all platforms,
we can also easily add a `detached` option to `Deno.Command`, similar to
`child_process.spawn`.

---

The reason for moving away from `std::process::Command` is that the
standard library doesn't expose what we need to control the file
descriptor table of child processes on windows. The implementation here
is based off of parts of `std` and parts of `libuv`, and allows us to
support passing extra pipes in addition to detached processes on
windows.
2025-06-12 02:56:13 +00:00
Yoshiya Hinosawa
dd91908fab
fix(ext/node): fix EventEmitter.on (#29682)
This fixes `EventEmitter.on` behaviors and enables
`parallel/test-events-on-async-iterator.js` test case.

Details:
- Removing of AbortListener in `EventEmitter.on` wasn't working. This commit
fixes it.
- patches `signal[kEvents]` field if AbortSignal is passed to
`EventEmitter.on` to let AbortSignals simulate Node.js EventTarget
behavior. This field is used in the test case.
- Added validation of `options` object in `EventEmitter.on`
2025-06-12 10:11:26 +09:00
Yoshiya Hinosawa
76c95b9c44
fix(fmt): fix line number in error message when syntax error thrown from external formatter (#29698)
The line number in error message is off by one when external formatter
raised syntax error. This commit fixes it by upgrading
`dprint-plugin-typescript` (The issue was fixed in upstream
https://github.com/dprint/dprint-plugin-typescript/pull/722 )
2025-06-12 08:58:44 +09:00
David Sherret
d107e169ff
chore: mark deno task pty tests as flaky (#29711)
Sometimes the CI is too busy and these pty tests have no output
2025-06-11 21:44:56 +00:00
Bartek Iwańczuk
1a8e5edd0f
fix: remove WorkerGlobalScope from global middleware (#29543)
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 commit removes "WorkerGlobalScope" global from the "global
middleware" that we use to provide different set of globals to
user code and npm packages.

This is done, by renaming "WebWorkerType" to "WorkerThreadType"
and introducing a "Node" variant - this variant is used when creating
a worker using "node:worker_threads" module. This worker does
not have a "WorkerGlobalScope" (because it's not a Web Worker)
and the regular Web Worker created using "new Worker" does have
it.
2025-06-11 17:19:15 +02:00
Bartek Iwańczuk
9812163db2
test: disable _fs_watch_test.ts test case (#29701)
This test was added in https://github.com/denoland/deno/pull/29659 and
an attempt to make it more stable was done in
https://github.com/denoland/deno/pull/29699.

Unfortunately it's still very flaky. Ignoring for now.
2025-06-11 12:51:36 +00:00
Yoshiya Hinosawa
73f498720b
test(ext/http): reduce flakiness of httpServerVsockWebSocketUpgrade (#29688) 2025-06-11 21:32:15 +09:00
Heyang Zhou
882d2ed1b6
feat(ext/fetch): add support for fetch on vsock sockets (#29692)
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 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 / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-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 commit adds support for using
[vsock](https://man7.org/linux/man-pages/man7/vsock.7.html) transport in
fetch API on Linux and macOS.

Similar to #29154, a vsock transport can be specified in the `proxy`
field when calling `Deno.createHttpClient`.

```ts
const client = Deno.createHttpClient({
  proxy: {
    transport: "vsock",
    cid: 2,
    port: 80,
  },
});

await fetch("http://localhost/ping", { client });
```
2025-06-11 09:58:02 +02:00
Yoshiya Hinosawa
23d19d16ef
test(ext/node): reduce flakiness of _fs_watch_test.ts (#29699) 2025-06-11 16:16:20 +09:00
Divy Srivastava
b49523780d
fix(ext/node): update decipherIv error properties (#29652)
Enables `parallel/test-crypto-stream.js` test

Ref https://github.com/denoland/deno/issues/29637
2025-06-11 04:15:45 +00:00
ctrl+d
e27447943b
fix(ext/node): fix fs.watchFile trigger (#29659)
Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com>
2025-06-11 12:37:59 +09:00
Yoshiya Hinosawa
e5c9168f86
fix(ext/node): fix events.getEventListeners (#29685) 2025-06-11 09:40:53 +09:00
David Sherret
56ce3352d2
fix(unstable): rename "patch" property to "links" (#29677)
This is to help make this feature less ambiguous with `npm patch`, which
it's not like.

Note: the "patch" property will continue to work for the time being, but
the lockfile will have a bit of churn for this unstable property. We're
going to merge this in a patch because this feature is unstable.
2025-06-10 21:51:23 +00:00
Nathan Whitaker
4438f8762f
fix(bundle): rework how patterns for externals are handled (#29680)
Now aligns with esbuild's behavior
2025-06-10 16:58:55 +00:00
Nathan Whitaker
1f579ba89e
fix(bundle): pass requested module type to load (#29683)
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
Fixes #29663.
2025-06-10 15:44:32 +00:00
Yoshiya Hinosawa
cb810ab664
fix(fmt): allow omission of semicolon in certain cases in css template (#29687) 2025-06-10 23:19:40 +09:00
Yoshiya Hinosawa
9730b97dfb
test(init): add retry in init_subcommand_serve to reduce flakiness (#29689) 2025-06-10 23:17:09 +09:00
Yoshiya Hinosawa
e8dc88790e
fix(ext/node): fix inspect of CustomEvent of Node.js (#29668) 2025-06-10 12:57:19 +09:00
Yoshiya Hinosawa
9494ba317c
fix(ext/node): support 2nd arg of EventEmitter.prototype.listenerCount (#29664) 2025-06-10 11:03:41 +09:00
Bartek Iwańczuk
ccc30edcb5
fix(ext/node): make conditional exports work in require() (#29640)
This commit fixes passing conditional exports specified with
`--unstable-node-conditions` flag to `require()` calls.

Fixes scenario from
https://github.com/denoland/deno/issues/23757#issuecomment-2949344042

---------

Co-authored-by: Nayeem Rahman <nayeemrmn99@gmail.com>
2025-06-10 02:09:46 +02:00
David Sherret
d5f0dd7ca2
fix(install): bust packument cache on version not found when loading extra info from lockfile (#29679)
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 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 / test debug macos-aarch64 (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: nathanwhit <nathanwhit@users.noreply.github.com>
2025-06-09 23:22:12 +00:00
Nathan Whitaker
64a95cb5fb
fix(bundle): fix handling of multiple entrypoints (#29651)
Fixes #29648.
2025-06-09 20:15:13 +00:00
Divy Srivastava
fca2c56df3
fix(ext/node): disable parallel/test-crypto-secure-heap.js test (#29658) 2025-06-08 22:45:06 -07:00
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
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
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
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
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