summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2024-09-12 00:02:50 +0100
committerGitHub <noreply@github.com>2024-09-12 01:02:50 +0200
commit05bd547238006f089f05ef046470e00c94317da6 (patch)
tree733a538213204e212cc52781b8669b3f8b65531c
parent5e0b2aa47314d1b90e33407866b977f9470fdbbb (diff)
feat(ext/node): export more symbols from streams and timers/promises (#25582)
-rw-r--r--ext/node/polyfills/_stream.mjs7
-rw-r--r--ext/node/polyfills/buffer.ts1
-rw-r--r--ext/node/polyfills/internal/buffer.mjs2
-rw-r--r--ext/node/polyfills/internal/streams/state.mjs21
-rw-r--r--ext/node/polyfills/stream.ts21
-rw-r--r--ext/node/polyfills/stream/web.ts22
-rw-r--r--ext/node/polyfills/timers/promises.ts1
7 files changed, 60 insertions, 15 deletions
diff --git a/ext/node/polyfills/_stream.mjs b/ext/node/polyfills/_stream.mjs
index 9d09a6fd7..02640abcd 100644
--- a/ext/node/polyfills/_stream.mjs
+++ b/ext/node/polyfills/_stream.mjs
@@ -5277,6 +5277,7 @@ var require_stream = __commonJS({
Stream._uint8ArrayToBuffer = function _uint8ArrayToBuffer(chunk) {
return Buffer2.from(chunk.buffer, chunk.byteOffset, chunk.byteLength);
};
+ Stream._isArrayBufferView = isArrayBufferView;
},
});
/* End esm.sh bundle */
@@ -5311,11 +5312,15 @@ export const Duplex = CustomStream.Duplex;
export const PassThrough = CustomStream.PassThrough;
export const Stream = CustomStream.Stream;
export const Transform = CustomStream.Transform;
+export const _isArrayBufferView = isArrayBufferView;
export const _isUint8Array = CustomStream._isUint8Array;
export const _uint8ArrayToBuffer = CustomStream._uint8ArrayToBuffer;
export const addAbortSignal = CustomStream.addAbortSignal;
export const pipeline = CustomStream.pipeline;
-export { finished };
+export const isDisturbed = CustomStream.isDisturbed;
+export const isErrored = CustomStream.isErrored;
+export const compose = CustomStream.compose;
+export { destroy, finished, isDestroyed, isReadable, isWritable };
function isWritableStream(object) {
return object instanceof WritableStream;
diff --git a/ext/node/polyfills/buffer.ts b/ext/node/polyfills/buffer.ts
index c5a910cb4..8986cf53d 100644
--- a/ext/node/polyfills/buffer.ts
+++ b/ext/node/polyfills/buffer.ts
@@ -7,6 +7,7 @@ export {
Buffer,
constants,
default,
+ INSPECT_MAX_BYTES,
isAscii,
isUtf8,
kMaxLength,
diff --git a/ext/node/polyfills/internal/buffer.mjs b/ext/node/polyfills/internal/buffer.mjs
index 4964b1956..48b102a77 100644
--- a/ext/node/polyfills/internal/buffer.mjs
+++ b/ext/node/polyfills/internal/buffer.mjs
@@ -65,7 +65,7 @@ const customInspectSymbol =
? Symbol["for"]("nodejs.util.inspect.custom")
: null;
-const INSPECT_MAX_BYTES = 50;
+export const INSPECT_MAX_BYTES = 50;
export const constants = {
MAX_LENGTH: kMaxLength,
diff --git a/ext/node/polyfills/internal/streams/state.mjs b/ext/node/polyfills/internal/streams/state.mjs
index 7bedcb3f3..428492306 100644
--- a/ext/node/polyfills/internal/streams/state.mjs
+++ b/ext/node/polyfills/internal/streams/state.mjs
@@ -2,9 +2,24 @@
// Copyright Joyent and Node contributors. All rights reserved. MIT license.
// deno-lint-ignore-file
+// TODO(bartlomieju): this should be 64?
+let defaultHighWaterMarkBytes = 16 * 1024;
+let defaultHighWaterMarkObjectMode = 16;
+
function getDefaultHighWaterMark(objectMode) {
- return objectMode ? 16 : 16 * 1024;
+ return objectMode
+ ? defaultHighWaterMarkObjectMode
+ : defaultHighWaterMarkBytes;
+}
+
+function setDefaultHighWaterMark(objectMode, value) {
+ validateInteger(value, "value", 0);
+ if (objectMode) {
+ defaultHighWaterMarkObjectMode = value;
+ } else {
+ defaultHighWaterMarkBytes = value;
+ }
}
-export default { getDefaultHighWaterMark };
-export { getDefaultHighWaterMark };
+export default { getDefaultHighWaterMark, setDefaultHighWaterMark };
+export { getDefaultHighWaterMark, setDefaultHighWaterMark };
diff --git a/ext/node/polyfills/stream.ts b/ext/node/polyfills/stream.ts
index 618e5ba11..96262428f 100644
--- a/ext/node/polyfills/stream.ts
+++ b/ext/node/polyfills/stream.ts
@@ -4,14 +4,19 @@
// @deno-types="./_stream.d.ts"
import {
+ _isArrayBufferView,
_isUint8Array,
_uint8ArrayToBuffer,
addAbortSignal,
- // compose,
- // destroy,
+ compose,
+ destroy,
Duplex,
finished,
- // isDisturbed,
+ isDestroyed,
+ isDisturbed,
+ isErrored,
+ isReadable,
+ isWritable,
PassThrough,
pipeline,
Readable,
@@ -21,18 +26,28 @@ import {
} from "ext:deno_node/_stream.mjs";
import {
getDefaultHighWaterMark,
+ setDefaultHighWaterMark,
} from "ext:deno_node/internal/streams/state.mjs";
export {
+ _isArrayBufferView,
_isUint8Array,
_uint8ArrayToBuffer,
addAbortSignal,
+ compose,
+ destroy,
Duplex,
finished,
getDefaultHighWaterMark,
+ isDestroyed,
+ isDisturbed,
+ isErrored,
+ isReadable,
+ isWritable,
PassThrough,
pipeline,
Readable,
+ setDefaultHighWaterMark,
Stream,
Transform,
Writable,
diff --git a/ext/node/polyfills/stream/web.ts b/ext/node/polyfills/stream/web.ts
index 5c6127ca6..9cb361f86 100644
--- a/ext/node/polyfills/stream/web.ts
+++ b/ext/node/polyfills/stream/web.ts
@@ -19,10 +19,16 @@ import {
TextDecoderStream,
TextEncoderStream,
} from "ext:deno_web/08_text_encoding.js";
+import {
+ CompressionStream,
+ DecompressionStream,
+} from "ext:deno_web/14_compression.js";
export {
ByteLengthQueuingStrategy,
+ CompressionStream,
CountQueuingStrategy,
+ DecompressionStream,
ReadableByteStreamController,
ReadableStream,
ReadableStreamBYOBReader,
@@ -39,19 +45,21 @@ export {
};
export default {
+ ByteLengthQueuingStrategy,
+ CompressionStream,
+ CountQueuingStrategy,
+ DecompressionStream,
+ ReadableByteStreamController,
ReadableStream,
ReadableStreamBYOBReader,
ReadableStreamBYOBRequest,
- ReadableStreamDefaultReader,
- ReadableByteStreamController,
ReadableStreamDefaultController,
+ ReadableStreamDefaultReader,
+ TextDecoderStream,
+ TextEncoderStream,
TransformStream,
TransformStreamDefaultController,
WritableStream,
- WritableStreamDefaultWriter,
WritableStreamDefaultController,
- ByteLengthQueuingStrategy,
- CountQueuingStrategy,
- TextEncoderStream,
- TextDecoderStream,
+ WritableStreamDefaultWriter,
};
diff --git a/ext/node/polyfills/timers/promises.ts b/ext/node/polyfills/timers/promises.ts
index 2ab2384dc..68bc05942 100644
--- a/ext/node/polyfills/timers/promises.ts
+++ b/ext/node/polyfills/timers/promises.ts
@@ -17,4 +17,5 @@ export default {
setTimeout,
setImmediate,
setInterval,
+ scheduler,
};