summaryrefslogtreecommitdiff
path: root/ext
AgeCommit message (Collapse)Author
2024-09-12feat(serve): Support second parameter in deno serve (#25606)Nathan Whitaker
Closes #24099
2024-09-12feat(ext/node): export 'promises' symbol from 'node:timers' (#25589)Bartek Iwańczuk
2024-09-12fix(ext/node): Implement detached option in `child_process` (#25218)Nathan Whitaker
Fixes https://github.com/denoland/deno/issues/25193.
2024-09-13fix(ext/node): fix Decipheriv when autoPadding disabled (#25598)Yoshiya Hinosawa
This change fixes Decipheriv behavior when autoPadding disabled and enabled. By this change, the example given in https://github.com/denoland/deno/issues/20924#issuecomment-2345931295 works in the same way as Node. closes #20924
2024-09-12refactor: cleanup unstable checks for WebGPU, FFI and FS APIs (#25586)Asher Gomez
Continuation of work in #25488. --------- Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
2024-09-12fix(ext/console): prevent duplicate error printing when the cause is ↵MujahedSafaa
assigned (#25327) This commit fixes the error format when the cause is assigned separately, ensuring that the cause is only printed once instead of twice. The fix addresses issue [#21651](https://github.com/denoland/deno/issues/21651).
2024-09-12fix(ext/node): export request and response clases from `http2` module (#25592)Bartek Iwańczuk
Closes https://github.com/denoland/deno/issues/20612 Closes https://github.com/denoland/deno/issues/23326 This makes `qwik` work.
2024-09-12feat(ext/node): expose ES modules for _ modules (#25588)Bartek Iwańczuk
Exposes following modules: - `"node:_http_agent"` - `"node:_http_common"` - `"node:_http_outgoing"` - `"node:_http_server"` - `"node:_stream_duplex"` - `"node:_stream_passthrough"` - `"node:_stream_readable"` - `"node:_stream_transform"` - `"node:_stream_writable"` - `"node:_tls_common"` - `"node:_tls_wrap"`
2024-09-12feat: stabilize `Deno.createHttpClient()` (#25569)Asher Gomez
Closes #25518
2024-09-12feat(ext/node): export missing symbols from domain, puncode, repl, tls (#25585)Bartek Iwańczuk
2024-09-12feat(ext/node): export missing constants from 'zlib' module (#25584)Bartek Iwańczuk
That puts us at 99.5% compatibility for this module.
2024-09-12feat(ext/node): export more symbols from streams and timers/promises (#25582)Bartek Iwańczuk
2024-09-11fix(ext/node): fix `Cipheriv#update(string, undefined)` (#25571)Yoshiya Hinosawa
2024-09-11fix(ext/node): avoid showing `UNKNOWN` error from TCP handle (#25550)Yoshiya Hinosawa
2024-09-11fix(ext/node): add `FileHandle#writeFile` (#25555)Yoshiya Hinosawa
This PR adds `writeFile` methods of `FileHandle` class https://nodejs.org/api/fs.html#filehandlewritefiledata-options
2024-09-11fix(ext/node): use primordials in `ext/node/polyfills/console.ts` (#25572)Jake Abed
Contributing toward #24236 - Swapped `Object.assign` for `ObjectAssign` primordial. - Removed referencing TODO comment. Please disregard if no longer desired.
2024-09-11fix(ext/node): validate input lengths in `Cipheriv` and `Decipheriv` (#25570)Yoshiya Hinosawa
addresses the first part of #25279
2024-09-11fix(ext/node): Add missing node:fs and node:constants exports (#25568)Nathan Whitaker
Just a bunch of random fs constants
2024-09-11fix(ext/node): Add missing `node:path` exports (#25567)Nathan Whitaker
Apparently `path/posix` and `path/win32` have circular exports. I do not know why. Additionally there's a deprecated function `_makeLong` which is just `toNamespacedPath`
2024-09-11BREAKING(net): remove `Deno.[Tls]Listener.prototype.rid` (#25556)Asher Gomez
Towards #22079 --------- Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
2024-09-10BREAKING(net): remove ↵Asher Gomez
`Deno.ConnectTlsOptions.{certChain,certFile,privateKey}` and `Deno.ListenTlsOptions.certChain,certFile,keyFile}` (#25525) Towards #22079
2024-09-10fix(ext/node): Rewrite `node:v8` serialize/deserialize (#25439)Nathan Whitaker
Closes #20613. Reimplements the serialization on top of the v8 APIs instead of deno_core. Implements `v8.Serializer`, `v8.DefaultSerializer`, `v8.Deserializer`, and `v8.DefaultSerializer`.
2024-09-10BREAKING(temporal/unstable): Remove obsoleted Temporal APIs part 2 (#25505)Kenta Moriuchi
Mainly I removed `Temporal.Calendar` and `Temporal.TimeZone` and replaced them to APIs that handle calendar and timezone as strings. https://github.com/tc39/proposal-temporal/pull/2925 Related #24836
2024-09-11BREAKING(fs): remove `Deno.FsFile.prototype.rid` (#25499)Asher Gomez
Towards #22079 --------- Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
2024-09-10feat: require(esm) (#25501)snek
implement require(esm) using `op_import_sync` from deno_core. possible future changes: - cts and mts - replace Deno.core.evalContext to optimize esm syntax detection Fixes: https://github.com/denoland/deno/issues/25487
2024-09-10fix: linux canonicalization checks (#24641)snek
<!-- 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. -->
2024-09-10feat(cli): use NotCapable error for permission errors (#25431)Luca Casonato
Closes #7394 --------- Co-authored-by: snek <snek@deno.com>
2024-09-10fix(inspector): Fix panic when re-entering runtime ops (#25537)Divy Srivastava
Mark `op_require_break_on_next_statement` as reentrant and properly release borrow on the `OpState`. This fixes `BorrowMut` assertions when running with inspector + op metrics. Fixes https://github.com/denoland/deno/issues/25515
2024-09-10build: remove --unstable flags from CI (#25548)Bartek Iwańczuk
This commit removes usages of deprecated `--unstable` flag from the CI scripts.
2024-09-09BREAKING(fs): remove `Deno.fsync[Sync]()` (#25448)Asher Gomez
Towards #22079 --------- Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
2024-09-10BREAKING(io): remove `Deno.{Reader,Writer}[Sync]` and `Deno.Closer` (#25524)Asher Gomez
2024-09-09fix(ext/node): Stream should be instance of EventEmitter (#25527)Satya Rohith
Closes https://github.com/denoland/deno/issues/25526
2024-09-09BREAKING(fs): remove `Deno.fdatasync[Sync]()` (#25520)Asher Gomez
2024-09-08fix(ext/node): delay accept() call 2 ticks in net.Server#listen (#25481)Yoshiya Hinosawa
A workaround for the issue #25480 `Deno.Listener` can't be closed synchronously after `accept()` is called. This PR delays the `accept` call 2 ticks (The listener callback is called 1 tick later. So the 1 tick delay is not enough), and makes `net.Server` capable of being closed synchronously. This unblocks `npm:detect-port` and `npm:portfinder` closes #18301 closes #25175
2024-09-06BREAKING(net): remove `Deno.{Conn,TlsConn,TcpConn,UnixConn}.prototype.rid` ↵Asher Gomez
(#25446) Towards #22079 --------- Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
2024-09-07chore: soft-remove `Deno.{stdin,stderr,stdout}.rid` (#25479)Asher Gomez
Towards #22079
2024-09-06feat(add): Add npm packages to package.json if present (#25477)Nathan Whitaker
Closes https://github.com/denoland/deno/issues/25321 Ended up being a larger refactoring, since we're now juggling (potentially) two config files in the same `add`, instead of choosing one. I don't love the shape of the code, but I think it's good enough Some smaller side improvements: - `deno remove` supports `jsonc` - `deno install --dev` will be a really simple change - if `deno remove` removes the last import/dependency in the `imports`/`dependencies`/`devDependencies` field, it removes the field instead of leaving an empty object
2024-09-06fix(runtime): use more null proto objects again (#25040)Kenta Moriuchi
proceed with #23921 This PR is a preparation for https://github.com/denoland/deno_lint/pull/1307 --------- Signed-off-by: Kenta Moriuchi <moriken@kimamass.com> Co-authored-by: Luca Casonato <hello@lcas.dev>
2024-09-06fix: invalid ipv6 hostname on `deno serve` (#25482)Marvin Hagemeister
This PR fixes an invalid URL being printed when running `deno serve` Before: invalid URL ```sh $ deno serve --host localhost deno serve: Listening on http://::1:8000/ ``` After: valid URL ```sh $ deno serve --host localhost deno serve: Listening on http://[::1]:8000/ ```
2024-09-06BREAKING(fs): disallow `new Deno.FsFile()` (#25478)Asher Gomez
Towards #22079
2024-09-06chore(net): soft-remove `Deno.serveHttp()` (#25451)Asher Gomez
Towards #22079 --------- Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-09-05fix(ext/node): stub `process.cpuUsage()` (#25462)Yoshiya Hinosawa
closes #23401
2024-09-05BREAKING(fs): remove `Deno.funlock[Sync]()` (#25442)Asher Gomez
Towards #22079 --------- Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
2024-09-05BREAKING(fs): remove `Deno.seek[Sync]()` (#25449)Asher Gomez
Towards #22079
2024-09-05feat(ext/node): add abort helpers, process & streams fix (#25262)Luca Casonato
This commit adds: - `addAbortListener` in `node:events` - `aborted` in `node:util` - `execPath` and `execvArgs` named export from `node:process` - `getDefaultHighWaterMark` from `node:stream` The `execPath` is very hacky - because module namespaces can not have real getters, `execPath` is an object with a `toString()` method that on call returns the actual `execPath`, and replaces the `execPath` binding with the string. This is done so that we don't require the `execPath` permission on startup.
2024-09-05refactor(ext/cron): align error messages (#25300)Ian Bull
Aligns the error messages in the cron extension to be in-line with the Deno style guide. https://github.com/denoland/deno/issues/25269
2024-09-05BREAKING(fs): remove `Deno.File` (#25447)Asher Gomez
Towards #22079
2024-09-05refactor(ext/crypto): align error messages (#25440)Ian Bull
Aligns the error messages in the ext/crypto folder to be in-line with the Deno style guide. https://github.com/denoland/deno/issues/25269
2024-09-05fix(ext/http): do not set localhost to hostname unnecessarily (#24777)Yoshiya Hinosawa
This commit changes when to cause the hostname substition of `0.0.0.0` -> `localhost`. Currently we substitute `localhost` to the hostname on windows before calling `options.onListen`, which prevents the users to do more advanced thing using hostname string like https://github.com/denoland/std/issues/5558. This PR changes it not to substitute it when the user provide `onListen` callback. closes #24776 unblocks https://github.com/denoland/std/issues/5558
2024-09-05fix(ext/node): close upgraded socket when the underlying http connection is ↵Yoshiya Hinosawa
closed (#25387) This change fixes the handling of upgraded socket from `node:http` module. In `op_node_http_fetch_response_upgrade`, we create DuplexStream paired with `hyper::upgrade::Upgraded`. When the connection is closed from the server, the read result from `Upgraded` becomes 0. However because we don't close the paired DuplexStream at that point, the Socket object in JS side keeps alive even after the server closed. That caused the issue #20179 This change fixes it by closing the paired DuplexStream when the `Upgraded` stream returns 0 read result. closes #20179