Bartek Iwańczuk
46ec01374e
test: add shorthand script to run all Node test and filtering to it ( #29224 )
...
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 adds a new "tools/node_compat_tests.js" script that runs
"tests/node_compat/node_compat_test.ts" file.
Additionally ability to filter tests has been added (that only works
if we're not running in CI), that can be enabled like so:
```
$ tools/node_compat_tests.js --filter timers-unref-active
```
2025-05-17 02:08:21 +02:00
chirsz
cd68e7dd17
feat(ext/webgpu): implement GPUQueue.onSubmittedWorkDone ( #29255 )
2025-05-17 01:48:03 +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
Nayeem Rahman
2b0d44d8da
fix(lsp): lookup bare workspace specifiers for auto-import ( #29304 )
2025-05-16 21:38:14 +01: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
Bartek Iwańczuk
db1028bdc1
ci: update Slack bot action ( #29333 )
...
This was showing double "minus" (`-`) sign
2025-05-16 15:00:10 +02:00
Yoshiya Hinosawa
637bcffea7
fix(check): ignore errors on ambient modules ( #29135 )
...
This commit makes `deno check` ignore `Cannot find module` diagnostic if the
missing module specifier matches one of ambient module pattern. (For
example if there's `declare module "*.svg" { ... }` declaration in one
of d.ts files, importing of `<any>.svg` doesn't cause type error with
this change. This is necessary for passing the type checking of default
vite template.)
---------
Co-authored-by: David Sherret <dsherret@gmail.com>
2025-05-16 15:06:34 +09:00
Bartek Iwańczuk
7e77546d6d
ci: Show percentage diff for Node compat tests ( #29310 )
...
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build wasm32 (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 / publish canary (push) Blocked by required conditions
This is for internal Slack automation
2025-05-15 13:24:00 +00:00
Yoshiya Hinosawa
fab9b06878
fix(fmt): fail command when embedded language has syntax error ( #29259 )
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
2025-05-15 10:51:48 +09:00
Cyan
938803ae6e
fix(repl): use object_id for repl internal ( #29163 )
...
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 / 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
ci / test release macos-aarch64 (push) Blocked by required conditions
Closes https://github.com/denoland/deno/issues/26599
Closes https://github.com/denoland/deno/issues/29121
This PR use object_id to interact with repl internal, instead of global
variable (`__DENO_REPL_INTERNALS_{seconds}__`),
so we don't need to hide this in completions, etc.
---------
Signed-off-by: Cyan <contact@cyans.me>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2025-05-14 15:44:24 +00:00
David Sherret
784c6a5296
fix(check): do not add @types/node@*
to lockfile if a @types/node
req already exists ( #29270 )
2025-05-13 18:44:54 -04:00
Bartek Iwańczuk
5ea90de199
feat(jupyter): allow to install and maintain multiple kernels ( #29249 )
...
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 / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / build wasm32 (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
This commit changes the `deno jupyter` subcommand:
- `deno jupyter` now accepts additional `--name` argument to
allow installing and maintaing multiple kernelsspec - useful when
one wants to install a stable kernel and a debug/canary kernel
- `deno jupyter --install` now accepts additional `--display`
argument to allow customizing display name of the kernel - the
default one is "Deno"
- `deno jupyter --install` no longer blindly installs kernelspec,
instead it first checks if a kernelspec already exists and if so,
returns an error suggesting to use `--force` flag
- `deno jupyter --help` no longer shows `--unstable` flag
Closes https://github.com/denoland/deno/issues/29219
Closes https://github.com/denoland/deno/issues/29220
2025-05-13 16:56:16 +00:00
Nayeem Rahman
9b0707baa2
fix(check): don't assert unique normalized specifiers ( #29274 )
2025-05-13 16:16:38 +00: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
Luca Casonato
3b6c70e5b2
feat(ext/fetch): add support for fetch on unix sockets ( #29154 )
...
This commit adds support for using Unix socket proxies in `fetch` API.
This is facilitated by passing an appropriate `Deno.HttpClient` instance
to the `fetch` API:
```
const client = Deno.createHttpClient({
proxy: {
transport: "unix",
path: "/path/to/unix.sock",
},
});
await fetch("http://localhost/ping ", { client });
```
Closes https://github.com/denoland/deno/issues/8821
---------
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2025-05-13 18:06:17 +02:00
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
Yoshiya Hinosawa
363223aa6a
fix(ext/node): export CallTracker as named export ( #29271 )
2025-05-13 10:15:48 +09:00
narumincho
2f876b52d1
feat(lsp): add description in TaskDefinition ( #29244 )
2025-05-12 23:33:38 +01:00
David Sherret
1b36304381
fix(check): write lockfile after type checking ( #29265 )
...
Type checking might discover `npm:@types/node`, so write after type
checking.
2025-05-12 15:31:38 -04: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
David Sherret
e601df6bfb
fix: allow specifying otel config in --env-file
( #29240 )
...
Alternative to https://github.com/denoland/deno/pull/28127 that does cli
flag parsing, then env file loading, then resolves config with env vars.
This also fixes several other issues related to env vars in the
--env-file not being used for certain config.
Closes https://github.com/denoland/deno/issues/27851
Closes https://github.com/denoland/deno/issues/29171
Closes https://github.com/denoland/deno/pull/28127
Closes #29256
2025-05-11 21:09:52 -04:00
Bartek Iwańczuk
2fe200f6ef
fix(coverage): don't panic if all covered files are ignored via directive ( #29250 )
...
Closes https://github.com/denoland/deno/issues/29218
2025-05-12 02:47:32 +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
784be1511b
test: Capture output of failing node compat tests ( #29227 )
...
Will actually show test error instead of "error: Test failed"
2025-05-09 16:16:25 +02: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
Elias Rhouzlane
9188c79ab4
fix(cli/hmr): print compile error with exception details ( #27597 )
...
Fix https://github.com/denoland/deno/issues/27577
---------
Co-authored-by: David Sherret <dsherret@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2025-05-08 23:39:31 +00:00
Jonh Alexis
f8615e404c
fix(fmt): indent width should be ignored when formatting with use tabs set to true ( #29205 )
2025-05-08 22:00:13 +00:00
snek
c28cb56357
fix: inspector rewrite resource name to url ( #29216 )
...
Fixes: https://github.com/denoland/deno/issues/27003
2025-05-08 21:12:54 +00:00
Marvin Hagemeister
c015b8affd
feat(unstable): support comments in lint plugin ( #29189 )
...
This PR adds support for comments in the AST for lint plugins.
- The `Program` node has a `comments` field pointing to an array of all
comments.
- `SourceCode.getAllComments()`: Returns all comments (same as
`program.comments`)
- `SourceCode.getCommentsBefore(node)`: Get all comments before this
Node
- `SourceCode.getCommentsAfter(node)`: Get all comments after this Node
- `SourceCode.getCommentsInside(node)`: Get all comments inside this
Node
ESLint docs:
-
https://eslint.org/docs/latest/extend/custom-rules#accessing-the-source-code
- https://eslint.org/docs/latest/extend/custom-rules#accessing-comments
2025-05-08 21:59:36 +02:00
Divy Srivastava
9d0a833e7b
fix: bump default @types/node version range to 22.15.14 ( #28407 )
...
Fixes https://github.com/denoland/deno/pull/28168#discussion_r1982740706
---------
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2025-05-08 17:44:22 +00: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
Nayeem Rahman
59ffc1987c
fix(lsp): discard quick fixes importing /node_modules/ paths ( #29194 )
2025-05-08 17:08:10 +01:00
Nayeem Rahman
fc74cfe885
fix(lsp): use correct resolution kind when checking for no-export-npm ( #29180 )
2025-05-08 16:30:15 +01:00
Hajime-san
53b51113f5
fix(ext/canvas): createImageBitmap
must ignore the Blob.type
value ( #28741 )
...
fixes https://github.com/denoland/deno/issues/28723
I might misunderstood the spec. We should always sniff the MIME type
from the byte sequence when the input is `Blob`.
2025-05-08 15:57:28 +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
Satya Rohith
19c5cca65e
fix(ext/process): suppress child process kill errors in onAbort handler ( #29193 )
...
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2025-05-07 05:26:58 +00: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
snek
842a07710f
fix: terminate control sock event with newline ( #29184 )
...
these should be newline terminated
2025-05-06 14:51:40 +00:00
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
f47c4ea5e7
feat(unstable): notify control sock on serving ( #29173 )
...
send an event over the control socket when deno.serve is listening.
2025-05-05 17:27:17 +00:00
Laurence Rowe
8b0b3e9567
chore(cli): test support --single-threaded v8 flag ( #29099 )
2025-05-02 10:33:26 -04:00