Skip to content

Commit 9dfca89

Browse files
authored
add new nodejs_eol compat flags for 22, 23 and v24.
1 parent f4b52ae commit 9dfca89

4 files changed

Lines changed: 25 additions & 3 deletions

File tree

src/node/crypto.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -543,7 +543,7 @@ export let createDecipher: (() => void) | undefined = undefined;
543543
export let Cipher: (() => void) | undefined = undefined;
544544
export let Decipher: (() => void) | undefined = undefined;
545545

546-
if (!Cloudflare.compatibilityFlags.remove_nodejs_compat_eol) {
546+
if (!Cloudflare.compatibilityFlags.remove_nodejs_compat_eol_v22) {
547547
createCipher = (): void => {
548548
throw new ERR_METHOD_NOT_IMPLEMENTED('createCipher');
549549
};

src/node/tls.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ import { ERR_METHOD_NOT_IMPLEMENTED } from 'node-internal:internal_errors';
4040

4141
let createSecurePair = undefined;
4242

43-
if (!Cloudflare.compatibilityFlags.remove_nodejs_compat_eol) {
43+
if (!Cloudflare.compatibilityFlags.remove_nodejs_compat_eol_v24) {
4444
createSecurePair = function createSecurePair(): void {
4545
throw new ERR_METHOD_NOT_IMPLEMENTED('createSecurePair');
4646
};

src/node/util.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ let isString: ((val: unknown) => boolean) | undefined = undefined;
5555
let isSymbol: ((val: unknown) => boolean) | undefined = undefined;
5656
let isUndefined: ((val: unknown) => boolean) | undefined = undefined;
5757

58-
if (!Cloudflare.compatibilityFlags.remove_nodejs_compat_eol) {
58+
if (!Cloudflare.compatibilityFlags.remove_nodejs_compat_eol_v23) {
5959
isBoolean = (val: unknown): boolean => typeof val === 'boolean';
6060
isBuffer = (val: unknown): boolean => Buffer.isBuffer(val);
6161
isDate = (val: unknown): boolean => val instanceof Date;

src/workerd/io/compatibility-date.capnp

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1024,4 +1024,26 @@ struct CompatibilityFlags @0x8f8c1b68151b6cef {
10241024
# a temporary error on email delivery.
10251025
# Note that by enabling this, user-provided Message-IDs are stripped and
10261026
# Email Workers will generate and use its own.
1027+
1028+
removeNodejsCompatEOLv22 @117 :Bool
1029+
$compatEnableFlag("remove_nodejs_compat_eol_v22")
1030+
$compatDisableFlag("add_nodejs_compat_eol_v22")
1031+
$impliedByAfterDate(name = "removeNodejsCompatEOL", date = "2027-04-30");
1032+
# Removes APIs that reached end-of-life in Node.js 22.x. When using the
1033+
# removeNodejsCompatEOL flag, this will default enable on/after 2027-04-30.
1034+
1035+
removeNodejsCompatEOLv23 @118 :Bool
1036+
$compatEnableFlag("remove_nodejs_compat_eol_v23")
1037+
$compatDisableFlag("add_nodejs_compat_eol_v23")
1038+
$impliedByAfterDate(name = "removeNodejsCompatEOLv24", date = "2025-09-01");
1039+
# Removes APIs that reached end-of-life in Node.js 23.x. This will default
1040+
# enable when the removeNodejsCompatEOLv24 flag is enabled after 2025-09-01.
1041+
# Went EOL on 2025-06-01
1042+
1043+
removeNodejsCompatEOLv24 @119 :Bool
1044+
$compatEnableFlag("remove_nodejs_compat_eol_v24")
1045+
$compatDisableFlag("add_nodejs_compat_eol_v24")
1046+
$impliedByAfterDate(name = "removeNodejsCompatEOL", date = "2028-04-30");
1047+
# Removes APIs that reached end-of-life in Node.js 24.x. When using the
1048+
# removeNodejsCompatEOL flag, this will default enable on/after 2028-04-30.
10271049
}

0 commit comments

Comments
 (0)