ud2
86e0292733
perf(ext/node): improve Buffer.from(buffer)
( #24352 )
...
Benchmark code from #24341 .
```shellsession
$ deno run --allow-hrtime bench.mjs
6479.111583
$ target/release/deno run --allow-hrtime bench.mjs
962.753875
$ node bench.mjs
855.174875
```
2024-06-26 17:11:56 -04:00
David Sherret
77ba0019e7
Revert "perf: improve Buffer.from(buf) by 29x" ( #24351 )
...
https://github.com/denoland/deno/pull/24341#discussion_r1655247367
Reverts denoland/deno#24341
2024-06-26 16:23:09 -04:00
Divy Srivastava
2549e5154c
perf: optimize Buffer.from("base64") for forgiving-base64 conforming input ( #24346 )
2024-06-26 06:24:58 -07:00
Divy Srivastava
6da87450ed
perf: improve Buffer.from(buf) by 29x ( #24341 )
2024-06-26 06:24:48 -07:00
Bartek Iwańczuk
09cc473f3b
fix(node): add missing readline/promises module ( #24336 )
...
Fixes https://github.com/jsr-io/jsr-npm/issues/91
2024-06-25 19:15:54 -04:00
snek
700cd200c1
feat: add module.parent ( #24333 )
...
This field is deprecated but still used by the ecosystem, so let's just
support it.
2024-06-25 11:17:35 -07:00
Satya Rohith
13aa1d70e9
fix(ext/node): ignore stream error during enqueue ( #24243 )
2024-06-25 17:02:40 +05:30
Luca Casonato
1e8a6b94b1
fix(ext/node): rewrite crypto.Hash ( #24302 )
...
Changes in this PR:
- Added new fixed size hash algorithms (blake2b512, blake2s256,
sha512-224, sha512-256, sha3-224, sha3-256, sha3-384, sha3-512, sm3)
- Added variable size hash algorithms (the concept), with the algorithms
shake128 and shake256
- Use cppgc instead of resources for the hasher
- Enable Node's crypto.Hash tests and fix found bugs
2024-06-24 11:47:12 +02:00
Asher Gomez
ff53506107
fix(ext/node): use primordials in ext/node/polyfills/_fs/_fs_dir.ts
( #24319 )
...
Towards #24236
---------
Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
Co-authored-by: Satya Rohith <me@satyarohith.com>
2024-06-24 06:22:55 +00:00
Asher Gomez
0833a1617c
fix(ext/node): use primordials in ext/node/polyfills/_fs/_fs_cp.js
( #24320 )
...
Towards #24236
2024-06-24 16:17:26 +10:00
Asher Gomez
dc4a88b7a6
fix(ext/node): use primordials in ext/node/polyfills/timers.ts
( #24311 )
...
Towards #24236
2024-06-24 15:50:02 +10:00
Asher Gomez
1c7ae83ca1
fix(ext/node): use primordials in ext/node/polyfills/testing.ts
( #24310 )
...
Towards #24236
2024-06-24 15:49:32 +10:00
Luca Casonato
973d186e8f
chore: use sha1 crate, not sha-1 ( #24306 )
2024-06-23 16:39:14 +02:00
Divy Srivastava
416df1e895
fix(ext/node): add ServerResponse#appendHeader ( #24216 )
2024-06-21 19:21:59 +05:30
Divy Srivastava
fc197a7ac0
Revert #[cppgc] &mut T
usage ( #24304 )
2024-06-21 16:12:44 +05:30
Luca Casonato
e6756c3e66
fix(ext/node): don't panic on invalid utf-8 in pem ( #24303 )
2024-06-21 10:25:07 +00:00
Divy Srivastava
5683ca4070
chore(ext/node): cleanup zlib state ops ( #24300 )
2024-06-21 13:11:52 +05:30
Divy Srivastava
496428b82e
chore(ext/node): cleanup net blocklist ops ( #24299 )
2024-06-21 06:10:01 +00:00
Asher Gomez
9168078669
fix(ext/node): use primordials in ext/node/polyfills/string_decoder.ts
( #24296 )
2024-06-21 15:52:20 +10:00
Divy Srivastava
b4939f3379
fix: upgrade deno_core to 0.291.0 ( #24297 )
2024-06-21 10:49:39 +05:30
ud2
88e3f465d3
refactor(ext): remove use of brotli::ffi
( #24214 )
2024-06-20 20:44:24 +05:30
Asher Gomez
6ab143335a
fix(ext/node): use primordials in ext/node/polyfills/_brotli.js
( #24235 )
...
Towards #24236
2024-06-20 17:44:23 +10:00
Asher Gomez
510db0a86e
fix(ext/node): use primordials in ext/node/polyfills/_process/
( #24282 )
2024-06-20 17:26:34 +10:00
Asher Gomez
28ee0a5bdd
fix(ext/node): use primordials in ext/node/polyfills/_http_common.ts
( #24281 )
2024-06-20 17:26:14 +10:00
Divy Srivastava
0b65d027a1
fix(ext/node): use cppgc for node:zlib ( #24267 )
2024-06-20 10:31:53 +05:30
snek
293a36f98d
fix: more node-api fixes ( #24220 )
...
- add fallback impls of external string apis which always copy. after
upstream changes to rusty_v8 we can support non-copying api as well.
- `napi_get_buffer_data` needs to work on all TypedArray instances.
- Fixes: https://github.com/denoland/deno/issues/24209
- `target_defaults.default_configuration` is used by some modules to
find the corresponding node file from node-gyp
- `node_api_get_module_filename` expects the filename to be a `file:`
url.
2024-06-19 11:33:46 -07:00
denobot
6c6ee02dfd
chore: forward v1.44.4 release commit to main ( #24271 )
...
This is the release commit being forwarded back to main for 1.44.4
Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
2024-06-19 20:29:53 +02:00
Bartek Iwańczuk
b94707af7d
Revert "chore: upgrade to reqwest 0.12.4 and rustls 0.22 ( #24056 )" ( #24262 )
...
This reverts commit fb31eaa9ca
.
Reverting because users reported spurious errors when downloading
dependencies - https://github.com/denoland/deno/issues/24260 .
Closes https://github.com/denoland/deno/issues/24260
2024-06-19 16:09:17 +02:00
Asher Gomez
f4eead61eb
fix(ext/node): use primordials in ext/node/polyfills/_utils.ts
( #24253 )
2024-06-19 18:29:26 +10:00
Divy Srivastava
209b286813
fix(ext/node): Add Dirent.path and Dirent.parentPath ( #24257 )
2024-06-19 12:51:01 +05:30
denobot
1d6b775f81
chore: forward v1.44.3 release commit to main ( #24256 )
...
This is the release commit being forwarded back to main for 1.44.3
Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-06-19 03:17:32 +02:00
David Sherret
cba212b9c6
perf(node): ensure cjs wrapper module has deterministic output ( #24248 )
2024-06-18 17:24:18 -04:00
Divy Srivastava
10ac3bb091
fix(ext/node): make process.versions own property ( #24240 )
2024-06-18 16:33:03 +05:30
Satya Rohith
8c4b33db0d
feat(ext/node): add BlockList & SocketAddress classes ( #24229 )
...
Closes https://github.com/denoland/deno/issues/24059
2024-06-18 10:46:13 +00:00
Bartek Iwańczuk
78b12a43b3
fix(ext/node): better support for node:diagnostics_channel
module ( #24088 )
...
Closes https://github.com/denoland/deno/issues/24060
2024-06-15 00:07:02 +02:00
Satya Rohith
0f48313565
chore: upgrade to rust 1.79 ( #24207 )
2024-06-14 17:10:57 +05:30
Divy Srivastava
e19ee6eecc
fix(ext/node): server.close()
does graceful shutdown ( #24184 )
2024-06-14 06:38:50 +05:30
Bartek Iwańczuk
fb31eaa9ca
chore: upgrade to reqwest 0.12.4 and rustls 0.22 ( #24056 )
...
This commit updates Deno to use `reqwest` at 0.12.4
and `rustls` at 0.22. Other related crates were updated
as well to match versions accepted by `reqwest` and `rustls`.
Note: we are not using the latest available `rustls` yet,
but this upgrade was non-trivial already, so a bump to
0.23 for `rustls` will be done in a separate commit.
Closes #23370
---------
Signed-off-by: Ryan Dahl <ry@tinyclouds.org>
Signed-off-by: Bartek Iwańczuk <biwanczuk@gmail.com>
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2024-06-13 22:41:26 +02:00
Divy Srivastava
5bcb46cacf
chore(ext/node): remove old vm ops ( #24187 )
...
Unused; before the recent rewrite of node:vm
2024-06-13 09:19:33 +05:30
denobot
efb2085b61
chore: forward v1.44.2 release commit to main ( #24194 )
...
Co-authored-by: nathanwhit <nathanwhit@users.noreply.github.com>
2024-06-13 01:57:22 +00:00
Divy Srivastava
1d290ccc2a
fix(ext/node): fix vm memory usage and context initialization ( #23976 )
...
Fixes https://github.com/denoland/deno/issues/22441
Fixes https://github.com/denoland/deno/issues/23913
Fixes https://github.com/denoland/deno/issues/23852
Fixes https://github.com/denoland/deno/issues/23917
2024-06-12 22:32:54 +05:30
Divy Srivastava
17e1219250
chore: upgrade deno_core ( #24146 )
...
With changes for https://github.com/denoland/deno_core/pull/778
2024-06-11 15:12:38 +02:00
Bartek Iwańczuk
6a356aff13
chore: sync up Node.js test files for v20.11.1 ( #24066 )
...
Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com>
2024-06-11 11:41:44 +00:00
Luca Casonato
3d41b486da
fix(ext/node): ServerResponse header array handling ( #24149 )
...
Previously res.setHeader("foo", ["bar", "baz"]) added a single header
with a value of `bar,baz`. Really this should add two separate headers.
This is visible in `set-cookie` for example.
2024-06-11 13:39:44 +03:00
snek
e3b2ee183b
fix: Rewrite Node-API ( #24101 )
...
Phase 1 node-api rewrite
2024-06-10 16:20:44 +00:00
Satya Rohith
4fd3d5a86e
fix(ext/node): send data frame with end_stream flag on _final call ( #24147 )
2024-06-10 16:30:56 +02:00
David Sherret
31154ff958
fix(check): attempt to resolve types from pkg before @types
pkg ( #24152 )
...
I've been meaning to fix this for ages, but I finally ran into it here:
https://github.com/dsherret/ts-ast-viewer/actions/runs/9432038675/job/25981325408
We need to resolve the `@types` package as a fallback instead of eagerly
resolving it.
2024-06-08 20:05:28 -04:00
Luca Casonato
ed13d36e4b
fix(ext/node): add crypto and zlib constants ( #24151 )
2024-06-09 02:02:47 +02:00
Bartek Iwańczuk
3f3bb6a829
fix(ext/net): make node:http2 work with DENO_FUTURE=1 ( #24144 )
2024-06-09 01:54:26 +02:00
Luca Casonato
c1f23c5788
fix(ext/node): lossy UTF-8 read node_modules files ( #24140 )
...
Previously various reads of files in `node_modules` would error on
invalid UTF-8. These were cases involving:
- reading package.json from Rust
- reading package.json from JS
- reading CommonJS files from JS
- reading CommonJS files from Rust (for ESM translation)
- reading ESM files from Rust
2024-06-08 18:36:13 +02:00