node/lib
Tim Perry 65bee02cca
http: add shouldUpgradeCallback to let servers control HTTP upgrades
Previously, you could either add no 'upgrade' event handler, in which
case all upgrades were ignored, or add an 'upgrade' handler and all
upgrade attempts would effectively succeed and skip normal request
handling. This change adds a new shouldUpgradeCallback option to HTTP
servers, which receives the request details and returns a boolean that
controls whether the request should be upgraded.

PR-URL: https://github.com/nodejs/node/pull/59824
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-09-17 15:14:01 +00:00
..
assert
dns
fs
inspector lib: revert to using default derived class constructors 2025-08-30 14:28:10 +00:00
internal module: only put directly require-d ESM into require.cache 2025-09-17 13:13:59 +00:00
path
readline lib: revert to using default derived class constructors 2025-08-30 14:28:10 +00:00
stream
test test_runner: do not expose internal loader 2024-08-13 15:17:50 +02:00
timers lib: remove unnecessary optional chaining 2024-11-07 15:59:12 +00:00
util
_http_agent.js http: add Agent.agentKeepAliveTimeoutBuffer option 2025-08-13 02:32:30 +00:00
_http_client.js lib: use validateString 2025-08-02 11:31:47 +00:00
_http_common.js http: optimize checkIsHttpToken for short strings 2025-09-14 00:40:06 +00:00
_http_incoming.js lib: prefer optional chaining 2024-09-24 19:48:15 +00:00
_http_outgoing.js http,https: give names to anonymous or misnamed functions 2025-05-12 12:28:05 +00:00
_http_server.js http: add shouldUpgradeCallback to let servers control HTTP upgrades 2025-09-17 15:14:01 +00:00
_stream_duplex.js lib: add module to use in module deprecation warnings 2025-05-26 14:39:25 +00:00
_stream_passthrough.js lib: add module to use in module deprecation warnings 2025-05-26 14:39:25 +00:00
_stream_readable.js lib: add module to use in module deprecation warnings 2025-05-26 14:39:25 +00:00
_stream_transform.js lib: add module to use in module deprecation warnings 2025-05-26 14:39:25 +00:00
_stream_wrap.js lib: add module to use in module deprecation warnings 2025-05-26 14:39:25 +00:00
_stream_writable.js lib: add module to use in module deprecation warnings 2025-05-26 14:39:25 +00:00
_tls_common.js lib: add module to use in module deprecation warnings 2025-05-26 14:39:25 +00:00
_tls_wrap.js lib: add module to use in module deprecation warnings 2025-05-26 14:39:25 +00:00
assert.js lib: update isDeepStrictEqual to support options 2025-09-14 00:39:49 +00:00
async_hooks.js async_hooks: move asyncResource property on bound function to EOL 2025-06-09 15:20:30 +00:00
buffer.js meta: enable jsdoc/check-tag-names rule 2025-07-18 09:28:21 +00:00
child_process.js child_process: remove unsafe array iteration 2025-08-19 18:14:48 +02:00
cluster.js cluster: use ObjectPrototypeHasOwnProperty 2023-05-25 16:04:19 +00:00
console.js
constants.js
crypto.js crypto: support ML-KEM, DHKEM, and RSASVE key encapsulation mechanisms 2025-08-20 14:30:58 +00:00
dgram.js dgram: move deprecated APIs to EOL 2025-05-31 02:59:40 +00:00
diagnostics_channel.js diagnostics_channel: fix unsubscribe during publish 2024-10-14 10:55:39 +00:00
dns.js dns: move falsy hostname in lookup to end-of-life 2025-06-13 12:47:23 +00:00
domain.js domain: remove deprecated API call 2025-08-05 03:51:16 +00:00
eslint.config_partial.mjs lib: expose global ErrorEvent 2025-08-18 08:14:54 +00:00
events.js lib: prefer AsyncIteratorPrototype primordial 2025-07-29 21:54:16 +00:00
fs.js fs: port SonicBoom module to fs module as Utf8Stream 2025-07-28 20:27:07 -07:00
http.js http: expose websockets 2024-07-08 15:55:43 +00:00
http2.js http2: add server handshake utility 2024-01-12 16:09:48 +00:00
https.js cli: add --use-env-proxy 2025-07-26 20:43:10 +00:00
inspector.js inspector: initial support websocket inspection 2025-08-19 10:09:14 +00:00
module.js lib: allow skipping source maps in node_modules 2025-01-23 22:44:10 +00:00
net.js lib: make ERM functions into wrappers returning undefined 2025-05-25 13:44:43 +00:00
os.js meta: enable jsdoc/check-tag-names rule 2025-07-18 09:28:21 +00:00
path.js path: refactor path joining logic for clarity and performance 2025-09-08 18:44:18 +00:00
perf_hooks.js lib: add trailing commas to all public core modules 2023-02-28 12:10:24 +01:00
process.js
punycode.js punycode: limit deprecation warning 2025-01-18 18:01:54 +00:00
querystring.js meta: enable jsdoc/check-tag-names rule 2025-07-18 09:28:21 +00:00
quic.js src, quic: refine more of the quic implementation 2025-01-06 10:47:36 -08:00
readline.js lib: prefer logical assignment 2024-10-09 06:42:16 +00:00
repl.js repl: do not cause side effects in tab completion 2025-09-08 13:54:45 +00:00
sea.js sea: implement sea.getAssetKeys() 2025-09-04 11:58:50 +00:00
sqlite.js sqlite: cleanup ERM support and export Session class 2025-05-30 17:21:30 -07:00
stream.js stream: change stream to use index instead of for...of 2024-08-23 07:31:55 +00:00
string_decoder.js meta: enable jsdoc/check-tag-names rule 2025-07-18 09:28:21 +00:00
sys.js lib: add node: prefix in sys module deprecation warning 2025-05-26 14:39:25 +00:00
test.js test_runner: add assert.register() API 2025-01-04 18:30:04 +00:00
timers.js timers: optimize timer functions with improved argument handling 2025-03-24 20:30:52 +00:00
tls.js crypto: add tls.setDefaultCACertificates() 2025-07-18 19:57:53 +00:00
trace_events.js trace_events: use private fields instead of symbols for Tracing 2023-12-28 23:20:22 +00:00
tty.js tty: initialize winSize array with values 2024-08-11 06:32:13 +00:00
url.js url: replaced slice with at 2025-09-14 00:39:32 +00:00
util.js lib: update isDeepStrictEqual to support options 2025-09-14 00:39:49 +00:00
v8.js v8: add v8.getCppHeapStatistics() method 2025-03-04 11:14:34 +00:00
vm.js lib: add validation for options in compileFunction 2024-12-06 06:53:06 +00:00
wasi.js lib: expose setupInstance method on WASI class 2025-07-07 08:41:16 -07:00
worker_threads.js worker: add name for worker 2025-08-05 13:45:41 +00:00
zlib.js zlib: add dictionary support to zstdCompress and zstdDecompress 2025-08-04 16:13:57 +00:00