Divy Srivastava
ff2354be0b
fix(ext/node): Fix Database#exec
should return undefined ( #29368 )
2025-05-19 19:20:49 -07:00
Divy Srivastava
69eeabb879
fix(ext/node): implement before
and after
hooks in node:test
( #29367 )
...
Ref https://github.com/denoland/deno/issues/29360 and
https://github.com/denoland/deno/issues/28837 . Needed for `node:sqlite`
tests
2025-05-19 07:26:41 +00:00
Divy Srivastava
3c6a99fce3
fix(ext/node): handle null
ssl options in node:https
( #29365 )
...
Fixes https://github.com/denoland/deno/issues/29364
2025-05-19 07:55:15 +02:00
Divy Srivastava
69eafe4814
fix(ext/node): prevent stdin double read ( #29353 )
...
Accidental debug code from
28cb8f7011
2025-05-17 17:17:39 +00:00
Divy Srivastava
28cb8f7011
fix: process.stdin.pause()
( #29330 )
2025-05-17 18:46:26 +05:30
Bartek Iwańczuk
a08d4a09f0
fix(ext/node): emit 'worker' event when a new worker thread is created ( #29345 )
...
As per title. Enables one Node compat test
2025-05-17 12:35:05 +05:30
Bartek Iwańczuk
b41fe8c566
feat: use a single 'performance' global ( #29323 )
...
This commit changes how "performance" global is handled -
instead of having separate "performance" globals for user and npm
code, we now have a single implementation.
This implementation is a de facto Node.js implementation - ie. it
contains additional properties compared to the "Web" implementation.
The two global can be compared using these docs sites:
- Web - https://developer.mozilla.org/en-US/docs/Web/API/Performance
- Node.js https://nodejs.org/api/perf_hooks.html
The benefit of this change is that when you use `performance.now()` in a
tight loop, the actual runtime of the code significantly improves - this
is because the `performance` global doesn't have to be "looked up" and
decided which is to be used, the "Web" or the "Node.js" version.
2025-05-17 00:11:11 +02:00
David Sherret
c4412ffb13
refactor: add deno_npm_installer
crate ( #29319 )
...
More changes/improvements will following in follow-up PRs.
2025-05-16 18:11:05 -04:00
Leo Kettmeir
97b84669a8
fix(node): use JsErrorClass
for code
property on node resolver errors ( #29294 )
...
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 / 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 / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
Superseeds #26631
---------
Signed-off-by: Leo Kettmeir <crowlkats@toaxl.com>
Co-authored-by: David Sherret <dsherret@gmail.com>
2025-05-16 20:54:47 +02:00
denobot
7b74f38539
2.3.2 ( #29320 )
...
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 / bench 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
Bumped versions for 2.3.2
---------
Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2025-05-16 01:18:59 +02:00
James Bronder
3f7b7d612d
fix(ext/node): use primordials in ext/node/polyfills/internal/net.ts
( #29297 )
...
Towards #24236 . Replaces `Symbol`, `RegExp` and its instance method,
`.test()`, with primordial equivalents.
2025-05-15 09:01:50 +02:00
James Bronder
6fe8fcda33
fix(ext/node): use primordials in ext/node/polyfills/internal/validators.mjs
( #29302 )
...
Towards #24236 . Replaces JS instrinsics with equivalent primordials.
2025-05-15 09:01:14 +02:00
James Bronder
5437871a52
fix(ext/node): use primordials in ext/node/polyfills/internal/stream_base_commons.ts
( #29290 )
...
Towards #24236 . Replaces JS intrinsics with primordial equivalents. Lint
"ignore" statements were added for `Readable` stream instances.
2025-05-14 11:54:23 +02:00
James Bronder
df7ddfc7df
fix(ext/node): use primordials in ext/node/polyfills/internal/url.ts
( #29146 )
...
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
Towards #24236 .
2025-05-13 23:30:44 +00:00
James Bronder
527c7401d5
fix(ext/node): use primordials in ext/node/polyfills/internal/normalize_encoding.mjs
( #29283 )
...
Towards #24236 . Replaces the `.toLowerCase` method with its equivalent
primordial method.
2025-05-14 00:03:04 +02:00
Divy Srivastava
e6c2ad1431
fix(ext/node): TLS server unref ( #29279 )
...
Fixes https://github.com/denoland/deno/issues/29230
2025-05-13 21:38:41 +05:30
Divy Srivastava
6002d2624e
fix(ext/node): allow rejectUnauthorized: false
in node:tls
( #29245 )
...
Fix #29228
Allow disable TLS cert verification using `options.rejectUnauthorized`.
If passed. `--unsafely-ignore-certificate-errors` overrides
`rejectUnauthorized: false`
2025-05-13 17:43:58 +05:30
Yoshiya Hinosawa
1022decc79
fix(ext/node): align input validation of Buffer.compare ( #29275 )
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / test debug macos-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
2025-05-13 17:14:19 +09:00
Divy Srivastava
acd0c94b46
fix(ext/node): add AES CTR to supported ciphers list ( #29273 )
...
Fix https://github.com/denoland/deno/issues/29047
2025-05-13 09:45:36 +05:30
James Bronder
eb1303b8f2
fix(ext/node): use primordials in ext/node/polyfills/internal/querystring.ts
( #29264 )
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 / 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 / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
2025-05-13 11:06:25 +09:00
Yoshiya Hinosawa
363223aa6a
fix(ext/node): export CallTracker as named export ( #29271 )
2025-05-13 10:15:48 +09:00
James Bronder
865d046ba3
fix(ext/node): use primordials in ext/node/polyfills/internal/timers.mjs
( #29269 )
...
Towards #24236 . Replaces JS intrinsics with equivalent primordial
versions.
2025-05-13 02:09:51 +02:00
Divy Srivastava
9cb72064d3
fix(ext/node): implement dgram setMulticastLoopback ( #29241 )
...
`npm:multicast-dns` works in Deno now.
Ref https://github.com/denoland/deno/issues/18324
2025-05-12 08:53:15 +05:30
James Bronder
5ab029db22
fix(ext/node): use primordials in ext/node/polyfills/internal/cli_table.ts
( #29257 )
...
Towards #24236 . Replaces JS intrinsics with their equivalent primordial
versions.
2025-05-12 02:47:28 +02:00
James Bronder
2a01ac4482
fix(ext/node): use primordials in ext/node/polyfills/internal/fs/handle.ts
( #29239 )
...
Towards #24236 . This PR updates JS intrinsics with their primordial
equivalents.
2025-05-11 13:38:53 +02:00
Divy Srivastava
c27aaf9f26
fix(ext/node): implement dgram socket setMulticastTTL ( #29232 )
...
Ref https://github.com/ipfs/helia/issues/73#issuecomment-2864091259
2025-05-10 09:22:02 +05:30
Divy Srivastava
5044f2f355
fix(ext/node): hold weak reference to sqlite database in instances ( #29210 )
...
Deterministic close and releases file lock on Windows.
Fixes https://github.com/denoland/deno/issues/29033
2025-05-10 09:21:53 +05:30
Divy Srivastava
b14e104306
fix(ext/node): use "localhost" as default tls hostname ( #29231 )
...
Fixes https://github.com/denoland/deno/issues/29229
2025-05-10 09:21:49 +05:30
Divy Srivastava
7852806c3a
fix(ext/node): Fix export loadEnvFile from node:process
( #29237 )
...
Fixes https://github.com/denoland/deno/issues/29236
2025-05-10 09:21:26 +05:30
Bartek Iwańczuk
6bbba3c348
fix(ext/node): add assert.CallTracker ( #29226 )
2025-05-09 14:55:28 +00:00
David Sherret
cd877fd16f
fix(node/test): basic support for t.skip and t.todo ( #29222 )
...
Adds basic support for `t.skip` and `t.todo`
2025-05-09 01:40:16 +02:00
Marvin Hagemeister
ed55e915a2
fix(node:http): ServerResponse.req
not set ( #29211 )
...
This PR sets `ServerRsposne.req` properly. See
e38ce27f3c/lib/_http_server.js (L201)
Fixes https://github.com/denoland/deno/issues/29209
2025-05-08 18:42:04 +02:00
Divy Srivastava
e2047941f7
fix(ext/node): dgram multicast group membership ( #29207 )
...
Closes https://github.com/denoland/deno/issues/28421
Ref https://github.com/denoland/deno/issues/18324
2025-05-08 22:07:40 +05:30
Satya Rohith
5f139910a1
fix(ext/node): support http over unix sockets ( #29182 )
...
Closes https://github.com/denoland/deno/issues/20255
---------
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2025-05-08 22:07:28 +05:30
James Bronder
ac42843157
fix(ext/node): use primordials in ext/node/polyfills/internal/dgram.ts
( #29204 )
...
Towards #24236 . Replaces `Symbol` as well as as `Function` and `Map`
instance methods with the primordial equivalents. A "prefer-primordial"
ignore comment was added to the `handle.bind` method call within the
`_createSocketHandle` function since this is a method call on a `UDP`
instance instead of a `bind` call on a `Function` object.
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2025-05-08 16:03:55 +02:00
Divy Srivastava
f334f903ef
fix(ext/node): arrayBufferViewHasBuffer
internal util ( #28827 )
2025-05-08 09:58:08 +05:30
Divy Srivastava
802826e54e
fix(ext/node): implement dgram setBroadcast ( #29195 )
2025-05-08 09:03:43 +05:30
James Bronder
f3943bf6e3
fix(ext/node): use primordials in ext/node/polyfills/internal/idna.ts
( #29085 )
...
Towards #24236 . This PR replaces JS built-ins, `String` and `Array`,
with the primordial versions.
2025-05-07 16:01:03 +02:00
Efe
cf8b9778d9
fix(ext/node): use primordials in ext/node/polyfills/_fs/_fs_mkdtemp.ts ( #29072 )
...
Towards #24236
2025-05-07 16:00:26 +02:00
James Bronder
e498e7d7e6
fix(ext/node): use primordials in ext/node/polyfills/internal/async_hooks.ts
( #29191 )
...
Towards #24236 . Replaces `Symbol` as well as `Array` and `Function`
methods with their primordial equivalents.
2025-05-07 14:19:26 +02:00
Divy Srivastava
5b037f1bed
fix(ext/node): getColorDepth
for writable stdio streams ( #29176 )
...
Fixes https://github.com/denoland/deno/issues/28605
Fixes https://github.com/denoland/deno/issues/29175
` ../deno/target/debug/deno run -A npm:create-vue@latest DIR` works now
2025-05-06 21:42:14 +05:30
nana4gonta
730f48b170
fix(ext/node): Support mTLS connections node compatibility ( #28937 )
...
Support for running Node.js code that requires mTLS connections on Deno.
Ref #21497
Closes https://github.com/denoland/deno/issues/26472
Closes https://github.com/denoland/deno/issues/29148
---------
Co-authored-by: Satya Rohith <me@satyarohith.com>
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2025-05-06 14:25:18 +05:30
Divy Srivastava
2edc70e679
fix(ext/node): Fix dns.lookup when promisified with options.all
( #29167 )
...
Fixes https://github.com/denoland/deno/issues/29074
Co-authored-by: Satya Rohith <me@satyarohith.com>
2025-05-06 09:16:00 +05:30
snek
5c6c52d132
fix: update deno_core ( #29166 )
...
for https://github.com/denoland/deno_core/pull/1111
2025-05-05 13:58:34 -05:00
James Bronder
8786d39d4b
fix(ext/node): use primordials in ext/node/polyfills/internal/options.ts
( #29119 )
...
Towards #24236 . This PR replaces `Map` and `String` methods with their
primordial versions.
2025-05-02 10:08:43 +02:00
Luca Casonato
1d6f665115
fix(ext/node): don't use user manipulated Response objects, use correct rawHeaders
structure ( #29105 )
2025-04-30 18:23:53 +02:00
denobot
61574bb9c9
2.3.0 ( #29102 )
...
Bumped versions for 2.3.0
---------
Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2025-04-30 09:49:31 +02:00
Nathan Whitaker
05574665b2
fix(ext/node): work correctly with wrapper Response objects, use correct rawHeaders
structure ( #29056 )
...
Fixes https://github.com/denoland/deno/issues/28022
Basically drizzle-kit studio uses hono with the node-server adapter.
That creates wrapper objects for responses that forward property getters
to the underlying response (the one we provided). However, in deno.serve
we were assuming that the response was actually the same response we
initially gave and crashed when it wasn't. instead, just call the
property getters if we can't find the inner response.
The raw headers bug is that we were exposing the `rawHeaders` field on
`Incoming` as a `Headers` object, instead it's supposed to be a flat
array of the header keys + values. I.e. `["Content-Type:",
"application/json", "Host:", "http://localhost "]`
2025-04-30 00:14:29 +00:00
Nathan Whitaker
c22d17824b
perf(fs): don't canonicalize path when opening file if --allow-all
is passed ( #28716 )
...
Fixes #28702 .
Super artificial benchmark:
```ts
const perf = performance;
async function asyncOpen() {
const start = perf.now();
for (let i = 0; i < 100_000; i++) {
const file = await Deno.open("./foo.txt");
file.close();
}
const end = perf.now();
console.log(end - start);
}
function syncOpen() {
const start = perf.now();
for (let i = 0; i < 100_000; i++) {
const file = Deno.openSync("./foo.txt");
file.close();
}
const end = perf.now();
console.log(end - start);
}
if (Deno.args[0]?.trim() === "async") {
await asyncOpen();
} else {
syncOpen();
}
```
Results (average of 10 for each):
```
deno sync 1785.59
deno-this-pr sync 491.69
deno async 1839.71
deno-this-pr async 528.78
```
---------
Co-authored-by: David Sherret <dsherret@users.noreply.github.com>
2025-04-29 23:16:24 +00:00
siaeyy
1a171f10df
fix(ext/node): handle "ttl" option in "dns" module ( #27676 )
...
Closes #27669
---------
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2025-04-29 22:49:10 +00:00