summaryrefslogtreecommitdiff
path: root/ext
AgeCommit message (Collapse)Author
2024-01-04fix(ext/node): UdpSocket ref and unref (#21777)Divy Srivastava
2024-01-03fix(node/zlib): accept dataview and buffer in zlib bindings (#21756)Jovi De Croock
Fixes #20516 Follow up to #21747 and #21746 This tackles the last point of #20516 where certain inputs weren't accepted in the other zlib methods This adds the `toU8` conversion of `_brotli` to `_zlib.mjs`, when we create the ZLibBuffer, we'll sanitize the input. I noticed that the async had no handler for `string` input so I added that as well.
2024-01-02fix(ext/node): use node:process in _streams.mjs (#21755)Divy Srivastava
Fixes https://github.com/denoland/deno/issues/21644 `next build` works: ``` ~/gh/deno/target/debug/deno run -A --unstable-byonm ./node_modules/.bin/next build Warning: Not implemented: process.on("rejectionHandled") ▲ Next.js 14.0.4 ✓ Creating an optimized production build ✓ Compiled successfully ✓ Linting and checking validity of types Collecting page data ..Warning: Not implemented: process.on("rejectionHandled") Warning: Not implemented: process.on("rejectionHandled") Warning: Not implemented: process.on("rejectionHandled") Warning: Not implemented: process.on("rejectionHandled") Warning: Not implemented: process.on("rejectionHandled") ✓ Collecting page data Generating static pages (0/5) [ ]Warning: Not implemented: process.on("rejectionHandled") Warning: Not implemented: process.on("rejectionHandled") Warning: Not implemented: process.on("rejectionHandled") Warning: Not implemented: process.on("rejectionHandled") Warning: Not implemented: process.on("rejectionHandled") ✓ Generating static pages (5/5) ✓ Collecting build traces ✓ Finalizing page optimization Route (app) Size First Load JS ┌ ○ / 5.32 kB 87.4 kB └ ○ /_not-found 875 B 83 kB + First Load JS shared by all 82.1 kB ├ chunks/938-5e061ba0d46125b1.js 26.8 kB ├ chunks/fd9d1056-735d320b4b8745cb.js 53.5 kB ├ chunks/main-app-2945f337109ea73c.js 220 B └ chunks/webpack-e3c6517d4ab8d680.js 1.68 kB ○ (Static) prerendered as static content ```
2024-01-02fix(ext/node): implement os.machine (#21751)Divy Srivastava
2024-01-02fix(ext/http): use arraybuffer binaryType for server websocket (#21741)Divy Srivastava
Ref https://github.com/denoland/deno/issues/15340#issuecomment-1872353134
2024-01-02fix(ext/node): querystring stringify without encode callback (#21740)Divy Srivastava
Fixes https://github.com/denoland/deno/issues/21734 Changes: - Use default encode when options do not provide a encode callback. - Remove internal TS for `node:querystring`. Its not helping catching bugs like this because of invalid type assumptions and use of `any`, more of a maintenance burden.
2024-01-01chore: update to Rust 1.75 (#21731)林炳权
2024-01-01chore: update copyright to 2024 (#21753)David Sherret
2023-12-31fix(http_client): Fix Deno.createHttpClient to accept poolIdleTimeout ↵Raashid Anwar
parameter (#21603) Fixed the bug `Deno.createHttpClient` to accept `poolIdleTimeout` parameter. Fixes https://github.com/denoland/deno/issues/21546
2023-12-31fix(node/zlib): consistently return buffer (#21747)Jovi De Croock
This fixes point 3 of https://github.com/denoland/deno/issues/20516 This PR creates consistency between the sync and async versions of the brotli compress where we will always return a buffer like Node.
2023-12-31fix(node/zlib): cast Dataview and Buffer to uint8 (#21746)Jovi De Croock
This fixes point 2 of #20516 This adds a conversion from Dataview/Buffer by returning `obj.buffer` which can be converted to a `UInt8Array`. Question: Regarding point 4 of the mentioned issue would it be appropriate to copy the toU8 helper to the `zlib.mjs` methods?
2023-12-30fix(ext/node): add process.abort() (#21742)Divy Srivastava
2023-12-30chore(runtime): internalize pipe fd for ext/node (#21570)Divy Srivastava
Signed-off-by: Divy Srivastava <dj.srivastava23@gmail.com>
2023-12-29fix(node): support nested tests in "node:test" (#21717)Bartek Iwańczuk
Closes https://github.com/denoland/deno/issues/21679
2023-12-28chore: update deno_core to 0.240.0 (#21726)Bartek Iwańczuk
2023-12-28fix(node): Implement os.cpus() (#21697)Divy Srivastava
Fixes https://github.com/denoland/deno/issues/21666 Zero added dependency and tries to match the libuv implementation
2023-12-27refactor: simplify hyper, http, h2 deps (#21715)Bartek Iwańczuk
Main change is that: - "hyper" has been renamed to "hyper_v014" to signal that it's legacy - "hyper1" has been renamed to "hyper" and should be the default
2023-12-27refactor: finish test_util server cleanup, simplify dependencies (#21714)Bartek Iwańczuk
Closes https://github.com/denoland/deno/issues/21578
2023-12-27fix(ext/node): Implement `aes-192-ecb` and `aes-256-ecb` (#21710)Lino Le Van
2023-12-27perf: remove opAsync (#21690)Matt Mastracci
`opAsync` requires a lookup by name on each async call. This is a mechanical translation of all opAsync calls to ensureFastOps. The `opAsync` API on Deno.core will be removed at a later time.
2023-12-26refactor: fastwebsockets renames (#21707)Bartek Iwańczuk
We now use only a single version of "fastwebsockets" crate, so we no longer need to have an alias.
2023-12-26refactor: change cli/ to use hyper 1.1 (#21705)Bartek Iwańczuk
2023-12-26refactor: migrate ext/websocket to hyper 1.1 (#21699)Bartek Iwańczuk
2023-12-25fix(ext/node): add ClientRequest#setNoDelay (#21694)Divy Srivastava
Fixes https://github.com/denoland/deno/issues/18316
2023-12-24refactor: use hyper 1.0 in grpc test server (#21584)Bartek Iwańczuk
Ref https://github.com/denoland/deno/issues/21578
2023-12-24chore: ensure that each op provided to ensureFastOps is only used once (#21689)Matt Mastracci
When we migrate to op-import-per-extension, we will want to ensure that ops have one and only one place where they are imported. This tackles the ops that are imported via `ensureFastOps`, but does not yet tackle direct `ops` imports. Landing ahead of https://github.com/denoland/deno_core/pull/393
2023-12-23chore(ext/node): use BufView natively in http2 (#21688)Matt Mastracci
Node HTTP/2 was using the default h2 `Bytes` datatype when we can be making using of `BufView` like we do in `Deno.serve`. `fetch` and `Deno.serverHttp` can't make use of `BufView` because they are using `reqwest` which is stuck on hyper 0.x at this time.
2023-12-23feat(unstable): only allow http2 for kv remote backend (#21616)Heyang Zhou
2023-12-22chore: update ext/http to hyper 1.0.1 and http 1.0 (#21588)Bartek Iwańczuk
Closes https://github.com/denoland/deno/issues/21583.
2023-12-22fix(unstable): kv watch should stop when db is closed (#21665)Heyang Zhou
Fixes #21634.
2023-12-21chore: forward v1.39.1 commit to main (#21667) (#21671)Bartek Iwańczuk
Co-authored-by: denobot <33910674+denobot@users.noreply.github.com> Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
2023-12-20fix(node): child_process kill cancel pending IPC reads (#21647)Divy Srivastava
2023-12-20fix(node): add crypto.pseudoRandomBytes (#21649)Divy Srivastava
2023-12-19fix(node): child_process IPC on Windows (#21597)Divy Srivastava
This PR implements the child_process IPC pipe between parent and child. The implementation uses Windows named pipes created by parent and passes the inheritable file handle to the child. I've also replace parts of the initial implementation which passed the raw parent fd to JS with resource ids instead. This way no file handle is exposed to the JS land (both parent and child). `IpcJsonStreamResource` can stream upto 800MB/s of JSON data on Win 11 AMD Ryzen 7 16GB (without `memchr` vectorization)
2023-12-19fix(console): inspect for `{Set,Map}Iterator` and `Weak{Set,Map}` (#21554)Kenta Moriuchi
2023-12-15refactor: setup child process pipe in Rust (#21579)Divy Srivastava
Avoid passing the fd into JS and back into Rust. Instead we setup the child's end of the pipe directly using a special Rust op.
2023-12-15fix(net): remove unstable check for unix socket listen (#21592)Divy Srivastava
Fixes https://github.com/denoland/deno/issues/21587 It seems this was missed in https://github.com/denoland/deno/pull/21463. cc @bartlomieju
2023-12-14refactor(ext/http): fork fly_accept_encodings crate (#21586)Bartek Iwańczuk
Blocks update to Hyper 1.0. It's a really small library, no need to pull it as a dependency. Blocker for #21583
2023-12-14fix(node): support resolving a package.json import to a builtin node module ↵David Sherret
(#21576) Closes https://github.com/denoland/deno/issues/21501
2023-12-14chore(node): remove process.on("disconnect") not implemented warning (#21569)Divy Srivastava
2023-12-14fix(node): return false from vm.isContext (#21568)Divy Srivastava
https://github.com/denoland/deno/issues/20851#issuecomment-1779226106 for `jsdom`
2023-12-131.39.0 (#21560)denobot
Bumped versions for 1.39.0 Please ensure: - [x] Target branch is correct (`vX.XX` if a patch release, `main` if minor) - [x] Crate versions are bumped correctly - [x] deno_std version is incremented in the code (see `cli/deno_std.rs`) - [x] Releases.md is updated correctly (think relevancy and remove reverts) To make edits to this PR: ```shell git fetch upstream release_1_39.0 && git checkout -b release_1_39.0 upstream/release_1_39.0 ``` cc @mmastrac --------- Co-authored-by: mmastrac <mmastrac@users.noreply.github.com> Co-authored-by: Matt Mastracci <matthew@mastracci.com>
2023-12-13fix(zlib): handle no flush flag in handle_.write (#21432)Divy Srivastava
Fixes https://github.com/denoland/deno/issues/21096
2023-12-14feat(unstable): append commit versionstamp to key (#21556)Heyang Zhou
2023-12-13fix(websockets): server socket field initialization (#21433)Divy Srivastava
2023-12-13fix: implement child_process IPC (#21490)Divy Srivastava
This PR implements the Node child_process IPC functionality in Deno on Unix systems. For `fd > 2` a duplex unix pipe is set up between the parent and child processes. Currently implements data passing via the channel in the JSON serialization format.
2023-12-12feat(ext/kv) add backoffSchedule to enqueue (#21474)Igor Zinkovsky
Also reduces the time to run `kv_queue_undelivered_test.ts` test from 100 seconds down to 3 seconds. closes #21437
2023-12-12perf(ext/ffi): switch from middleware to tasks (#21239)Matt Mastracci
Deno-side changes for https://github.com/denoland/deno_core/pull/350 --------- Co-authored-by: Aapo Alasuutari <aapo.alasuutari@gmail.com>
2023-12-11perf(ext/napi): port NAPI to v8 tasks (#21406)Matt Mastracci
Part 2 of removing middleware. This is somewhat awkward because `V8CrossThreadTaskSpawner` requires tasks to be `Send`, but NAPI makes heavy use of `!Send` pointers. In addition, Rust causes a closure to be `!Send` if you pull a `!Send` value out of a struct. --------- Signed-off-by: Matt Mastracci <matthew@mastracci.com> Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2023-12-11fix: allow reserved word 'mod' in exports (#21537)Ryan Dahl
This problem occurred trying to load tensorflow.js ``` > import * as tf from 'npm:@tensorflow/tfjs'; Uncaught SyntaxError: Identifier 'mod' has already been declared at file:///Users/ry/Library/Caches/deno/npm/registry.npmjs.org/@tensorflow/tfjs/4.14.0/dist/tf.node.js:167:14 at async <anonymous>:1:33 ```