@openclaw/discord 2026.9.1 → 2026.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/action-runtime-api.js +1 -1
- package/dist/{activities-api-E-segZn6.js → activities-api-CTcGq3Hf.js} +4 -4
- package/dist/activities-api.js +1 -1
- package/dist/{allow-list-C2JuH-R0.js → allow-list-DBTtR2dz.js} +3 -29
- package/dist/api.js +12 -12
- package/dist/{approval-handler.runtime-CW5k3mSa.js → approval-handler.runtime-DUSe5fyH.js} +5 -5
- package/dist/{audit-B9rydv5a.js → audit-DpPfwoJM.js} +4 -4
- package/dist/{channel-D93LnbTE.js → channel-BHajPgwR.js} +16 -16
- package/dist/{channel-actions.runtime-DMFv4doE.js → channel-actions.runtime-DS8pXo0S.js} +29 -32
- package/dist/channel-plugin-api.js +1 -1
- package/dist/{channel.setup-DTL7kPOM.js → channel.setup-BWmMe1tT.js} +3 -3
- package/dist/command-owners-D78sAoOz.js +10 -0
- package/dist/{components-DmXYIQ26.js → components-BimX47Mq.js} +1 -1
- package/dist/{conversation-binding-route-24afmvEC.js → conversation-binding-route-DuR5NGIx.js} +1 -1
- package/dist/{directory-config-BD4YL7wT.js → directory-config-CD2v2Szs.js} +1 -1
- package/dist/directory-contract-api.js +1 -1
- package/dist/{directory-live-BrFVc1Ds.js → directory-live-DaJzWJ2N.js} +2 -2
- package/dist/{doctor-BUB41_lr.js → doctor-D4HH1inA.js} +6 -3
- package/dist/doctor-contract-api.js +28 -26
- package/dist/{handle-action.guild-admin-B0egstYq.js → handle-action.guild-admin-4We6wWQU.js} +6 -3
- package/dist/index.js +1 -1
- package/dist/{ingress-identity-BCzfPPYM.js → ingress-identity-XNmW-mZS.js} +1 -1
- package/dist/{message-handler-Qdw9c0j4.js → message-handler-DhgBabyU.js} +52 -65
- package/dist/{message-handler.preflight-Dxi2yBfR.js → message-handler.preflight-oZ7dQCd0.js} +12 -12
- package/dist/{message-handler.process-BYDjtxZJ.js → message-handler.process-BzCYf1pa.js} +14 -14
- package/dist/{message-text-BRVqYm-t.js → message-text-DK4NnBg-.js} +1 -1
- package/dist/{outbound-adapter-DEhthWTk.js → outbound-adapter-CtggmGh9.js} +6 -6
- package/dist/{outbound-components-DehyxvA4.js → outbound-components-Dn8SJWMS.js} +3 -3
- package/dist/{outbound-session-route-BFGRF9fE.js → outbound-session-route-Q_HEusBQ.js} +5 -6
- package/dist/{owner-access-yc1sX7Gx.js → owner-access-Cp8r6Ipf.js} +3 -2
- package/dist/{pluralkit-XmmAHoV6.js → pluralkit-BY75YcK0.js} +1 -1
- package/dist/{provider-session.runtime-BA2BPyZ4.js → provider-session.runtime-BL2lHBH7.js} +3 -3
- package/dist/{provider-DuDtKbF8.js → provider-uKmmrDM4.js} +28 -28
- package/dist/provider.runtime-C-IkWF2w.js +2 -0
- package/dist/{realtime-session.runtime-DgSbX6ay.js → realtime-session.runtime-CGYm1t_0.js} +705 -295
- package/dist/{resolve-allowlist-common-BJ5UZNNT.js → resolve-allowlist-common-sKIKy-cF.js} +1 -1
- package/dist/{resolve-channels-CYseD5Uw.js → resolve-channels-CoiMlWy0.js} +3 -3
- package/dist/{resolve-users-DrmhDrqm.js → resolve-users-DJpiokfW.js} +2 -2
- package/dist/{retry-BNCxiyyR.js → retry-DQt1zDgH.js} +238 -184
- package/dist/{runtime-DB7Fb6AU.js → runtime-BHsdEdr5.js} +1 -1
- package/dist/{runtime-BbWNtfyq.js → runtime-Ghtfh5ZA.js} +32 -24
- package/dist/runtime-api.js +18 -18
- package/dist/{send-BnTEIeLE.js → send-CZeWKUiA.js} +3 -3
- package/dist/{send.components-BWVEcjRP.js → send.components-BG5IDABj.js} +4 -4
- package/dist/{send.outbound-b5xwHTlL.js → send.outbound-DHuFUL6W.js} +10 -44
- package/dist/{send.shared-5vxBTagO.js → send.shared-B0n_fWzu.js} +62 -141
- package/dist/{sender-identity-Dt0imZyY.js → sender-identity-B8Ncfi63.js} +1 -1
- package/dist/setup-plugin-api.js +1 -1
- package/dist/{shared-BSJWHEMA.js → shared-C3dKun_X.js} +6 -3
- package/dist/{subagent-hooks-IzQKX4RQ.js → subagent-hooks-ZoQXEI1E.js} +2 -2
- package/dist/subagent-hooks-api.js +1 -1
- package/dist/{system-events-BOiDS8b3.js → system-events-DFF_awl7.js} +2 -2
- package/dist/{target-resolver-BVI8xSSC.js → target-resolver-DLtHDwMK.js} +2 -2
- package/dist/targets-BObRyaKX.js +3 -0
- package/dist/{thread-bindings-D7mcaXQC.js → thread-bindings-DKvsNjQR.js} +5 -5
- package/dist/{thread-bindings.manager-B1oySiVc.js → thread-bindings.manager-pbbRT5gb.js} +5 -5
- package/dist/{thread-bindings.session-updates-CC7HoQvt.js → thread-bindings.session-updates-t6jeFB1-.js} +1 -1
- package/dist/{thread-bindings.state-D8OMdk4O.js → thread-bindings.state-DtgOqsbX.js} +34 -1
- package/dist/{threading-OQnL-0Zx.js → threading-BCx49X-6.js} +3 -3
- package/dist/{transcripts-source-D8lH7AkN.js → transcripts-source-Dc6Nnli5.js} +48 -5
- package/dist/transcripts-source-api.js +1 -1
- package/dist/{typing-C9q0AQMb.js → typing-CuopV-Hi.js} +1 -1
- package/dist/{voice-runtime-Dfhjh1tV.js → voice-runtime-BQnILUbG.js} +82 -35
- package/node_modules/@discordjs/voice/node_modules/@types/node/README.md +1 -1
- package/node_modules/@discordjs/voice/node_modules/@types/node/buffer.buffer.d.ts +5 -5
- package/node_modules/@discordjs/voice/node_modules/@types/node/crypto.d.ts +2 -2
- package/node_modules/@discordjs/voice/node_modules/@types/node/http.d.ts +16 -0
- package/node_modules/@discordjs/voice/node_modules/@types/node/http2.d.ts +10 -2
- package/node_modules/@discordjs/voice/node_modules/@types/node/package.json +2 -2
- package/node_modules/@discordjs/voice/node_modules/@types/node/process.d.ts +52 -0
- package/node_modules/@discordjs/voice/node_modules/@types/node/quic.d.ts +210 -28
- package/node_modules/@discordjs/voice/node_modules/@types/node/sqlite.d.ts +6 -2
- package/node_modules/@discordjs/voice/node_modules/@types/node/test.d.ts +36 -0
- package/node_modules/typebox/build/format/json_pointer.d.mts +2 -2
- package/node_modules/typebox/build/format/json_pointer.mjs +2 -2
- package/node_modules/typebox/build/format/json_pointer_uri_fragment.d.mts +2 -2
- package/node_modules/typebox/build/format/json_pointer_uri_fragment.mjs +2 -2
- package/node_modules/typebox/build/format/relative_json_pointer.d.mts +2 -2
- package/node_modules/typebox/build/format/relative_json_pointer.mjs +2 -2
- package/node_modules/typebox/build/system/memory/assign.mjs +2 -1
- package/node_modules/typebox/build/system/memory/create.mjs +3 -4
- package/node_modules/typebox/build/system/memory/discard.mjs +2 -2
- package/node_modules/typebox/build/system/memory/freeze.d.mts +4 -0
- package/node_modules/typebox/build/system/memory/freeze.mjs +6 -0
- package/node_modules/typebox/build/system/memory/update.mjs +3 -2
- package/node_modules/typebox/package.json +1 -1
- package/node_modules/undici/docs/docs/api/Client.md +4 -0
- package/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +3 -2
- package/node_modules/undici/docs/docs/api/EventSource.md +4 -0
- package/node_modules/undici/docs/docs/api/Interceptors.md +7 -3
- package/node_modules/undici/docs/docs/api/Socks5ProxyAgent.md +7 -1
- package/node_modules/undici/lib/cache/memory-cache-store.js +2 -2
- package/node_modules/undici/lib/core/symbols.js +2 -0
- package/node_modules/undici/lib/dispatcher/agent.js +7 -2
- package/node_modules/undici/lib/dispatcher/balanced-pool.js +7 -4
- package/node_modules/undici/lib/dispatcher/client-h1.js +12 -4
- package/node_modules/undici/lib/dispatcher/client-h2.js +43 -3
- package/node_modules/undici/lib/dispatcher/client.js +3 -2
- package/node_modules/undici/lib/dispatcher/dispatcher-base.js +13 -1
- package/node_modules/undici/lib/dispatcher/dispatcher.js +15 -1
- package/node_modules/undici/lib/dispatcher/dispatcher1-wrapper.js +3 -0
- package/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +10 -3
- package/node_modules/undici/lib/dispatcher/proxy-agent.js +18 -1
- package/node_modules/undici/lib/dispatcher/retry-agent.js +3 -0
- package/node_modules/undici/lib/dispatcher/round-robin-pool.js +1 -1
- package/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js +91 -21
- package/node_modules/undici/lib/handler/cache-handler.js +29 -5
- package/node_modules/undici/lib/handler/decorator-handler.js +7 -1
- package/node_modules/undici/lib/handler/deduplication-handler.js +12 -6
- package/node_modules/undici/lib/handler/redirect-handler.js +21 -4
- package/node_modules/undici/lib/handler/retry-handler.js +148 -30
- package/node_modules/undici/lib/interceptor/cache.js +65 -12
- package/node_modules/undici/lib/interceptor/decompress.js +115 -13
- package/node_modules/undici/lib/interceptor/deduplicate.js +5 -4
- package/node_modules/undici/lib/interceptor/dns.js +7 -0
- package/node_modules/undici/lib/interceptor/dump.js +10 -23
- package/node_modules/undici/lib/mock/mock-agent.js +13 -1
- package/node_modules/undici/lib/mock/mock-utils.js +11 -10
- package/node_modules/undici/lib/util/cache.js +45 -3
- package/node_modules/undici/lib/web/cookies/parse.js +150 -147
- package/node_modules/undici/lib/web/eventsource/eventsource-stream.js +28 -1
- package/node_modules/undici/lib/web/eventsource/eventsource.js +13 -3
- package/node_modules/undici/lib/web/fetch/index.js +6 -0
- package/node_modules/undici/lib/web/fetch/request.js +2 -3
- package/node_modules/undici/lib/web/fetch/util.js +6 -1
- package/node_modules/undici/lib/web/webidl/index.js +3 -3
- package/node_modules/undici/lib/web/websocket/connection.js +1 -1
- package/node_modules/undici/lib/web/websocket/permessage-deflate.js +5 -0
- package/node_modules/undici/lib/web/websocket/stream/websocketstream.js +8 -10
- package/node_modules/undici/package.json +3 -3
- package/node_modules/undici/types/client.d.ts +10 -0
- package/node_modules/undici/types/interceptors.d.ts +2 -0
- package/node_modules/undici/types/mock-agent.d.ts +11 -10
- package/node_modules/undici/types/socks5-proxy-agent.d.ts +2 -0
- package/openclaw.plugin.json +1 -2
- package/package.json +6 -6
- package/dist/provider.runtime-Db8YwZBv.js +0 -2
- package/dist/targets-DbxVbq8k.js +0 -3
|
@@ -2,7 +2,7 @@ declare module "node:quic" {
|
|
|
2
2
|
import { NonSharedBuffer } from "node:buffer";
|
|
3
3
|
import { KeyObject } from "node:crypto";
|
|
4
4
|
import { FileHandle } from "node:fs/promises";
|
|
5
|
-
import { SocketAddress } from "node:net";
|
|
5
|
+
import { BlockList, SocketAddress } from "node:net";
|
|
6
6
|
import { Writer } from "node:stream/iter";
|
|
7
7
|
import { EphemeralKeyInfo, PeerCertificate } from "node:tls";
|
|
8
8
|
/**
|
|
@@ -192,34 +192,40 @@ declare module "node:quic" {
|
|
|
192
192
|
*/
|
|
193
193
|
authoritative?: boolean | undefined;
|
|
194
194
|
}
|
|
195
|
+
/**
|
|
196
|
+
* @since v26.3.0
|
|
197
|
+
*/
|
|
195
198
|
interface ApplicationOptions {
|
|
196
199
|
/**
|
|
197
|
-
* Maximum number of header name-value pairs accepted per header block.
|
|
198
|
-
* dropped. **Default:** `128`
|
|
200
|
+
* Maximum number of header name-value pairs accepted per header block.
|
|
201
|
+
* Headers beyond this limit are silently dropped. **Default:** `128`
|
|
199
202
|
*/
|
|
200
|
-
maxHeaderPairs?: number | undefined;
|
|
203
|
+
maxHeaderPairs?: bigint | number | undefined;
|
|
201
204
|
/**
|
|
202
|
-
* Maximum total byte length of all header names and values combined per header
|
|
203
|
-
* the total over this limit are silently
|
|
205
|
+
* Maximum total byte length of all header names and values combined per header
|
|
206
|
+
* block. Headers that would push the total over this limit are silently
|
|
207
|
+
* dropped. **Default:** `8192`
|
|
204
208
|
*/
|
|
205
|
-
maxHeaderLength?: number | undefined;
|
|
209
|
+
maxHeaderLength?: bigint | number | undefined;
|
|
206
210
|
/**
|
|
207
|
-
* Maximum size of a compressed header field section (QPACK). `0` means
|
|
211
|
+
* Maximum size of a compressed header field section (QPACK). `0` means
|
|
212
|
+
* unlimited. **Default:** `0`
|
|
208
213
|
*/
|
|
209
|
-
maxFieldSectionSize?: number | undefined;
|
|
214
|
+
maxFieldSectionSize?: bigint | number | undefined;
|
|
210
215
|
/**
|
|
211
|
-
* QPACK dynamic table capacity in bytes. Set to `0` to disable the dynamic
|
|
216
|
+
* QPACK dynamic table capacity in bytes. Set to `0` to disable the dynamic
|
|
217
|
+
* table. **Default:** `4096`
|
|
212
218
|
*/
|
|
213
|
-
qpackMaxDTableCapacity?: number | undefined;
|
|
219
|
+
qpackMaxDTableCapacity?: bigint | number | undefined;
|
|
214
220
|
/**
|
|
215
221
|
* QPACK encoder maximum dynamic table capacity. **Default:** `4096`
|
|
216
222
|
*/
|
|
217
|
-
qpackEncoderMaxDTableCapacity?: number | undefined;
|
|
223
|
+
qpackEncoderMaxDTableCapacity?: bigint | number | undefined;
|
|
218
224
|
/**
|
|
219
|
-
* Maximum number of streams that can
|
|
220
|
-
* **Default:** `100`
|
|
225
|
+
* Maximum number of streams that can e blocked waiting for QPACK dynamic table
|
|
226
|
+
* updates. **Default:** `100`
|
|
221
227
|
*/
|
|
222
|
-
qpackBlockedStreams?: number | undefined;
|
|
228
|
+
qpackBlockedStreams?: bigint | number | undefined;
|
|
223
229
|
/**
|
|
224
230
|
* Enable the extended CONNECT protocol (RFC 9220). **Default:** `false`
|
|
225
231
|
*/
|
|
@@ -256,8 +262,7 @@ declare module "node:quic" {
|
|
|
256
262
|
*/
|
|
257
263
|
alpn?: string | readonly string[] | undefined;
|
|
258
264
|
/**
|
|
259
|
-
*
|
|
260
|
-
* ALPN selects the HTTP/3 application (`'h3'`).
|
|
265
|
+
* Application-specific options.
|
|
261
266
|
* @since v26.2.0
|
|
262
267
|
*/
|
|
263
268
|
application?: ApplicationOptions | undefined;
|
|
@@ -342,7 +347,12 @@ declare module "node:quic" {
|
|
|
342
347
|
minVersion?: number | undefined;
|
|
343
348
|
/**
|
|
344
349
|
* When the remote peer advertises a preferred address, this option specifies whether
|
|
345
|
-
* to use it or ignore it.
|
|
350
|
+
* to use it or ignore it. The default is `'ignore'` because honoring a server's
|
|
351
|
+
* preferred address causes the client to migrate its connection to a different IP
|
|
352
|
+
* address, which can be exploited for data exfiltration attacks that are
|
|
353
|
+
* indistinguishable from legitimate QUIC connection migration at the network level.
|
|
354
|
+
* Set to `'use'` only when connecting to trusted servers that require preferred
|
|
355
|
+
* address migration.
|
|
346
356
|
* @since v23.8.0
|
|
347
357
|
*/
|
|
348
358
|
preferredAddressPolicy?: "use" | "ignore" | "default" | undefined;
|
|
@@ -370,6 +380,21 @@ declare module "node:quic" {
|
|
|
370
380
|
* @since v26.2.0
|
|
371
381
|
*/
|
|
372
382
|
datagramDropPolicy?: "drop-oldest" | "drop-newest" | undefined;
|
|
383
|
+
/**
|
|
384
|
+
* The maximum time in milliseconds that a peer-initiated stream can be idle
|
|
385
|
+
* (no data received) before it is automatically destroyed. This protects
|
|
386
|
+
* against slowloris-style attacks where a remote peer opens streams but never
|
|
387
|
+
* sends data, holding server resources indefinitely. Only peer-initiated
|
|
388
|
+
* streams are checked — locally-initiated streams are the application's
|
|
389
|
+
* responsibility. Set to `0` to disable.
|
|
390
|
+
*
|
|
391
|
+
* The idle check runs as part of the normal send processing loop, so it adds
|
|
392
|
+
* no additional timers or event loop overhead. The
|
|
393
|
+
* `session.stats.streamsIdleTimedOut` counter tracks how many streams have been
|
|
394
|
+
* destroyed by this mechanism.
|
|
395
|
+
* @since v26.3.0
|
|
396
|
+
*/
|
|
397
|
+
streamIdleTimeout?: bigint | number | undefined;
|
|
373
398
|
/**
|
|
374
399
|
* The maximum number of `SendPendingData` cycles a datagram can survive
|
|
375
400
|
* without being sent before it is abandoned. When a datagram cannot be
|
|
@@ -397,6 +422,30 @@ declare module "node:quic" {
|
|
|
397
422
|
* @since v23.8.0
|
|
398
423
|
*/
|
|
399
424
|
handshakeTimeout?: bigint | number | undefined;
|
|
425
|
+
/**
|
|
426
|
+
* Controls how the client handles server certificate validation:
|
|
427
|
+
*
|
|
428
|
+
* * `'strict'` — OpenSSL aborts the TLS handshake immediately if the server's
|
|
429
|
+
* certificate fails validation. The `session.opened` promise rejects with a
|
|
430
|
+
* TLS error. The application cannot inspect the certificate or the error
|
|
431
|
+
* details. This is the most secure mode.
|
|
432
|
+
*
|
|
433
|
+
* * `'auto'` — The TLS handshake completes regardless of validation result.
|
|
434
|
+
* If validation fails, the `session.opened` promise is rejected with an error
|
|
435
|
+
* containing the validation reason, and the session is destroyed. The
|
|
436
|
+
* `onhandshake` callback (if set) fires before rejection, allowing diagnostic
|
|
437
|
+
* logging. This is the default and matches the behavior of `tls.connect()`
|
|
438
|
+
* with `rejectUnauthorized: true`.
|
|
439
|
+
*
|
|
440
|
+
* * `'manual'` — The TLS handshake completes regardless of validation result.
|
|
441
|
+
* The `session.opened` promise resolves with the handshake info, which includes
|
|
442
|
+
* `validationErrorReason` and `validationErrorCode` if validation failed. The
|
|
443
|
+
* application is responsible for checking these values and deciding whether to
|
|
444
|
+
* continue. Use this mode for custom validation logic, certificate pinning, or
|
|
445
|
+
* intentionally accepting self-signed certificates.
|
|
446
|
+
* @since v26.3.0
|
|
447
|
+
*/
|
|
448
|
+
verifyPeer?: "strict" | "auto" | "manual" | undefined;
|
|
400
449
|
/**
|
|
401
450
|
* The peer server name to target (SNI). Defaults to `'localhost'`.
|
|
402
451
|
* @since v26.1.0
|
|
@@ -569,6 +618,31 @@ declare module "node:quic" {
|
|
|
569
618
|
* @since v23.8.0
|
|
570
619
|
*/
|
|
571
620
|
address?: SocketAddress | string | undefined;
|
|
621
|
+
/**
|
|
622
|
+
* An optional `net.BlockList` instance for filtering incoming packets by
|
|
623
|
+
* source address. When configured, every received UDP packet is checked against
|
|
624
|
+
* the block list before any QUIC processing occurs, minimizing resource
|
|
625
|
+
* expenditure on blocked sources. The block list is evaluated live — rules
|
|
626
|
+
* added to the `BlockList` object after the endpoint is created take effect
|
|
627
|
+
* immediately.
|
|
628
|
+
*
|
|
629
|
+
* See `endpointOptions.blockListPolicy` for how matches are interpreted.
|
|
630
|
+
* @since v26.3.0
|
|
631
|
+
*/
|
|
632
|
+
blockList?: BlockList | undefined;
|
|
633
|
+
/**
|
|
634
|
+
* Controls how the `endpointOptions.blockList` is interpreted:
|
|
635
|
+
*
|
|
636
|
+
* * `'deny'` — Packets from addresses matching the block list are dropped.
|
|
637
|
+
* All other addresses are accepted. This is the typical blocklist mode.
|
|
638
|
+
* * `'allow'` — Only packets from addresses matching the block list are
|
|
639
|
+
* accepted. All other addresses are dropped. This is an allowlist mode
|
|
640
|
+
* for restricting access to known clients.
|
|
641
|
+
*
|
|
642
|
+
* If no block list is configured, this option has no effect.
|
|
643
|
+
* @since v26.3.0
|
|
644
|
+
*/
|
|
645
|
+
blockListPolicy?: "deny" | "allow" | undefined;
|
|
572
646
|
/**
|
|
573
647
|
* The endpoint maintains an internal cache of validated socket addresses as a
|
|
574
648
|
* performance optimization. This option sets the maximum number of addresses
|
|
@@ -625,15 +699,69 @@ declare module "node:quic" {
|
|
|
625
699
|
*/
|
|
626
700
|
maxConnectionsTotal?: number | undefined;
|
|
627
701
|
/**
|
|
628
|
-
*
|
|
629
|
-
*
|
|
702
|
+
* The maximum number of QUIC retry packets the endpoint will send per second.
|
|
703
|
+
* This is a global rate limit (not per-host) that caps the total server-wide
|
|
704
|
+
* retry response rate, preventing spoofed-source floods from consuming unbounded
|
|
705
|
+
* resources.
|
|
706
|
+
* @since v26.3.0
|
|
630
707
|
*/
|
|
631
|
-
|
|
708
|
+
retryRate?: number | undefined;
|
|
632
709
|
/**
|
|
633
|
-
*
|
|
634
|
-
* @since
|
|
710
|
+
* The maximum burst of retry packets allowed before rate limiting takes effect.
|
|
711
|
+
* @since v26.3.0
|
|
635
712
|
*/
|
|
636
|
-
|
|
713
|
+
retryBurst?: number | undefined;
|
|
714
|
+
/**
|
|
715
|
+
* The maximum number of stateless reset packets the endpoint will send per second.
|
|
716
|
+
* @since v26.3.0
|
|
717
|
+
*/
|
|
718
|
+
statelessResetRate?: number | undefined;
|
|
719
|
+
/**
|
|
720
|
+
* The maximum burst of stateless reset packets allowed before rate limiting
|
|
721
|
+
* takes effect.
|
|
722
|
+
* @since v26.3.0
|
|
723
|
+
*/
|
|
724
|
+
statelessResetBurst?: number | undefined;
|
|
725
|
+
/**
|
|
726
|
+
* The maximum number of version negotiation packets the endpoint will send per
|
|
727
|
+
* second.
|
|
728
|
+
* @since v26.3.0
|
|
729
|
+
*/
|
|
730
|
+
versionNegotiationRate?: number | undefined;
|
|
731
|
+
/**
|
|
732
|
+
* The maximum number of immediate connection close packets the endpoint will
|
|
733
|
+
* send per second.
|
|
734
|
+
* @since v26.3.0
|
|
735
|
+
*/
|
|
736
|
+
versionNegotiationBurst?: number | undefined;
|
|
737
|
+
/**
|
|
738
|
+
* The maximum number of immediate connection close packets the endpoint will
|
|
739
|
+
* send per second.
|
|
740
|
+
* @since v26.3.0
|
|
741
|
+
*/
|
|
742
|
+
immediateCloseRate?: number | undefined;
|
|
743
|
+
/**
|
|
744
|
+
* The maximum burst of immediate connection close packets allowed before rate
|
|
745
|
+
* limiting takes effect.
|
|
746
|
+
* @since v26.3.0
|
|
747
|
+
*/
|
|
748
|
+
immediateCloseBurst?: number | undefined;
|
|
749
|
+
/**
|
|
750
|
+
* The maximum number of new sessions that a single remote address can create per
|
|
751
|
+
* second. This is a per-host rate limit tracked in the address validation LRU
|
|
752
|
+
* cache. It prevents a validated remote address from churning through sessions
|
|
753
|
+
* (rapidly opening and abandoning connections) faster than the server can handle.
|
|
754
|
+
* For benchmarking where traffic comes from a single source, set this to a high
|
|
755
|
+
* value.
|
|
756
|
+
* @since v26.3.0
|
|
757
|
+
*/
|
|
758
|
+
sessionCreationRate?: number | undefined;
|
|
759
|
+
/**
|
|
760
|
+
* The maximum burst of new session creations allowed from a single remote address
|
|
761
|
+
* before rate limiting takes effect.
|
|
762
|
+
* @since v26.3.0
|
|
763
|
+
*/
|
|
764
|
+
sessionCreationBurst?: number | undefined;
|
|
637
765
|
/**
|
|
638
766
|
* Specifies the length of time a QUIC retry token is considered valid.
|
|
639
767
|
* @since v23.8.0
|
|
@@ -846,25 +974,66 @@ declare module "node:quic" {
|
|
|
846
974
|
*/
|
|
847
975
|
readonly serverBusyCount: bigint;
|
|
848
976
|
/**
|
|
849
|
-
* The total number of
|
|
977
|
+
* The total number of retry packets sent by this endpoint. Read only.
|
|
850
978
|
* @since v23.8.0
|
|
851
979
|
*/
|
|
852
980
|
readonly retryCount: bigint;
|
|
853
981
|
/**
|
|
854
|
-
* The total number of
|
|
982
|
+
* The total number of retry packets dropped by the global rate
|
|
983
|
+
* limiter. Read only. A non-zero value indicates the endpoint is under retry
|
|
984
|
+
* flood pressure.
|
|
985
|
+
* @since v26.3.0
|
|
986
|
+
*/
|
|
987
|
+
readonly retryRateLimited: bigint;
|
|
988
|
+
/**
|
|
989
|
+
* The total number of version negotiation packets sent by this
|
|
990
|
+
* endpoint. Read only.
|
|
855
991
|
* @since v23.8.0
|
|
856
992
|
*/
|
|
857
993
|
readonly versionNegotiationCount: bigint;
|
|
858
994
|
/**
|
|
859
|
-
* The total number of
|
|
995
|
+
* The total number of version negotiation packets dropped by
|
|
996
|
+
* the global rate limiter. Read only.
|
|
997
|
+
* @since v26.3.0
|
|
998
|
+
*/
|
|
999
|
+
readonly versionNegotiationRateLimited: bigint;
|
|
1000
|
+
/**
|
|
1001
|
+
* The total number of stateless reset packets sent by this
|
|
1002
|
+
* endpoint. Read only.
|
|
860
1003
|
* @since v23.8.0
|
|
861
1004
|
*/
|
|
862
1005
|
readonly statelessResetCount: bigint;
|
|
863
1006
|
/**
|
|
864
|
-
* The total number of
|
|
1007
|
+
* The total number of stateless reset packets dropped by the
|
|
1008
|
+
* global rate limiter. Read only.
|
|
1009
|
+
* @since v26.3.0
|
|
1010
|
+
*/
|
|
1011
|
+
readonly statelessResetRateLimited: bigint;
|
|
1012
|
+
/**
|
|
1013
|
+
* The total number of immediate connection close packets sent
|
|
1014
|
+
* by this endpoint. Read only.
|
|
865
1015
|
* @since v23.8.0
|
|
866
1016
|
*/
|
|
867
1017
|
readonly immediateCloseCount: bigint;
|
|
1018
|
+
/**
|
|
1019
|
+
* The total number of immediate connection close packets
|
|
1020
|
+
* dropped by the global rate limiter. Read only.
|
|
1021
|
+
* @since v26.3.0
|
|
1022
|
+
*/
|
|
1023
|
+
readonly immediateCloseRateLimited: bigint;
|
|
1024
|
+
/**
|
|
1025
|
+
* The total number of session creation attempts dropped by the
|
|
1026
|
+
* per-host rate limiter. Read only. A non-zero value indicates one or more
|
|
1027
|
+
* remote addresses are creating sessions faster than the configured rate allows.
|
|
1028
|
+
* @since v26.3.0
|
|
1029
|
+
*/
|
|
1030
|
+
readonly sessionCreationRateLimited: bigint;
|
|
1031
|
+
/**
|
|
1032
|
+
* The total number of incoming packets dropped by the
|
|
1033
|
+
* block list filter. Read only.
|
|
1034
|
+
* @since v26.3.0
|
|
1035
|
+
*/
|
|
1036
|
+
readonly packetsBlocked: bigint;
|
|
868
1037
|
}
|
|
869
1038
|
}
|
|
870
1039
|
interface CreateStreamOptions {
|
|
@@ -997,6 +1166,13 @@ declare module "node:quic" {
|
|
|
997
1166
|
*/
|
|
998
1167
|
class QuicSession implements AsyncDisposable {
|
|
999
1168
|
private constructor();
|
|
1169
|
+
/**
|
|
1170
|
+
* The current application-level options for this session. These include settings
|
|
1171
|
+
* that are specific to the negotiated application protocol (e.g. HTTP/3) and may
|
|
1172
|
+
* be negotiated separately from the transport parameters. Read only.
|
|
1173
|
+
* @since v26.3.0
|
|
1174
|
+
*/
|
|
1175
|
+
readonly applicationOptions: { [K in keyof ApplicationOptions]-?: ApplicationOptions[K] & (bigint | boolean) };
|
|
1000
1176
|
/**
|
|
1001
1177
|
* Initiate a graceful close of the session. Existing streams will be allowed
|
|
1002
1178
|
* to complete but no new streams will be opened. Once all streams have closed,
|
|
@@ -1395,6 +1571,12 @@ declare module "node:quic" {
|
|
|
1395
1571
|
* @since v23.8.0
|
|
1396
1572
|
*/
|
|
1397
1573
|
readonly datagramsLost: bigint;
|
|
1574
|
+
/**
|
|
1575
|
+
* The total number of peer-initiated streams destroyed by the
|
|
1576
|
+
* stream idle timeout. Read only.
|
|
1577
|
+
* @since v26.3.0
|
|
1578
|
+
*/
|
|
1579
|
+
readonly streamsIdleTimedOut: bigint;
|
|
1398
1580
|
}
|
|
1399
1581
|
}
|
|
1400
1582
|
interface QuicErrorOptions {
|
|
@@ -127,8 +127,12 @@ declare module "node:sqlite" {
|
|
|
127
127
|
}
|
|
128
128
|
interface ApplyChangesetOptions {
|
|
129
129
|
/**
|
|
130
|
-
*
|
|
131
|
-
*
|
|
130
|
+
* for each table affected by at least
|
|
131
|
+
* one change in the changeset, the `filter` callback is invoked with the
|
|
132
|
+
* table name as the first argument. If the return value is falsy, then no
|
|
133
|
+
* attempt is made to apply any changes to the table.
|
|
134
|
+
* Otherwise, if the return value is truthy or no `filter` callback is provided,
|
|
135
|
+
* all changes related to the table are attempted.
|
|
132
136
|
* @since v22.12.0
|
|
133
137
|
*/
|
|
134
138
|
filter?: ((tableName: string) => boolean) | undefined;
|
|
@@ -677,6 +677,12 @@ declare module "node:test" {
|
|
|
677
677
|
* The nesting level of the test.
|
|
678
678
|
*/
|
|
679
679
|
nesting: number;
|
|
680
|
+
/**
|
|
681
|
+
* The `testId` of the enclosing test, or
|
|
682
|
+
* `undefined` for top-level tests. Lets custom reporters track lineage
|
|
683
|
+
* when concurrent siblings at the same nesting level interleave.
|
|
684
|
+
*/
|
|
685
|
+
parentId: number | undefined;
|
|
680
686
|
/**
|
|
681
687
|
* The flattened lowercased tags declared on the test
|
|
682
688
|
* and its ancestor suites, in declaration order. Empty for untagged tests.
|
|
@@ -711,6 +717,12 @@ declare module "node:test" {
|
|
|
711
717
|
* The nesting level of the test.
|
|
712
718
|
*/
|
|
713
719
|
nesting: number;
|
|
720
|
+
/**
|
|
721
|
+
* The `testId` of the enclosing test, or
|
|
722
|
+
* `undefined` for top-level tests. Lets custom reporters track lineage
|
|
723
|
+
* when concurrent siblings at the same nesting level interleave.
|
|
724
|
+
*/
|
|
725
|
+
parentId: number | undefined;
|
|
714
726
|
/**
|
|
715
727
|
* The flattened lowercased tags declared on the test
|
|
716
728
|
* and its ancestor suites, in declaration order. Empty for untagged tests.
|
|
@@ -738,6 +750,12 @@ declare module "node:test" {
|
|
|
738
750
|
* The nesting level of the test.
|
|
739
751
|
*/
|
|
740
752
|
nesting: number;
|
|
753
|
+
/**
|
|
754
|
+
* The `testId` of the enclosing test, or
|
|
755
|
+
* `undefined` for top-level tests. Lets custom reporters track lineage
|
|
756
|
+
* when concurrent siblings at the same nesting level interleave.
|
|
757
|
+
*/
|
|
758
|
+
parentId: number | undefined;
|
|
741
759
|
/**
|
|
742
760
|
* The flattened lowercased tags declared on the test
|
|
743
761
|
* and its ancestor suites, in declaration order. Empty for untagged tests.
|
|
@@ -789,6 +807,12 @@ declare module "node:test" {
|
|
|
789
807
|
* The nesting level of the test.
|
|
790
808
|
*/
|
|
791
809
|
nesting: number;
|
|
810
|
+
/**
|
|
811
|
+
* The `testId` of the enclosing test, or
|
|
812
|
+
* `undefined` for top-level tests. Lets custom reporters track lineage
|
|
813
|
+
* when concurrent siblings at the same nesting level interleave.
|
|
814
|
+
*/
|
|
815
|
+
parentId: number | undefined;
|
|
792
816
|
/**
|
|
793
817
|
* The flattened lowercased tags declared on the test
|
|
794
818
|
* and its ancestor suites, in declaration order. Empty for untagged tests.
|
|
@@ -856,6 +880,12 @@ declare module "node:test" {
|
|
|
856
880
|
* The nesting level of the test.
|
|
857
881
|
*/
|
|
858
882
|
nesting: number;
|
|
883
|
+
/**
|
|
884
|
+
* The `testId` of the enclosing test, or
|
|
885
|
+
* `undefined` for top-level tests. Lets custom reporters track lineage
|
|
886
|
+
* when concurrent siblings at the same nesting level interleave.
|
|
887
|
+
*/
|
|
888
|
+
parentId: number | undefined;
|
|
859
889
|
/**
|
|
860
890
|
* The flattened lowercased tags declared on the test
|
|
861
891
|
* and its ancestor suites, in declaration order. Empty for untagged tests.
|
|
@@ -900,6 +930,12 @@ declare module "node:test" {
|
|
|
900
930
|
* The nesting level of the test.
|
|
901
931
|
*/
|
|
902
932
|
nesting: number;
|
|
933
|
+
/**
|
|
934
|
+
* The `testId` of the enclosing test, or
|
|
935
|
+
* `undefined` for top-level tests. Lets custom reporters track lineage
|
|
936
|
+
* when concurrent siblings at the same nesting level interleave.
|
|
937
|
+
*/
|
|
938
|
+
parentId: number | undefined;
|
|
903
939
|
/**
|
|
904
940
|
* The flattened lowercased tags declared on the test
|
|
905
941
|
* and its ancestor suites, in declaration order. Empty for untagged tests.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Returns true if the value is a json pointer
|
|
3
|
-
* @specification
|
|
4
|
-
* @source ajv-formats
|
|
3
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc6901
|
|
4
|
+
* @source https://github.com/ajv-validator/ajv-formats
|
|
5
5
|
*/
|
|
6
6
|
export declare function IsJsonPointer(value: string): boolean;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
const JsonPointer = /^(?:\/(?:[^~/]|~0|~1)*)*$/;
|
|
2
2
|
/**
|
|
3
3
|
* Returns true if the value is a json pointer
|
|
4
|
-
* @specification
|
|
5
|
-
* @source ajv-formats
|
|
4
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc6901
|
|
5
|
+
* @source https://github.com/ajv-validator/ajv-formats
|
|
6
6
|
*/
|
|
7
7
|
export function IsJsonPointer(value) {
|
|
8
8
|
return JsonPointer.test(value);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Returns true if the value is a json pointer uri fragment
|
|
3
|
-
* @specification
|
|
4
|
-
* @source ajv-formats
|
|
3
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc6901
|
|
4
|
+
* @source https://github.com/ajv-validator/ajv-formats
|
|
5
5
|
*/
|
|
6
6
|
export declare function IsJsonPointerUriFragment(value: string): boolean;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
const JsonPointerUriFragment = /^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i;
|
|
2
2
|
/**
|
|
3
3
|
* Returns true if the value is a json pointer uri fragment
|
|
4
|
-
* @specification
|
|
5
|
-
* @source ajv-formats
|
|
4
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc6901
|
|
5
|
+
* @source https://github.com/ajv-validator/ajv-formats
|
|
6
6
|
*/
|
|
7
7
|
export function IsJsonPointerUriFragment(value) {
|
|
8
8
|
return JsonPointerUriFragment.test(value);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Returns true if the value is a relative json pointer
|
|
3
|
-
* @specification
|
|
4
|
-
* @source ajv-formats
|
|
3
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc6901
|
|
4
|
+
* @source https://github.com/ajv-validator/ajv-formats
|
|
5
5
|
*/
|
|
6
6
|
export declare function IsRelativeJsonPointer(value: string): boolean;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
const RelativeJsonPointer = /^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;
|
|
2
2
|
/**
|
|
3
3
|
* Returns true if the value is a relative json pointer
|
|
4
|
-
* @specification
|
|
5
|
-
* @source ajv-formats
|
|
4
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc6901
|
|
5
|
+
* @source https://github.com/ajv-validator/ajv-formats
|
|
6
6
|
*/
|
|
7
7
|
export function IsRelativeJsonPointer(value) {
|
|
8
8
|
return RelativeJsonPointer.test(value);
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
// deno-lint-ignore-file ban-types no-explicit-any
|
|
2
2
|
// deno-fmt-ignore-file
|
|
3
3
|
import { Metrics } from './metrics.mjs';
|
|
4
|
+
import { Freeze } from './freeze.mjs';
|
|
4
5
|
/**
|
|
5
6
|
* Performs an Object assign using the Left and Right object types. We track this operation as it
|
|
6
7
|
* creates a new GC handle per assignment.
|
|
7
8
|
*/
|
|
8
9
|
export function Assign(left, right) {
|
|
9
10
|
Metrics.assign += 1;
|
|
10
|
-
return { ...left, ...right };
|
|
11
|
+
return Freeze({ ...left, ...right });
|
|
11
12
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// deno-lint-ignore-file no-explicit-any
|
|
2
|
-
// deno-fmt-ignore-file
|
|
3
2
|
import { Settings } from '../settings/index.mjs';
|
|
4
3
|
import { Metrics } from './metrics.mjs';
|
|
4
|
+
import { Freeze } from './freeze.mjs';
|
|
5
5
|
function MergeHidden(left, right) {
|
|
6
6
|
for (const key of Object.keys(right)) {
|
|
7
7
|
Object.defineProperty(left, key, {
|
|
@@ -23,8 +23,7 @@ function Merge(left, right) {
|
|
|
23
23
|
*/
|
|
24
24
|
export function Create(hidden, enumerable, options = {}) {
|
|
25
25
|
Metrics.create += 1;
|
|
26
|
-
const settings = Settings.Get();
|
|
27
26
|
const withOptions = Merge(enumerable, options);
|
|
28
|
-
const withHidden =
|
|
29
|
-
return
|
|
27
|
+
const withHidden = Settings.Get().enumerableKind ? Merge(withOptions, hidden) : MergeHidden(withOptions, hidden);
|
|
28
|
+
return Freeze(withHidden);
|
|
30
29
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// deno-lint-ignore-file no-explicit-any
|
|
2
|
-
// deno-fmt-ignore-file
|
|
3
2
|
import { Guard } from '../../guard/index.mjs';
|
|
4
3
|
import { Metrics } from './metrics.mjs';
|
|
4
|
+
import { Freeze } from './freeze.mjs';
|
|
5
5
|
import { Clone } from './clone.mjs';
|
|
6
6
|
/** Discards multiple property keys from the given object value */
|
|
7
7
|
export function Discard(value, propertyKeys) {
|
|
@@ -14,5 +14,5 @@ export function Discard(value, propertyKeys) {
|
|
|
14
14
|
descriptor.value = Clone(descriptor.value);
|
|
15
15
|
Object.defineProperty(result, key, descriptor);
|
|
16
16
|
}
|
|
17
|
-
return result;
|
|
17
|
+
return Freeze(result);
|
|
18
18
|
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// deno-lint-ignore-file no-explicit-any
|
|
2
|
+
import { Settings } from '../settings/index.mjs';
|
|
3
|
+
/** Conditionally freezes the value if `immutableTypes` is true, otherwise no action. */
|
|
4
|
+
export function Freeze(value) {
|
|
5
|
+
return Settings.Get().immutableTypes ? Object.freeze(value) : value;
|
|
6
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
// deno-
|
|
1
|
+
// deno-lint-ignore-file no-explicit-any
|
|
2
2
|
import { Settings } from '../settings/index.mjs';
|
|
3
3
|
import { Metrics } from './metrics.mjs';
|
|
4
|
+
import { Freeze } from './freeze.mjs';
|
|
4
5
|
import { Clone } from './clone.mjs';
|
|
5
6
|
/**
|
|
6
7
|
* Updates a value with new properties while preserving property enumerability. Use this function to modify
|
|
@@ -28,5 +29,5 @@ export function Update(current, hidden, enumerable) {
|
|
|
28
29
|
value: enumerable[key]
|
|
29
30
|
});
|
|
30
31
|
}
|
|
31
|
-
return result;
|
|
32
|
+
return Freeze(result);
|
|
32
33
|
}
|
|
@@ -147,6 +147,10 @@ added: v1.0.0
|
|
|
147
147
|
WebSocket messages. Applied to uncompressed messages, compressed frame
|
|
148
148
|
payloads, and decompressed (`permessage-deflate`) messages. Set to `0` to
|
|
149
149
|
disable the limit. **Default:** `134217728`.
|
|
150
|
+
* `eventSource` {Object} (optional) EventSource-specific configuration.
|
|
151
|
+
* `maxEventSize` {number} The maximum allowed event size, in bytes, for
|
|
152
|
+
EventSource messages. Set to `0` to disable the limit.
|
|
153
|
+
**Default:** `buffer.kStringMaxLength`.
|
|
150
154
|
* Returns: {Client}
|
|
151
155
|
|
|
152
156
|
Instantiating a `Client` does not open a connection; the connection is
|
|
@@ -25,8 +25,9 @@ it is used only for HTTPS requests.
|
|
|
25
25
|
proxied. Each entry may include a leading dot or `*.` wildcard (for example
|
|
26
26
|
`.example.com`) to match subdomains, and an optional `:port` suffix to restrict
|
|
27
27
|
the match to a specific port. A request bypasses the proxy when its host equals
|
|
28
|
-
an entry or is a subdomain of one.
|
|
29
|
-
|
|
28
|
+
an entry or is a subdomain of one. A trailing dot is ignored on both sides, so
|
|
29
|
+
`example.com.` and `example.com` match each other. Setting `no_proxy` to `*`
|
|
30
|
+
bypasses the proxy for every request.
|
|
30
31
|
|
|
31
32
|
The uppercase variants `HTTP_PROXY`, `HTTPS_PROXY`, and `NO_PROXY` are also
|
|
32
33
|
honored. When both the lowercase and uppercase forms of a variable are set, the
|
|
@@ -66,6 +66,9 @@ added: v6.5.0
|
|
|
66
66
|
wait before re-establishing a dropped connection. The server may override
|
|
67
67
|
this value with a `retry` field. **Default:** `3000`.
|
|
68
68
|
|
|
69
|
+
EventSource-specific limits can be configured on the dispatcher using the
|
|
70
|
+
`eventSource` option. See [`Client`][] for details.
|
|
71
|
+
|
|
69
72
|
Creates a new `EventSource` and immediately begins connecting to `url`. The
|
|
70
73
|
request is sent with the `Accept: text/event-stream` header, a cache mode of
|
|
71
74
|
`no-store`, and an initiator type of `other`.
|
|
@@ -349,6 +352,7 @@ eventSource.onerror = () => {
|
|
|
349
352
|
```
|
|
350
353
|
|
|
351
354
|
[WHATWG-conformant]: https://html.spec.whatwg.org/multipage/server-sent-events.html#server-sent-events
|
|
355
|
+
[`Client`]: Client.md#new-clienturl-options
|
|
352
356
|
[`Dispatcher`]: Dispatcher.md#class-dispatcher
|
|
353
357
|
[`addEventListener()`]: https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener
|
|
354
358
|
[server-sent events]: https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events
|