| Offset 1, 5 lines modified | Offset 1, 5 lines modified | ||
| 1 | Zip·file·size:·34 | 1 | Zip·file·size:·3484843·bytes,·number·of·entries:·3 |
| 2 | -rw-r--r--··4.5·unx·······30·bx·stor·26-Apr-07·22:15·metadata.json | 2 | -rw-r--r--··4.5·unx·······30·bx·stor·26-Apr-07·22:15·metadata.json |
| 3 | -rw-r--r--··4.5·unx··31 | 3 | -rw-r--r--··4.5·unx··3172111·bx·stor·26-Apr-07·22:15·pkg-cypress-15.13.1-hfa286de_0.tar.zst |
| 4 | -rw-r--r--··4.5·unx···3121 | 4 | -rw-r--r--··4.5·unx···312152·bx·stor·26-Apr-07·22:15·info-cypress-15.13.1-hfa286de_0.tar.zst |
| 5 | 3·files,·34 | 5 | 3·files,·3484293·bytes·uncompressed,·3484293·bytes·compressed:··0.0% |
| Offset 19, 123 lines modified | Offset 19, 123 lines modified | ||
| 19 | 00005D·LOCAL·HEADER·#2·······04034B50 | 19 | 00005D·LOCAL·HEADER·#2·······04034B50 |
| 20 | 000061·Extract·Zip·Spec······2D·'4.5' | 20 | 000061·Extract·Zip·Spec······2D·'4.5' |
| 21 | 000062·Extract·OS············00·'MS-DOS' | 21 | 000062·Extract·OS············00·'MS-DOS' |
| 22 | 000063·General·Purpose·Flag··0000 | 22 | 000063·General·Purpose·Flag··0000 |
| 23 | 000065·Compression·Method····0000·'Stored' | 23 | 000065·Compression·Method····0000·'Stored' |
| 24 | 000067·Last·Mod·Time·········5C87B1F1·'Tue·Apr··7·22:15:34·2026' | 24 | 000067·Last·Mod·Time·········5C87B1F1·'Tue·Apr··7·22:15:34·2026' |
| 25 | 00006B·CRC··················· | 25 | 00006B·CRC···················4340F0D5 |
| 26 | 00006F·Compressed·Length·····FFFFFFFF | 26 | 00006F·Compressed·Length·····FFFFFFFF |
| 27 | 000073·Uncompressed·Length···FFFFFFFF | 27 | 000073·Uncompressed·Length···FFFFFFFF |
| 28 | 000077·Filename·Length·······0026 | 28 | 000077·Filename·Length·······0026 |
| 29 | 000079·Extra·Length··········0014 | 29 | 000079·Extra·Length··········0014 |
| 30 | 00007B·Filename··············'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' | 30 | 00007B·Filename··············'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' |
| 31 | 0000A1·Extra·ID·#0001········0001·'ZIP64' | 31 | 0000A1·Extra·ID·#0001········0001·'ZIP64' |
| 32 | 0000A3···Length··············0010 | 32 | 0000A3···Length··············0010 |
| 33 | 0000A5···Uncompressed·Size···000000000030 | 33 | 0000A5···Uncompressed·Size···000000000030670F |
| 34 | 0000AD···Compressed·Size·····000000000030 | 34 | 0000AD···Compressed·Size·····000000000030670F |
| 35 | 0000B5·PAYLOAD | 35 | 0000B5·PAYLOAD |
| 36 | 30 | 36 | 3067C4·LOCAL·HEADER·#3·······04034B50 |
| 37 | 30 | 37 | 3067C8·Extract·Zip·Spec······2D·'4.5' |
| 38 | 30 | 38 | 3067C9·Extract·OS············00·'MS-DOS' |
| 39 | 30 | 39 | 3067CA·General·Purpose·Flag··0000 |
| 40 | 30 | 40 | 3067CC·Compression·Method····0000·'Stored' |
| 41 | 30 | 41 | 3067CE·Last·Mod·Time·········5C87B1F1·'Tue·Apr··7·22:15:34·2026' |
| 42 | 30 | 42 | 3067D2·CRC···················B35A45F0 |
| 43 | 30 | 43 | 3067D6·Compressed·Length·····FFFFFFFF |
| 44 | 30 | 44 | 3067DA·Uncompressed·Length···FFFFFFFF |
| 45 | 30 | 45 | 3067DE·Filename·Length·······0027 |
| 46 | 30 | 46 | 3067E0·Extra·Length··········0014 |
| 47 | 30 | 47 | 3067E2·Filename··············'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX |
| 48 | ·····························' | 48 | ·····························' |
| 49 | 30 | 49 | 306809·Extra·ID·#0001········0001·'ZIP64' |
| 50 | 30 | 50 | 30680B···Length··············0010 |
| 51 | 30 | 51 | 30680D···Uncompressed·Size···000000000004C358 |
| 52 | 30 | 52 | 306815···Compressed·Size·····000000000004C358 |
| 53 | 30 | 53 | 30681D·PAYLOAD |
| 54 | 35 | 54 | 352B75·CENTRAL·HEADER·#1·····02014B50 |
| 55 | 35 | 55 | 352B79·Created·Zip·Spec······2D·'4.5' |
| 56 | 35 | 56 | 352B7A·Created·OS············03·'Unix' |
| 57 | 35 | 57 | 352B7B·Extract·Zip·Spec······2D·'4.5' |
| 58 | 35 | 58 | 352B7C·Extract·OS············00·'MS-DOS' |
| 59 | 35 | 59 | 352B7D·General·Purpose·Flag··0000 |
| 60 | 35 | 60 | 352B7F·Compression·Method····0000·'Stored' |
| 61 | 35 | 61 | 352B81·Last·Mod·Time·········5C87B1F1·'Tue·Apr··7·22:15:34·2026' |
| 62 | 35 | 62 | 352B85·CRC···················2E6500CB |
| 63 | 35 | 63 | 352B89·Compressed·Length·····FFFFFFFF |
| 64 | 35 | 64 | 352B8D·Uncompressed·Length···FFFFFFFF |
| 65 | 35 | 65 | 352B91·Filename·Length·······000D |
| 66 | 35 | 66 | 352B93·Extra·Length··········0014 |
| 67 | 35 | 67 | 352B95·Comment·Length········0000 |
| 68 | 35 | 68 | 352B97·Disk·Start············0000 |
| 69 | 35 | 69 | 352B99·Int·File·Attributes···0000 |
| 70 | ·······[Bit·0]···············0·'Binary·Data' | 70 | ·······[Bit·0]···············0·'Binary·Data' |
| 71 | 35 | 71 | 352B9B·Ext·File·Attributes···81A40000 |
| 72 | 35 | 72 | 352B9F·Local·Header·Offset···00000000 |
| 73 | 35 | 73 | 352BA3·Filename··············'XXXXXXXXXXXXX' |
| 74 | 35 | 74 | 352BB0·Extra·ID·#0001········0001·'ZIP64' |
| 75 | 35 | 75 | 352BB2···Length··············0010 |
| 76 | 35 | 76 | 352BB4···Uncompressed·Size···000000000000001E |
| 77 | 35 | 77 | 352BBC···Compressed·Size·····000000000000001E |
| 78 | 35 | 78 | 352BC4·CENTRAL·HEADER·#2·····02014B50 |
| 79 | 35 | 79 | 352BC8·Created·Zip·Spec······2D·'4.5' |
| 80 | 35 | 80 | 352BC9·Created·OS············03·'Unix' |
| 81 | 35 | 81 | 352BCA·Extract·Zip·Spec······2D·'4.5' |
| 82 | 35 | 82 | 352BCB·Extract·OS············00·'MS-DOS' |
| 83 | 35 | 83 | 352BCC·General·Purpose·Flag··0000 |
| 84 | 35 | 84 | 352BCE·Compression·Method····0000·'Stored' |
| 85 | 35 | 85 | 352BD0·Last·Mod·Time·········5C87B1F1·'Tue·Apr··7·22:15:34·2026' |
| 86 | 35 | 86 | 352BD4·CRC···················4340F0D5 |
| 87 | 35 | 87 | 352BD8·Compressed·Length·····FFFFFFFF |
| 88 | 35 | 88 | 352BDC·Uncompressed·Length···FFFFFFFF |
| 89 | 35 | 89 | 352BE0·Filename·Length·······0026 |
| 90 | 35 | 90 | 352BE2·Extra·Length··········0014 |
| 91 | 35 | 91 | 352BE4·Comment·Length········0000 |
| 92 | 35 | 92 | 352BE6·Disk·Start············0000 |
| 93 | 35 | 93 | 352BE8·Int·File·Attributes···0000 |
| 94 | ·······[Bit·0]···············0·'Binary·Data' | 94 | ·······[Bit·0]···············0·'Binary·Data' |
| 95 | 35 | 95 | 352BEA·Ext·File·Attributes···81A40000 |
| 96 | 35 | 96 | 352BEE·Local·Header·Offset···0000005D |
| 97 | 35 | 97 | 352BF2·Filename··············'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' |
| 98 | 35 | 98 | 352C18·Extra·ID·#0001········0001·'ZIP64' |
| 99 | 35 | 99 | 352C1A···Length··············0010 |
| 100 | 35 | 100 | 352C1C···Uncompressed·Size···000000000030670F |
| 101 | 35 | 101 | 352C24···Compressed·Size·····000000000030670F |
| 102 | 35 | 102 | 352C2C·CENTRAL·HEADER·#3·····02014B50 |
| 103 | 35 | 103 | 352C30·Created·Zip·Spec······2D·'4.5' |
| 104 | 35 | 104 | 352C31·Created·OS············03·'Unix' |
| 105 | 35 | 105 | 352C32·Extract·Zip·Spec······2D·'4.5' |
| 106 | 35 | 106 | 352C33·Extract·OS············00·'MS-DOS' |
| 107 | 35 | 107 | 352C34·General·Purpose·Flag··0000 |
| 108 | 35 | 108 | 352C36·Compression·Method····0000·'Stored' |
| 109 | 35 | 109 | 352C38·Last·Mod·Time·········5C87B1F1·'Tue·Apr··7·22:15:34·2026' |
| 110 | 35 | 110 | 352C3C·CRC···················B35A45F0 |
| 111 | 35 | 111 | 352C40·Compressed·Length·····FFFFFFFF |
| 112 | 35 | 112 | 352C44·Uncompressed·Length···FFFFFFFF |
| Max diff block lines reached; 1268/8792 bytes (14.42%) of diff not shown. | |||
| Offset 63, 83 lines modified | Offset 63, 83 lines modified | ||
| 63 | -rw-r--r--···0········0········0·····6285·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@cypress/xvfb/node_modules/debug/src/browser.js | 63 | -rw-r--r--···0········0········0·····6285·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@cypress/xvfb/node_modules/debug/src/browser.js |
| 64 | -rw-r--r--···0········0········0·····5929·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@cypress/xvfb/node_modules/debug/src/common.js | 64 | -rw-r--r--···0········0········0·····5929·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@cypress/xvfb/node_modules/debug/src/common.js |
| 65 | -rw-r--r--···0········0········0······331·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@cypress/xvfb/node_modules/debug/src/index.js | 65 | -rw-r--r--···0········0········0······331·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@cypress/xvfb/node_modules/debug/src/index.js |
| 66 | -rw-r--r--···0········0········0·····4415·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@cypress/xvfb/node_modules/debug/src/node.js | 66 | -rw-r--r--···0········0········0·····4415·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@cypress/xvfb/node_modules/debug/src/node.js |
| 67 | -rw-r--r--···0········0········0·····1492·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@cypress/xvfb/package.json | 67 | -rw-r--r--···0········0········0·····1492·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@cypress/xvfb/package.json |
| 68 | -rw-r--r--···0········0········0·····1141·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/LICENSE | 68 | -rw-r--r--···0········0········0·····1141·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/LICENSE |
| 69 | -rw-r--r--···0········0········0·····1582·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/README.md | 69 | -rw-r--r--···0········0········0·····1582·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/README.md |
| 70 | -rw-r--r--···0········0········0····· | 70 | -rw-r--r--···0········0········0·····1464·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/assert/strict.d.ts |
| 71 | -rw-r--r--···0········0········0···· | 71 | -rw-r--r--···0········0········0····39914·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/assert.d.ts |
| 72 | -rw-r--r--···0········0········0····2 | 72 | -rw-r--r--···0········0········0····24988·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/async_hooks.d.ts |
| 73 | -rw-r--r--···0········0········0····226 | 73 | -rw-r--r--···0········0········0····22604·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/buffer.buffer.d.ts |
| 74 | -rw-r--r--···0········0········0····8 | 74 | -rw-r--r--···0········0········0····80592·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/buffer.d.ts |
| 75 | -rw-r--r--···0········0········0····6 | 75 | -rw-r--r--···0········0········0····60054·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/child_process.d.ts |
| 76 | -rw-r--r--···0········0········0···· | 76 | -rw-r--r--···0········0········0····19527·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/cluster.d.ts |
| 77 | -rw-r--r--···0········0········0·····1303·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/compatibility/iterators.d.ts | 77 | -rw-r--r--···0········0········0·····1303·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/compatibility/iterators.d.ts |
| 78 | -rw-r--r--···0········0········0····· | 78 | -rw-r--r--···0········0········0·····4250·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/console.d.ts |
| 79 | -rw-r--r--···0········0········0······ | 79 | -rw-r--r--···0········0········0······491·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/constants.d.ts |
| 80 | -rw-r--r--···0········0········0···17 | 80 | -rw-r--r--···0········0········0···171545·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/crypto.d.ts |
| 81 | -rw-r--r--···0········0········0····2 | 81 | -rw-r--r--···0········0········0····24921·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/dgram.d.ts |
| 82 | -rw-r--r--···0········0········0····2 | 82 | -rw-r--r--···0········0········0····23968·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/diagnostics_channel.d.ts |
| 83 | -rw-r--r--···0········0········0····2 | 83 | -rw-r--r--···0········0········0····20810·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/dns/promises.d.ts |
| 84 | -rw-r--r--···0········0········0····3 | 84 | -rw-r--r--···0········0········0····34346·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/dns.d.ts |
| 85 | -rw-r--r--···0········0········0····· | 85 | -rw-r--r--···0········0········0·····6597·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/domain.d.ts |
| 86 | -rw-r--r--···0········0········0····4 | 86 | -rw-r--r--···0········0········0····47350·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/events.d.ts |
| 87 | -rw-r--r--···0········0········0····5 | 87 | -rw-r--r--···0········0········0····56792·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/fs/promises.d.ts |
| 88 | -rw-r--r--···0········0········0···197 | 88 | -rw-r--r--···0········0········0···197019·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/fs.d.ts |
| 89 | -rw-r--r--···0········0········0·····5132·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/globals.d.ts | 89 | -rw-r--r--···0········0········0·····5132·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/globals.d.ts |
| 90 | -rw-r--r--···0········0········0·····4864·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/globals.typedarray.d.ts | 90 | -rw-r--r--···0········0········0·····4864·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/globals.typedarray.d.ts |
| 91 | -rw-r--r--···0········0········0····9 | 91 | -rw-r--r--···0········0········0····95789·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/http.d.ts |
| 92 | -rw-r--r--···0········0········0···118 | 92 | -rw-r--r--···0········0········0···118137·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/http2.d.ts |
| 93 | -rw-r--r--···0········0········0····16 | 93 | -rw-r--r--···0········0········0····16812·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/https.d.ts |
| 94 | -rw-r--r--···0········0········0·····5031·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/index.d.ts | 94 | -rw-r--r--···0········0········0·····5031·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/index.d.ts |
| 95 | -rw-r--r--···0········0········0·····1 | 95 | -rw-r--r--···0········0········0·····1471·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/inspector/promises.d.ts |
| 96 | -rw-r--r--···0········0········0····12 | 96 | -rw-r--r--···0········0········0····12198·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/inspector.d.ts |
| 97 | -rw-r--r--···0········0········0···228065·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/inspector.generated.d.ts | 97 | -rw-r--r--···0········0········0···228065·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/inspector.generated.d.ts |
| 98 | -rw-r--r--···0········0········0····344 | 98 | -rw-r--r--···0········0········0····34430·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/module.d.ts |
| 99 | -rw-r--r--···0········0········0····4 | 99 | -rw-r--r--···0········0········0····43748·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/net.d.ts |
| 100 | -rw-r--r--···0········0········0····19 | 100 | -rw-r--r--···0········0········0····19193·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/os.d.ts |
| 101 | -rw-r--r--···0········0········0·····4509·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/package.json | 101 | -rw-r--r--···0········0········0·····4509·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/package.json |
| 102 | -rw-r--r--···0········0········0······194·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/path/posix.d.ts | 102 | -rw-r--r--···0········0········0······194·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/path/posix.d.ts |
| 103 | -rw-r--r--···0········0········0······194·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/path/win32.d.ts | 103 | -rw-r--r--···0········0········0······194·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/path/win32.d.ts |
| 104 | -rw-r--r--···0········0········0·····7 | 104 | -rw-r--r--···0········0········0·····7639·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/path.d.ts |
| 105 | -rw-r--r--···0········0········0····2 | 105 | -rw-r--r--···0········0········0····23452·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/perf_hooks.d.ts |
| 106 | -rw-r--r--···0········0········0···109502·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/process.d.ts | 106 | -rw-r--r--···0········0········0···109502·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/process.d.ts |
| 107 | -rw-r--r--···0········0········0····· | 107 | -rw-r--r--···0········0········0·····3780·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/punycode.d.ts |
| 108 | -rw-r--r--···0········0········0····· | 108 | -rw-r--r--···0········0········0·····6642·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/querystring.d.ts |
| 109 | -rw-r--r--···0········0········0····29 | 109 | -rw-r--r--···0········0········0····29569·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/quic.d.ts |
| 110 | -rw-r--r--···0········0········0·····64 | 110 | -rw-r--r--···0········0········0·····6418·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/readline/promises.d.ts |
| 111 | -rw-r--r--···0········0········0····2 | 111 | -rw-r--r--···0········0········0····21134·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/readline.d.ts |
| 112 | -rw-r--r--···0········0········0····18 | 112 | -rw-r--r--···0········0········0····18136·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/repl.d.ts |
| 113 | -rw-r--r--···0········0········0····· | 113 | -rw-r--r--···0········0········0·····2045·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/sea.d.ts |
| 114 | -rw-r--r--···0········0········0····5 | 114 | -rw-r--r--···0········0········0····50054·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/sqlite.d.ts |
| 115 | -rw-r--r--···0········0········0····· | 115 | -rw-r--r--···0········0········0·····4272·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/stream/consumers.d.ts |
| 116 | -rw-r--r--···0········0········0·····7347·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/stream/promises.d.ts | 116 | -rw-r--r--···0········0········0·····7347·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/stream/promises.d.ts |
| 117 | -rw-r--r--···0········0········0····11988·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/stream/web.d.ts | 117 | -rw-r--r--···0········0········0····11988·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/stream/web.d.ts |
| 118 | -rw-r--r--···0········0········0····8 | 118 | -rw-r--r--···0········0········0····88892·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/stream.d.ts |
| 119 | -rw-r--r--···0········0········0····· | 119 | -rw-r--r--···0········0········0·····1318·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/string_decoder.d.ts |
| 120 | -rw-r--r--···0········0········0····· | 120 | -rw-r--r--···0········0········0·····2707·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/test/reporters.d.ts |
| 121 | -rw-r--r--···0········0········0···10 | 121 | -rw-r--r--···0········0········0···102109·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/test.d.ts |
| 122 | -rw-r--r--···0········0········0·····3 | 122 | -rw-r--r--···0········0········0·····3383·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/timers/promises.d.ts |
| 123 | -rw-r--r--···0········0········0·····7 | 123 | -rw-r--r--···0········0········0·····7351·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/timers.d.ts |
| 124 | -rw-r--r--···0········0········0····58 | 124 | -rw-r--r--···0········0········0····58012·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/tls.d.ts |
| 125 | -rw-r--r--···0········0········0····· | 125 | -rw-r--r--···0········0········0·····3842·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/trace_events.d.ts |
| 126 | -rw-r--r--···0········0········0····218 | 126 | -rw-r--r--···0········0········0····21855·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/ts5.6/buffer.buffer.d.ts |
| 127 | -rw-r--r--···0········0········0·····3811·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts | 127 | -rw-r--r--···0········0········0·····3811·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts |
| 128 | -rw-r--r--···0········0········0·····1238·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/ts5.6/globals.typedarray.d.ts | 128 | -rw-r--r--···0········0········0·····1238·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/ts5.6/globals.typedarray.d.ts |
| 129 | -rw-r--r--···0········0········0·····5362·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/ts5.6/index.d.ts | 129 | -rw-r--r--···0········0········0·····5362·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/ts5.6/index.d.ts |
| 130 | -rw-r--r--···0········0········0·····3872·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts | 130 | -rw-r--r--···0········0········0·····3872·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts |
| 131 | -rw-r--r--···0········0········0·····5349·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/ts5.7/index.d.ts | 131 | -rw-r--r--···0········0········0·····5349·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/ts5.7/index.d.ts |
| 132 | -rw-r--r--···0········0········0····1 | 132 | -rw-r--r--···0········0········0····11152·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/tty.d.ts |
| 133 | -rw-r--r--···0········0········0····24 | 133 | -rw-r--r--···0········0········0····24534·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/url.d.ts |
| 134 | -rw-r--r--···0········0········0····23832·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/util/types.d.ts | 134 | -rw-r--r--···0········0········0····23832·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/util/types.d.ts |
| 135 | -rw-r--r--···0········0········0····6 | 135 | -rw-r--r--···0········0········0····65865·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/util.d.ts |
| 136 | -rw-r--r--···0········0········0····40 | 136 | -rw-r--r--···0········0········0····40458·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/v8.d.ts |
| 137 | -rw-r--r--···0········0········0····5 | 137 | -rw-r--r--···0········0········0····54168·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/vm.d.ts |
| 138 | -rw-r--r--···0········0········0····· | 138 | -rw-r--r--···0········0········0·····6250·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/wasi.d.ts |
| 139 | -rw-r--r--···0········0········0·····1989·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/abortcontroller.d.ts | 139 | -rw-r--r--···0········0········0·····1989·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/abortcontroller.d.ts |
| 140 | -rw-r--r--···0········0········0······902·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/blob.d.ts | 140 | -rw-r--r--···0········0········0······902·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/blob.d.ts |
| 141 | -rw-r--r--···0········0········0······149·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/console.d.ts | 141 | -rw-r--r--···0········0········0······149·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/console.d.ts |
| 142 | -rw-r--r--···0········0········0·····1449·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/crypto.d.ts | 142 | -rw-r--r--···0········0········0·····1449·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/crypto.d.ts |
| 143 | -rw-r--r--···0········0········0·····2565·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/domexception.d.ts | 143 | -rw-r--r--···0········0········0·····2565·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/domexception.d.ts |
| 144 | -rw-r--r--···0········0········0······414·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/encoding.d.ts | 144 | -rw-r--r--···0········0········0······414·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/encoding.d.ts |
| 145 | -rw-r--r--···0········0········0·····3367·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/events.d.ts | 145 | -rw-r--r--···0········0········0·····3367·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/events.d.ts |
| Offset 148, 16 lines modified | Offset 148, 16 lines modified | ||
| 148 | -rw-r--r--···0········0········0·····1113·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/messaging.d.ts | 148 | -rw-r--r--···0········0········0·····1113·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/messaging.d.ts |
| 149 | -rw-r--r--···0········0········0······891·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/navigator.d.ts | 149 | -rw-r--r--···0········0········0······891·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/navigator.d.ts |
| 150 | -rw-r--r--···0········0········0·····2551·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/performance.d.ts | 150 | -rw-r--r--···0········0········0·····2551·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/performance.d.ts |
| 151 | -rw-r--r--···0········0········0······724·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/storage.d.ts | 151 | -rw-r--r--···0········0········0······724·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/storage.d.ts |
| 152 | -rw-r--r--···0········0········0·····6707·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/streams.d.ts | 152 | -rw-r--r--···0········0········0·····6707·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/streams.d.ts |
| 153 | -rw-r--r--···0········0········0·····1557·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/timers.d.ts | 153 | -rw-r--r--···0········0········0·····1557·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/timers.d.ts |
| 154 | -rw-r--r--···0········0········0······800·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/url.d.ts | 154 | -rw-r--r--···0········0········0······800·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/web-globals/url.d.ts |
| 155 | -rw-r--r--···0········0········0···· | 155 | -rw-r--r--···0········0········0····29790·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/worker_threads.d.ts |
| 156 | -rw-r--r--···0········0········0····2 | 156 | -rw-r--r--···0········0········0····22874·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/node/zlib.d.ts |
| 157 | -rwxr-xr-x···0········0········0·····1141·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/sinonjs__fake-timers/LICENSE | 157 | -rwxr-xr-x···0········0········0·····1141·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/sinonjs__fake-timers/LICENSE |
| 158 | -rwxr-xr-x···0········0········0······728·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/sinonjs__fake-timers/README.md | 158 | -rwxr-xr-x···0········0········0······728·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/sinonjs__fake-timers/README.md |
| 159 | -rwxr-xr-x···0········0········0····12193·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/sinonjs__fake-timers/index.d.ts | 159 | -rwxr-xr-x···0········0········0····12193·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/sinonjs__fake-timers/index.d.ts |
| 160 | -rwxr-xr-x···0········0········0·····1452·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/sinonjs__fake-timers/package.json | 160 | -rwxr-xr-x···0········0········0·····1452·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/sinonjs__fake-timers/package.json |
| 161 | -rw-r--r--···0········0········0·····1141·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/sizzle/LICENSE | 161 | -rw-r--r--···0········0········0·····1141·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/sizzle/LICENSE |
| 162 | -rw-r--r--···0········0········0······454·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/sizzle/README.md | 162 | -rw-r--r--···0········0········0······454·2026-04-07·22:15:34.000000·lib/node_modules/cypress/node_modules/@types/sizzle/README.md |
| Max diff block lines reached; 6363/27294 bytes (23.31%) of diff not shown. | |||
| Offset 4, 12 lines modified | Offset 4, 12 lines modified | ||
| 4 | #·Summary\xd | 4 | #·Summary\xd |
| 5 | This·package·contains·type·definitions·for·node·(https://nodejs.org/).\xd | 5 | This·package·contains·type·definitions·for·node·(https://nodejs.org/).\xd |
| 6 | \xd | 6 | \xd |
| 7 | #·Details\xd | 7 | #·Details\xd |
| 8 | Files·were·exported·from·https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node.\xd | 8 | Files·were·exported·from·https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node.\xd |
| 9 | \xd | 9 | \xd |
| 10 | ###·Additional·Details\xd | 10 | ###·Additional·Details\xd |
| 11 | ·*·Last·updated:·Fri,· | 11 | ·*·Last·updated:·Fri,·10·Apr·2026·03:39:58·GMT\xd |
| 12 | ·*·Dependencies:·[undici-types](https://npmjs.com/package/undici-types)\xd | 12 | ·*·Dependencies:·[undici-types](https://npmjs.com/package/undici-types)\xd |
| 13 | \xd | 13 | \xd |
| 14 | #·Credits\xd | 14 | #·Credits\xd |
| 15 | These·definitions·were·written·by·[Microsoft·TypeScript](https://github.com/Microsoft),·[Alberto·Schiabel](https://github.com/jkomyno),·[Andrew·Makarov](https://github.com/r3nya),·[Benjamin·Toueg](https://github.com/btoueg),·[David·Junger](https://github.com/touffy),·[Mohsen·Azimi](https://github.com/mohsen1),·[Nikita·Galkin](https://github.com/galkin),·[Sebastian·Silbermann](https://github.com/eps1lon),·[Wilco·Bakker](https://github.com/WilcoBakker),·[Marcin·Kopacz](https://github.com/chyzwar),·[Trivikram·Kamat](https://github.com/trivikr),·[Junxiao·Shi](https://github.com/yoursunny),·[Ilia·Baryshnikov](https://github.com/qwelias),·[ExE·Boss](https://github.com/ExE-Boss),·[Piotr·Błażejewicz](https://github.com/peterblazejewicz),·[Anna·Henningsen](https://github.com/addaleax),·[Victor·Perin](https://github.com/victorperin),·[NodeJS·Contributors](https://github.com/NodeJS),·[Linus·Unnebäck](https://github.com/LinusU),·[wafuwafu13](https://github.com/wafuwafu13),·[Matteo·Collina](https://github.com/mcollina),·[Dmitry·Semigradsky](https://github.com/Semigradsky),·[René](https://github.com/Renegade334),·and·[Yagiz·Nizipli](https://github.com/anonrig).\xd | 15 | These·definitions·were·written·by·[Microsoft·TypeScript](https://github.com/Microsoft),·[Alberto·Schiabel](https://github.com/jkomyno),·[Andrew·Makarov](https://github.com/r3nya),·[Benjamin·Toueg](https://github.com/btoueg),·[David·Junger](https://github.com/touffy),·[Mohsen·Azimi](https://github.com/mohsen1),·[Nikita·Galkin](https://github.com/galkin),·[Sebastian·Silbermann](https://github.com/eps1lon),·[Wilco·Bakker](https://github.com/WilcoBakker),·[Marcin·Kopacz](https://github.com/chyzwar),·[Trivikram·Kamat](https://github.com/trivikr),·[Junxiao·Shi](https://github.com/yoursunny),·[Ilia·Baryshnikov](https://github.com/qwelias),·[ExE·Boss](https://github.com/ExE-Boss),·[Piotr·Błażejewicz](https://github.com/peterblazejewicz),·[Anna·Henningsen](https://github.com/addaleax),·[Victor·Perin](https://github.com/victorperin),·[NodeJS·Contributors](https://github.com/NodeJS),·[Linus·Unnebäck](https://github.com/LinusU),·[wafuwafu13](https://github.com/wafuwafu13),·[Matteo·Collina](https://github.com/mcollina),·[Dmitry·Semigradsky](https://github.com/Semigradsky),·[René](https://github.com/Renegade334),·and·[Yagiz·Nizipli](https://github.com/anonrig).\xd |
| Offset 1, 53 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·In·strict·assertion·mode,·non-strict·methods·behave·like·their·corresponding | ||
| 3 | ·*·strict·methods.·For·example,·`assert.deepEqual()`·will·behave·like | ||
| 4 | ·*·`assert.deepStrictEqual()`. | ||
| 5 | ·* | ||
| 6 | ·*·In·strict·assertion·mode,·error·messages·for·objects·display·a·diff.·In·legacy | ||
| 7 | ·*·assertion·mode,·error·messages·for·objects·display·the·objects,·often·truncated. | ||
| 8 | ·* | ||
| 9 | ·*·To·use·strict·assertion·mode: | ||
| 10 | ·* | ||
| 11 | ·*·```js | ||
| 12 | ·*·import·{·strict·as·assert·}·from·'node:assert'; | ||
| 13 | ·*·``` | ||
| 14 | ·* | ||
| 15 | ·*·```js | ||
| 16 | ·*·import·assert·from·'node:assert/strict'; | ||
| 17 | ·*·``` | ||
| 18 | ·* | ||
| 19 | ·*·Example·error·diff: | ||
| 20 | ·* | ||
| 21 | ·*·```js | ||
| 22 | ·*·import·{·strict·as·assert·}·from·'node:assert'; | ||
| 23 | ·* | ||
| 24 | ·*·assert.deepEqual([[[1,·2,·3]],·4,·5],·[[[1,·2,·'3']],·4,·5]); | ||
| 25 | ·*·//·AssertionError:·Expected·inputs·to·be·strictly·deep-equal: | ||
| 26 | ·*·//·+·actual·-·expected·...·Lines·skipped | ||
| 27 | ·*·// | ||
| 28 | ·*·//···[ | ||
| 29 | ·*·//·····[ | ||
| 30 | ·*·//·... | ||
| 31 | ·*·//·······2, | ||
| 32 | ·*·//·+·····3 | ||
| 33 | ·*·//·-·····'3' | ||
| 34 | ·*·//·····], | ||
| 35 | ·*·//·... | ||
| 36 | ·*·//·····5 | ||
| 37 | ·*·//···] | ||
| 38 | ·*·``` | ||
| 39 | ·* | ||
| 40 | ·*·To·deactivate·the·colors,·use·the·`NO_COLOR`·or·`NODE_DISABLE_COLORS` | ||
| 41 | ·*·environment·variables.·This·will·also·deactivate·the·colors·in·the·REPL.·For | ||
| 42 | ·*·more·on·color·support·in·terminal·environments,·read·the·tty | ||
| 43 | ·*·[`getColorDepth()`](https://nodejs.org/docs/latest-v25.x/api/tty.html#writestreamgetcolordepthenv)·documentation. | ||
| 44 | ·*·@since·v15.0.0 | ||
| 45 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/assert/strict.js) | ||
| 46 | ·*/ | ||
| 47 | declare·module·"node:assert/strict"·{ | 1 | declare·module·"node:assert/strict"·{ |
| 48 | ····import·{ | 2 | ····import·{ |
| 49 | ········Assert, | 3 | ········Assert, |
| 50 | ········AssertionError, | 4 | ········AssertionError, |
| 51 | ········AssertionErrorOptions, | 5 | ········AssertionErrorOptions, |
| 52 | ········AssertOptions, | 6 | ········AssertOptions, |
| 53 | ········AssertPredicate, | 7 | ········AssertPredicate, |
| Offset 1, 12 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:assert`·module·provides·a·set·of·assertion·functions·for·verifying | ||
| 3 | ·*·invariants. | ||
| 4 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/assert.js) | ||
| 5 | ·*/ | ||
| 6 | declare·module·"node:assert"·{ | 1 | declare·module·"node:assert"·{ |
| 7 | ····import·strict·=·require("node:assert/strict"); | 2 | ····import·strict·=·require("node:assert/strict"); |
| 8 | ····/** | 3 | ····/** |
| 9 | ·····*·An·alias·of·{@link·assert.ok}. | 4 | ·····*·An·alias·of·{@link·assert.ok}. |
| 10 | ·····*·@since·v0.5.9 | 5 | ·····*·@since·v0.5.9 |
| 11 | ·····*·@param·value·The·input·that·is·checked·for·being·truthy. | 6 | ·····*·@param·value·The·input·that·is·checked·for·being·truthy. |
| 12 | ·····*/ | 7 | ·····*/ |
| Offset 1, 23 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·We·strongly·discourage·the·use·of·the·`async_hooks`·API. | ||
| 3 | ·*·Other·APIs·that·can·cover·most·of·its·use·cases·include: | ||
| 4 | ·* | ||
| 5 | ·*·*·[`AsyncLocalStorage`](https://nodejs.org/docs/latest-v25.x/api/async_context.html#class-asynclocalstorage)·tracks·async·context | ||
| 6 | ·*·*·[`process.getActiveResourcesInfo()`](https://nodejs.org/docs/latest-v25.x/api/process.html#processgetactiveresourcesinfo)·tracks·active·resources | ||
| 7 | ·* | ||
| 8 | ·*·The·`node:async_hooks`·module·provides·an·API·to·track·asynchronous·resources. | ||
| 9 | ·*·It·can·be·accessed·using: | ||
| 10 | ·* | ||
| 11 | ·*·```js | ||
| 12 | ·*·import·async_hooks·from·'node:async_hooks'; | ||
| 13 | ·*·``` | ||
| 14 | ·*·@experimental | ||
| 15 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/async_hooks.js) | ||
| 16 | ·*/ | ||
| 17 | declare·module·"node:async_hooks"·{ | 1 | declare·module·"node:async_hooks"·{ |
| 18 | ····/** | 2 | ····/** |
| 19 | ·····*·```js | 3 | ·····*·```js |
| 20 | ·····*·import·{·executionAsyncId·}·from·'node:async_hooks'; | 4 | ·····*·import·{·executionAsyncId·}·from·'node:async_hooks'; |
| 21 | ·····*·import·fs·from·'node:fs'; | 5 | ·····*·import·fs·from·'node:fs'; |
| 22 | ·····* | 6 | ·····* |
| 23 | ·····*·console.log(executionAsyncId());··//·1·-·bootstrap | 7 | ·····*·console.log(executionAsyncId());··//·1·-·bootstrap |
| Offset 119, 45 lines modified | Offset 103, 39 lines modified | ||
| 119 | ·····*·Promise·contexts·may·not·get·valid·`triggerAsyncId`s·by·default.·See | 103 | ·····*·Promise·contexts·may·not·get·valid·`triggerAsyncId`s·by·default.·See |
| 120 | ·····*·the·section·on·[promise·execution·tracking](https://nodejs.org/docs/latest-v25.x/api/async_hooks.html#promise-execution-tracking). | 104 | ·····*·the·section·on·[promise·execution·tracking](https://nodejs.org/docs/latest-v25.x/api/async_hooks.html#promise-execution-tracking). |
| 121 | ·····*·@return·The·ID·of·the·resource·responsible·for·calling·the·callback·that·is·currently·being·executed. | 105 | ·····*·@return·The·ID·of·the·resource·responsible·for·calling·the·callback·that·is·currently·being·executed. |
| 122 | ·····*/ | 106 | ·····*/ |
| 123 | ····function·triggerAsyncId():·number; | 107 | ····function·triggerAsyncId():·number; |
| 124 | ····interface·HookCallbacks·{ | 108 | ····interface·HookCallbacks·{ |
| 125 | ········/** | 109 | ········/** |
| 110 | ·········*·The·[`init`·callback](https://nodejs.org/docs/latest-v25.x/api/async_hooks.html#initasyncid-type-triggerasyncid-resource). | ||
| 126 | ·········*·Called·when·a·class·is·constructed·that·has·the·possibility·to·emit·an·asynchronous·event. | ||
| 127 | ·········*·@param·asyncId·A·unique·ID·for·the·async·resource | ||
| 128 | ·········*·@param·type·The·type·of·the·async·resource | ||
| 129 | ·········*·@param·triggerAsyncId·The·unique·ID·of·the·async·resource·in·whose·execution·context·this·async·resource·was·created | ||
| 130 | ·········*·@param·resource·Reference·to·the·resource·representing·the·async·operation,·needs·to·be·released·during·destroy | ||
| 131 | ·········*/ | 111 | ·········*/ |
| 132 | ········init?(asyncId:·number,·type:·string,·triggerAsyncId:·number,·resource:·object):·void; | 112 | ········init?(asyncId:·number,·type:·string,·triggerAsyncId:·number,·resource:·object):·void; |
| 133 | ········/** | 113 | ········/** |
| 114 | ·········*·The·[`before`·callback](https://nodejs.org/docs/latest-v25.x/api/async_hooks.html#beforeasyncid). | ||
| 134 | ·········*·When·an·asynchronous·operation·is·initiated·or·completes·a·callback·is·called·to·notify·the·user. | ||
| 135 | ·········*·The·before·callback·is·called·just·before·said·callback·is·executed. | ||
| 136 | ·········*·@param·asyncId·the·unique·identifier·assigned·to·the·resource·about·to·execute·the·callback. | ||
| 137 | ·········*/ | 115 | ·········*/ |
| 138 | ········before?(asyncId:·number):·void; | 116 | ········before?(asyncId:·number):·void; |
| 139 | ········/** | 117 | ········/** |
| 118 | ·········*·The·[`after`·callback](https://nodejs.org/docs/latest-v25.x/api/async_hooks.html#afterasyncid). | ||
| 140 | ·········*·Called·immediately·after·the·callback·specified·in·`before`·is·completed. | ||
| 141 | ·········* | ||
| 142 | ·········*·If·an·uncaught·exception·occurs·during·execution·of·the·callback,·then·`after`·will·run·after·the·`'uncaughtException'`·event·is·emitted·or·a·`domain`'s·handler·runs. | ||
| 143 | ·········*·@param·asyncId·the·unique·identifier·assigned·to·the·resource·which·has·executed·the·callback. | ||
| 144 | ·········*/ | 119 | ·········*/ |
| 145 | ········after?(asyncId:·number):·void; | 120 | ········after?(asyncId:·number):·void; |
| 146 | ········/** | 121 | ········/** |
| 122 | ·········*·The·[`promiseResolve`·callback](https://nodejs.org/docs/latest-v25.x/api/async_hooks.html#promiseresolveasyncid). | ||
| 147 | ·········*·Called·when·a·promise·has·resolve()·called.·This·may·not·be·in·the·same·execution·id | ||
| 148 | ·········*·as·the·promise·itself. | ||
| 149 | ·········*·@param·asyncId·the·unique·id·for·the·promise·that·was·resolve()d. | ||
| 150 | ·········*/ | 123 | ·········*/ |
| 151 | ········promiseResolve?(asyncId:·number):·void; | 124 | ········promiseResolve?(asyncId:·number):·void; |
| 152 | ········/** | 125 | ········/** |
| 126 | ·········*·The·[`destroy`·callback](https://nodejs.org/docs/latest-v25.x/api/async_hooks.html#destroyasyncid). | ||
| 153 | ·········*·Called·after·the·resource·corresponding·to·asyncId·is·destroyed | ||
| 154 | ·········*·@param·asyncId·a·unique·ID·for·the·async·resource | ||
| 155 | ·········*/ | 127 | ·········*/ |
| 156 | ········destroy?(asyncId:·number):·void; | 128 | ········destroy?(asyncId:·number):·void; |
| 129 | ········/** | ||
| 130 | ·········*·Whether·the·hook·should·track·`Promise`s.·Cannot·be·`false`·if | ||
| 131 | ·········*·`promiseResolve`·is·set. | ||
| 132 | ·········*·@default·true | ||
| 133 | ·········*/ | ||
| 134 | ········trackPromises?:·boolean·|·undefined; | ||
| 157 | ····} | 135 | ····} |
| 158 | ····interface·AsyncHook·{ | 136 | ····interface·AsyncHook·{ |
| 159 | ········/** | 137 | ········/** |
| 160 | ·········*·Enable·the·callbacks·for·a·given·AsyncHook·instance.·If·no·callbacks·are·provided·enabling·is·a·noop. | 138 | ·········*·Enable·the·callbacks·for·a·given·AsyncHook·instance.·If·no·callbacks·are·provided·enabling·is·a·noop. |
| 161 | ·········*/ | 139 | ·········*/ |
| 162 | ········enable():·this; | 140 | ········enable():·this; |
| 163 | ········/** | 141 | ········/** |
| Offset 170, 15 lines modified | Offset 148, 16 lines modified | ||
| 170 | ·····*·operation. | 148 | ·····*·operation. |
| 171 | ·····* | 149 | ·····* |
| 172 | ·····*·The·callbacks·`init()`/`before()`/`after()`/`destroy()`·are·called·for·the | 150 | ·····*·The·callbacks·`init()`/`before()`/`after()`/`destroy()`·are·called·for·the |
| 173 | ·····*·respective·asynchronous·event·during·a·resource's·lifetime. | 151 | ·····*·respective·asynchronous·event·during·a·resource's·lifetime. |
| 174 | ·····* | 152 | ·····* |
| 175 | ·····*·All·callbacks·are·optional.·For·example,·if·only·resource·cleanup·needs·to | 153 | ·····*·All·callbacks·are·optional.·For·example,·if·only·resource·cleanup·needs·to |
| 176 | ·····*·be·tracked,·then·only·the·`destroy`·callback·needs·to·be·passed.·The | 154 | ·····*·be·tracked,·then·only·the·`destroy`·callback·needs·to·be·passed.·The |
| 177 | ·····*·specifics·of·all·functions·that·can·be·passed·to·`callbacks`·is·in·the | 155 | ·····*·specifics·of·all·functions·that·can·be·passed·to·`callbacks`·is·in·the |
| 156 | ·····*·[Hook·Callbacks](https://nodejs.org/docs/latest-v25.x/api/async_hooks.html#hook-callbacks)·section. | ||
| 178 | ·····* | 157 | ·····* |
| 179 | ·····*·```js | 158 | ·····*·```js |
| 180 | ·····*·import·{·createHook·}·from·'node:async_hooks'; | 159 | ·····*·import·{·createHook·}·from·'node:async_hooks'; |
| 181 | ·····* | 160 | ·····* |
| 182 | ·····*·const·asyncHook·=·createHook({ | 161 | ·····*·const·asyncHook·=·createHook({ |
| 183 | ·····*···init(asyncId,·type,·triggerAsyncId,·resource)·{·}, | 162 | ·····*···init(asyncId,·type,·triggerAsyncId,·resource)·{·}, |
| 184 | ·····*···destroy(asyncId)·{·}, | 163 | ·····*···destroy(asyncId)·{·}, |
| Offset 198, 20 lines modified | Offset 177, 21 lines modified | ||
| 198 | ·····*···after(asyncId)·{·} | 177 | ·····*···after(asyncId)·{·} |
| Max diff block lines reached; 1204/6427 bytes (18.73%) of diff not shown. | |||
| Offset 170, 15 lines modified | Offset 170, 15 lines modified | ||
| 170 | ·············*·Returns·a·new·`Buffer`·which·is·the·result·of·concatenating·all·the·`Buffer`·instances·in·the·`list`·together. | 170 | ·············*·Returns·a·new·`Buffer`·which·is·the·result·of·concatenating·all·the·`Buffer`·instances·in·the·`list`·together. |
| 171 | ·············* | 171 | ·············* |
| 172 | ·············*·If·the·list·has·no·items,·or·if·the·`totalLength`·is·0,·then·a·new·zero-length·`Buffer`·is·returned. | 172 | ·············*·If·the·list·has·no·items,·or·if·the·`totalLength`·is·0,·then·a·new·zero-length·`Buffer`·is·returned. |
| 173 | ·············* | 173 | ·············* |
| 174 | ·············*·If·`totalLength`·is·not·provided,·it·is·calculated·from·the·`Buffer`·instances | 174 | ·············*·If·`totalLength`·is·not·provided,·it·is·calculated·from·the·`Buffer`·instances |
| 175 | ·············*·in·`list`·by·adding·their·lengths. | 175 | ·············*·in·`list`·by·adding·their·lengths. |
| 176 | ·············* | 176 | ·············* |
| 177 | ·············*·If·`totalLength`·is·provided,·it· | 177 | ·············*·If·`totalLength`·is·provided,·it·must·be·an·unsigned·integer.·If·the |
| 178 | ·············*·combined·length·of·the·`Buffer`s·in·`list`·exceeds·`totalLength`,·the·result·is | 178 | ·············*·combined·length·of·the·`Buffer`s·in·`list`·exceeds·`totalLength`,·the·result·is |
| 179 | ·············*·truncated·to·`totalLength`.·If·the·combined·length·of·the·`Buffer`s·in·`list`·is | 179 | ·············*·truncated·to·`totalLength`.·If·the·combined·length·of·the·`Buffer`s·in·`list`·is |
| 180 | ·············*·less·than·`totalLength`,·the·remaining·space·is·filled·with·zeros. | 180 | ·············*·less·than·`totalLength`,·the·remaining·space·is·filled·with·zeros. |
| 181 | ·············* | 181 | ·············* |
| 182 | ·············*·```js | 182 | ·············*·```js |
| 183 | ·············*·import·{·Buffer·}·from·'node:buffer'; | 183 | ·············*·import·{·Buffer·}·from·'node:buffer'; |
| 184 | ·············* | 184 | ·············* |
| Offset 1, 52 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·`Buffer`·objects·are·used·to·represent·a·fixed-length·sequence·of·bytes.·Many | ||
| 3 | ·*·Node.js·APIs·support·`Buffer`s. | ||
| 4 | ·* | ||
| 5 | ·*·The·`Buffer`·class·is·a·subclass·of·JavaScript's·[`Uint8Array`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array)·class·and | ||
| 6 | ·*·extends·it·with·methods·that·cover·additional·use·cases.·Node.js·APIs·accept | ||
| 7 | ·*·plain·[`Uint8Array`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array)·s·wherever·`Buffer`s·are·supported·as·well. | ||
| 8 | ·* | ||
| 9 | ·*·While·the·`Buffer`·class·is·available·within·the·global·scope,·it·is·still | ||
| 10 | ·*·recommended·to·explicitly·reference·it·via·an·import·or·require·statement. | ||
| 11 | ·* | ||
| 12 | ·*·```js | ||
| 13 | ·*·import·{·Buffer·}·from·'node:buffer'; | ||
| 14 | ·* | ||
| 15 | ·*·//·Creates·a·zero-filled·Buffer·of·length·10. | ||
| 16 | ·*·const·buf1·=·Buffer.alloc(10); | ||
| 17 | ·* | ||
| 18 | ·*·//·Creates·a·Buffer·of·length·10, | ||
| 19 | ·*·//·filled·with·bytes·which·all·have·the·value·`1`. | ||
| 20 | ·*·const·buf2·=·Buffer.alloc(10,·1); | ||
| 21 | ·* | ||
| 22 | ·*·//·Creates·an·uninitialized·buffer·of·length·10. | ||
| 23 | ·*·//·This·is·faster·than·calling·Buffer.alloc()·but·the·returned | ||
| 24 | ·*·//·Buffer·instance·might·contain·old·data·that·needs·to·be | ||
| 25 | ·*·//·overwritten·using·fill(),·write(),·or·other·functions·that·fill·the·Buffer's | ||
| 26 | ·*·//·contents. | ||
| 27 | ·*·const·buf3·=·Buffer.allocUnsafe(10); | ||
| 28 | ·* | ||
| 29 | ·*·//·Creates·a·Buffer·containing·the·bytes·[1,·2,·3]. | ||
| 30 | ·*·const·buf4·=·Buffer.from([1,·2,·3]); | ||
| 31 | ·* | ||
| 32 | ·*·//·Creates·a·Buffer·containing·the·bytes·[1,·1,·1,·1]·–·the·entries | ||
| 33 | ·*·//·are·all·truncated·using·`(value·&·255)`·to·fit·into·the·range·0–255. | ||
| 34 | ·*·const·buf5·=·Buffer.from([257,·257.5,·-255,·'1']); | ||
| 35 | ·* | ||
| 36 | ·*·//·Creates·a·Buffer·containing·the·UTF-8-encoded·bytes·for·the·string·'tést': | ||
| 37 | ·*·//·[0x74,·0xc3,·0xa9,·0x73,·0x74]·(in·hexadecimal·notation) | ||
| 38 | ·*·//·[116,·195,·169,·115,·116]·(in·decimal·notation) | ||
| 39 | ·*·const·buf6·=·Buffer.from('tést'); | ||
| 40 | ·* | ||
| 41 | ·*·//·Creates·a·Buffer·containing·the·Latin-1·bytes·[0x74,·0xe9,·0x73,·0x74]. | ||
| 42 | ·*·const·buf7·=·Buffer.from('tést',·'latin1'); | ||
| 43 | ·*·``` | ||
| 44 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/buffer.js) | ||
| 45 | ·*/ | ||
| 46 | declare·module·"node:buffer"·{ | 1 | declare·module·"node:buffer"·{ |
| 47 | ····import·{·ReadableStream·}·from·"node:stream/web"; | 2 | ····import·{·ReadableStream·}·from·"node:stream/web"; |
| 48 | ····/** | 3 | ····/** |
| 49 | ·····*·This·function·returns·`true`·if·`input`·contains·only·valid·UTF-8-encoded·data, | 4 | ·····*·This·function·returns·`true`·if·`input`·contains·only·valid·UTF-8-encoded·data, |
| 50 | ·····*·including·the·case·in·which·`input`·is·empty. | 5 | ·····*·including·the·case·in·which·`input`·is·empty. |
| 51 | ·····* | 6 | ·····* |
| 52 | ·····*·Throws·if·the·`input`·is·a·detached·array·buffer. | 7 | ·····*·Throws·if·the·`input`·is·a·detached·array·buffer. |
| Offset 1, 74 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:child_process`·module·provides·the·ability·to·spawn·subprocesses·in | ||
| 3 | ·*·a·manner·that·is·similar,·but·not·identical,·to·[`popen(3)`](http://man7.org/linux/man-pages/man3/popen.3.html).·This·capability | ||
| 4 | ·*·is·primarily·provided·by·the·{@link·spawn}·function: | ||
| 5 | ·* | ||
| 6 | ·*·```js | ||
| 7 | ·*·import·{·spawn·}·from·'node:child_process'; | ||
| 8 | ·*·import·{·once·}·from·'node:events'; | ||
| 9 | ·*·const·ls·=·spawn('ls',·['-lh',·'/usr']); | ||
| 10 | ·* | ||
| 11 | ·*·ls.stdout.on('data',·(data)·=>·{ | ||
| 12 | ·*···console.log(`stdout:·${data}`); | ||
| 13 | ·*·}); | ||
| 14 | ·* | ||
| 15 | ·*·ls.stderr.on('data',·(data)·=>·{ | ||
| 16 | ·*···console.error(`stderr:·${data}`); | ||
| 17 | ·*·}); | ||
| 18 | ·* | ||
| 19 | ·*·const·[code]·=·await·once(ls,·'close'); | ||
| 20 | ·*·console.log(`child·process·exited·with·code·${code}`); | ||
| 21 | ·*·``` | ||
| 22 | ·* | ||
| 23 | ·*·By·default,·pipes·for·`stdin`,·`stdout`,·and·`stderr`·are·established·between | ||
| 24 | ·*·the·parent·Node.js·process·and·the·spawned·subprocess.·These·pipes·have | ||
| 25 | ·*·limited·(and·platform-specific)·capacity.·If·the·subprocess·writes·to | ||
| 26 | ·*·stdout·in·excess·of·that·limit·without·the·output·being·captured,·the | ||
| 27 | ·*·subprocess·blocks,·waiting·for·the·pipe·buffer·to·accept·more·data.·This·is | ||
| 28 | ·*·identical·to·the·behavior·of·pipes·in·the·shell.·Use·the·`{·stdio:·'ignore'·}`·option·if·the·output·will·not·be·consumed. | ||
| 29 | ·* | ||
| 30 | ·*·The·command·lookup·is·performed·using·the·`options.env.PATH`·environment | ||
| 31 | ·*·variable·if·`env`·is·in·the·`options`·object.·Otherwise,·`process.env.PATH`·is | ||
| 32 | ·*·used.·If·`options.env`·is·set·without·`PATH`,·lookup·on·Unix·is·performed | ||
| 33 | ·*·on·a·default·search·path·search·of·`/usr/bin:/bin`·(see·your·operating·system's | ||
| 34 | ·*·manual·for·execvpe/execvp),·on·Windows·the·current·processes·environment | ||
| 35 | ·*·variable·`PATH`·is·used. | ||
| 36 | ·* | ||
| 37 | ·*·On·Windows,·environment·variables·are·case-insensitive.·Node.js | ||
| 38 | ·*·lexicographically·sorts·the·`env`·keys·and·uses·the·first·one·that | ||
| 39 | ·*·case-insensitively·matches.·Only·first·(in·lexicographic·order)·entry·will·be | ||
| 40 | ·*·passed·to·the·subprocess.·This·might·lead·to·issues·on·Windows·when·passing | ||
| 41 | ·*·objects·to·the·`env`·option·that·have·multiple·variants·of·the·same·key,·such·as·`PATH`·and·`Path`. | ||
| 42 | ·* | ||
| 43 | ·*·The·{@link·spawn}·method·spawns·the·child·process·asynchronously, | ||
| 44 | ·*·without·blocking·the·Node.js·event·loop.·The·{@link·spawnSync}·function·provides·equivalent·functionality·in·a·synchronous·manner·that·blocks | ||
| 45 | ·*·the·event·loop·until·the·spawned·process·either·exits·or·is·terminated. | ||
| 46 | ·* | ||
| 47 | ·*·For·convenience,·the·`node:child_process`·module·provides·a·handful·of | ||
| 48 | ·*·synchronous·and·asynchronous·alternatives·to·{@link·spawn}·and·{@link·spawnSync}.·Each·of·these·alternatives·are·implemented·on | ||
| 49 | ·*·top·of·{@link·spawn}·or·{@link·spawnSync}. | ||
| 50 | ·* | ||
| 51 | ·*·*·{@link·exec}:·spawns·a·shell·and·runs·a·command·within·that | ||
| 52 | ·*·shell,·passing·the·`stdout`·and·`stderr`·to·a·callback·function·when | ||
| 53 | ·*·complete. | ||
| 54 | ·*·*·{@link·execFile}:·similar·to·{@link·exec}·except | ||
| 55 | ·*·that·it·spawns·the·command·directly·without·first·spawning·a·shell·by | ||
| 56 | ·*·default. | ||
| 57 | ·*·*·{@link·fork}:·spawns·a·new·Node.js·process·and·invokes·a | ||
| 58 | ·*·specified·module·with·an·IPC·communication·channel·established·that·allows | ||
| 59 | ·*·sending·messages·between·parent·and·child. | ||
| 60 | ·*·*·{@link·execSync}:·a·synchronous·version·of·{@link·exec}·that·will·block·the·Node.js·event·loop. | ||
| 61 | ·*·*·{@link·execFileSync}:·a·synchronous·version·of·{@link·execFile}·that·will·block·the·Node.js·event·loop. | ||
| 62 | ·* | ||
| 63 | ·*·For·certain·use·cases,·such·as·automating·shell·scripts,·the·`synchronous·counterparts`·may·be·more·convenient.·In·many·cases,·however, | ||
| 64 | ·*·the·synchronous·methods·can·have·significant·impact·on·performance·due·to | ||
| 65 | ·*·stalling·the·event·loop·while·spawned·processes·complete. | ||
| 66 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/child_process.js) | ||
| 67 | ·*/ | ||
| 68 | declare·module·"node:child_process"·{ | 1 | declare·module·"node:child_process"·{ |
| 69 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; |
| 70 | ····import·*·as·dgram·from·"node:dgram"; | 3 | ····import·*·as·dgram·from·"node:dgram"; |
| 71 | ····import·{·Abortable,·EventEmitter,·InternalEventEmitter·}·from·"node:events"; | 4 | ····import·{·Abortable,·EventEmitter,·InternalEventEmitter·}·from·"node:events"; |
| 72 | ····import·*·as·net·from·"node:net"; | 5 | ····import·*·as·net·from·"node:net"; |
| 73 | ····import·{·Readable,·Stream,·Writable·}·from·"node:stream"; | 6 | ····import·{·Readable,·Stream,·Writable·}·from·"node:stream"; |
| 74 | ····import·{·URL·}·from·"node:url"; | 7 | ····import·{·URL·}·from·"node:url"; |
| Offset 1, 61 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·Clusters·of·Node.js·processes·can·be·used·to·run·multiple·instances·of·Node.js | ||
| 3 | ·*·that·can·distribute·workloads·among·their·application·threads.·When·process·isolation | ||
| 4 | ·*·is·not·needed,·use·the·[`worker_threads`](https://nodejs.org/docs/latest-v25.x/api/worker_threads.html) | ||
| 5 | ·*·module·instead,·which·allows·running·multiple·application·threads·within·a·single·Node.js·instance. | ||
| 6 | ·* | ||
| 7 | ·*·The·cluster·module·allows·easy·creation·of·child·processes·that·all·share | ||
| 8 | ·*·server·ports. | ||
| 9 | ·* | ||
| 10 | ·*·```js | ||
| 11 | ·*·import·cluster·from·'node:cluster'; | ||
| 12 | ·*·import·http·from·'node:http'; | ||
| 13 | ·*·import·{·availableParallelism·}·from·'node:os'; | ||
| 14 | ·*·import·process·from·'node:process'; | ||
| 15 | ·* | ||
| 16 | ·*·const·numCPUs·=·availableParallelism(); | ||
| 17 | ·* | ||
| 18 | ·*·if·(cluster.isPrimary)·{ | ||
| 19 | ·*···console.log(`Primary·${process.pid}·is·running`); | ||
| 20 | ·* | ||
| 21 | ·*···//·Fork·workers. | ||
| 22 | ·*···for·(let·i·=·0;·i·<·numCPUs;·i++)·{ | ||
| 23 | ·*·····cluster.fork(); | ||
| 24 | ·*···} | ||
| 25 | ·* | ||
| 26 | ·*···cluster.on('exit',·(worker,·code,·signal)·=>·{ | ||
| 27 | ·*·····console.log(`worker·${worker.process.pid}·died`); | ||
| 28 | ·*···}); | ||
| 29 | ·*·}·else·{ | ||
| 30 | ·*···//·Workers·can·share·any·TCP·connection | ||
| 31 | ·*···//·In·this·case·it·is·an·HTTP·server | ||
| 32 | ·*···http.createServer((req,·res)·=>·{ | ||
| 33 | ·*·····res.writeHead(200); | ||
| 34 | ·*·····res.end('hello·world\n'); | ||
| 35 | ·*···}).listen(8000); | ||
| 36 | ·* | ||
| 37 | ·*···console.log(`Worker·${process.pid}·started`); | ||
| 38 | ·*·} | ||
| 39 | ·*·``` | ||
| 40 | ·* | ||
| 41 | ·*·Running·Node.js·will·now·share·port·8000·between·the·workers: | ||
| 42 | ·* | ||
| 43 | ·*·```console | ||
| 44 | ·*·$·node·server.js | ||
| 45 | ·*·Primary·3596·is·running | ||
| 46 | ·*·Worker·4324·started | ||
| 47 | ·*·Worker·4520·started | ||
| 48 | ·*·Worker·6056·started | ||
| 49 | ·*·Worker·5644·started | ||
| 50 | ·*·``` | ||
| 51 | ·* | ||
| 52 | ·*·On·Windows,·it·is·not·yet·possible·to·set·up·a·named·pipe·server·in·a·worker. | ||
| 53 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/cluster.js) | ||
| 54 | ·*/ | ||
| 55 | declare·module·"node:cluster"·{ | 1 | declare·module·"node:cluster"·{ |
| 56 | ····import·*·as·child_process·from·"node:child_process"; | 2 | ····import·*·as·child_process·from·"node:child_process"; |
| 57 | ····import·{·EventEmitter,·InternalEventEmitter·}·from·"node:events"; | 3 | ····import·{·EventEmitter,·InternalEventEmitter·}·from·"node:events"; |
| 58 | ····class·Worker·implements·EventEmitter·{ | 4 | ····class·Worker·implements·EventEmitter·{ |
| 59 | ········constructor(options?:·cluster.WorkerOptions); | 5 | ········constructor(options?:·cluster.WorkerOptions); |
| 60 | ········/** | 6 | ········/** |
| 61 | ·········*·Each·new·worker·is·given·its·own·unique·id,·this·id·is·stored·in·the·`id`. | 7 | ·········*·Each·new·worker·is·given·its·own·unique·id,·this·id·is·stored·in·the·`id`. |
| Offset 1, 65 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:console`·module·provides·a·simple·debugging·console·that·is·similar·to | ||
| 3 | ·*·the·JavaScript·console·mechanism·provided·by·web·browsers. | ||
| 4 | ·* | ||
| 5 | ·*·The·module·exports·two·specific·components: | ||
| 6 | ·* | ||
| 7 | ·*·*·A·`Console`·class·with·methods·such·as·`console.log()`,·`console.error()`,·and·`console.warn()`·that·can·be·used·to·write·to·any·Node.js·stream. | ||
| 8 | ·*·*·A·global·`console`·instance·configured·to·write·to·[`process.stdout`](https://nodejs.org/docs/latest-v25.x/api/process.html#processstdout)·and | ||
| 9 | ·*·[`process.stderr`](https://nodejs.org/docs/latest-v25.x/api/process.html#processstderr).·The·global·`console`·can·be·used·without·importing·the·`node:console`·module. | ||
| 10 | ·* | ||
| 11 | ·*·_**Warning**_:·The·global·console·object's·methods·are·neither·consistently | ||
| 12 | ·*·synchronous·like·the·browser·APIs·they·resemble,·nor·are·they·consistently | ||
| 13 | ·*·asynchronous·like·all·other·Node.js·streams.·See·the·[`note·on·process·I/O`](https://nodejs.org/docs/latest-v25.x/api/process.html#a-note-on-process-io)·for | ||
| 14 | ·*·more·information. | ||
| 15 | ·* | ||
| 16 | ·*·Example·using·the·global·`console`: | ||
| 17 | ·* | ||
| 18 | ·*·```js | ||
| 19 | ·*·console.log('hello·world'); | ||
| 20 | ·*·//·Prints:·hello·world,·to·stdout | ||
| 21 | ·*·console.log('hello·%s',·'world'); | ||
| 22 | ·*·//·Prints:·hello·world,·to·stdout | ||
| 23 | ·*·console.error(new·Error('Whoops,·something·bad·happened')); | ||
| 24 | ·*·//·Prints·error·message·and·stack·trace·to·stderr: | ||
| 25 | ·*·//···Error:·Whoops,·something·bad·happened | ||
| 26 | ·*·//·····at·[eval]:5:15 | ||
| 27 | ·*·//·····at·Script.runInThisContext·(node:vm:132:18) | ||
| 28 | ·*·//·····at·Object.runInThisContext·(node:vm:309:38) | ||
| 29 | ·*·//·····at·node:internal/process/execution:77:19 | ||
| 30 | ·*·//·····at·[eval]-wrapper:6:22 | ||
| 31 | ·*·//·····at·evalScript·(node:internal/process/execution:76:60) | ||
| 32 | ·*·//·····at·node:internal/main/eval_string:23:3 | ||
| 33 | ·* | ||
| 34 | ·*·const·name·=·'Will·Robinson'; | ||
| 35 | ·*·console.warn(`Danger·${name}!·Danger!`); | ||
| 36 | ·*·//·Prints:·Danger·Will·Robinson!·Danger!,·to·stderr | ||
| 37 | ·*·``` | ||
| 38 | ·* | ||
| 39 | ·*·Example·using·the·`Console`·class: | ||
| 40 | ·* | ||
| 41 | ·*·```js | ||
| 42 | ·*·const·out·=·getStreamSomehow(); | ||
| 43 | ·*·const·err·=·getStreamSomehow(); | ||
| 44 | ·*·const·myConsole·=·new·console.Console(out,·err); | ||
| 45 | ·* | ||
| 46 | ·*·myConsole.log('hello·world'); | ||
| 47 | ·*·//·Prints:·hello·world,·to·out | ||
| 48 | ·*·myConsole.log('hello·%s',·'world'); | ||
| 49 | ·*·//·Prints:·hello·world,·to·out | ||
| 50 | ·*·myConsole.error(new·Error('Whoops,·something·bad·happened')); | ||
| 51 | ·*·//·Prints:·[Error:·Whoops,·something·bad·happened],·to·err | ||
| 52 | ·* | ||
| 53 | ·*·const·name·=·'Will·Robinson'; | ||
| 54 | ·*·myConsole.warn(`Danger·${name}!·Danger!`); | ||
| 55 | ·*·//·Prints:·Danger·Will·Robinson!·Danger!,·to·err | ||
| 56 | ·*·``` | ||
| 57 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/console.js) | ||
| 58 | ·*/ | ||
| 59 | declare·module·"node:console"·{ | 1 | declare·module·"node:console"·{ |
| 60 | ····import·{·InspectOptions·}·from·"node:util"; | 2 | ····import·{·InspectOptions·}·from·"node:util"; |
| 61 | ····namespace·console·{ | 3 | ····namespace·console·{ |
| 62 | ········interface·ConsoleOptions·{ | 4 | ········interface·ConsoleOptions·{ |
| 63 | ············stdout:·NodeJS.WritableStream; | 5 | ············stdout:·NodeJS.WritableStream; |
| 64 | ············stderr?:·NodeJS.WritableStream·|·undefined; | 6 | ············stderr?:·NodeJS.WritableStream·|·undefined; |
| 65 | ············/** | 7 | ············/** |
| Offset 1, 13 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·@deprecated·The·`node:constants`·module·is·deprecated.·When·requiring·access·to·constants | ||
| 3 | ·*·relevant·to·specific·Node.js·builtin·modules,·developers·should·instead·refer | ||
| 4 | ·*·to·the·`constants`·property·exposed·by·the·relevant·module.·For·instance, | ||
| 5 | ·*·`require('node:fs').constants`·and·`require('node:os').constants`. | ||
| 6 | ·*/ | ||
| 7 | declare·module·"node:constants"·{ | 1 | declare·module·"node:constants"·{ |
| 8 | ····const·constants: | 2 | ····const·constants: |
| 9 | ········&·typeof·import("node:os").constants.dlopen | 3 | ········&·typeof·import("node:os").constants.dlopen |
| 10 | ········&·typeof·import("node:os").constants.errno | 4 | ········&·typeof·import("node:os").constants.errno |
| 11 | ········&·typeof·import("node:os").constants.priority | 5 | ········&·typeof·import("node:os").constants.priority |
| 12 | ········&·typeof·import("node:os").constants.signals | 6 | ········&·typeof·import("node:os").constants.signals |
| 13 | ········&·typeof·import("node:fs").constants | 7 | ········&·typeof·import("node:fs").constants |
| Offset 1, 25 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:crypto`·module·provides·cryptographic·functionality·that·includes·a | ||
| 3 | ·*·set·of·wrappers·for·OpenSSL's·hash,·HMAC,·cipher,·decipher,·sign,·and·verify | ||
| 4 | ·*·functions. | ||
| 5 | ·* | ||
| 6 | ·*·```js | ||
| 7 | ·*·const·{·createHmac·}·=·await·import('node:crypto'); | ||
| 8 | ·* | ||
| 9 | ·*·const·secret·=·'abcdefg'; | ||
| 10 | ·*·const·hash·=·createHmac('sha256',·secret) | ||
| 11 | ·*················.update('I·love·cupcakes') | ||
| 12 | ·*················.digest('hex'); | ||
| 13 | ·*·console.log(hash); | ||
| 14 | ·*·//·Prints: | ||
| 15 | ·*·//···c0fa1bc00531bd78ef38c628449c5102aeabd49b5dc3a2a516ea6ea959d6658e | ||
| 16 | ·*·``` | ||
| 17 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/crypto.js) | ||
| 18 | ·*/ | ||
| 19 | declare·module·"node:crypto"·{ | 1 | declare·module·"node:crypto"·{ |
| 20 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; |
| 21 | ····import·*·as·stream·from·"node:stream"; | 3 | ····import·*·as·stream·from·"node:stream"; |
| 22 | ····import·{·PeerCertificate·}·from·"node:tls"; | 4 | ····import·{·PeerCertificate·}·from·"node:tls"; |
| 23 | ····/** | 5 | ····/** |
| 24 | ·····*·SPKAC·is·a·Certificate·Signing·Request·mechanism·originally·implemented·by | 6 | ·····*·SPKAC·is·a·Certificate·Signing·Request·mechanism·originally·implemented·by |
| 25 | ·····*·Netscape·and·was·specified·formally·as·part·of·HTML5's·`keygen`·element. | 7 | ·····*·Netscape·and·was·specified·formally·as·part·of·HTML5's·`keygen`·element. |
| Offset 1, 34 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:dgram`·module·provides·an·implementation·of·UDP·datagram·sockets. | ||
| 3 | ·* | ||
| 4 | ·*·```js | ||
| 5 | ·*·import·dgram·from·'node:dgram'; | ||
| 6 | ·* | ||
| 7 | ·*·const·server·=·dgram.createSocket('udp4'); | ||
| 8 | ·* | ||
| 9 | ·*·server.on('error',·(err)·=>·{ | ||
| 10 | ·*···console.error(`server·error:\n${err.stack}`); | ||
| 11 | ·*···server.close(); | ||
| 12 | ·*·}); | ||
| 13 | ·* | ||
| 14 | ·*·server.on('message',·(msg,·rinfo)·=>·{ | ||
| 15 | ·*···console.log(`server·got:·${msg}·from·${rinfo.address}:${rinfo.port}`); | ||
| 16 | ·*·}); | ||
| 17 | ·* | ||
| 18 | ·*·server.on('listening',·()·=>·{ | ||
| 19 | ·*···const·address·=·server.address(); | ||
| 20 | ·*···console.log(`server·listening·${address.address}:${address.port}`); | ||
| 21 | ·*·}); | ||
| 22 | ·* | ||
| 23 | ·*·server.bind(41234); | ||
| 24 | ·*·//·Prints:·server·listening·0.0.0.0:41234 | ||
| 25 | ·*·``` | ||
| 26 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/dgram.js) | ||
| 27 | ·*/ | ||
| 28 | declare·module·"node:dgram"·{ | 1 | declare·module·"node:dgram"·{ |
| 29 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; |
| 30 | ····import·*·as·dns·from·"node:dns"; | 3 | ····import·*·as·dns·from·"node:dns"; |
| 31 | ····import·{·Abortable,·EventEmitter,·InternalEventEmitter·}·from·"node:events"; | 4 | ····import·{·Abortable,·EventEmitter,·InternalEventEmitter·}·from·"node:events"; |
| 32 | ····import·{·AddressInfo,·BlockList·}·from·"node:net"; | 5 | ····import·{·AddressInfo,·BlockList·}·from·"node:net"; |
| 33 | ····interface·RemoteInfo·{ | 6 | ····interface·RemoteInfo·{ |
| 34 | ········address:·string; | 7 | ········address:·string; |
| Offset 1, 31 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:diagnostics_channel`·module·provides·an·API·to·create·named·channels | ||
| 3 | ·*·to·report·arbitrary·message·data·for·diagnostics·purposes. | ||
| 4 | ·* | ||
| 5 | ·*·It·can·be·accessed·using: | ||
| 6 | ·* | ||
| 7 | ·*·```js | ||
| 8 | ·*·import·diagnostics_channel·from·'node:diagnostics_channel'; | ||
| 9 | ·*·``` | ||
| 10 | ·* | ||
| 11 | ·*·It·is·intended·that·a·module·writer·wanting·to·report·diagnostics·messages | ||
| 12 | ·*·will·create·one·or·many·top-level·channels·to·report·messages·through. | ||
| 13 | ·*·Channels·may·also·be·acquired·at·runtime·but·it·is·not·encouraged | ||
| 14 | ·*·due·to·the·additional·overhead·of·doing·so.·Channels·may·be·exported·for | ||
| 15 | ·*·convenience,·but·as·long·as·the·name·is·known·it·can·be·acquired·anywhere. | ||
| 16 | ·* | ||
| 17 | ·*·If·you·intend·for·your·module·to·produce·diagnostics·data·for·others·to | ||
| 18 | ·*·consume·it·is·recommended·that·you·include·documentation·of·what·named | ||
| 19 | ·*·channels·are·used·along·with·the·shape·of·the·message·data.·Channel·names | ||
| 20 | ·*·should·generally·include·the·module·name·to·avoid·collisions·with·data·from | ||
| 21 | ·*·other·modules. | ||
| 22 | ·*·@since·v15.1.0,·v14.17.0 | ||
| 23 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/diagnostics_channel.js) | ||
| 24 | ·*/ | ||
| 25 | declare·module·"node:diagnostics_channel"·{ | 1 | declare·module·"node:diagnostics_channel"·{ |
| 26 | ····import·{·AsyncLocalStorage·}·from·"node:async_hooks"; | 2 | ····import·{·AsyncLocalStorage·}·from·"node:async_hooks"; |
| 27 | ····/** | 3 | ····/** |
| 28 | ·····*·Check·if·there·are·active·subscribers·to·the·named·channel.·This·is·helpful·if | 4 | ·····*·Check·if·there·are·active·subscribers·to·the·named·channel.·This·is·helpful·if |
| 29 | ·····*·the·message·you·want·to·send·might·be·expensive·to·prepare. | 5 | ·····*·the·message·you·want·to·send·might·be·expensive·to·prepare. |
| 30 | ·····* | 6 | ·····* |
| 31 | ·····*·This·API·is·optional·but·helpful·when·trying·to·publish·messages·from·very | 7 | ·····*·This·API·is·optional·but·helpful·when·trying·to·publish·messages·from·very |
| Offset 1, 13 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`dns.promises`·API·provides·an·alternative·set·of·asynchronous·DNS·methods | ||
| 3 | ·*·that·return·`Promise`·objects·rather·than·using·callbacks.·The·API·is·accessible | ||
| 4 | ·*·via·`import·{·promises·as·dnsPromises·}·from·'node:dns'`·or·`import·dnsPromises·from·'node:dns/promises'`. | ||
| 5 | ·*·@since·v10.6.0 | ||
| 6 | ·*/ | ||
| 7 | declare·module·"node:dns/promises"·{ | 1 | declare·module·"node:dns/promises"·{ |
| 8 | ····import·{ | 2 | ····import·{ |
| 9 | ········AnyRecord, | 3 | ········AnyRecord, |
| 10 | ········CaaRecord, | 4 | ········CaaRecord, |
| 11 | ········LookupAddress, | 5 | ········LookupAddress, |
| 12 | ········LookupAllOptions, | 6 | ········LookupAllOptions, |
| 13 | ········LookupOneOptions, | 7 | ········LookupOneOptions, |
| Offset 1, 53 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:dns`·module·enables·name·resolution.·For·example,·use·it·to·look·up·IP | ||
| 3 | ·*·addresses·of·host·names. | ||
| 4 | ·* | ||
| 5 | ·*·Although·named·for·the·[Domain·Name·System·(DNS)](https://en.wikipedia.org/wiki/Domain_Name_System),·it·does·not·always·use·the | ||
| 6 | ·*·DNS·protocol·for·lookups.·{@link·lookup}·uses·the·operating·system | ||
| 7 | ·*·facilities·to·perform·name·resolution.·It·may·not·need·to·perform·any·network | ||
| 8 | ·*·communication.·To·perform·name·resolution·the·way·other·applications·on·the·same | ||
| 9 | ·*·system·do,·use·{@link·lookup}. | ||
| 10 | ·* | ||
| 11 | ·*·```js | ||
| 12 | ·*·import·dns·from·'node:dns'; | ||
| 13 | ·* | ||
| 14 | ·*·dns.lookup('example.org',·(err,·address,·family)·=>·{ | ||
| 15 | ·*···console.log('address:·%j·family:·IPv%s',·address,·family); | ||
| 16 | ·*·}); | ||
| 17 | ·*·//·address:·"93.184.216.34"·family:·IPv4 | ||
| 18 | ·*·``` | ||
| 19 | ·* | ||
| 20 | ·*·All·other·functions·in·the·`node:dns`·module·connect·to·an·actual·DNS·server·to | ||
| 21 | ·*·perform·name·resolution.·They·will·always·use·the·network·to·perform·DNS | ||
| 22 | ·*·queries.·These·functions·do·not·use·the·same·set·of·configuration·files·used·by·{@link·lookup}·(e.g.·`/etc/hosts`).·Use·these·functions·to·always·perform | ||
| 23 | ·*·DNS·queries,·bypassing·other·name-resolution·facilities. | ||
| 24 | ·* | ||
| 25 | ·*·```js | ||
| 26 | ·*·import·dns·from·'node:dns'; | ||
| 27 | ·* | ||
| 28 | ·*·dns.resolve4('archive.org',·(err,·addresses)·=>·{ | ||
| 29 | ·*···if·(err)·throw·err; | ||
| 30 | ·* | ||
| 31 | ·*···console.log(`addresses:·${JSON.stringify(addresses)}`); | ||
| 32 | ·* | ||
| 33 | ·*···addresses.forEach((a)·=>·{ | ||
| 34 | ·*·····dns.reverse(a,·(err,·hostnames)·=>·{ | ||
| 35 | ·*·······if·(err)·{ | ||
| 36 | ·*·········throw·err; | ||
| 37 | ·*·······} | ||
| 38 | ·*·······console.log(`reverse·for·${a}:·${JSON.stringify(hostnames)}`); | ||
| 39 | ·*·····}); | ||
| 40 | ·*···}); | ||
| 41 | ·*·}); | ||
| 42 | ·*·``` | ||
| 43 | ·* | ||
| 44 | ·*·See·the·[Implementation·considerations·section](https://nodejs.org/docs/latest-v25.x/api/dns.html#implementation-considerations)·for·more·information. | ||
| 45 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/dns.js) | ||
| 46 | ·*/ | ||
| 47 | declare·module·"node:dns"·{ | 1 | declare·module·"node:dns"·{ |
| 48 | ····//·Supported·getaddrinfo·flags. | 2 | ····//·Supported·getaddrinfo·flags. |
| 49 | ····/** | 3 | ····/** |
| 50 | ·····*·Limits·returned·address·types·to·the·types·of·non-loopback·addresses·configured·on·the·system.·For·example,·IPv4·addresses·are | 4 | ·····*·Limits·returned·address·types·to·the·types·of·non-loopback·addresses·configured·on·the·system.·For·example,·IPv4·addresses·are |
| 51 | ·····*·only·returned·if·the·current·system·has·at·least·one·IPv4·address·configured. | 5 | ·····*·only·returned·if·the·current·system·has·at·least·one·IPv4·address·configured. |
| 52 | ·····*/ | 6 | ·····*/ |
| 53 | ····const·ADDRCONFIG:·number; | 7 | ····const·ADDRCONFIG:·number; |
| Offset 1, 23 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·**This·module·is·pending·deprecation.**·Once·a·replacement·API·has·been | ||
| 3 | ·*·finalized,·this·module·will·be·fully·deprecated.·Most·developers·should | ||
| 4 | ·*·**not**·have·cause·to·use·this·module.·Users·who·absolutely·must·have | ||
| 5 | ·*·the·functionality·that·domains·provide·may·rely·on·it·for·the·time·being | ||
| 6 | ·*·but·should·expect·to·have·to·migrate·to·a·different·solution | ||
| 7 | ·*·in·the·future. | ||
| 8 | ·* | ||
| 9 | ·*·Domains·provide·a·way·to·handle·multiple·different·IO·operations·as·a | ||
| 10 | ·*·single·group.·If·any·of·the·event·emitters·or·callbacks·registered·to·a | ||
| 11 | ·*·domain·emit·an·`'error'`·event,·or·throw·an·error,·then·the·domain·object | ||
| 12 | ·*·will·be·notified,·rather·than·losing·the·context·of·the·error·in·the·`process.on('uncaughtException')`·handler,·or·causing·the·program·to | ||
| 13 | ·*·exit·immediately·with·an·error·code. | ||
| 14 | ·*·@deprecated·Since·v1.4.2·-·Deprecated | ||
| 15 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/domain.js) | ||
| 16 | ·*/ | ||
| 17 | declare·module·"node:domain"·{ | 1 | declare·module·"node:domain"·{ |
| 18 | ····import·{·EventEmitter·}·from·"node:events"; | 2 | ····import·{·EventEmitter·}·from·"node:events"; |
| 19 | ····/** | 3 | ····/** |
| 20 | ·····*·The·`Domain`·class·encapsulates·the·functionality·of·routing·errors·and | 4 | ·····*·The·`Domain`·class·encapsulates·the·functionality·of·routing·errors·and |
| 21 | ·····*·uncaught·exceptions·to·the·active·`Domain`·object. | 5 | ·····*·uncaught·exceptions·to·the·active·`Domain`·object. |
| 22 | ·····* | 6 | ·····* |
| 23 | ·····*·To·handle·the·errors·that·it·catches,·listen·to·its·`'error'`·event. | 7 | ·····*·To·handle·the·errors·that·it·catches,·listen·to·its·`'error'`·event. |
| Offset 1, 43 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·Much·of·the·Node.js·core·API·is·built·around·an·idiomatic·asynchronous | ||
| 3 | ·*·event-driven·architecture·in·which·certain·kinds·of·objects·(called·"emitters") | ||
| 4 | ·*·emit·named·events·that·cause·`Function`·objects·("listeners")·to·be·called. | ||
| 5 | ·* | ||
| 6 | ·*·For·instance:·a·`net.Server`·object·emits·an·event·each·time·a·peer | ||
| 7 | ·*·connects·to·it;·a·`fs.ReadStream`·emits·an·event·when·the·file·is·opened; | ||
| 8 | ·*·a·`stream`·emits·an·event·whenever·data·is·available·to·be·read. | ||
| 9 | ·* | ||
| 10 | ·*·All·objects·that·emit·events·are·instances·of·the·`EventEmitter`·class.·These | ||
| 11 | ·*·objects·expose·an·`eventEmitter.on()`·function·that·allows·one·or·more | ||
| 12 | ·*·functions·to·be·attached·to·named·events·emitted·by·the·object.·Typically, | ||
| 13 | ·*·event·names·are·camel-cased·strings·but·any·valid·JavaScript·property·key | ||
| 14 | ·*·can·be·used. | ||
| 15 | ·* | ||
| 16 | ·*·When·the·`EventEmitter`·object·emits·an·event,·all·of·the·functions·attached | ||
| 17 | ·*·to·that·specific·event·are·called·_synchronously_.·Any·values·returned·by·the | ||
| 18 | ·*·called·listeners·are·_ignored_·and·discarded. | ||
| 19 | ·* | ||
| 20 | ·*·The·following·example·shows·a·simple·`EventEmitter`·instance·with·a·single | ||
| 21 | ·*·listener.·The·`eventEmitter.on()`·method·is·used·to·register·listeners,·while | ||
| 22 | ·*·the·`eventEmitter.emit()`·method·is·used·to·trigger·the·event. | ||
| 23 | ·* | ||
| 24 | ·*·```js | ||
| 25 | ·*·import·{·EventEmitter·}·from·'node:events'; | ||
| 26 | ·* | ||
| 27 | ·*·class·MyEmitter·extends·EventEmitter·{} | ||
| 28 | ·* | ||
| 29 | ·*·const·myEmitter·=·new·MyEmitter(); | ||
| 30 | ·*·myEmitter.on('event',·()·=>·{ | ||
| 31 | ·*···console.log('an·event·occurred!'); | ||
| 32 | ·*·}); | ||
| 33 | ·*·myEmitter.emit('event'); | ||
| 34 | ·*·``` | ||
| 35 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/events.js) | ||
| 36 | ·*/ | ||
| 37 | declare·module·"node:events"·{ | 1 | declare·module·"node:events"·{ |
| 38 | ····import·{·AsyncResource,·AsyncResourceOptions·}·from·"node:async_hooks"; | 2 | ····import·{·AsyncResource,·AsyncResourceOptions·}·from·"node:async_hooks"; |
| 39 | ····//·#region·Event·map·helpers | 3 | ····//·#region·Event·map·helpers |
| 40 | ····type·EventMap<T>·=·Record<keyof·T,·any[]>; | 4 | ····type·EventMap<T>·=·Record<keyof·T,·any[]>; |
| 41 | ····type·IfEventMap<Events·extends·EventMap<Events>,·True,·False>·=·{}·extends·Events·?·False·:·True; | 5 | ····type·IfEventMap<Events·extends·EventMap<Events>,·True,·False>·=·{}·extends·Events·?·False·:·True; |
| 42 | ····type·Args<Events·extends·EventMap<Events>,·EventName·extends·string·|·symbol>·=·IfEventMap< | 6 | ····type·Args<Events·extends·EventMap<Events>,·EventName·extends·string·|·symbol>·=·IfEventMap< |
| 43 | ········Events, | 7 | ········Events, |
| Offset 1, 17 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`fs/promises`·API·provides·asynchronous·file·system·methods·that·return | ||
| 3 | ·*·promises. | ||
| 4 | ·* | ||
| 5 | ·*·The·promise·APIs·use·the·underlying·Node.js·threadpool·to·perform·file | ||
| 6 | ·*·system·operations·off·the·event·loop·thread.·These·operations·are·not | ||
| 7 | ·*·synchronized·or·threadsafe.·Care·must·be·taken·when·performing·multiple | ||
| 8 | ·*·concurrent·modifications·on·the·same·file·or·data·corruption·may·occur. | ||
| 9 | ·*·@since·v10.0.0 | ||
| 10 | ·*/ | ||
| 11 | declare·module·"node:fs/promises"·{ | 1 | declare·module·"node:fs/promises"·{ |
| 12 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; |
| 13 | ····import·{·Abortable·}·from·"node:events"; | 3 | ····import·{·Abortable·}·from·"node:events"; |
| 14 | ····import·{·Interface·as·ReadlineInterface·}·from·"node:readline"; | 4 | ····import·{·Interface·as·ReadlineInterface·}·from·"node:readline"; |
| 15 | ····import·{ | 5 | ····import·{ |
| 16 | ········BigIntStats, | 6 | ········BigIntStats, |
| 17 | ········BigIntStatsFs, | 7 | ········BigIntStatsFs, |
| Offset 1, 27 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:fs`·module·enables·interacting·with·the·file·system·in·a | ||
| 3 | ·*·way·modeled·on·standard·POSIX·functions. | ||
| 4 | ·* | ||
| 5 | ·*·To·use·the·promise-based·APIs: | ||
| 6 | ·* | ||
| 7 | ·*·```js | ||
| 8 | ·*·import·*·as·fs·from·'node:fs/promises'; | ||
| 9 | ·*·``` | ||
| 10 | ·* | ||
| 11 | ·*·To·use·the·callback·and·sync·APIs: | ||
| 12 | ·* | ||
| 13 | ·*·```js | ||
| 14 | ·*·import·*·as·fs·from·'node:fs'; | ||
| 15 | ·*·``` | ||
| 16 | ·* | ||
| 17 | ·*·All·file·system·operations·have·synchronous,·callback,·and·promise-based | ||
| 18 | ·*·forms,·and·are·accessible·using·both·CommonJS·syntax·and·ES6·Modules·(ESM). | ||
| 19 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/fs.js) | ||
| 20 | ·*/ | ||
| 21 | declare·module·"node:fs"·{ | 1 | declare·module·"node:fs"·{ |
| 22 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; |
| 23 | ····import·{·Abortable,·EventEmitter,·InternalEventEmitter·}·from·"node:events"; | 3 | ····import·{·Abortable,·EventEmitter,·InternalEventEmitter·}·from·"node:events"; |
| 24 | ····import·{·FileHandle·}·from·"node:fs/promises"; | 4 | ····import·{·FileHandle·}·from·"node:fs/promises"; |
| 25 | ····import·*·as·stream·from·"node:stream"; | 5 | ····import·*·as·stream·from·"node:stream"; |
| 26 | ····import·{·URL·}·from·"node:url"; | 6 | ····import·{·URL·}·from·"node:url"; |
| 27 | ····/** | 7 | ····/** |
| Offset 1, 6085 lines modified | Offset 1, 5987 lines modified | ||
| 00000000:·2f2a·2a0a·202a·2054·6f20·7573·6520·7468··/**.·*·To·use·th | |||
| 00000010:·6520·4854·5450·2073·6572·7665·7220·616e··e·HTTP·server·an | |||
| 00000020:·6420·636c·6965·6e74·206f·6e65·206d·7573··d·client·one·mus | |||
| 00000030:·7420·696d·706f·7274·2074·6865·2060·6e6f··t·import·the·`no | |||
| 00000040:·6465·3a68·7474·7060·206d·6f64·756c·652e··de:http`·module. | |||
| 00000050:·0a20·2a0a·202a·2054·6865·2048·5454·5020··.·*.·*·The·HTTP· | |||
| 00000060:·696e·7465·7266·6163·6573·2069·6e20·4e6f··interfaces·in·No | |||
| 00000070:·6465·2e6a·7320·6172·6520·6465·7369·676e··de.js·are·design | |||
| 00000080:·6564·2074·6f20·7375·7070·6f72·7420·6d61··ed·to·support·ma | |||
| 00000090:·6e79·2066·6561·7475·7265·730a·202a·206f··ny·features.·*·o | |||
| 000000a0:·6620·7468·6520·7072·6f74·6f63·6f6c·2077··f·the·protocol·w | |||
| 000000b0:·6869·6368·2068·6176·6520·6265·656e·2074··hich·have·been·t | |||
| 000000c0:·7261·6469·7469·6f6e·616c·6c79·2064·6966··raditionally·dif | |||
| 000000d0:·6669·6375·6c74·2074·6f20·7573·652e·0a20··ficult·to·use..· | |||
| 000000e0:·2a20·496e·2070·6172·7469·6375·6c61·722c··*·In·particular, | |||
| 000000f0:·206c·6172·6765·2c20·706f·7373·6962·6c79···large,·possibly | |||
| 00000100:·2063·6875·6e6b·2d65·6e63·6f64·6564·2c20···chunk-encoded,· | |||
| 00000110:·6d65·7373·6167·6573·2e20·5468·6520·696e··messages.·The·in | |||
| 00000120:·7465·7266·6163·6520·6973·0a20·2a20·6361··terface·is.·*·ca | |||
| 00000130:·7265·6675·6c20·746f·206e·6576·6572·2062··reful·to·never·b | |||
| 00000140:·7566·6665·7220·656e·7469·7265·2072·6571··uffer·entire·req | |||
| 00000150:·7565·7374·7320·6f72·2072·6573·706f·6e73··uests·or·respons | |||
| 00000160:·6573·2c20·736f·2074·6865·0a20·2a20·7573··es,·so·the.·*·us | |||
| 00000170:·6572·2069·7320·6162·6c65·2074·6f20·7374··er·is·able·to·st | |||
| 00000180:·7265·616d·2064·6174·612e·0a20·2a0a·202a··ream·data..·*.·* | |||
| 00000190:·2048·5454·5020·6d65·7373·6167·6520·6865···HTTP·message·he | |||
| 000001a0:·6164·6572·7320·6172·6520·7265·7072·6573··aders·are·repres | |||
| 000001b0:·656e·7465·6420·6279·2061·6e20·6f62·6a65··ented·by·an·obje | |||
| 000001c0:·6374·206c·696b·6520·7468·6973·3a0a·202a··ct·like·this:.·* | |||
| 000001d0:·0a20·2a20·6060·606a·736f·6e0a·202a·207b··.·*·```json.·*·{ | |||
| 000001e0:·2022·636f·6e74·656e·742d·6c65·6e67·7468···"content-length | |||
| 000001f0:·223a·2022·3132·3322·2c0a·202a·2020·2022··":·"123",.·*···" | |||
| 00000200:·636f·6e74·656e·742d·7479·7065·223a·2022··content-type":·" | |||
| 00000210:·7465·7874·2f70·6c61·696e·222c·0a20·2a20··text/plain",.·*· | |||
| 00000220:·2020·2263·6f6e·6e65·6374·696f·6e22·3a20····"connection":· | |||
| 00000230:·226b·6565·702d·616c·6976·6522·2c0a·202a··"keep-alive",.·* | |||
| 00000240:·2020·2022·686f·7374·223a·2022·6578·616d·····"host":·"exam | |||
| 00000250:·706c·652e·636f·6d22·2c0a·202a·2020·2022··ple.com",.·*···" | |||
| 00000260:·6163·6365·7074·223a·2022·2a22·207d·0a20··accept":·"*"·}.· | |||
| 00000270:·2a20·6060·600a·202a·0a20·2a20·4b65·7973··*·```.·*.·*·Keys | |||
| 00000280:·2061·7265·206c·6f77·6572·6361·7365·642e···are·lowercased. | |||
| 00000290:·2056·616c·7565·7320·6172·6520·6e6f·7420···Values·are·not· | |||
| 000002a0:·6d6f·6469·6669·6564·2e0a·202a·0a20·2a20··modified..·*.·*· | |||
| 000002b0:·496e·206f·7264·6572·2074·6f20·7375·7070··In·order·to·supp | |||
| 000002c0:·6f72·7420·7468·6520·6675·6c6c·2073·7065··ort·the·full·spe | |||
| 000002d0:·6374·7275·6d20·6f66·2070·6f73·7369·626c··ctrum·of·possibl | |||
| 000002e0:·6520·4854·5450·2061·7070·6c69·6361·7469··e·HTTP·applicati | |||
| 000002f0:·6f6e·732c·2074·6865·204e·6f64·652e·6a73··ons,·the·Node.js | |||
| 00000300:·0a20·2a20·4854·5450·2041·5049·2069·7320··.·*·HTTP·API·is· | |||
| 00000310:·7665·7279·206c·6f77·2d6c·6576·656c·2e20··very·low-level.· | |||
| 00000320:·4974·2064·6561·6c73·2077·6974·6820·7374··It·deals·with·st | |||
| 00000330:·7265·616d·2068·616e·646c·696e·6720·616e··ream·handling·an | |||
| 00000340:·6420·6d65·7373·6167·650a·202a·2070·6172··d·message.·*·par | |||
| 00000350:·7369·6e67·206f·6e6c·792e·2049·7420·7061··sing·only.·It·pa | |||
| 00000360:·7273·6573·2061·206d·6573·7361·6765·2069··rses·a·message·i | |||
| 00000370:·6e74·6f20·6865·6164·6572·7320·616e·6420··nto·headers·and· | |||
| 00000380:·626f·6479·2062·7574·2069·7420·646f·6573··body·but·it·does | |||
| 00000390:·206e·6f74·0a20·2a20·7061·7273·6520·7468···not.·*·parse·th | |||
| 000003a0:·6520·6163·7475·616c·2068·6561·6465·7273··e·actual·headers | |||
| 000003b0:·206f·7220·7468·6520·626f·6479·2e0a·202a···or·the·body..·* | |||
| 000003c0:·0a20·2a20·5365·6520·606d·6573·7361·6765··.·*·See·`message | |||
| 000003d0:·2e68·6561·6465·7273·6020·666f·7220·6465··.headers`·for·de | |||
| 000003e0:·7461·696c·7320·6f6e·2068·6f77·2064·7570··tails·on·how·dup | |||
| 000003f0:·6c69·6361·7465·2068·6561·6465·7273·2061··licate·headers·a | |||
| 00000400:·7265·2068·616e·646c·6564·2e0a·202a·0a20··re·handled..·*.· | |||
| 00000410:·2a20·5468·6520·7261·7720·6865·6164·6572··*·The·raw·header | |||
| 00000420:·7320·6173·2074·6865·7920·7765·7265·2072··s·as·they·were·r | |||
| 00000430:·6563·6569·7665·6420·6172·6520·7265·7461··eceived·are·reta | |||
| 00000440:·696e·6564·2069·6e20·7468·6520·6072·6177··ined·in·the·`raw | |||
| 00000450:·4865·6164·6572·7360·2070·726f·7065·7274··Headers`·propert | |||
| 00000460:·792c·2077·6869·6368·2069·7320·616e·2061··y,·which·is·an·a | |||
| 00000470:·7272·6179·206f·6620·605b·6b65·792c·2076··rray·of·`[key,·v | |||
| 00000480:·616c·7565·2c20·6b65·7932·2c20·7661·6c75··alue,·key2,·valu | |||
| 00000490:·6532·2c20·2e2e·2e5d·602e·2046·6f72·0a20··e2,·...]`.·For.· | |||
| 000004a0:·2a20·6578·616d·706c·652c·2074·6865·2070··*·example,·the·p | |||
| 000004b0:·7265·7669·6f75·7320·6d65·7373·6167·6520··revious·message· | |||
| 000004c0:·6865·6164·6572·206f·626a·6563·7420·6d69··header·object·mi | |||
| 000004d0:·6768·7420·6861·7665·2061·2060·7261·7748··ght·have·a·`rawH | |||
| 000004e0:·6561·6465·7273·6020·6c69·7374·206c·696b··eaders`·list·lik | |||
| 000004f0:·6520·7468·6520·666f·6c6c·6f77·696e·673a··e·the·following: | |||
| 00000500:·0a20·2a0a·202a·2060·6060·6a73·0a20·2a20··.·*.·*·```js.·*· | |||
| 00000510:·5b20·2743·6f6e·5465·6e74·2d4c·656e·6774··[·'ConTent-Lengt | |||
| 00000520:·6827·2c20·2731·3233·3435·3627·2c0a·202a··h',·'123456',.·* | |||
| 00000530:·2020·2027·636f·6e74·656e·742d·4c45·4e47·····'content-LENG | |||
| 00000540:·5448·272c·2027·3132·3327·2c0a·202a·2020··TH',·'123',.·*·· | |||
| 00000550:·2027·636f·6e74·656e·742d·7479·7065·272c···'content-type', | |||
| 00000560:·2027·7465·7874·2f70·6c61·696e·272c·0a20···'text/plain',.· | |||
| 00000570:·2a20·2020·2743·4f4e·4e45·4354·494f·4e27··*···'CONNECTION' | |||
| 00000580:·2c20·276b·6565·702d·616c·6976·6527·2c0a··,·'keep-alive',. | |||
| 00000590:·202a·2020·2027·486f·7374·272c·2027·6578···*···'Host',·'ex | |||
| 000005a0:·616d·706c·652e·636f·6d27·2c0a·202a·2020··ample.com',.·*·· | |||
| 000005b0:·2027·6163·6365·7054·272c·2027·2a27·205d···'accepT',·'*'·] | |||
| 000005c0:·0a20·2a20·6060·600a·202a·2040·7365·6520··.·*·```.·*·@see· | |||
| 000005d0:·5b73·6f75·7263·655d·2868·7474·7073·3a2f··[source](https:/ | |||
| 000005e0:·2f67·6974·6875·622e·636f·6d2f·6e6f·6465··/github.com/node | |||
| 000005f0:·6a73·2f6e·6f64·652f·626c·6f62·2f76·3235··js/node/blob/v25 | |||
| 00000600:·2e78·2f6c·6962·2f68·7474·702e·6a73·290a··.x/lib/http.js). | |||
| 00000 | 00000000:·6465·636c·6172·6520·6d6f·6475·6c65·2022··declare·module·" | ||
| 00000 | 00000010:·6e6f·6465·3a68·7474·7022·207b·0a20·2020··node:http"·{.··· | ||
| Max diff block lines reached; 804039/832696 bytes (96.56%) of diff not shown. | |||
| Offset 1, 17 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:http2`·module·provides·an·implementation·of·the·[HTTP/2](https://tools.ietf.org/html/rfc7540)·protocol. | ||
| 3 | ·*·It·can·be·accessed·using: | ||
| 4 | ·* | ||
| 5 | ·*·```js | ||
| 6 | ·*·import·http2·from·'node:http2'; | ||
| 7 | ·*·``` | ||
| 8 | ·*·@since·v8.4.0 | ||
| 9 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/http2.js) | ||
| 10 | ·*/ | ||
| 11 | declare·module·"node:http2"·{ | 1 | declare·module·"node:http2"·{ |
| 12 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; |
| 13 | ····import·{·InternalEventEmitter·}·from·"node:events"; | 3 | ····import·{·InternalEventEmitter·}·from·"node:events"; |
| 14 | ····import·*·as·fs·from·"node:fs"; | 4 | ····import·*·as·fs·from·"node:fs"; |
| 15 | ····import·*·as·net·from·"node:net"; | 5 | ····import·*·as·net·from·"node:net"; |
| 16 | ····import·*·as·stream·from·"node:stream"; | 6 | ····import·*·as·stream·from·"node:stream"; |
| 17 | ····import·*·as·tls·from·"node:tls"; | 7 | ····import·*·as·tls·from·"node:tls"; |
| Offset 1, 12 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·HTTPS·is·the·HTTP·protocol·over·TLS/SSL.·In·Node.js·this·is·implemented·as·a | ||
| 3 | ·*·separate·module. | ||
| 4 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/https.js) | ||
| 5 | ·*/ | ||
| 6 | declare·module·"node:https"·{ | 1 | declare·module·"node:https"·{ |
| 7 | ····import·*·as·http·from·"node:http"; | 2 | ····import·*·as·http·from·"node:http"; |
| 8 | ····import·{·Duplex·}·from·"node:stream"; | 3 | ····import·{·Duplex·}·from·"node:stream"; |
| 9 | ····import·*·as·tls·from·"node:tls"; | 4 | ····import·*·as·tls·from·"node:tls"; |
| 10 | ····import·{·URL·}·from·"node:url"; | 5 | ····import·{·URL·}·from·"node:url"; |
| 11 | ····interface·ServerOptions< | 6 | ····interface·ServerOptions< |
| 12 | ········Request·extends·typeof·http.IncomingMessage·=·typeof·http.IncomingMessage, | 7 | ········Request·extends·typeof·http.IncomingMessage·=·typeof·http.IncomingMessage, |
| Offset 1, 13 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:inspector/promises`·module·provides·an·API·for·interacting·with·the·V8 | ||
| 3 | ·*·inspector. | ||
| 4 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/inspector/promises.js) | ||
| 5 | ·*·@since·v19.0.0 | ||
| 6 | ·*/ | ||
| 7 | declare·module·"node:inspector/promises"·{ | 1 | declare·module·"node:inspector/promises"·{ |
| 8 | ····import·{·EventEmitter·}·from·"node:events"; | 2 | ····import·{·EventEmitter·}·from·"node:events"; |
| 9 | ····export·{·close,·console,·NetworkResources,·open,·url,·waitForDebugger·}·from·"node:inspector"; | 3 | ····export·{·close,·console,·NetworkResources,·open,·url,·waitForDebugger·}·from·"node:inspector"; |
| 10 | ····/** | 4 | ····/** |
| 11 | ·····*·The·`inspector.Session`·is·used·for·dispatching·messages·to·the·V8·inspector | 5 | ·····*·The·`inspector.Session`·is·used·for·dispatching·messages·to·the·V8·inspector |
| 12 | ·····*·back-end·and·receiving·message·responses·and·notifications. | 6 | ·····*·back-end·and·receiving·message·responses·and·notifications. |
| 13 | ·····*·@since·v19.0.0 | 7 | ·····*·@since·v19.0.0 |
| Offset 1, 12 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:inspector`·module·provides·an·API·for·interacting·with·the·V8 | ||
| 3 | ·*·inspector. | ||
| 4 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/inspector.js) | ||
| 5 | ·*/ | ||
| 6 | declare·module·"node:inspector"·{ | 1 | declare·module·"node:inspector"·{ |
| 7 | ····import·{·EventEmitter·}·from·"node:events"; | 2 | ····import·{·EventEmitter·}·from·"node:events"; |
| 8 | ····/** | 3 | ····/** |
| 9 | ·····*·The·`inspector.Session`·is·used·for·dispatching·messages·to·the·V8·inspector | 4 | ·····*·The·`inspector.Session`·is·used·for·dispatching·messages·to·the·V8·inspector |
| 10 | ·····*·back-end·and·receiving·message·responses·and·notifications. | 5 | ·····*·back-end·and·receiving·message·responses·and·notifications. |
| 11 | ·····*/ | 6 | ·····*/ |
| 12 | ····class·Session·extends·EventEmitter·{ | 7 | ····class·Session·extends·EventEmitter·{ |
| Offset 1, 10 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·@since·v0.3.7 | ||
| 3 | ·*/ | ||
| 4 | declare·module·"node:module"·{ | 1 | declare·module·"node:module"·{ |
| 5 | ····import·{·URL·}·from·"node:url"; | 2 | ····import·{·URL·}·from·"node:url"; |
| 6 | ····class·Module·{ | 3 | ····class·Module·{ |
| 7 | ········constructor(id:·string,·parent?:·Module); | 4 | ········constructor(id:·string,·parent?:·Module); |
| 8 | ····} | 5 | ····} |
| 9 | ····interface·Module·extends·NodeJS.Module·{} | 6 | ····interface·Module·extends·NodeJS.Module·{} |
| 10 | ····namespace·Module·{ | 7 | ····namespace·Module·{ |
| Offset 1, 21 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·>·Stability:·2·-·Stable | ||
| 3 | ·* | ||
| 4 | ·*·The·`node:net`·module·provides·an·asynchronous·network·API·for·creating·stream-based | ||
| 5 | ·*·TCP·or·`IPC`·servers·({@link·createServer})·and·clients | ||
| 6 | ·*·({@link·createConnection}). | ||
| 7 | ·* | ||
| 8 | ·*·It·can·be·accessed·using: | ||
| 9 | ·* | ||
| 10 | ·*·```js | ||
| 11 | ·*·import·net·from·'node:net'; | ||
| 12 | ·*·``` | ||
| 13 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/net.js) | ||
| 14 | ·*/ | ||
| 15 | declare·module·"node:net"·{ | 1 | declare·module·"node:net"·{ |
| 16 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; |
| 17 | ····import·*·as·dns·from·"node:dns"; | 3 | ····import·*·as·dns·from·"node:dns"; |
| 18 | ····import·{·Abortable,·EventEmitter,·InternalEventEmitter·}·from·"node:events"; | 4 | ····import·{·Abortable,·EventEmitter,·InternalEventEmitter·}·from·"node:events"; |
| 19 | ····import·*·as·stream·from·"node:stream"; | 5 | ····import·*·as·stream·from·"node:stream"; |
| 20 | ····type·LookupFunction·=·( | 6 | ····type·LookupFunction·=·( |
| 21 | ········hostname:·string, | 7 | ········hostname:·string, |
| Offset 34, 14 lines modified | Offset 20, 15 lines modified | ||
| 34 | ········readable?:·boolean·|·undefined; | 20 | ········readable?:·boolean·|·undefined; |
| 35 | ········writable?:·boolean·|·undefined; | 21 | ········writable?:·boolean·|·undefined; |
| 36 | ········signal?:·AbortSignal·|·undefined; | 22 | ········signal?:·AbortSignal·|·undefined; |
| 37 | ········noDelay?:·boolean·|·undefined; | 23 | ········noDelay?:·boolean·|·undefined; |
| 38 | ········keepAlive?:·boolean·|·undefined; | 24 | ········keepAlive?:·boolean·|·undefined; |
| 39 | ········keepAliveInitialDelay?:·number·|·undefined; | 25 | ········keepAliveInitialDelay?:·number·|·undefined; |
| 40 | ········blockList?:·BlockList·|·undefined; | 26 | ········blockList?:·BlockList·|·undefined; |
| 27 | ········typeOfService?:·number·|·undefined; | ||
| 41 | ····} | 28 | ····} |
| 42 | ····interface·OnReadOpts·{ | 29 | ····interface·OnReadOpts·{ |
| 43 | ········buffer:·Uint8Array·|·(()·=>·Uint8Array); | 30 | ········buffer:·Uint8Array·|·(()·=>·Uint8Array); |
| 44 | ········/** | 31 | ········/** |
| 45 | ·········*·This·function·is·called·for·every·chunk·of·incoming·data. | 32 | ·········*·This·function·is·called·for·every·chunk·of·incoming·data. |
| 46 | ·········*·Two·arguments·are·passed·to·it:·the·number·of·bytes·written·to·`buffer`·and·a·reference·to·`buffer`. | 33 | ·········*·Two·arguments·are·passed·to·it:·the·number·of·bytes·written·to·`buffer`·and·a·reference·to·`buffer`. |
| 47 | ·········*·Return·`false`·from·this·function·to·implicitly·`pause()`·the·socket. | 34 | ·········*·Return·`false`·from·this·function·to·implicitly·`pause()`·the·socket. |
| Offset 228, 14 lines modified | Offset 215, 45 lines modified | ||
| 228 | ·········*·@since·v0.1.92 | 215 | ·········*·@since·v0.1.92 |
| 229 | ·········*·@param·[enable=false] | 216 | ·········*·@param·[enable=false] |
| 230 | ·········*·@param·[initialDelay=0] | 217 | ·········*·@param·[initialDelay=0] |
| 231 | ·········*·@return·The·socket·itself. | 218 | ·········*·@return·The·socket·itself. |
| 232 | ·········*/ | 219 | ·········*/ |
| 233 | ········setKeepAlive(enable?:·boolean,·initialDelay?:·number):·this; | 220 | ········setKeepAlive(enable?:·boolean,·initialDelay?:·number):·this; |
| 234 | ········/** | 221 | ········/** |
| 222 | ·········*·Returns·the·current·Type·of·Service·(TOS)·field·for·IPv4·packets·or·Traffic | ||
| 223 | ·········*·Class·for·IPv6·packets·for·this·socket. | ||
| 224 | ·········* | ||
| 225 | ·········*·`setTypeOfService()`·may·be·called·before·the·socket·is·connected;·the·value | ||
| 226 | ·········*·will·be·cached·and·applied·when·the·socket·establishes·a·connection. | ||
| 227 | ·········*·`getTypeOfService()`·will·return·the·currently·set·value·even·before·connection. | ||
| 228 | ·········* | ||
| 229 | ·········*·On·some·platforms·(e.g.,·Linux),·certain·TOS/ECN·bits·may·be·masked·or·ignored, | ||
| 230 | ·········*·and·behavior·can·differ·between·IPv4·and·IPv6·or·dual-stack·sockets.·Callers | ||
| 231 | ·········*·should·verify·platform-specific·semantics. | ||
| 232 | ·········*·@since·v25.6.0 | ||
| 233 | ·········*·@returns·The·current·TOS·value. | ||
| 234 | ·········*/ | ||
| 235 | ········getTypeOfService():·number; | ||
| 236 | ········/** | ||
| 237 | ·········*·Sets·the·Type·of·Service·(TOS)·field·for·IPv4·packets·or·Traffic·Class·for·IPv6 | ||
| 238 | ·········*·Packets·sent·from·this·socket.·This·can·be·used·to·prioritize·network·traffic. | ||
| 239 | ·········* | ||
| 240 | ·········*·`setTypeOfService()`·may·be·called·before·the·socket·is·connected;·the·value | ||
| 241 | ·········*·will·be·cached·and·applied·when·the·socket·establishes·a·connection. | ||
| 242 | ·········*·`getTypeOfService()`·will·return·the·currently·set·value·even·before·connection. | ||
| 243 | ·········* | ||
| 244 | ·········*·On·some·platforms·(e.g.,·Linux),·certain·TOS/ECN·bits·may·be·masked·or·ignored, | ||
| 245 | ·········*·and·behavior·can·differ·between·IPv4·and·IPv6·or·dual-stack·sockets.·Callers | ||
| 246 | ·········*·should·verify·platform-specific·semantics. | ||
| 247 | ·········*·@since·v25.6.0 | ||
| 248 | ·········*·@param·tos·The·TOS·value·to·set·(0-255). | ||
| 249 | ·········*·@returns·The·socket·itself. | ||
| 250 | ·········*/ | ||
| 251 | ········setTypeOfService(tos:·number):·this; | ||
| 252 | ········/** | ||
| 235 | ·········*·Returns·the·bound·`address`,·the·address·`family`·name·and·`port`·of·the | 253 | ·········*·Returns·the·bound·`address`,·the·address·`family`·name·and·`port`·of·the |
| 236 | ·········*·socket·as·reported·by·the·operating·system:`{·port:·12346,·family:·'IPv4',·address:·'127.0.0.1'·}` | 254 | ·········*·socket·as·reported·by·the·operating·system:`{·port:·12346,·family:·'IPv4',·address:·'127.0.0.1'·}` |
| 237 | ·········*·@since·v0.1.90 | 255 | ·········*·@since·v0.1.90 |
| 238 | ·········*/ | 256 | ·········*/ |
| 239 | ········address():·AddressInfo·|·{}; | 257 | ········address():·AddressInfo·|·{}; |
| 240 | ········/** | 258 | ········/** |
| 241 | ·········*·Calling·`unref()`·on·a·socket·will·allow·the·program·to·exit·if·this·is·the·only | 259 | ·········*·Calling·`unref()`·on·a·socket·will·allow·the·program·to·exit·if·this·is·the·only |
| Offset 1, 16 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:os`·module·provides·operating·system-related·utility·methods·and | ||
| 3 | ·*·properties.·It·can·be·accessed·using: | ||
| 4 | ·* | ||
| 5 | ·*·```js | ||
| 6 | ·*·import·os·from·'node:os'; | ||
| 7 | ·*·``` | ||
| 8 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/os.js) | ||
| 9 | ·*/ | ||
| 10 | declare·module·"node:os"·{ | 1 | declare·module·"node:os"·{ |
| 11 | ····import·{·NonSharedBuffer·}·from·"buffer"; | 2 | ····import·{·NonSharedBuffer·}·from·"buffer"; |
| 12 | ····interface·CpuInfo·{ | 3 | ····interface·CpuInfo·{ |
| 13 | ········model:·string; | 4 | ········model:·string; |
| 14 | ········speed:·number; | 5 | ········speed:·number; |
| 15 | ········times:·{ | 6 | ········times:·{ |
| 16 | ············/**·The·number·of·milliseconds·the·CPU·has·spent·in·user·mode.·*/ | 7 | ············/**·The·number·of·milliseconds·the·CPU·has·spent·in·user·mode.·*/ |
| Offset 118, 15 lines modified | Offset 118, 15 lines modified | ||
| 118 | ········{ | 118 | ········{ |
| 119 | ············"githubUsername":·"anonrig", | 119 | ············"githubUsername":·"anonrig", |
| 120 | ············"name":·"Yagiz·Nizipli", | 120 | ············"name":·"Yagiz·Nizipli", |
| 121 | ············"url":·"https://github.com/anonrig" | 121 | ············"url":·"https://github.com/anonrig" |
| 122 | ········} | 122 | ········} |
| 123 | ····], | 123 | ····], |
| 124 | ····"dependencies":·{ | 124 | ····"dependencies":·{ |
| 125 | ········"undici-types":·"~7.1 | 125 | ········"undici-types":·"~7.19.0" |
| 126 | ····}, | 126 | ····}, |
| 127 | ····"description":·"TypeScript·definitions·for·node", | 127 | ····"description":·"TypeScript·definitions·for·node", |
| 128 | ····"homepage":·"https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node", | 128 | ····"homepage":·"https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node", |
| 129 | ····"license":·"MIT", | 129 | ····"license":·"MIT", |
| 130 | ····"main":·"", | 130 | ····"main":·"", |
| 131 | ····"name":·"@types/node", | 131 | ····"name":·"@types/node", |
| 132 | ····"peerDependencies":·{}, | 132 | ····"peerDependencies":·{}, |
| Offset 134, 22 lines modified | Offset 134, 22 lines modified | ||
| 134 | ········"directory":·"types/node", | 134 | ········"directory":·"types/node", |
| 135 | ········"type":·"git", | 135 | ········"type":·"git", |
| 136 | ········"url":·"https://github.com/DefinitelyTyped/DefinitelyTyped.git" | 136 | ········"url":·"https://github.com/DefinitelyTyped/DefinitelyTyped.git" |
| 137 | ····}, | 137 | ····}, |
| 138 | ····"scripts":·{}, | 138 | ····"scripts":·{}, |
| 139 | ····"typeScriptVersion":·"5.3", | 139 | ····"typeScriptVersion":·"5.3", |
| 140 | ····"types":·"index.d.ts", | 140 | ····"types":·"index.d.ts", |
| 141 | ····"typesPublisherContentHash":·" | 141 | ····"typesPublisherContentHash":·"753bd9272f1c86686cc2d1bb435a7f033157f700201f64f0319742347e1ca060", |
| 142 | ····"typesVersions":·{ | 142 | ····"typesVersions":·{ |
| 143 | ········"<=5.6":·{ | 143 | ········"<=5.6":·{ |
| 144 | ············"*":·[ | 144 | ············"*":·[ |
| 145 | ················"ts5.6/*" | 145 | ················"ts5.6/*" |
| 146 | ············] | 146 | ············] |
| 147 | ········}, | 147 | ········}, |
| 148 | ········"<=5.7":·{ | 148 | ········"<=5.7":·{ |
| 149 | ············"*":·[ | 149 | ············"*":·[ |
| 150 | ················"ts5.7/*" | 150 | ················"ts5.7/*" |
| 151 | ············] | 151 | ············] |
| 152 | ········} | 152 | ········} |
| 153 | ····}, | 153 | ····}, |
| 154 | ····"version":·"25. | 154 | ····"version":·"25.6.0" |
| 155 | } | 155 | } |
| Offset 1, 16 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:path`·module·provides·utilities·for·working·with·file·and·directory | ||
| 3 | ·*·paths.·It·can·be·accessed·using: | ||
| 4 | ·* | ||
| 5 | ·*·```js | ||
| 6 | ·*·import·path·from·'node:path'; | ||
| 7 | ·*·``` | ||
| 8 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/path.js) | ||
| 9 | ·*/ | ||
| 10 | declare·module·"node:path"·{ | 1 | declare·module·"node:path"·{ |
| 11 | ····namespace·path·{ | 2 | ····namespace·path·{ |
| 12 | ········/** | 3 | ········/** |
| 13 | ·········*·A·parsed·path·object·generated·by·path.parse()·or·consumed·by·path.format(). | 4 | ·········*·A·parsed·path·object·generated·by·path.parse()·or·consumed·by·path.format(). |
| 14 | ·········*/ | 5 | ·········*/ |
| 15 | ········interface·ParsedPath·{ | 6 | ········interface·ParsedPath·{ |
| 16 | ············/** | 7 | ············/** |
| Offset 1, 38 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·This·module·provides·an·implementation·of·a·subset·of·the·W3C·[Web·Performance·APIs](https://w3c.github.io/perf-timing-primer/)·as·well·as·additional·APIs·for | ||
| 3 | ·*·Node.js-specific·performance·measurements. | ||
| 4 | ·* | ||
| 5 | ·*·Node.js·supports·the·following·[Web·Performance·APIs](https://w3c.github.io/perf-timing-primer/): | ||
| 6 | ·* | ||
| 7 | ·*·*·[High·Resolution·Time](https://www.w3.org/TR/hr-time-2) | ||
| 8 | ·*·*·[Performance·Timeline](https://w3c.github.io/performance-timeline/) | ||
| 9 | ·*·*·[User·Timing](https://www.w3.org/TR/user-timing/) | ||
| 10 | ·*·*·[Resource·Timing](https://www.w3.org/TR/resource-timing-2/) | ||
| 11 | ·* | ||
| 12 | ·*·```js | ||
| 13 | ·*·import·{·PerformanceObserver,·performance·}·from·'node:perf_hooks'; | ||
| 14 | ·* | ||
| 15 | ·*·const·obs·=·new·PerformanceObserver((items)·=>·{ | ||
| 16 | ·*···console.log(items.getEntries()[0].duration); | ||
| 17 | ·*···performance.clearMarks(); | ||
| 18 | ·*·}); | ||
| 19 | ·*·obs.observe({·type:·'measure'·}); | ||
| 20 | ·*·performance.measure('Start·to·Now'); | ||
| 21 | ·* | ||
| 22 | ·*·performance.mark('A'); | ||
| 23 | ·*·doSomeLongRunningProcess(()·=>·{ | ||
| 24 | ·*···performance.measure('A·to·Now',·'A'); | ||
| 25 | ·* | ||
| 26 | ·*···performance.mark('B'); | ||
| 27 | ·*···performance.measure('A·to·B',·'A',·'B'); | ||
| 28 | ·*·}); | ||
| 29 | ·*·``` | ||
| 30 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/perf_hooks.js) | ||
| 31 | ·*/ | ||
| 32 | declare·module·"node:perf_hooks"·{ | 1 | declare·module·"node:perf_hooks"·{ |
| 33 | ····import·{·InternalEventTargetEventProperties·}·from·"node:events"; | 2 | ····import·{·InternalEventTargetEventProperties·}·from·"node:events"; |
| 34 | ····//·#region·web·types | 3 | ····//·#region·web·types |
| 35 | ····type·EntryType·= | 4 | ····type·EntryType·= |
| 36 | ········|·"dns"·//·Node.js·only | 5 | ········|·"dns"·//·Node.js·only |
| 37 | ········|·"function"·//·Node.js·only | 6 | ········|·"function"·//·Node.js·only |
| 38 | ········|·"gc"·//·Node.js·only | 7 | ········|·"gc"·//·Node.js·only |
| Offset 1, 35 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·**The·version·of·the·punycode·module·bundled·in·Node.js·is·being·deprecated.·**In·a·future·major·version·of·Node.js·this·module·will·be·removed.·Users | ||
| 3 | ·*·currently·depending·on·the·`punycode`·module·should·switch·to·using·the | ||
| 4 | ·*·userland-provided·[Punycode.js](https://github.com/bestiejs/punycode.js)·module·instead.·For·punycode-based·URL | ||
| 5 | ·*·encoding,·see·`url.domainToASCII`·or,·more·generally,·the·`WHATWG·URL·API`. | ||
| 6 | ·* | ||
| 7 | ·*·The·`punycode`·module·is·a·bundled·version·of·the·[Punycode.js](https://github.com/bestiejs/punycode.js)·module.·It | ||
| 8 | ·*·can·be·accessed·using: | ||
| 9 | ·* | ||
| 10 | ·*·```js | ||
| 11 | ·*·import·punycode·from·'node:punycode'; | ||
| 12 | ·*·``` | ||
| 13 | ·* | ||
| 14 | ·*·[Punycode](https://tools.ietf.org/html/rfc3492)·is·a·character·encoding·scheme·defined·by·RFC·3492·that·is | ||
| 15 | ·*·primarily·intended·for·use·in·Internationalized·Domain·Names.·Because·host | ||
| 16 | ·*·names·in·URLs·are·limited·to·ASCII·characters·only,·Domain·Names·that·contain | ||
| 17 | ·*·non-ASCII·characters·must·be·converted·into·ASCII·using·the·Punycode·scheme. | ||
| 18 | ·*·For·instance,·the·Japanese·character·that·translates·into·the·English·word,·`'example'`·is·`'例'`.·The·Internationalized·Domain·Name,·`'例.com'`·(equivalent | ||
| 19 | ·*·to·`'example.com'`)·is·represented·by·Punycode·as·the·ASCII·string·`'xn--fsq.com'`. | ||
| 20 | ·* | ||
| 21 | ·*·The·`punycode`·module·provides·a·simple·implementation·of·the·Punycode·standard. | ||
| 22 | ·* | ||
| 23 | ·*·The·`punycode`·module·is·a·third-party·dependency·used·by·Node.js·and | ||
| 24 | ·*·made·available·to·developers·as·a·convenience.·Fixes·or·other·modifications·to | ||
| 25 | ·*·the·module·must·be·directed·to·the·[Punycode.js](https://github.com/bestiejs/punycode.js)·project. | ||
| 26 | ·*·@deprecated | ||
| 27 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/punycode.js) | ||
| 28 | ·*/ | ||
| 29 | declare·module·"node:punycode"·{ | 1 | declare·module·"node:punycode"·{ |
| 30 | ····/** | 2 | ····/** |
| 31 | ·····*·The·`punycode.decode()`·method·converts·a·[Punycode](https://tools.ietf.org/html/rfc3492)·string·of·ASCII-only | 3 | ·····*·The·`punycode.decode()`·method·converts·a·[Punycode](https://tools.ietf.org/html/rfc3492)·string·of·ASCII-only |
| 32 | ·····*·characters·to·the·equivalent·string·of·Unicode·codepoints. | 4 | ·····*·characters·to·the·equivalent·string·of·Unicode·codepoints. |
| 33 | ·····* | 5 | ·····* |
| 34 | ·····*·```js | 6 | ·····*·```js |
| 35 | ·····*·punycode.decode('maana-pta');·//·'mañana' | 7 | ·····*·punycode.decode('maana-pta');·//·'mañana' |
| Offset 1, 20 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:querystring`·module·provides·utilities·for·parsing·and·formatting·URL | ||
| 3 | ·*·query·strings.·It·can·be·accessed·using: | ||
| 4 | ·* | ||
| 5 | ·*·```js | ||
| 6 | ·*·import·querystring·from·'node:querystring'; | ||
| 7 | ·*·``` | ||
| 8 | ·* | ||
| 9 | ·*·`querystring`·is·more·performant·than·`URLSearchParams`·but·is·not·a | ||
| 10 | ·*·standardized·API.·Use·`URLSearchParams`·when·performance·is·not·critical·or | ||
| 11 | ·*·when·compatibility·with·browser·code·is·desirable. | ||
| 12 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/querystring.js) | ||
| 13 | ·*/ | ||
| 14 | declare·module·"node:querystring"·{ | 1 | declare·module·"node:querystring"·{ |
| 15 | ····interface·StringifyOptions·{ | 2 | ····interface·StringifyOptions·{ |
| 16 | ········/** | 3 | ········/** |
| 17 | ·········*·The·function·to·use·when·converting·URL-unsafe·characters·to·percent-encoding·in·the·query·string. | 4 | ·········*·The·function·to·use·when·converting·URL-unsafe·characters·to·percent-encoding·in·the·query·string. |
| 18 | ·········*·@default·`querystring.escape()` | 5 | ·········*·@default·`querystring.escape()` |
| 19 | ·········*/ | 6 | ·········*/ |
| 20 | ········encodeURIComponent?:·((str:·string)·=>·string)·|·undefined; | 7 | ········encodeURIComponent?:·((str:·string)·=>·string)·|·undefined; |
| Offset 1, 20 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·'node:quic'·module·provides·an·implementation·of·the·QUIC·protocol. | ||
| 3 | ·*·To·access·it,·start·Node.js·with·the·`--experimental-quic`·option·and: | ||
| 4 | ·* | ||
| 5 | ·*·```js | ||
| 6 | ·*·import·quic·from·'node:quic'; | ||
| 7 | ·*·``` | ||
| 8 | ·* | ||
| 9 | ·*·The·module·is·only·available·under·the·`node:`·scheme. | ||
| 10 | ·*·@since·v23.8.0 | ||
| 11 | ·*·@experimental | ||
| 12 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/quic.js) | ||
| 13 | ·*/ | ||
| 14 | declare·module·"node:quic"·{ | 1 | declare·module·"node:quic"·{ |
| 15 | ····import·{·KeyObject,·webcrypto·}·from·"node:crypto"; | 2 | ····import·{·KeyObject,·webcrypto·}·from·"node:crypto"; |
| 16 | ····import·{·SocketAddress·}·from·"node:net"; | 3 | ····import·{·SocketAddress·}·from·"node:net"; |
| 17 | ····import·{·ReadableStream·}·from·"node:stream/web"; | 4 | ····import·{·ReadableStream·}·from·"node:stream/web"; |
| 18 | ····/** | 5 | ····/** |
| 19 | ·····*·@since·v23.8.0 | 6 | ·····*·@since·v23.8.0 |
| 20 | ·····*/ | 7 | ·····*/ |
| Offset 1, 10 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·@since·v17.0.0 | ||
| 3 | ·*/ | ||
| 4 | declare·module·"node:readline/promises"·{ | 1 | declare·module·"node:readline/promises"·{ |
| 5 | ····import·{·Abortable·}·from·"node:events"; | 2 | ····import·{·Abortable·}·from·"node:events"; |
| 6 | ····import·{ | 3 | ····import·{ |
| 7 | ········CompleterResult, | 4 | ········CompleterResult, |
| 8 | ········Direction, | 5 | ········Direction, |
| 9 | ········Interface·as·_Interface, | 6 | ········Interface·as·_Interface, |
| 10 | ········ReadLineOptions·as·_ReadLineOptions, | 7 | ········ReadLineOptions·as·_ReadLineOptions, |
| Offset 1, 42 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:readline`·module·provides·an·interface·for·reading·data·from·a·[Readable](https://nodejs.org/docs/latest-v25.x/api/stream.html#readable-streams)·stream | ||
| 3 | ·*·(such·as·[`process.stdin`](https://nodejs.org/docs/latest-v25.x/api/process.html#processstdin))·one·line·at·a·time. | ||
| 4 | ·* | ||
| 5 | ·*·To·use·the·promise-based·APIs: | ||
| 6 | ·* | ||
| 7 | ·*·```js | ||
| 8 | ·*·import·*·as·readline·from·'node:readline/promises'; | ||
| 9 | ·*·``` | ||
| 10 | ·* | ||
| 11 | ·*·To·use·the·callback·and·sync·APIs: | ||
| 12 | ·* | ||
| 13 | ·*·```js | ||
| 14 | ·*·import·*·as·readline·from·'node:readline'; | ||
| 15 | ·*·``` | ||
| 16 | ·* | ||
| 17 | ·*·The·following·simple·example·illustrates·the·basic·use·of·the·`node:readline`·module. | ||
| 18 | ·* | ||
| 19 | ·*·```js | ||
| 20 | ·*·import·*·as·readline·from·'node:readline/promises'; | ||
| 21 | ·*·import·{·stdin·as·input,·stdout·as·output·}·from·'node:process'; | ||
| 22 | ·* | ||
| 23 | ·*·const·rl·=·readline.createInterface({·input,·output·}); | ||
| 24 | ·* | ||
| 25 | ·*·const·answer·=·await·rl.question('What·do·you·think·of·Node.js?·'); | ||
| 26 | ·* | ||
| 27 | ·*·console.log(`Thank·you·for·your·valuable·feedback:·${answer}`); | ||
| 28 | ·* | ||
| 29 | ·*·rl.close(); | ||
| 30 | ·*·``` | ||
| 31 | ·* | ||
| 32 | ·*·Once·this·code·is·invoked,·the·Node.js·application·will·not·terminate·until·the·`readline.Interface`·is·closed·because·the·interface·waits·for·data·to·be | ||
| 33 | ·*·received·on·the·`input`·stream. | ||
| 34 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/readline.js) | ||
| 35 | ·*/ | ||
| 36 | declare·module·"node:readline"·{ | 1 | declare·module·"node:readline"·{ |
| 37 | ····import·{·Abortable,·EventEmitter,·InternalEventEmitter·}·from·"node:events"; | 2 | ····import·{·Abortable,·EventEmitter,·InternalEventEmitter·}·from·"node:events"; |
| 38 | ····interface·Key·{ | 3 | ····interface·Key·{ |
| 39 | ········sequence?:·string·|·undefined; | 4 | ········sequence?:·string·|·undefined; |
| 40 | ········name?:·string·|·undefined; | 5 | ········name?:·string·|·undefined; |
| 41 | ········ctrl?:·boolean·|·undefined; | 6 | ········ctrl?:·boolean·|·undefined; |
| 42 | ········meta?:·boolean·|·undefined; | 7 | ········meta?:·boolean·|·undefined; |
| Offset 1, 17 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:repl`·module·provides·a·Read-Eval-Print-Loop·(REPL)·implementation | ||
| 3 | ·*·that·is·available·both·as·a·standalone·program·or·includible·in·other | ||
| 4 | ·*·applications.·It·can·be·accessed·using: | ||
| 5 | ·* | ||
| 6 | ·*·```js | ||
| 7 | ·*·import·repl·from·'node:repl'; | ||
| 8 | ·*·``` | ||
| 9 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/repl.js) | ||
| 10 | ·*/ | ||
| 11 | declare·module·"node:repl"·{ | 1 | declare·module·"node:repl"·{ |
| 12 | ····import·{·AsyncCompleter,·Completer,·Interface,·InterfaceEventMap·}·from·"node:readline"; | 2 | ····import·{·AsyncCompleter,·Completer,·Interface,·InterfaceEventMap·}·from·"node:readline"; |
| 13 | ····import·{·InspectOptions·}·from·"node:util"; | 3 | ····import·{·InspectOptions·}·from·"node:util"; |
| 14 | ····import·{·Context·}·from·"node:vm"; | 4 | ····import·{·Context·}·from·"node:vm"; |
| 15 | ····interface·ReplOptions·{ | 5 | ····interface·ReplOptions·{ |
| 16 | ········/** | 6 | ········/** |
| 17 | ·········*·The·input·prompt·to·display. | 7 | ·········*·The·input·prompt·to·display. |
| Offset 1, 122 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·This·feature·allows·the·distribution·of·a·Node.js·application·conveniently·to·a | ||
| 3 | ·*·system·that·does·not·have·Node.js·installed. | ||
| 4 | ·* | ||
| 5 | ·*·Node.js·supports·the·creation·of·[single·executable·applications](https://github.com/nodejs/single-executable)·by·allowing | ||
| 6 | ·*·the·injection·of·a·blob·prepared·by·Node.js,·which·can·contain·a·bundled·script, | ||
| 7 | ·*·into·the·`node`·binary.·During·start·up,·the·program·checks·if·anything·has·been | ||
| 8 | ·*·injected.·If·the·blob·is·found,·it·executes·the·script·in·the·blob.·Otherwise | ||
| 9 | ·*·Node.js·operates·as·it·normally·does. | ||
| 10 | ·* | ||
| 11 | ·*·The·single·executable·application·feature·currently·only·supports·running·a | ||
| 12 | ·*·single·embedded·script·using·the·`CommonJS`·module·system. | ||
| 13 | ·* | ||
| 14 | ·*·Users·can·create·a·single·executable·application·from·their·bundled·script | ||
| 15 | ·*·with·the·`node`·binary·itself·and·any·tool·which·can·inject·resources·into·the | ||
| 16 | ·*·binary. | ||
| 17 | ·* | ||
| 18 | ·*·Here·are·the·steps·for·creating·a·single·executable·application·using·one·such | ||
| 19 | ·*·tool,·[postject](https://github.com/nodejs/postject): | ||
| 20 | ·* | ||
| 21 | ·*·1.·Create·a·JavaScript·file: | ||
| 22 | ·*·```bash | ||
| 23 | ·*·echo·'console.log(`Hello,·${process.argv[2]}!`);'·>·hello.js | ||
| 24 | ·*·``` | ||
| 25 | ·*·2.·Create·a·configuration·file·building·a·blob·that·can·be·injected·into·the | ||
| 26 | ·*·single·executable·application·(see·`Generating·single·executable·preparation·blobs`·for·details): | ||
| 27 | ·*·```bash | ||
| 28 | ·*·echo·'{·"main":·"hello.js",·"output":·"sea-prep.blob"·}'·>·sea-config.json | ||
| 29 | ·*·``` | ||
| 30 | ·*·3.·Generate·the·blob·to·be·injected: | ||
| 31 | ·*·```bash | ||
| 32 | ·*·node·--experimental-sea-config·sea-config.json | ||
| 33 | ·*·``` | ||
| 34 | ·*·4.·Create·a·copy·of·the·`node`·executable·and·name·it·according·to·your·needs: | ||
| 35 | ·*····*·On·systems·other·than·Windows: | ||
| 36 | ·*·```bash | ||
| 37 | ·*·cp·$(command·-v·node)·hello | ||
| 38 | ·*·``` | ||
| 39 | ·*····*·On·Windows: | ||
| 40 | ·*·```text | ||
| 41 | ·*·node·-e·"require('fs').copyFileSync(process.execPath,·'hello.exe')" | ||
| 42 | ·*·``` | ||
| 43 | ·*·The·`.exe`·extension·is·necessary. | ||
| 44 | ·*·5.·Remove·the·signature·of·the·binary·(macOS·and·Windows·only): | ||
| 45 | ·*····*·On·macOS: | ||
| 46 | ·*·```bash | ||
| 47 | ·*·codesign·--remove-signature·hello | ||
| 48 | ·*·``` | ||
| 49 | ·*····*·On·Windows·(optional): | ||
| 50 | ·*·[signtool](https://learn.microsoft.com/en-us/windows/win32/seccrypto/signtool)·can·be·used·from·the·installed·[Windows·SDK](https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/). | ||
| 51 | ·*·If·this·step·is | ||
| 52 | ·*·skipped,·ignore·any·signature-related·warning·from·postject. | ||
| 53 | ·*·```powershell | ||
| 54 | ·*·signtool·remove·/s·hello.exe | ||
| 55 | ·*·``` | ||
| 56 | ·*·6.·Inject·the·blob·into·the·copied·binary·by·running·`postject`·with | ||
| 57 | ·*·the·following·options: | ||
| 58 | ·*····*·`hello`·/·`hello.exe`·\-·The·name·of·the·copy·of·the·`node`·executable | ||
| 59 | ·*····created·in·step·4. | ||
| 60 | ·*····*·`NODE_SEA_BLOB`·\-·The·name·of·the·resource·/·note·/·section·in·the·binary | ||
| 61 | ·*····where·the·contents·of·the·blob·will·be·stored. | ||
| 62 | ·*····*·`sea-prep.blob`·\-·The·name·of·the·blob·created·in·step·1. | ||
| 63 | ·*····*·`--sentinel-fuse·NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2`·\-·The·[fuse](https://www.electronjs.org/docs/latest/tutorial/fuses)·used·by·the·Node.js·project·to·detect·if·a·file·has·been | ||
| 64 | ·*·injected. | ||
| 65 | ·*····*·`--macho-segment-name·NODE_SEA`·(only·needed·on·macOS)·-·The·name·of·the | ||
| 66 | ·*····segment·in·the·binary·where·the·contents·of·the·blob·will·be | ||
| 67 | ·*····stored. | ||
| 68 | ·*·To·summarize,·here·is·the·required·command·for·each·platform: | ||
| 69 | ·*····*·On·Linux: | ||
| 70 | ·*····```bash | ||
| 71 | ·*····npx·postject·hello·NODE_SEA_BLOB·sea-prep.blob·\ | ||
| 72 | ·*········--sentinel-fuse·NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2 | ||
| 73 | ·*····``` | ||
| 74 | ·*····*·On·Windows·-·PowerShell: | ||
| 75 | ·*····```powershell | ||
| 76 | ·*····npx·postject·hello.exe·NODE_SEA_BLOB·sea-prep.blob·` | ||
| 77 | ·*········--sentinel-fuse·NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2 | ||
| 78 | ·*····``` | ||
| 79 | ·*····*·On·Windows·-·Command·Prompt: | ||
| 80 | ·*····```text | ||
| 81 | ·*····npx·postject·hello.exe·NODE_SEA_BLOB·sea-prep.blob·^ | ||
| 82 | ·*········--sentinel-fuse·NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2 | ||
| 83 | ·*····``` | ||
| 84 | ·*····*·On·macOS: | ||
| 85 | ·*····```bash | ||
| 86 | ·*····npx·postject·hello·NODE_SEA_BLOB·sea-prep.blob·\ | ||
| 87 | ·*········--sentinel-fuse·NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2·\ | ||
| 88 | ·*········--macho-segment-name·NODE_SEA | ||
| 89 | ·*····``` | ||
| 90 | ·*·7.·Sign·the·binary·(macOS·and·Windows·only): | ||
| 91 | ·*····*·On·macOS: | ||
| 92 | ·*·```bash | ||
| 93 | ·*·codesign·--sign·-·hello | ||
| 94 | ·*·``` | ||
| 95 | ·*····*·On·Windows·(optional): | ||
| 96 | ·*·A·certificate·needs·to·be·present·for·this·to·work.·However,·the·unsigned | ||
| 97 | ·*·binary·would·still·be·runnable. | ||
| 98 | ·*·```powershell | ||
| 99 | ·*·signtool·sign·/fd·SHA256·hello.exe | ||
| Max diff block lines reached; 190/4945 bytes (3.84%) of diff not shown. | |||
| Offset 1, 51 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:sqlite`·module·facilitates·working·with·SQLite·databases. | ||
| 3 | ·*·To·access·it: | ||
| 4 | ·* | ||
| 5 | ·*·```js | ||
| 6 | ·*·import·sqlite·from·'node:sqlite'; | ||
| 7 | ·*·``` | ||
| 8 | ·* | ||
| 9 | ·*·This·module·is·only·available·under·the·`node:`·scheme.·The·following·will·not | ||
| 10 | ·*·work: | ||
| 11 | ·* | ||
| 12 | ·*·```js | ||
| 13 | ·*·import·sqlite·from·'sqlite'; | ||
| 14 | ·*·``` | ||
| 15 | ·* | ||
| 16 | ·*·The·following·example·shows·the·basic·usage·of·the·`node:sqlite`·module·to·open | ||
| 17 | ·*·an·in-memory·database,·write·data·to·the·database,·and·then·read·the·data·back. | ||
| 18 | ·* | ||
| 19 | ·*·```js | ||
| 20 | ·*·import·{·DatabaseSync·}·from·'node:sqlite'; | ||
| 21 | ·*·const·database·=·new·DatabaseSync(':memory:'); | ||
| 22 | ·* | ||
| 23 | ·*·//·Execute·SQL·statements·from·strings. | ||
| 24 | ·*·database.exec(` | ||
| 25 | ·*···CREATE·TABLE·data( | ||
| 26 | ·*·····key·INTEGER·PRIMARY·KEY, | ||
| 27 | ·*·····value·TEXT | ||
| 28 | ·*···)·STRICT | ||
| 29 | ·*·`); | ||
| 30 | ·*·//·Create·a·prepared·statement·to·insert·data·into·the·database. | ||
| 31 | ·*·const·insert·=·database.prepare('INSERT·INTO·data·(key,·value)·VALUES·(?,·?)'); | ||
| 32 | ·*·//·Execute·the·prepared·statement·with·bound·values. | ||
| 33 | ·*·insert.run(1,·'hello'); | ||
| 34 | ·*·insert.run(2,·'world'); | ||
| 35 | ·*·//·Create·a·prepared·statement·to·read·data·from·the·database. | ||
| 36 | ·*·const·query·=·database.prepare('SELECT·*·FROM·data·ORDER·BY·key'); | ||
| 37 | ·*·//·Execute·the·prepared·statement·and·log·the·result·set. | ||
| 38 | ·*·console.log(query.all()); | ||
| 39 | ·*·//·Prints:·[·{·key:·1,·value:·'hello'·},·{·key:·2,·value:·'world'·}·] | ||
| 40 | ·*·``` | ||
| 41 | ·*·@since·v22.5.0 | ||
| 42 | ·*·@experimental | ||
| 43 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/sqlite.js) | ||
| 44 | ·*/ | ||
| 45 | declare·module·"node:sqlite"·{ | 1 | declare·module·"node:sqlite"·{ |
| 46 | ····import·{·PathLike·}·from·"node:fs"; | 2 | ····import·{·PathLike·}·from·"node:fs"; |
| 47 | ····type·SQLInputValue·=·null·|·number·|·bigint·|·string·|·NodeJS.ArrayBufferView; | 3 | ····type·SQLInputValue·=·null·|·number·|·bigint·|·string·|·NodeJS.ArrayBufferView; |
| 48 | ····type·SQLOutputValue·=·null·|·number·|·bigint·|·string·|·NodeJS.NonSharedUint8Array; | 4 | ····type·SQLOutputValue·=·null·|·number·|·bigint·|·string·|·NodeJS.NonSharedUint8Array; |
| 49 | ····interface·DatabaseSyncOptions·{ | 5 | ····interface·DatabaseSyncOptions·{ |
| 50 | ········/** | 6 | ········/** |
| 51 | ·········*·If·`true`,·the·database·is·opened·by·the·constructor.·When | 7 | ·········*·If·`true`,·the·database·is·opened·by·the·constructor.·When |
| Offset 1, 37 lines modified | Offset 1, 113 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·utility·consumer·functions·provide·common·options·for·consuming | ||
| 3 | ·*·streams. | ||
| 4 | ·*·@since·v16.7.0 | ||
| 5 | ·*/ | ||
| 6 | declare·module·"node:stream/consumers"·{ | 1 | declare·module·"node:stream/consumers"·{ |
| 7 | ····import·{·Blob,·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·Blob,·NonSharedBuffer·}·from·"node:buffer"; |
| 8 | ····import·{·ReadableStream·}·from·"node:stream/web"; | 3 | ····import·{·ReadableStream·}·from·"node:stream/web"; |
| 9 | ····/** | 4 | ····/** |
| 5 | ·····*·```js | ||
| 6 | ·····*·import·{·arrayBuffer·}·from·'node:stream/consumers'; | ||
| 7 | ·····*·import·{·Readable·}·from·'node:stream'; | ||
| 8 | ·····*·import·{·TextEncoder·}·from·'node:util'; | ||
| 9 | ·····* | ||
| 10 | ·····*·const·encoder·=·new·TextEncoder(); | ||
| 11 | ·····*·const·dataArray·=·encoder.encode('hello·world·from·consumers!'); | ||
| 12 | ·····* | ||
| 13 | ·····*·const·readable·=·Readable.from(dataArray); | ||
| 14 | ·····*·const·data·=·await·arrayBuffer(readable); | ||
| 15 | ·····*·console.log(`from·readable:·${data.byteLength}`); | ||
| 16 | ·····*·//·Prints:·from·readable:·76 | ||
| 17 | ·····*·``` | ||
| 10 | ·····*·@since·v16.7.0 | 18 | ·····*·@since·v16.7.0 |
| 11 | ·····*·@returns·Fulfills·with·an·`ArrayBuffer`·containing·the·full·contents·of·the·stream. | 19 | ·····*·@returns·Fulfills·with·an·`ArrayBuffer`·containing·the·full·contents·of·the·stream. |
| 12 | ·····*/ | 20 | ·····*/ |
| 13 | ····function·arrayBuffer(stream:·ReadableStream·|·NodeJS.ReadableStream·|·AsyncIterable<any>):·Promise<ArrayBuffer>; | 21 | ····function·arrayBuffer(stream:·ReadableStream·|·NodeJS.ReadableStream·|·AsyncIterable<any>):·Promise<ArrayBuffer>; |
| 14 | ····/** | 22 | ····/** |
| 23 | ·····*·```js | ||
| 24 | ·····*·import·{·blob·}·from·'node:stream/consumers'; | ||
| 25 | ·····* | ||
| 26 | ·····*·const·dataBlob·=·new·Blob(['hello·world·from·consumers!']); | ||
| 27 | ·····* | ||
| 28 | ·····*·const·readable·=·dataBlob.stream(); | ||
| 29 | ·····*·const·data·=·await·blob(readable); | ||
| 30 | ·····*·console.log(`from·readable:·${data.size}`); | ||
| 31 | ·····*·//·Prints:·from·readable:·27 | ||
| 32 | ·····*·``` | ||
| 15 | ·····*·@since·v16.7.0 | 33 | ·····*·@since·v16.7.0 |
| 16 | ·····*·@returns·Fulfills·with·a·`Blob`·containing·the·full·contents·of·the·stream. | 34 | ·····*·@returns·Fulfills·with·a·`Blob`·containing·the·full·contents·of·the·stream. |
| 17 | ·····*/ | 35 | ·····*/ |
| 18 | ····function·blob(stream:·ReadableStream·|·NodeJS.ReadableStream·|·AsyncIterable<any>):·Promise<Blob>; | 36 | ····function·blob(stream:·ReadableStream·|·NodeJS.ReadableStream·|·AsyncIterable<any>):·Promise<Blob>; |
| 19 | ····/** | 37 | ····/** |
| 38 | ·····*·```js | ||
| 39 | ·····*·import·{·buffer·}·from·'node:stream/consumers'; | ||
| 40 | ·····*·import·{·Readable·}·from·'node:stream'; | ||
| 41 | ·····*·import·{·Buffer·}·from·'node:buffer'; | ||
| 42 | ·····* | ||
| 43 | ·····*·const·dataBuffer·=·Buffer.from('hello·world·from·consumers!'); | ||
| 44 | ·····* | ||
| 45 | ·····*·const·readable·=·Readable.from(dataBuffer); | ||
| 46 | ·····*·const·data·=·await·buffer(readable); | ||
| 47 | ·····*·console.log(`from·readable:·${data.length}`); | ||
| 48 | ·····*·//·Prints:·from·readable:·27 | ||
| 49 | ·····*·``` | ||
| 20 | ·····*·@since·v16.7.0 | 50 | ·····*·@since·v16.7.0 |
| 21 | ·····*·@returns·Fulfills·with·a·`Buffer`·containing·the·full·contents·of·the·stream. | 51 | ·····*·@returns·Fulfills·with·a·`Buffer`·containing·the·full·contents·of·the·stream. |
| 22 | ·····*/ | 52 | ·····*/ |
| 23 | ····function·buffer(stream:·ReadableStream·|·NodeJS.ReadableStream·|·AsyncIterable<any>):·Promise<NonSharedBuffer>; | 53 | ····function·buffer(stream:·ReadableStream·|·NodeJS.ReadableStream·|·AsyncIterable<any>):·Promise<NonSharedBuffer>; |
| 24 | ····/** | 54 | ····/** |
| 55 | ·····*·```js | ||
| 56 | ·····*·import·{·bytes·}·from·'node:stream/consumers'; | ||
| 57 | ·····*·import·{·Readable·}·from·'node:stream'; | ||
| 58 | ·····*·import·{·Buffer·}·from·'node:buffer'; | ||
| 59 | ·····* | ||
| 60 | ·····*·const·dataBuffer·=·Buffer.from('hello·world·from·consumers!'); | ||
| 61 | ·····* | ||
| 62 | ·····*·const·readable·=·Readable.from(dataBuffer); | ||
| 63 | ·····*·const·data·=·await·bytes(readable); | ||
| 64 | ·····*·console.log(`from·readable:·${data.length}`); | ||
| 65 | ·····*·//·Prints:·from·readable:·27 | ||
| 66 | ·····*·``` | ||
| 67 | ·····*·@since·v25.6.0 | ||
| 68 | ·····*·@returns·Fulfills·with·a·`Uint8Array`·containing·the·full·contents·of·the·stream. | ||
| 69 | ·····*/ | ||
| 70 | ····function·bytes( | ||
| 71 | ········stream:·ReadableStream·|·NodeJS.ReadableStream·|·AsyncIterable<any>, | ||
| 72 | ····):·Promise<NodeJS.NonSharedUint8Array>; | ||
| 73 | ····/** | ||
| 74 | ·····*·```js | ||
| 75 | ·····*·import·{·json·}·from·'node:stream/consumers'; | ||
| 76 | ·····*·import·{·Readable·}·from·'node:stream'; | ||
| 77 | ·····* | ||
| 78 | ·····*·const·items·=·Array.from( | ||
| 79 | ·····*···{ | ||
| 80 | ·····*·····length:·100, | ||
| 81 | ·····*···}, | ||
| 82 | ·····*···()·=>·({ | ||
| 83 | ·····*·····message:·'hello·world·from·consumers!', | ||
| 84 | ·····*···}), | ||
| 85 | ·····*·); | ||
| 86 | ·····* | ||
| 87 | ·····*·const·readable·=·Readable.from(JSON.stringify(items)); | ||
| 88 | ·····*·const·data·=·await·json(readable); | ||
| 89 | ·····*·console.log(`from·readable:·${data.length}`); | ||
| 90 | ·····*·//·Prints:·from·readable:·100 | ||
| 91 | ·····*·``` | ||
| 25 | ·····*·@since·v16.7.0 | 92 | ·····*·@since·v16.7.0 |
| 26 | ·····*·@returns·Fulfills·with·the·contents·of·the·stream·parsed·as·a | 93 | ·····*·@returns·Fulfills·with·the·contents·of·the·stream·parsed·as·a |
| 27 | ·····*·UTF-8·encoded·string·that·is·then·passed·through·`JSON.parse()`. | 94 | ·····*·UTF-8·encoded·string·that·is·then·passed·through·`JSON.parse()`. |
| Max diff block lines reached; 771/4516 bytes (17.07%) of diff not shown. | |||
| Offset 1, 26 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·A·stream·is·an·abstract·interface·for·working·with·streaming·data·in·Node.js. | ||
| 3 | ·*·The·`node:stream`·module·provides·an·API·for·implementing·the·stream·interface. | ||
| 4 | ·* | ||
| 5 | ·*·There·are·many·stream·objects·provided·by·Node.js.·For·instance,·a·[request·to·an·HTTP·server](https://nodejs.org/docs/latest-v25.x/api/http.html#class-httpincomingmessage) | ||
| 6 | ·*·and·[`process.stdout`](https://nodejs.org/docs/latest-v25.x/api/process.html#processstdout)·are·both·stream·instances. | ||
| 7 | ·* | ||
| 8 | ·*·Streams·can·be·readable,·writable,·or·both.·All·streams·are·instances·of·[`EventEmitter`](https://nodejs.org/docs/latest-v25.x/api/events.html#class-eventemitter). | ||
| 9 | ·* | ||
| 10 | ·*·To·access·the·`node:stream`·module: | ||
| 11 | ·* | ||
| 12 | ·*·```js | ||
| 13 | ·*·import·stream·from·'node:stream'; | ||
| 14 | ·*·``` | ||
| 15 | ·* | ||
| 16 | ·*·The·`node:stream`·module·is·useful·for·creating·new·types·of·stream·instances. | ||
| 17 | ·*·It·is·usually·not·necessary·to·use·the·`node:stream`·module·to·consume·streams. | ||
| 18 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/stream.js) | ||
| 19 | ·*/ | ||
| 20 | declare·module·"node:stream"·{ | 1 | declare·module·"node:stream"·{ |
| 21 | ····import·{·Blob·}·from·"node:buffer"; | 2 | ····import·{·Blob·}·from·"node:buffer"; |
| 22 | ····import·{·Abortable,·EventEmitter·}·from·"node:events"; | 3 | ····import·{·Abortable,·EventEmitter·}·from·"node:events"; |
| 23 | ····import·*·as·promises·from·"node:stream/promises"; | 4 | ····import·*·as·promises·from·"node:stream/promises"; |
| 24 | ····import·*·as·web·from·"node:stream/web"; | 5 | ····import·*·as·web·from·"node:stream/web"; |
| 25 | ····class·Stream·extends·EventEmitter·{ | 6 | ····class·Stream·extends·EventEmitter·{ |
| 26 | ········/** | 7 | ········/** |
| Offset 1, 47 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:string_decoder`·module·provides·an·API·for·decoding·`Buffer`·objects | ||
| 3 | ·*·into·strings·in·a·manner·that·preserves·encoded·multi-byte·UTF-8·and·UTF-16 | ||
| 4 | ·*·characters.·It·can·be·accessed·using: | ||
| 5 | ·* | ||
| 6 | ·*·```js | ||
| 7 | ·*·import·{·StringDecoder·}·from·'node:string_decoder'; | ||
| 8 | ·*·``` | ||
| 9 | ·* | ||
| 10 | ·*·The·following·example·shows·the·basic·use·of·the·`StringDecoder`·class. | ||
| 11 | ·* | ||
| 12 | ·*·```js | ||
| 13 | ·*·import·{·StringDecoder·}·from·'node:string_decoder'; | ||
| 14 | ·*·const·decoder·=·new·StringDecoder('utf8'); | ||
| 15 | ·* | ||
| 16 | ·*·const·cent·=·Buffer.from([0xC2,·0xA2]); | ||
| 17 | ·*·console.log(decoder.write(cent));·//·Prints:·¢ | ||
| 18 | ·* | ||
| 19 | ·*·const·euro·=·Buffer.from([0xE2,·0x82,·0xAC]); | ||
| 20 | ·*·console.log(decoder.write(euro));·//·Prints:·€ | ||
| 21 | ·*·``` | ||
| 22 | ·* | ||
| 23 | ·*·When·a·`Buffer`·instance·is·written·to·the·`StringDecoder`·instance,·an | ||
| 24 | ·*·internal·buffer·is·used·to·ensure·that·the·decoded·string·does·not·contain | ||
| 25 | ·*·any·incomplete·multibyte·characters.·These·are·held·in·the·buffer·until·the | ||
| 26 | ·*·next·call·to·`stringDecoder.write()`·or·until·`stringDecoder.end()`·is·called. | ||
| 27 | ·* | ||
| 28 | ·*·In·the·following·example,·the·three·UTF-8·encoded·bytes·of·the·European·Euro | ||
| 29 | ·*·symbol·(`€`)·are·written·over·three·separate·operations: | ||
| 30 | ·* | ||
| 31 | ·*·```js | ||
| 32 | ·*·import·{·StringDecoder·}·from·'node:string_decoder'; | ||
| 33 | ·*·const·decoder·=·new·StringDecoder('utf8'); | ||
| 34 | ·* | ||
| 35 | ·*·decoder.write(Buffer.from([0xE2])); | ||
| 36 | ·*·decoder.write(Buffer.from([0x82])); | ||
| 37 | ·*·console.log(decoder.end(Buffer.from([0xAC])));·//·Prints:·€ | ||
| 38 | ·*·``` | ||
| 39 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/string_decoder.js) | ||
| 40 | ·*/ | ||
| 41 | declare·module·"node:string_decoder"·{ | 1 | declare·module·"node:string_decoder"·{ |
| 42 | ····class·StringDecoder·{ | 2 | ····class·StringDecoder·{ |
| 43 | ········constructor(encoding?:·BufferEncoding); | 3 | ········constructor(encoding?:·BufferEncoding); |
| 44 | ········/** | 4 | ········/** |
| 45 | ·········*·Returns·a·decoded·string,·ensuring·that·any·incomplete·multibyte·characters·at | 5 | ·········*·Returns·a·decoded·string,·ensuring·that·any·incomplete·multibyte·characters·at |
| 46 | ·········*·the·end·of·the·`Buffer`,·or·`TypedArray`,·or·`DataView`·are·omitted·from·the | 6 | ·········*·the·end·of·the·`Buffer`,·or·`TypedArray`,·or·`DataView`·are·omitted·from·the |
| 47 | ·········*·returned·string·and·stored·in·an·internal·buffer·for·the·next·call·to·`stringDecoder.write()`·or·`stringDecoder.end()`. | 7 | ·········*·returned·string·and·stored·in·an·internal·buffer·for·the·next·call·to·`stringDecoder.write()`·or·`stringDecoder.end()`. |
| Offset 1, 1 lines modified | Offset 1, 1 lines modified | ||
| 1 | u | 1 | us-ascii |
| Offset 1, 45 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:test`·module·supports·passing·`--test-reporter` | ||
| 3 | ·*·flags·for·the·test·runner·to·use·a·specific·reporter. | ||
| 4 | ·* | ||
| 5 | ·*·The·following·built-reporters·are·supported: | ||
| 6 | ·* | ||
| 7 | ·*·*·`spec` | ||
| 8 | ·*···The·`spec`·reporter·outputs·the·test·results·in·a·human-readable·format.·This | ||
| 9 | ·*···is·the·default·reporter. | ||
| 10 | ·* | ||
| 11 | ·*·*·`tap` | ||
| 12 | ·*···The·`tap`·reporter·outputs·the·test·results·in·the·[TAP](https://testanything.org/)·format. | ||
| 13 | ·* | ||
| 14 | ·*·*·`dot` | ||
| 15 | ·*···The·`dot`·reporter·outputs·the·test·results·in·a·compact·format, | ||
| 16 | ·*···where·each·passing·test·is·represented·by·a·`.`, | ||
| 17 | ·*···and·each·failing·test·is·represented·by·a·`X`. | ||
| 18 | ·* | ||
| 19 | ·*·*·`junit` | ||
| 20 | ·*···The·junit·reporter·outputs·test·results·in·a·jUnit·XML·format | ||
| 21 | ·* | ||
| 22 | ·*·*·`lcov` | ||
| 23 | ·*···The·`lcov`·reporter·outputs·test·coverage·when·used·with·the | ||
| 24 | ·*···`--experimental-test-coverage`·flag. | ||
| 25 | ·* | ||
| 26 | ·*·The·exact·output·of·these·reporters·is·subject·to·change·between·versions·of | ||
| 27 | ·*·Node.js,·and·should·not·be·relied·on·programmatically.·If·programmatic·access | ||
| 28 | ·*·to·the·test·runner's·output·is·required,·use·the·events·emitted·by·the | ||
| 29 | ·*·`TestsStream`. | ||
| 30 | ·* | ||
| 31 | ·*·The·reporters·are·available·via·the·`node:test/reporters`·module: | ||
| 32 | ·* | ||
| 33 | ·*·```js | ||
| 34 | ·*·import·{·tap,·spec,·dot,·junit,·lcov·}·from·'node:test/reporters'; | ||
| 35 | ·*·``` | ||
| 36 | ·*·@since·v19.9.0,·v18.17.0 | ||
| 37 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/test/reporters.js) | ||
| 38 | ·*/ | ||
| 39 | declare·module·"node:test/reporters"·{ | 1 | declare·module·"node:test/reporters"·{ |
| 40 | ····import·{·Transform,·TransformOptions·}·from·"node:stream"; | 2 | ····import·{·Transform,·TransformOptions·}·from·"node:stream"; |
| 41 | ····import·{·EventData·}·from·"node:test"; | 3 | ····import·{·EventData·}·from·"node:test"; |
| 42 | ····type·TestEvent·= | 4 | ····type·TestEvent·= |
| 43 | ········|·{·type:·"test:coverage";·data:·EventData.TestCoverage·} | 5 | ········|·{·type:·"test:coverage";·data:·EventData.TestCoverage·} |
| 44 | ········|·{·type:·"test:complete";·data:·EventData.TestComplete·} | 6 | ········|·{·type:·"test:complete";·data:·EventData.TestComplete·} |
| 45 | ········|·{·type:·"test:dequeue";·data:·EventData.TestDequeue·} | 7 | ········|·{·type:·"test:dequeue";·data:·EventData.TestDequeue·} |
| Offset 1, 87 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:test`·module·facilitates·the·creation·of·JavaScript·tests. | ||
| 3 | ·*·To·access·it: | ||
| 4 | ·* | ||
| 5 | ·*·```js | ||
| 6 | ·*·import·test·from·'node:test'; | ||
| 7 | ·*·``` | ||
| 8 | ·* | ||
| 9 | ·*·This·module·is·only·available·under·the·`node:`·scheme.·The·following·will·not | ||
| 10 | ·*·work: | ||
| 11 | ·* | ||
| 12 | ·*·```js | ||
| 13 | ·*·import·test·from·'node:test'; | ||
| 14 | ·*·``` | ||
| 15 | ·* | ||
| 16 | ·*·Tests·created·via·the·`test`·module·consist·of·a·single·function·that·is | ||
| 17 | ·*·processed·in·one·of·three·ways: | ||
| 18 | ·* | ||
| 19 | ·*·1.·A·synchronous·function·that·is·considered·failing·if·it·throws·an·exception, | ||
| 20 | ·*·and·is·considered·passing·otherwise. | ||
| 21 | ·*·2.·A·function·that·returns·a·`Promise`·that·is·considered·failing·if·the·`Promise`·rejects,·and·is·considered·passing·if·the·`Promise`·fulfills. | ||
| 22 | ·*·3.·A·function·that·receives·a·callback·function.·If·the·callback·receives·any | ||
| 23 | ·*·truthy·value·as·its·first·argument,·the·test·is·considered·failing.·If·a | ||
| 24 | ·*·falsy·value·is·passed·as·the·first·argument·to·the·callback,·the·test·is | ||
| 25 | ·*·considered·passing.·If·the·test·function·receives·a·callback·function·and | ||
| 26 | ·*·also·returns·a·`Promise`,·the·test·will·fail. | ||
| 27 | ·* | ||
| 28 | ·*·The·following·example·illustrates·how·tests·are·written·using·the·`test`·module. | ||
| 29 | ·* | ||
| 30 | ·*·```js | ||
| 31 | ·*·test('synchronous·passing·test',·(t)·=>·{ | ||
| 32 | ·*···//·This·test·passes·because·it·does·not·throw·an·exception. | ||
| 33 | ·*···assert.strictEqual(1,·1); | ||
| 34 | ·*·}); | ||
| 35 | ·* | ||
| 36 | ·*·test('synchronous·failing·test',·(t)·=>·{ | ||
| 37 | ·*···//·This·test·fails·because·it·throws·an·exception. | ||
| 38 | ·*···assert.strictEqual(1,·2); | ||
| 39 | ·*·}); | ||
| 40 | ·* | ||
| 41 | ·*·test('asynchronous·passing·test',·async·(t)·=>·{ | ||
| 42 | ·*···//·This·test·passes·because·the·Promise·returned·by·the·async | ||
| 43 | ·*···//·function·is·settled·and·not·rejected. | ||
| 44 | ·*···assert.strictEqual(1,·1); | ||
| 45 | ·*·}); | ||
| 46 | ·* | ||
| 47 | ·*·test('asynchronous·failing·test',·async·(t)·=>·{ | ||
| 48 | ·*···//·This·test·fails·because·the·Promise·returned·by·the·async | ||
| 49 | ·*···//·function·is·rejected. | ||
| 50 | ·*···assert.strictEqual(1,·2); | ||
| 51 | ·*·}); | ||
| 52 | ·* | ||
| 53 | ·*·test('failing·test·using·Promises',·(t)·=>·{ | ||
| 54 | ·*···//·Promises·can·be·used·directly·as·well. | ||
| 55 | ·*···return·new·Promise((resolve,·reject)·=>·{ | ||
| 56 | ·*·····setImmediate(()·=>·{ | ||
| 57 | ·*·······reject(new·Error('this·will·cause·the·test·to·fail')); | ||
| 58 | ·*·····}); | ||
| 59 | ·*···}); | ||
| 60 | ·*·}); | ||
| 61 | ·* | ||
| 62 | ·*·test('callback·passing·test',·(t,·done)·=>·{ | ||
| 63 | ·*···//·done()·is·the·callback·function.·When·the·setImmediate()·runs,·it·invokes | ||
| 64 | ·*···//·done()·with·no·arguments. | ||
| 65 | ·*···setImmediate(done); | ||
| 66 | ·*·}); | ||
| 67 | ·* | ||
| 68 | ·*·test('callback·failing·test',·(t,·done)·=>·{ | ||
| 69 | ·*···//·When·the·setImmediate()·runs,·done()·is·invoked·with·an·Error·object·and | ||
| 70 | ·*···//·the·test·fails. | ||
| 71 | ·*···setImmediate(()·=>·{ | ||
| 72 | ·*·····done(new·Error('callback·failure')); | ||
| 73 | ·*···}); | ||
| 74 | ·*·}); | ||
| 75 | ·*·``` | ||
| 76 | ·* | ||
| 77 | ·*·If·any·tests·fail,·the·process·exit·code·is·set·to·`1`. | ||
| 78 | ·*·@since·v18.0.0,·v16.17.0 | ||
| 79 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/test.js) | ||
| 80 | ·*/ | ||
| 81 | declare·module·"node:test"·{ | 1 | declare·module·"node:test"·{ |
| 82 | ····import·{·AssertMethodNames·}·from·"node:assert"; | 2 | ····import·{·AssertMethodNames·}·from·"node:assert"; |
| 83 | ····import·{·Readable,·ReadableEventMap·}·from·"node:stream"; | 3 | ····import·{·Readable,·ReadableEventMap·}·from·"node:stream"; |
| 84 | ····import·{·TestEvent·}·from·"node:test/reporters"; | 4 | ····import·{·TestEvent·}·from·"node:test/reporters"; |
| 85 | ····import·{·URL·}·from·"node:url"; | 5 | ····import·{·URL·}·from·"node:url"; |
| 86 | ····import·TestFn·=·test.TestFn; | 6 | ····import·TestFn·=·test.TestFn; |
| 87 | ····import·TestOptions·=·test.TestOptions; | 7 | ····import·TestOptions·=·test.TestOptions; |
| Offset 405, 14 lines modified | Offset 325, 21 lines modified | ||
| 405 | ············/** | 325 | ············/** |
| 406 | ·············*·Require·a·minimum·percent·of·covered·functions.·If·code | 326 | ·············*·Require·a·minimum·percent·of·covered·functions.·If·code |
| 407 | ·············*·coverage·does·not·reach·the·threshold·specified,·the·process·will·exit·with·code·`1`. | 327 | ·············*·coverage·does·not·reach·the·threshold·specified,·the·process·will·exit·with·code·`1`. |
| 408 | ·············*·@since·v22.10.0 | 328 | ·············*·@since·v22.10.0 |
| 409 | ·············*·@default·0 | 329 | ·············*·@default·0 |
| 410 | ·············*/ | 330 | ·············*/ |
| 411 | ············functionCoverage?:·number·|·undefined; | 331 | ············functionCoverage?:·number·|·undefined; |
| 332 | ············/** | ||
| 333 | ·············*·Specify·environment·variables·to·be·passed·along·to·the·test·process. | ||
| 334 | ·············*·This·options·is·not·compatible·with·`isolation='none'`.·These·variables·will·override | ||
| 335 | ·············*·those·from·the·main·process,·and·are·not·merged·with·`process.env`. | ||
| Max diff block lines reached; 356/4208 bytes (8.46%) of diff not shown. | |||
| Offset 1, 22 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`timers/promises`·API·provides·an·alternative·set·of·timer·functions | ||
| 3 | ·*·that·return·`Promise`·objects.·The·API·is·accessible·via | ||
| 4 | ·*·`require('node:timers/promises')`. | ||
| 5 | ·* | ||
| 6 | ·*·```js | ||
| 7 | ·*·import·{ | ||
| 8 | ·*···setTimeout, | ||
| 9 | ·*···setImmediate, | ||
| 10 | ·*···setInterval, | ||
| 11 | ·*·}·from·'node:timers/promises'; | ||
| 12 | ·*·``` | ||
| 13 | ·*·@since·v15.0.0 | ||
| 14 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/timers/promises.js) | ||
| 15 | ·*/ | ||
| 16 | declare·module·"node:timers/promises"·{ | 1 | declare·module·"node:timers/promises"·{ |
| 17 | ····import·{·TimerOptions·}·from·"node:timers"; | 2 | ····import·{·TimerOptions·}·from·"node:timers"; |
| 18 | ····/** | 3 | ····/** |
| 19 | ·····*·```js | 4 | ·····*·```js |
| 20 | ·····*·import·{ | 5 | ·····*·import·{ |
| 21 | ·····*···setTimeout, | 6 | ·····*···setTimeout, |
| 22 | ·····*·}·from·'node:timers/promises'; | 7 | ·····*·}·from·'node:timers/promises'; |
| Offset 1, 17 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`timer`·module·exposes·a·global·API·for·scheduling·functions·to | ||
| 3 | ·*·be·called·at·some·future·period·of·time.·Because·the·timer·functions·are | ||
| 4 | ·*·globals,·there·is·no·need·to·import·`node:timers`·to·use·the·API. | ||
| 5 | ·* | ||
| 6 | ·*·The·timer·functions·within·Node.js·implement·a·similar·API·as·the·timers·API | ||
| 7 | ·*·provided·by·Web·Browsers·but·use·a·different·internal·implementation·that·is | ||
| 8 | ·*·built·around·the·Node.js·[Event·Loop](https://nodejs.org/en/docs/guides/event-loop-timers-and-nexttick/#setimmediate-vs-settimeout). | ||
| 9 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/timers.js) | ||
| 10 | ·*/ | ||
| 11 | declare·module·"node:timers"·{ | 1 | declare·module·"node:timers"·{ |
| 12 | ····import·{·Abortable·}·from·"node:events"; | 2 | ····import·{·Abortable·}·from·"node:events"; |
| 13 | ····import·*·as·promises·from·"node:timers/promises"; | 3 | ····import·*·as·promises·from·"node:timers/promises"; |
| 14 | ····export·interface·TimerOptions·extends·Abortable·{ | 4 | ····export·interface·TimerOptions·extends·Abortable·{ |
| 15 | ········/** | 5 | ········/** |
| 16 | ·········*·Set·to·`false`·to·indicate·that·the·scheduled·`Timeout` | 6 | ·········*·Set·to·`false`·to·indicate·that·the·scheduled·`Timeout` |
| 17 | ·········*·should·not·require·the·Node.js·event·loop·to·remain·active. | 7 | ·········*·should·not·require·the·Node.js·event·loop·to·remain·active. |
| Offset 1, 17 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:tls`·module·provides·an·implementation·of·the·Transport·Layer·Security | ||
| 3 | ·*·(TLS)·and·Secure·Socket·Layer·(SSL)·protocols·that·is·built·on·top·of·OpenSSL. | ||
| 4 | ·*·The·module·can·be·accessed·using: | ||
| 5 | ·* | ||
| 6 | ·*·```js | ||
| 7 | ·*·import·tls·from·'node:tls'; | ||
| 8 | ·*·``` | ||
| 9 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/tls.js) | ||
| 10 | ·*/ | ||
| 11 | declare·module·"node:tls"·{ | 1 | declare·module·"node:tls"·{ |
| 12 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; |
| 13 | ····import·{·X509Certificate·}·from·"node:crypto"; | 3 | ····import·{·X509Certificate·}·from·"node:crypto"; |
| 14 | ····import·*·as·net·from·"node:net"; | 4 | ····import·*·as·net·from·"node:net"; |
| 15 | ····import·*·as·stream·from·"stream"; | 5 | ····import·*·as·stream·from·"stream"; |
| 16 | ····const·CLIENT_RENEG_LIMIT:·number; | 6 | ····const·CLIENT_RENEG_LIMIT:·number; |
| 17 | ····const·CLIENT_RENEG_WINDOW:·number; | 7 | ····const·CLIENT_RENEG_WINDOW:·number; |
| Offset 196, 20 lines modified | Offset 186, 14 lines modified | ||
| 196 | ·········*·An·optional·net.Server·instance. | 186 | ·········*·An·optional·net.Server·instance. |
| 197 | ·········*/ | 187 | ·········*/ |
| 198 | ········server?:·net.Server·|·undefined; | 188 | ········server?:·net.Server·|·undefined; |
| 199 | ········/** | 189 | ········/** |
| 200 | ·········*·An·optional·Buffer·instance·containing·a·TLS·session. | 190 | ·········*·An·optional·Buffer·instance·containing·a·TLS·session. |
| 201 | ·········*/ | 191 | ·········*/ |
| 202 | ········session?:·Buffer·|·undefined; | 192 | ········session?:·Buffer·|·undefined; |
| 203 | ········/** | ||
| 204 | ·········*·If·true,·specifies·that·the·OCSP·status·request·extension·will·be | ||
| 205 | ·········*·added·to·the·client·hello·and·an·'OCSPResponse'·event·will·be | ||
| 206 | ·········*·emitted·on·the·socket·before·establishing·a·secure·communication | ||
| 207 | ·········*/ | ||
| 208 | ········requestOCSP?:·boolean·|·undefined; | ||
| 209 | ····} | 193 | ····} |
| 210 | ····interface·TLSSocketEventMap·extends·net.SocketEventMap·{ | 194 | ····interface·TLSSocketEventMap·extends·net.SocketEventMap·{ |
| 211 | ········"keylog":·[line:·NonSharedBuffer]; | 195 | ········"keylog":·[line:·NonSharedBuffer]; |
| 212 | ········"OCSPResponse":·[response:·NonSharedBuffer]; | 196 | ········"OCSPResponse":·[response:·NonSharedBuffer]; |
| 213 | ········"secure":·[]; | 197 | ········"secure":·[]; |
| 214 | ········"secureConnect":·[]; | 198 | ········"secureConnect":·[]; |
| 215 | ········"session":·[session:·NonSharedBuffer]; | 199 | ········"session":·[session:·NonSharedBuffer]; |
| Offset 573, 14 lines modified | Offset 557, 20 lines modified | ||
| 573 | ········/** | 557 | ········/** |
| 574 | ·········*·If·true·the·server·will·reject·any·connection·which·is·not | 558 | ·········*·If·true·the·server·will·reject·any·connection·which·is·not |
| 575 | ·········*·authorized·with·the·list·of·supplied·CAs.·This·option·only·has·an | 559 | ·········*·authorized·with·the·list·of·supplied·CAs.·This·option·only·has·an |
| 576 | ·········*·effect·if·requestCert·is·true. | 560 | ·········*·effect·if·requestCert·is·true. |
| 577 | ·········*·@default·true | 561 | ·········*·@default·true |
| 578 | ·········*/ | 562 | ·········*/ |
| 579 | ········rejectUnauthorized?:·boolean·|·undefined; | 563 | ········rejectUnauthorized?:·boolean·|·undefined; |
| 564 | ········/** | ||
| 565 | ·········*·If·true,·specifies·that·the·OCSP·status·request·extension·will·be | ||
| 566 | ·········*·added·to·the·client·hello·and·an·'OCSPResponse'·event·will·be | ||
| 567 | ·········*·emitted·on·the·socket·before·establishing·a·secure·communication. | ||
| 568 | ·········*/ | ||
| 569 | ········requestOCSP?:·boolean·|·undefined; | ||
| 580 | ····} | 570 | ····} |
| 581 | ····interface·TlsOptions·extends·SecureContextOptions,·CommonConnectionOptions,·net.ServerOpts·{ | 571 | ····interface·TlsOptions·extends·SecureContextOptions,·CommonConnectionOptions,·net.ServerOpts·{ |
| 582 | ········/** | 572 | ········/** |
| 583 | ·········*·Abort·the·connection·if·the·SSL/TLS·handshake·does·not·finish·in·the | 573 | ·········*·Abort·the·connection·if·the·SSL/TLS·handshake·does·not·finish·in·the |
| 584 | ·········*·specified·number·of·milliseconds.·A·'tlsClientError'·is·emitted·on | 574 | ·········*·specified·number·of·milliseconds.·A·'tlsClientError'·is·emitted·on |
| 585 | ·········*·the·tls.Server·object·whenever·a·handshake·times·out.·Default: | 575 | ·········*·the·tls.Server·object·whenever·a·handshake·times·out.·Default: |
| 586 | ·········*·120000·(120·seconds). | 576 | ·········*·120000·(120·seconds). |
| Offset 1, 101 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:trace_events`·module·provides·a·mechanism·to·centralize·tracing·information | ||
| 3 | ·*·generated·by·V8,·Node.js·core,·and·userspace·code. | ||
| 4 | ·* | ||
| 5 | ·*·Tracing·can·be·enabled·with·the·`--trace-event-categories`·command-line·flag | ||
| 6 | ·*·or·by·using·the·`trace_events`·module.·The·`--trace-event-categories`·flag | ||
| 7 | ·*·accepts·a·list·of·comma-separated·category·names. | ||
| 8 | ·* | ||
| 9 | ·*·The·available·categories·are: | ||
| 10 | ·* | ||
| 11 | ·*·*·`node`:·An·empty·placeholder. | ||
| 12 | ·*·*·`node.async_hooks`:·Enables·capture·of·detailed·[`async_hooks`](https://nodejs.org/docs/latest-v25.x/api/async_hooks.html)·trace·data. | ||
| 13 | ·*·The·[`async_hooks`](https://nodejs.org/docs/latest-v25.x/api/async_hooks.html)·events·have·a·unique·`asyncId`·and·a·special·`triggerId`·`triggerAsyncId`·property. | ||
| 14 | ·*·*·`node.bootstrap`:·Enables·capture·of·Node.js·bootstrap·milestones. | ||
| 15 | ·*·*·`node.console`:·Enables·capture·of·`console.time()`·and·`console.count()`·output. | ||
| 16 | ·*·*·`node.threadpoolwork.sync`:·Enables·capture·of·trace·data·for·threadpool·synchronous·operations,·such·as·`blob`,·`zlib`,·`crypto`·and·`node_api`. | ||
| 17 | ·*·*·`node.threadpoolwork.async`:·Enables·capture·of·trace·data·for·threadpool·asynchronous·operations,·such·as·`blob`,·`zlib`,·`crypto`·and·`node_api`. | ||
| 18 | ·*·*·`node.dns.native`:·Enables·capture·of·trace·data·for·DNS·queries. | ||
| 19 | ·*·*·`node.net.native`:·Enables·capture·of·trace·data·for·network. | ||
| 20 | ·*·*·`node.environment`:·Enables·capture·of·Node.js·Environment·milestones. | ||
| 21 | ·*·*·`node.fs.sync`:·Enables·capture·of·trace·data·for·file·system·sync·methods. | ||
| 22 | ·*·*·`node.fs_dir.sync`:·Enables·capture·of·trace·data·for·file·system·sync·directory·methods. | ||
| 23 | ·*·*·`node.fs.async`:·Enables·capture·of·trace·data·for·file·system·async·methods. | ||
| 24 | ·*·*·`node.fs_dir.async`:·Enables·capture·of·trace·data·for·file·system·async·directory·methods. | ||
| 25 | ·*·*·`node.perf`:·Enables·capture·of·[Performance·API](https://nodejs.org/docs/latest-v25.x/api/perf_hooks.html)·measurements. | ||
| 26 | ·*····*·`node.perf.usertiming`:·Enables·capture·of·only·Performance·API·User·Timing | ||
| 27 | ·*····measures·and·marks. | ||
| 28 | ·*····*·`node.perf.timerify`:·Enables·capture·of·only·Performance·API·timerify | ||
| 29 | ·*····measurements. | ||
| 30 | ·*·*·`node.promises.rejections`:·Enables·capture·of·trace·data·tracking·the·number | ||
| 31 | ·*·of·unhandled·Promise·rejections·and·handled-after-rejections. | ||
| 32 | ·*·*·`node.vm.script`:·Enables·capture·of·trace·data·for·the·`node:vm`·module's·`runInNewContext()`,·`runInContext()`,·and·`runInThisContext()`·methods. | ||
| 33 | ·*·*·`v8`:·The·[V8](https://nodejs.org/docs/latest-v25.x/api/v8.html)·events·are·GC,·compiling,·and·execution·related. | ||
| 34 | ·*·*·`node.http`:·Enables·capture·of·trace·data·for·http·request·/·response. | ||
| 35 | ·* | ||
| 36 | ·*·By·default·the·`node`,·`node.async_hooks`,·and·`v8`·categories·are·enabled. | ||
| 37 | ·* | ||
| 38 | ·*·```bash | ||
| 39 | ·*·node·--trace-event-categories·v8,node,node.async_hooks·server.js | ||
| 40 | ·*·``` | ||
| 41 | ·* | ||
| 42 | ·*·Prior·versions·of·Node.js·required·the·use·of·the·`--trace-events-enabled`·flag·to·enable·trace·events.·This·requirement·has·been·removed.·However,·the·`--trace-events-enabled`·flag·_may_·still·be | ||
| 43 | ·*·used·and·will·enable·the·`node`,·`node.async_hooks`,·and·`v8`·trace·event·categories·by·default. | ||
| 44 | ·* | ||
| 45 | ·*·```bash | ||
| 46 | ·*·node·--trace-events-enabled | ||
| 47 | ·* | ||
| 48 | ·*·#·is·equivalent·to | ||
| 49 | ·* | ||
| 50 | ·*·node·--trace-event-categories·v8,node,node.async_hooks | ||
| 51 | ·*·``` | ||
| 52 | ·* | ||
| 53 | ·*·Alternatively,·trace·events·may·be·enabled·using·the·`node:trace_events`·module: | ||
| 54 | ·* | ||
| 55 | ·*·```js | ||
| 56 | ·*·import·trace_events·from·'node:trace_events'; | ||
| 57 | ·*·const·tracing·=·trace_events.createTracing({·categories:·['node.perf']·}); | ||
| 58 | ·*·tracing.enable();··//·Enable·trace·event·capture·for·the·'node.perf'·category | ||
| 59 | ·* | ||
| 60 | ·*·//·do·work | ||
| 61 | ·* | ||
| 62 | ·*·tracing.disable();··//·Disable·trace·event·capture·for·the·'node.perf'·category | ||
| 63 | ·*·``` | ||
| 64 | ·* | ||
| 65 | ·*·Running·Node.js·with·tracing·enabled·will·produce·log·files·that·can·be·opened | ||
| 66 | ·*·in·the·[`chrome://tracing`](https://www.chromium.org/developers/how-tos/trace-event-profiling-tool)·tab·of·Chrome. | ||
| 67 | ·* | ||
| 68 | ·*·The·logging·file·is·by·default·called·`node_trace.${rotation}.log`,·where·`${rotation}`·is·an·incrementing·log-rotation·id.·The·filepath·pattern·can | ||
| 69 | ·*·be·specified·with·`--trace-event-file-pattern`·that·accepts·a·template | ||
| 70 | ·*·string·that·supports·`${rotation}`·and·`${pid}`: | ||
| 71 | ·* | ||
| 72 | ·*·```bash | ||
| 73 | ·*·node·--trace-event-categories·v8·--trace-event-file-pattern·'${pid}-${rotation}.log'·server.js | ||
| 74 | ·*·``` | ||
| 75 | ·* | ||
| 76 | ·*·To·guarantee·that·the·log·file·is·properly·generated·after·signal·events·like·`SIGINT`,·`SIGTERM`,·or·`SIGBREAK`,·make·sure·to·have·the·appropriate·handlers | ||
| 77 | ·*·in·your·code,·such·as: | ||
| 78 | ·* | ||
| 79 | ·*·```js | ||
| 80 | ·*·process.on('SIGINT',·function·onSigint()·{ | ||
| 81 | ·*···console.info('Received·SIGINT.'); | ||
| 82 | ·*···process.exit(130);··//·Or·applicable·exit·code·depending·on·OS·and·signal | ||
| 83 | ·*·}); | ||
| 84 | ·*·``` | ||
| 85 | ·* | ||
| 86 | ·*·The·tracing·system·uses·the·same·time·source | ||
| 87 | ·*·as·the·one·used·by·`process.hrtime()`. | ||
| 88 | ·*·However·the·trace-event·timestamps·are·expressed·in·microseconds, | ||
| 89 | ·*·unlike·`process.hrtime()`·which·returns·nanoseconds. | ||
| 90 | ·* | ||
| 91 | ·*·The·features·from·this·module·are·not·available·in·[`Worker`](https://nodejs.org/docs/latest-v25.x/api/worker_threads.html#class-worker)·threads. | ||
| 92 | ·*·@experimental | ||
| 93 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/trace_events.js) | ||
| 94 | ·*/ | ||
| 95 | declare·module·"node:trace_events"·{ | 1 | declare·module·"node:trace_events"·{ |
| 96 | ····/** | 2 | ····/** |
| 97 | ·····*·The·`Tracing`·object·is·used·to·enable·or·disable·tracing·for·sets·of | 3 | ·····*·The·`Tracing`·object·is·used·to·enable·or·disable·tracing·for·sets·of |
| 98 | ·····*·categories.·Instances·are·created·using·the | 4 | ·····*·categories.·Instances·are·created·using·the |
| 99 | ·····*·`trace_events.createTracing()`·method. | 5 | ·····*·`trace_events.createTracing()`·method. |
| Max diff block lines reached; 68/5501 bytes (1.24%) of diff not shown. | |||
| Offset 168, 15 lines modified | Offset 168, 15 lines modified | ||
| 168 | ·············*·Returns·a·new·`Buffer`·which·is·the·result·of·concatenating·all·the·`Buffer`·instances·in·the·`list`·together. | 168 | ·············*·Returns·a·new·`Buffer`·which·is·the·result·of·concatenating·all·the·`Buffer`·instances·in·the·`list`·together. |
| 169 | ·············* | 169 | ·············* |
| 170 | ·············*·If·the·list·has·no·items,·or·if·the·`totalLength`·is·0,·then·a·new·zero-length·`Buffer`·is·returned. | 170 | ·············*·If·the·list·has·no·items,·or·if·the·`totalLength`·is·0,·then·a·new·zero-length·`Buffer`·is·returned. |
| 171 | ·············* | 171 | ·············* |
| 172 | ·············*·If·`totalLength`·is·not·provided,·it·is·calculated·from·the·`Buffer`·instances | 172 | ·············*·If·`totalLength`·is·not·provided,·it·is·calculated·from·the·`Buffer`·instances |
| 173 | ·············*·in·`list`·by·adding·their·lengths. | 173 | ·············*·in·`list`·by·adding·their·lengths. |
| 174 | ·············* | 174 | ·············* |
| 175 | ·············*·If·`totalLength`·is·provided,·it· | 175 | ·············*·If·`totalLength`·is·provided,·it·must·be·an·unsigned·integer.·If·the |
| 176 | ·············*·combined·length·of·the·`Buffer`s·in·`list`·exceeds·`totalLength`,·the·result·is | 176 | ·············*·combined·length·of·the·`Buffer`s·in·`list`·exceeds·`totalLength`,·the·result·is |
| 177 | ·············*·truncated·to·`totalLength`. | 177 | ·············*·truncated·to·`totalLength`. |
| 178 | ·············* | 178 | ·············* |
| 179 | ·············*·```js | 179 | ·············*·```js |
| 180 | ·············*·import·{·Buffer·}·from·'node:buffer'; | 180 | ·············*·import·{·Buffer·}·from·'node:buffer'; |
| 181 | ·············* | 181 | ·············* |
| 182 | ·············*·//·Create·a·single·`Buffer`·from·a·list·of·three·`Buffer`·instances. | 182 | ·············*·//·Create·a·single·`Buffer`·from·a·list·of·three·`Buffer`·instances. |
| Offset 1, 32 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:tty`·module·provides·the·`tty.ReadStream`·and·`tty.WriteStream`·classes.·In·most·cases,·it·will·not·be·necessary·or·possible·to·use·this·module | ||
| 3 | ·*·directly.·However,·it·can·be·accessed·using: | ||
| 4 | ·* | ||
| 5 | ·*·```js | ||
| 6 | ·*·import·tty·from·'node:tty'; | ||
| 7 | ·*·``` | ||
| 8 | ·* | ||
| 9 | ·*·When·Node.js·detects·that·it·is·being·run·with·a·text·terminal·("TTY") | ||
| 10 | ·*·attached,·`process.stdin`·will,·by·default,·be·initialized·as·an·instance·of·`tty.ReadStream`·and·both·`process.stdout`·and·`process.stderr`·will,·by | ||
| 11 | ·*·default,·be·instances·of·`tty.WriteStream`.·The·preferred·method·of·determining | ||
| 12 | ·*·whether·Node.js·is·being·run·within·a·TTY·context·is·to·check·that·the·value·of | ||
| 13 | ·*·the·`process.stdout.isTTY`·property·is·`true`: | ||
| 14 | ·* | ||
| 15 | ·*·```console | ||
| 16 | ·*·$·node·-p·-e·"Boolean(process.stdout.isTTY)" | ||
| 17 | ·*·true | ||
| 18 | ·*·$·node·-p·-e·"Boolean(process.stdout.isTTY)"·|·cat | ||
| 19 | ·*·false | ||
| 20 | ·*·``` | ||
| 21 | ·* | ||
| 22 | ·*·In·most·cases,·there·should·be·little·to·no·reason·for·an·application·to | ||
| 23 | ·*·manually·create·instances·of·the·`tty.ReadStream`·and·`tty.WriteStream`·classes. | ||
| 24 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/tty.js) | ||
| 25 | ·*/ | ||
| 26 | declare·module·"node:tty"·{ | 1 | declare·module·"node:tty"·{ |
| 27 | ····import·*·as·net·from·"node:net"; | 2 | ····import·*·as·net·from·"node:net"; |
| 28 | ····/** | 3 | ····/** |
| 29 | ·····*·The·`tty.isatty()`·method·returns·`true`·if·the·given·`fd`·is·associated·with | 4 | ·····*·The·`tty.isatty()`·method·returns·`true`·if·the·given·`fd`·is·associated·with |
| 30 | ·····*·a·TTY·and·`false`·if·it·is·not,·including·whenever·`fd`·is·not·a·non-negative | 5 | ·····*·a·TTY·and·`false`·if·it·is·not,·including·whenever·`fd`·is·not·a·non-negative |
| 31 | ·····*·integer. | 6 | ·····*·integer. |
| 32 | ·····*·@since·v0.5.8 | 7 | ·····*·@since·v0.5.8 |
| Offset 1, 16 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:url`·module·provides·utilities·for·URL·resolution·and·parsing.·It·can | ||
| 3 | ·*·be·accessed·using: | ||
| 4 | ·* | ||
| 5 | ·*·```js | ||
| 6 | ·*·import·url·from·'node:url'; | ||
| 7 | ·*·``` | ||
| 8 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/url.js) | ||
| 9 | ·*/ | ||
| 10 | declare·module·"node:url"·{ | 1 | declare·module·"node:url"·{ |
| 11 | ····import·{·Blob,·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·Blob,·NonSharedBuffer·}·from·"node:buffer"; |
| 12 | ····import·{·ClientRequestArgs·}·from·"node:http"; | 3 | ····import·{·ClientRequestArgs·}·from·"node:http"; |
| 13 | ····import·{·ParsedUrlQuery,·ParsedUrlQueryInput·}·from·"node:querystring"; | 4 | ····import·{·ParsedUrlQuery,·ParsedUrlQueryInput·}·from·"node:querystring"; |
| 14 | ····//·Input·to·`url.format` | 5 | ····//·Input·to·`url.format` |
| 15 | ····interface·UrlObject·{ | 6 | ····interface·UrlObject·{ |
| 16 | ········auth?:·string·|·null·|·undefined; | 7 | ········auth?:·string·|·null·|·undefined; |
| Offset 1, 17 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:util`·module·supports·the·needs·of·Node.js·internal·APIs.·Many·of·the | ||
| 3 | ·*·utilities·are·useful·for·application·and·module·developers·as·well.·To·access | ||
| 4 | ·*·it: | ||
| 5 | ·* | ||
| 6 | ·*·```js | ||
| 7 | ·*·import·util·from·'node:util'; | ||
| 8 | ·*·``` | ||
| 9 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/util.js) | ||
| 10 | ·*/ | ||
| 11 | declare·module·"node:util"·{ | 1 | declare·module·"node:util"·{ |
| 12 | ····export·*·as·types·from·"node:util/types"; | 2 | ····export·*·as·types·from·"node:util/types"; |
| 13 | ····export·type·InspectStyle·= | 3 | ····export·type·InspectStyle·= |
| 14 | ········|·"special" | 4 | ········|·"special" |
| 15 | ········|·"number" | 5 | ········|·"number" |
| 16 | ········|·"bigint" | 6 | ········|·"bigint" |
| 17 | ········|·"boolean" | 7 | ········|·"boolean" |
| Offset 1, 15 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:v8`·module·exposes·APIs·that·are·specific·to·the·version·of·[V8](https://developers.google.com/v8/)·built·into·the·Node.js·binary.·It·can·be·accessed·using: | ||
| 3 | ·* | ||
| 4 | ·*·```js | ||
| 5 | ·*·import·v8·from·'node:v8'; | ||
| 6 | ·*·``` | ||
| 7 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/v8.js) | ||
| 8 | ·*/ | ||
| 9 | declare·module·"node:v8"·{ | 1 | declare·module·"node:v8"·{ |
| 10 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; |
| 11 | ····import·{·Readable·}·from·"node:stream"; | 3 | ····import·{·Readable·}·from·"node:stream"; |
| 12 | ····interface·HeapSpaceInfo·{ | 4 | ····interface·HeapSpaceInfo·{ |
| 13 | ········space_name:·string; | 5 | ········space_name:·string; |
| 14 | ········space_size:·number; | 6 | ········space_size:·number; |
| 15 | ········space_used_size:·number; | 7 | ········space_used_size:·number; |
| Offset 1, 45 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:vm`·module·enables·compiling·and·running·code·within·V8·Virtual | ||
| 3 | ·*·Machine·contexts. | ||
| 4 | ·* | ||
| 5 | ·*·**The·`node:vm`·module·is·not·a·security** | ||
| 6 | ·*·**mechanism.·Do·not·use·it·to·run·untrusted·code.** | ||
| 7 | ·* | ||
| 8 | ·*·JavaScript·code·can·be·compiled·and·run·immediately·or | ||
| 9 | ·*·compiled,·saved,·and·run·later. | ||
| 10 | ·* | ||
| 11 | ·*·A·common·use·case·is·to·run·the·code·in·a·different·V8·Context.·This·means | ||
| 12 | ·*·invoked·code·has·a·different·global·object·than·the·invoking·code. | ||
| 13 | ·* | ||
| 14 | ·*·One·can·provide·the·context·by·`contextifying`·an | ||
| 15 | ·*·object.·The·invoked·code·treats·any·property·in·the·context·like·a | ||
| 16 | ·*·global·variable.·Any·changes·to·global·variables·caused·by·the·invoked | ||
| 17 | ·*·code·are·reflected·in·the·context·object. | ||
| 18 | ·* | ||
| 19 | ·*·```js | ||
| 20 | ·*·import·vm·from·'node:vm'; | ||
| 21 | ·* | ||
| 22 | ·*·const·x·=·1; | ||
| 23 | ·* | ||
| 24 | ·*·const·context·=·{·x:·2·}; | ||
| 25 | ·*·vm.createContext(context);·//·Contextify·the·object. | ||
| 26 | ·* | ||
| 27 | ·*·const·code·=·'x·+=·40;·var·y·=·17;'; | ||
| 28 | ·*·//·`x`·and·`y`·are·global·variables·in·the·context. | ||
| 29 | ·*·//·Initially,·x·has·the·value·2·because·that·is·the·value·of·context.x. | ||
| 30 | ·*·vm.runInContext(code,·context); | ||
| 31 | ·* | ||
| 32 | ·*·console.log(context.x);·//·42 | ||
| 33 | ·*·console.log(context.y);·//·17 | ||
| 34 | ·* | ||
| 35 | ·*·console.log(x);·//·1;·y·is·not·defined. | ||
| 36 | ·*·``` | ||
| 37 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/vm.js) | ||
| 38 | ·*/ | ||
| 39 | declare·module·"node:vm"·{ | 1 | declare·module·"node:vm"·{ |
| 40 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; |
| 41 | ····import·{·ImportAttributes,·ImportPhase·}·from·"node:module"; | 3 | ····import·{·ImportAttributes,·ImportPhase·}·from·"node:module"; |
| 42 | ····interface·Context·extends·NodeJS.Dict<any>·{} | 4 | ····interface·Context·extends·NodeJS.Dict<any>·{} |
| 43 | ····interface·BaseOptions·{ | 5 | ····interface·BaseOptions·{ |
| 44 | ········/** | 6 | ········/** |
| 45 | ·········*·Specifies·the·filename·used·in·stack·traces·produced·by·this·script. | 7 | ·········*·Specifies·the·filename·used·in·stack·traces·produced·by·this·script. |
| Offset 1, 78 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·**The·`node:wasi`·module·does·not·currently·provide·the** | ||
| 3 | ·*·**comprehensive·file·system·security·properties·provided·by·some·WASI·runtimes.** | ||
| 4 | ·*·**Full·support·for·secure·file·system·sandboxing·may·or·may·not·be·implemented·in** | ||
| 5 | ·*·**future.·In·the·mean·time,·do·not·rely·on·it·to·run·untrusted·code.** | ||
| 6 | ·* | ||
| 7 | ·*·The·WASI·API·provides·an·implementation·of·the·[WebAssembly·System·Interface](https://wasi.dev/)·specification.·WASI·gives·WebAssembly·applications·access·to·the·underlying | ||
| 8 | ·*·operating·system·via·a·collection·of·POSIX-like·functions. | ||
| 9 | ·* | ||
| 10 | ·*·```js | ||
| 11 | ·*·import·{·readFile·}·from·'node:fs/promises'; | ||
| 12 | ·*·import·{·WASI·}·from·'node:wasi'; | ||
| 13 | ·*·import·{·argv,·env·}·from·'node:process'; | ||
| 14 | ·* | ||
| 15 | ·*·const·wasi·=·new·WASI({ | ||
| 16 | ·*···version:·'preview1', | ||
| 17 | ·*···args:·argv, | ||
| 18 | ·*···env, | ||
| 19 | ·*···preopens:·{ | ||
| 20 | ·*·····'/local':·'/some/real/path/that/wasm/can/access', | ||
| 21 | ·*···}, | ||
| 22 | ·*·}); | ||
| 23 | ·* | ||
| 24 | ·*·const·wasm·=·await·WebAssembly.compile( | ||
| 25 | ·*···await·readFile(new·URL('./demo.wasm',·import.meta.url)), | ||
| 26 | ·*·); | ||
| 27 | ·*·const·instance·=·await·WebAssembly.instantiate(wasm,·wasi.getImportObject()); | ||
| 28 | ·* | ||
| 29 | ·*·wasi.start(instance); | ||
| 30 | ·*·``` | ||
| 31 | ·* | ||
| 32 | ·*·To·run·the·above·example,·create·a·new·WebAssembly·text·format·file·named·`demo.wat`: | ||
| 33 | ·* | ||
| 34 | ·*·```text | ||
| 35 | ·*·(module | ||
| 36 | ·*·····;;·Import·the·required·fd_write·WASI·function·which·will·write·the·given·io·vectors·to·stdout | ||
| 37 | ·*·····;;·The·function·signature·for·fd_write·is: | ||
| 38 | ·*·····;;·(File·Descriptor,·*iovs,·iovs_len,·nwritten)·->·Returns·number·of·bytes·written | ||
| 39 | ·*·····(import·"wasi_snapshot_preview1"·"fd_write"·(func·$fd_write·(param·i32·i32·i32·i32)·(result·i32))) | ||
| 40 | ·* | ||
| 41 | ·*·····(memory·1) | ||
| 42 | ·*·····(export·"memory"·(memory·0)) | ||
| 43 | ·* | ||
| 44 | ·*·····;;·Write·'hello·world\n'·to·memory·at·an·offset·of·8·bytes | ||
| 45 | ·*·····;;·Note·the·trailing·newline·which·is·required·for·the·text·to·appear | ||
| 46 | ·*·····(data·(i32.const·8)·"hello·world\n") | ||
| 47 | ·* | ||
| 48 | ·*·····(func·$main·(export·"_start") | ||
| 49 | ·*·········;;·Creating·a·new·io·vector·within·linear·memory | ||
| 50 | ·*·········(i32.store·(i32.const·0)·(i32.const·8))··;;·iov.iov_base·-·This·is·a·pointer·to·the·start·of·the·'hello·world\n'·string | ||
| 51 | ·*·········(i32.store·(i32.const·4)·(i32.const·12))··;;·iov.iov_len·-·The·length·of·the·'hello·world\n'·string | ||
| 52 | ·* | ||
| 53 | ·*·········(call·$fd_write | ||
| 54 | ·*·············(i32.const·1)·;;·file_descriptor·-·1·for·stdout | ||
| 55 | ·*·············(i32.const·0)·;;·*iovs·-·The·pointer·to·the·iov·array,·which·is·stored·at·memory·location·0 | ||
| 56 | ·*·············(i32.const·1)·;;·iovs_len·-·We're·printing·1·string·stored·in·an·iov·-·so·one. | ||
| 57 | ·*·············(i32.const·20)·;;·nwritten·-·A·place·in·memory·to·store·the·number·of·bytes·written | ||
| 58 | ·*·········) | ||
| 59 | ·*·········drop·;;·Discard·the·number·of·bytes·written·from·the·top·of·the·stack | ||
| 60 | ·*·····) | ||
| 61 | ·*·) | ||
| 62 | ·*·``` | ||
| 63 | ·* | ||
| 64 | ·*·Use·[wabt](https://github.com/WebAssembly/wabt)·to·compile·`.wat`·to·`.wasm` | ||
| 65 | ·* | ||
| 66 | ·*·```bash | ||
| 67 | ·*·wat2wasm·demo.wat | ||
| 68 | ·*·``` | ||
| 69 | ·*·@experimental | ||
| 70 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/wasi.js) | ||
| 71 | ·*/ | ||
| 72 | declare·module·"node:wasi"·{ | 1 | declare·module·"node:wasi"·{ |
| 73 | ····interface·WASIOptions·{ | 2 | ····interface·WASIOptions·{ |
| 74 | ········/** | 3 | ········/** |
| 75 | ·········*·An·array·of·strings·that·the·WebAssembly·application·will | 4 | ·········*·An·array·of·strings·that·the·WebAssembly·application·will |
| 76 | ·········*·see·as·command·line·arguments.·The·first·argument·is·the·virtual·path·to·the | 5 | ·········*·see·as·command·line·arguments.·The·first·argument·is·the·virtual·path·to·the |
| 77 | ·········*·WASI·command·itself. | 6 | ·········*·WASI·command·itself. |
| 78 | ·········*·@default·[] | 7 | ·········*·@default·[] |
| Offset 1, 63 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:worker_threads`·module·enables·the·use·of·threads·that·execute | ||
| 3 | ·*·JavaScript·in·parallel.·To·access·it: | ||
| 4 | ·* | ||
| 5 | ·*·```js | ||
| 6 | ·*·import·worker·from·'node:worker_threads'; | ||
| 7 | ·*·``` | ||
| 8 | ·* | ||
| 9 | ·*·Workers·(threads)·are·useful·for·performing·CPU-intensive·JavaScript·operations. | ||
| 10 | ·*·They·do·not·help·much·with·I/O-intensive·work.·The·Node.js·built-in | ||
| 11 | ·*·asynchronous·I/O·operations·are·more·efficient·than·Workers·can·be. | ||
| 12 | ·* | ||
| 13 | ·*·Unlike·`child_process`·or·`cluster`,·`worker_threads`·can·share·memory.·They·do | ||
| 14 | ·*·so·by·transferring·`ArrayBuffer`·instances·or·sharing·`SharedArrayBuffer`·instances. | ||
| 15 | ·* | ||
| 16 | ·*·```js | ||
| 17 | ·*·import·{ | ||
| 18 | ·*···Worker, | ||
| 19 | ·*···isMainThread, | ||
| 20 | ·*···parentPort, | ||
| 21 | ·*···workerData, | ||
| 22 | ·*·}·from·'node:worker_threads'; | ||
| 23 | ·* | ||
| 24 | ·*·if·(!isMainThread)·{ | ||
| 25 | ·*···const·{·parse·}·=·await·import('some-js-parsing-library'); | ||
| 26 | ·*···const·script·=·workerData; | ||
| 27 | ·*···parentPort.postMessage(parse(script)); | ||
| 28 | ·*·} | ||
| 29 | ·* | ||
| 30 | ·*·export·default·function·parseJSAsync(script)·{ | ||
| 31 | ·*···return·new·Promise((resolve,·reject)·=>·{ | ||
| 32 | ·*·····const·worker·=·new·Worker(new·URL(import.meta.url),·{ | ||
| 33 | ·*·······workerData:·script, | ||
| 34 | ·*·····}); | ||
| 35 | ·*·····worker.on('message',·resolve); | ||
| 36 | ·*·····worker.once('error',·reject); | ||
| 37 | ·*·····worker.once('exit',·(code)·=>·{ | ||
| 38 | ·*·······if·(code·!==·0) | ||
| 39 | ·*·········reject(new·Error(`Worker·stopped·with·exit·code·${code}`)); | ||
| 40 | ·*·····}); | ||
| 41 | ·*···}); | ||
| 42 | ·*·}; | ||
| 43 | ·*·``` | ||
| 44 | ·* | ||
| 45 | ·*·The·above·example·spawns·a·Worker·thread·for·each·`parseJSAsync()`·call.·In | ||
| 46 | ·*·practice,·use·a·pool·of·Workers·for·these·kinds·of·tasks.·Otherwise,·the | ||
| 47 | ·*·overhead·of·creating·Workers·would·likely·exceed·their·benefit. | ||
| 48 | ·* | ||
| 49 | ·*·When·implementing·a·worker·pool,·use·the·`AsyncResource`·API·to·inform | ||
| 50 | ·*·diagnostic·tools·(e.g.·to·provide·asynchronous·stack·traces)·about·the | ||
| 51 | ·*·correlation·between·tasks·and·their·outcomes.·See·`"Using·AsyncResource·for·a·Worker·thread·pool"`·in·the·`async_hooks`·documentation·for·an·example·implementation. | ||
| 52 | ·* | ||
| 53 | ·*·Worker·threads·inherit·non-process-specific·options·by·default.·Refer·to·`Worker·constructor·options`·to·know·how·to·customize·worker·thread·options, | ||
| 54 | ·*·specifically·`argv`·and·`execArgv`·options. | ||
| 55 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/worker_threads.js) | ||
| 56 | ·*/ | ||
| 57 | declare·module·"node:worker_threads"·{ | 1 | declare·module·"node:worker_threads"·{ |
| 58 | ····import·{ | 2 | ····import·{ |
| 59 | ········EventEmitter, | 3 | ········EventEmitter, |
| 60 | ········InternalEventEmitter, | 4 | ········InternalEventEmitter, |
| 61 | ········InternalEventTargetEventProperties, | 5 | ········InternalEventTargetEventProperties, |
| 62 | ········NodeEventTarget, | 6 | ········NodeEventTarget, |
| 63 | ····}·from·"node:events"; | 7 | ····}·from·"node:events"; |
| Offset 392, 37 lines modified | Offset 336, 47 lines modified | ||
| 392 | ·········*·@since·v24.2.0 | 336 | ·········*·@since·v24.2.0 |
| 393 | ·········*/ | 337 | ·········*/ |
| 394 | ········[Symbol.asyncDispose]():·Promise<void>; | 338 | ········[Symbol.asyncDispose]():·Promise<void>; |
| 395 | ····} | 339 | ····} |
| 396 | ····interface·Worker·extends·InternalEventEmitter<WorkerEventMap>·{} | 340 | ····interface·Worker·extends·InternalEventEmitter<WorkerEventMap>·{} |
| 397 | ····/** | 341 | ····/** |
| 398 | ·····*·Mark·an·object·as·not·transferable.·If·`object`·occurs·in·the·transfer·list·of | 342 | ·····*·Mark·an·object·as·not·transferable.·If·`object`·occurs·in·the·transfer·list·of |
| 399 | ·····*·a·`port.postMessage()`·call,·it·is·i | 343 | ·····*·a·[`port.postMessage()`](https://nodejs.org/docs/latest-v25.x/api/worker_threads.html#portpostmessagevalue-transferlist)·call,·an·error·is·thrown.·This·is·a·no-op·if |
| 344 | ·····*·`object`·is·a·primitive·value. | ||
| 400 | ·····* | 345 | ·····* |
| 401 | ·····*·In·particular,·this·makes·sense·for·objects·that·can·be·cloned,·rather·than | 346 | ·····*·In·particular,·this·makes·sense·for·objects·that·can·be·cloned,·rather·than |
| 402 | ·····*·transferred,·and·which·are·used·by·other·objects·on·the·sending·side. | 347 | ·····*·transferred,·and·which·are·used·by·other·objects·on·the·sending·side. |
| 403 | ·····*·For·example,·Node.js·marks·the·`ArrayBuffer`s·it·uses·for·its | 348 | ·····*·For·example,·Node.js·marks·the·`ArrayBuffer`s·it·uses·for·its |
| 349 | ·····*·[`Buffer`·pool](https://nodejs.org/docs/latest-v25.x/api/buffer.html#static-method-bufferallocunsafesize)·with·this. | ||
| 350 | ·····*·`ArrayBuffer.prototype.transfer()`·is·disallowed·on·such·array·buffer | ||
| 351 | ·····*·instances. | ||
| 404 | ·····* | 352 | ·····* |
| 405 | ·····*·This·operation·cannot·be·undone. | 353 | ·····*·This·operation·cannot·be·undone. |
| 406 | ·····* | 354 | ·····* |
| 407 | ·····*·```js | 355 | ·····*·```js |
| 408 | ·····*·import·{·MessageChannel,·markAsUntransferable·}·from·'node:worker_threads'; | 356 | ·····*·import·{·MessageChannel,·markAsUntransferable·}·from·'node:worker_threads'; |
| 409 | ·····* | 357 | ·····* |
| 410 | ·····*·const·pooledBuffer·=·new·ArrayBuffer(8); | 358 | ·····*·const·pooledBuffer·=·new·ArrayBuffer(8); |
| 411 | ·····*·const·typedArray1·=·new·Uint8Array(pooledBuffer); | 359 | ·····*·const·typedArray1·=·new·Uint8Array(pooledBuffer); |
| 412 | ·····*·const·typedArray2·=·new·Float64Array(pooledBuffer); | 360 | ·····*·const·typedArray2·=·new·Float64Array(pooledBuffer); |
| 413 | ·····* | 361 | ·····* |
| 414 | ·····*·markAsUntransferable(pooledBuffer); | 362 | ·····*·markAsUntransferable(pooledBuffer); |
| 415 | ·····* | 363 | ·····* |
| 416 | ·····*·const·{·port1·}·=·new·MessageChannel(); | 364 | ·····*·const·{·port1·}·=·new·MessageChannel(); |
| 365 | ·····*·try·{ | ||
| 366 | ·····*···//·This·will·throw·an·error,·because·pooledBuffer·is·not·transferable. | ||
| 417 | ·····*·port1.postMessage(typedArray1,·[·typedArray1.buffer·]); | 367 | ·····*···port1.postMessage(typedArray1,·[·typedArray1.buffer·]); |
| 368 | ·····*·}·catch·(error)·{ | ||
| 369 | ·····*···//·error.name·===·'DataCloneError' | ||
| 370 | ·····*·} | ||
| Max diff block lines reached; 636/4933 bytes (12.89%) of diff not shown. | |||
| Offset 1, 100 lines modified | Offset 1, 7 lines modified | ||
| 1 | /** | ||
| 2 | ·*·The·`node:zlib`·module·provides·compression·functionality·implemented·using | ||
| 3 | ·*·Gzip,·Deflate/Inflate,·and·Brotli. | ||
| 4 | ·* | ||
| 5 | ·*·To·access·it: | ||
| 6 | ·* | ||
| 7 | ·*·```js | ||
| 8 | ·*·import·zlib·from·'node:zlib'; | ||
| 9 | ·*·``` | ||
| 10 | ·* | ||
| 11 | ·*·Compression·and·decompression·are·built·around·the·Node.js | ||
| 12 | ·*·[Streams·API](https://nodejs.org/docs/latest-v25.x/api/stream.html). | ||
| 13 | ·* | ||
| 14 | ·*·Compressing·or·decompressing·a·stream·(such·as·a·file)·can·be·accomplished·by | ||
| 15 | ·*·piping·the·source·stream·through·a·`zlib`·`Transform`·stream·into·a·destination | ||
| 16 | ·*·stream: | ||
| 17 | ·* | ||
| 18 | ·*·```js | ||
| 19 | ·*·import·{·createGzip·}·from·'node:zlib'; | ||
| 20 | ·*·import·{·pipeline·}·from·'node:stream'; | ||
| 21 | ·*·import·{ | ||
| 22 | ·*···createReadStream, | ||
| 23 | ·*···createWriteStream, | ||
| 24 | ·*·}·from·'node:fs'; | ||
| 25 | ·* | ||
| 26 | ·*·const·gzip·=·createGzip(); | ||
| 27 | ·*·const·source·=·createReadStream('input.txt'); | ||
| 28 | ·*·const·destination·=·createWriteStream('input.txt.gz'); | ||
| 29 | ·* | ||
| 30 | ·*·pipeline(source,·gzip,·destination,·(err)·=>·{ | ||
| 31 | ·*···if·(err)·{ | ||
| 32 | ·*·····console.error('An·error·occurred:',·err); | ||
| 33 | ·*·····process.exitCode·=·1; | ||
| 34 | ·*···} | ||
| 35 | ·*·}); | ||
| 36 | ·* | ||
| 37 | ·*·//·Or,·Promisified | ||
| 38 | ·* | ||
| 39 | ·*·import·{·promisify·}·from·'node:util'; | ||
| 40 | ·*·const·pipe·=·promisify(pipeline); | ||
| 41 | ·* | ||
| 42 | ·*·async·function·do_gzip(input,·output)·{ | ||
| 43 | ·*···const·gzip·=·createGzip(); | ||
| 44 | ·*···const·source·=·createReadStream(input); | ||
| 45 | ·*···const·destination·=·createWriteStream(output); | ||
| 46 | ·*···await·pipe(source,·gzip,·destination); | ||
| 47 | ·*·} | ||
| 48 | ·* | ||
| 49 | ·*·do_gzip('input.txt',·'input.txt.gz') | ||
| 50 | ·*···.catch((err)·=>·{ | ||
| 51 | ·*·····console.error('An·error·occurred:',·err); | ||
| 52 | ·*·····process.exitCode·=·1; | ||
| 53 | ·*···}); | ||
| 54 | ·*·``` | ||
| 55 | ·* | ||
| 56 | ·*·It·is·also·possible·to·compress·or·decompress·data·in·a·single·step: | ||
| 57 | ·* | ||
| 58 | ·*·```js | ||
| 59 | ·*·import·{·deflate,·unzip·}·from·'node:zlib'; | ||
| 60 | ·* | ||
| 61 | ·*·const·input·=·'.................................'; | ||
| 62 | ·*·deflate(input,·(err,·buffer)·=>·{ | ||
| 63 | ·*···if·(err)·{ | ||
| 64 | ·*·····console.error('An·error·occurred:',·err); | ||
| 65 | ·*·····process.exitCode·=·1; | ||
| 66 | ·*···} | ||
| 67 | ·*···console.log(buffer.toString('base64')); | ||
| 68 | ·*·}); | ||
| 69 | ·* | ||
| 70 | ·*·const·buffer·=·Buffer.from('eJzT0yMAAGTvBe8=',·'base64'); | ||
| 71 | ·*·unzip(buffer,·(err,·buffer)·=>·{ | ||
| 72 | ·*···if·(err)·{ | ||
| 73 | ·*·····console.error('An·error·occurred:',·err); | ||
| 74 | ·*·····process.exitCode·=·1; | ||
| 75 | ·*···} | ||
| 76 | ·*···console.log(buffer.toString()); | ||
| 77 | ·*·}); | ||
| 78 | ·* | ||
| 79 | ·*·//·Or,·Promisified | ||
| 80 | ·* | ||
| 81 | ·*·import·{·promisify·}·from·'node:util'; | ||
| 82 | ·*·const·do_unzip·=·promisify(unzip); | ||
| 83 | ·* | ||
| 84 | ·*·do_unzip(buffer) | ||
| 85 | ·*···.then((buf)·=>·console.log(buf.toString())) | ||
| 86 | ·*···.catch((err)·=>·{ | ||
| 87 | ·*·····console.error('An·error·occurred:',·err); | ||
| 88 | ·*·····process.exitCode·=·1; | ||
| 89 | ·*···}); | ||
| 90 | ·*·``` | ||
| 91 | ·*·@since·v0.5.8 | ||
| 92 | ·*·@see·[source](https://github.com/nodejs/node/blob/v25.x/lib/zlib.js) | ||
| 93 | ·*/ | ||
| 94 | declare·module·"node:zlib"·{ | 1 | declare·module·"node:zlib"·{ |
| 95 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; | 2 | ····import·{·NonSharedBuffer·}·from·"node:buffer"; |
| 96 | ····import·*·as·stream·from·"node:stream"; | 3 | ····import·*·as·stream·from·"node:stream"; |
| 97 | ····interface·ZlibOptions·{ | 4 | ····interface·ZlibOptions·{ |
| 98 | ········/** | 5 | ········/** |
| 99 | ·········*·@default·constants.Z_NO_FLUSH | 6 | ·········*·@default·constants.Z_NO_FLUSH |
| Max diff block lines reached; 0/2828 bytes (0.00%) of diff not shown. | |||
| Offset 1, 15 lines modified | Offset 1, 36 lines modified | ||
| 1 | #·Changelog | 1 | #·Changelog |
| 2 | All·notable·changes·to·this·project·will·be·documented·in·this·file. | 2 | All·notable·changes·to·this·project·will·be·documented·in·this·file. |
| 3 | The·format·is·based·on·[Keep·a·Changelog](https://keepachangelog.com/en/1.0.0/) | 3 | The·format·is·based·on·[Keep·a·Changelog](https://keepachangelog.com/en/1.0.0/) |
| 4 | and·this·project·adheres·to·[Semantic·Versioning](https://semver.org/spec/v2.0.0.html). | 4 | and·this·project·adheres·to·[Semantic·Versioning](https://semver.org/spec/v2.0.0.html). |
| 5 | ##·[v1.0.1](https://github.com/ljharb/side-channel-list.git | ||
| 6 | /compare/v1.0.0...v1.0.1)·-·2026-04-08 | ||
| 7 | ###·Fixed | ||
| 8 | -·[Fix]·`delete`:·do·not·reset·the·list·when·deleting·the·head·node·of·a·multi-node·list·[`#3`](https://github.com/ljharb/side-channel-list.git | ||
| 9 | /issues/3) | ||
| 10 | ###·Commits | ||
| 11 | -·[actions]·update·workflows·[`9e79e6b`](https://github.com/ljharb/side-channel-list.git | ||
| 12 | /commit/9e79e6bf845532fafbf03b547429fe4f737214a3) | ||
| 13 | -·[Deps]·update·`@arethetypeswrong/cli`,·`@ljharb/eslint-config`,·`@ljharb/tsconfig`,·`@types/tape`,·`eslint`,·`npmignore`·[`babf3ca`](https://github.com/ljharb/side-channel-list.git | ||
| 14 | /commit/babf3ca4849d2fd893a470a6b82c62a80ccc9307) | ||
| 15 | -·[Deps]·update·`object-inspect`·[`9f0f4b8`](https://github.com/ljharb/side-channel-list.git | ||
| 16 | /commit/9f0f4b88ff2aa8b7b7c9e589ac1513f133d64b9f) | ||
| 5 | ##·v1.0.0·-·2024-12-10 | 17 | ##·v1.0.0·-·2024-12-10 |
| 6 | ###·Commits | 18 | ###·Commits |
| 7 | -·Initial·implementation,·tests,·readme,·types·[`5d6baee`](https://github.com/ljharb/side-channel-list | 19 | -·Initial·implementation,·tests,·readme,·types·[`5d6baee`](https://github.com/ljharb/side-channel-list.git |
| 20 | /commit/5d6baee5c9054a1238007f5a1dfc109a7a816251) | ||
| 8 | -·Initial·commit·[`3ae784c`](https://github.com/ljharb/side-channel-list | 21 | -·Initial·commit·[`3ae784c`](https://github.com/ljharb/side-channel-list.git |
| 9 | 22 | /commit/3ae784c63a47895fbaeed2a91ab54a8029a7a100) | |
| 23 | -·npm·init·[`07055a4`](https://github.com/ljharb/side-channel-list.git | ||
| 24 | /commit/07055a4d139895565b199dba5fe2479c1a1b9e28) | ||
| 10 | -·Only·apps·should·have·lockfiles·[`9573058`](https://github.com/ljharb/side-channel-list | 25 | -·Only·apps·should·have·lockfiles·[`9573058`](https://github.com/ljharb/side-channel-list.git |
| 26 | /commit/9573058a47494e2d68f8c6c77b5d7fbe441949c1) | ||
| Offset 156, 57 lines modified | Offset 156, 51 lines modified | ||
| 000009b0:·6872·6f77·206e·6577·2024·5479·7065·4572··hrow·new·$TypeEr | 000009b0:·6872·6f77·206e·6577·2024·5479·7065·4572··hrow·new·$TypeEr | ||
| 000009c0:·726f·7228·2753·6964·6520·6368·616e·6e65··ror('Side·channe | 000009c0:·726f·7228·2753·6964·6520·6368·616e·6e65··ror('Side·channe | ||
| 000009d0:·6c20·646f·6573·206e·6f74·2063·6f6e·7461··l·does·not·conta | 000009d0:·6c20·646f·6573·206e·6f74·2063·6f6e·7461··l·does·not·conta | ||
| 000009e0:·696e·2027·202b·2069·6e73·7065·6374·286b··in·'·+·inspect(k | 000009e0:·696e·2027·202b·2069·6e73·7065·6374·286b··in·'·+·inspect(k | ||
| 000009f0:·6579·2929·3b0a·0909·097d·0a09·097d·2c0a··ey));....}...},. | 000009f0:·6579·2929·3b0a·0909·097d·0a09·097d·2c0a··ey));....}...},. | ||
| 00000a00:·0909·2764·656c·6574·6527·3a20·6675·6e63··..'delete':·func | 00000a00:·0909·2764·656c·6574·6527·3a20·6675·6e63··..'delete':·func | ||
| 00000a10:·7469·6f6e·2028·6b65·7929·207b·0a09·0909··tion·(key)·{.... | 00000a10:·7469·6f6e·2028·6b65·7929·207b·0a09·0909··tion·(key)·{.... | ||
| 00000a20:·7661·7220·726f·6f74·203d·2024·6f20·2626··var·root·=·$o·&& | |||
| 00000a30:·2024·6f2e·6e65·7874·3b0a·0909·0976·6172···$o.next;....var | |||
| 00000a40:·2064·656c·6574·6564·4e6f·6465·203d·206c···deletedNode·=·l | |||
| 00000a50:·6973·7444·656c·6574·6528·246f·2c20·6b65··istDelete($o,·ke | |||
| 00000a60:·7929·3b0a·0909·0969·6620·2864·656c·6574··y);....if·(delet | |||
| 00000a70:·6564·4e6f·6465·2026·2620·726f·6f74·2026··edNode·&&·root·& | |||
| 00000a80:·2620·726f·6f74·203d·3d3d·2064·656c·6574··&·root·===·delet | |||
| 00000a90:·6564·4e6f·6465·2920·7b0a·0909·0909·246f··edNode)·{.....$o | |||
| 00000aa0:·203d·2076·6f69·6420·756e·6465·6669·6e65···=·void·undefine | |||
| 00000ab0:·643b·0a09·0909·7d0a·0909·0972·6574·7572··d;....}....retur | |||
| 00000a | 00000a20:·7661·7220·6465·6c65·7465·644e·6f64·6520··var·deletedNode· | ||
| 00000a30:·3d20·6c69·7374·4465·6c65·7465·2824·6f2c··=·listDelete($o, | |||
| 00000a40:·206b·6579·293b·0a09·0909·6966·2028·6465···key);....if·(de | |||
| 00000a50:·6c65·7465·644e·6f64·6520·2626·2024·6f20··letedNode·&&·$o· | |||
| 00000a60:·2626·2021·246f·2e6e·6578·7429·207b·0a09··&&·!$o.next)·{.. | |||
| 00000a70:·0909·0924·6f20·3d20·766f·6964·2075·6e64··...$o·=·void·und | |||
| 00000a80:·6566·696e·6564·3b0a·0909·097d·0a09·0909··efined;....}.... | |||
| 00000a90:·7265·7475·726e·2021·2164·656c·6574·6564··return·!!deleted | |||
| 00000aa0:·4e6f·6465·3b0a·0909·7d2c·0a09·0967·6574··Node;...},...get | |||
| 00000ab0:·3a20·6675·6e63·7469·6f6e·2028·6b65·7929··:·function·(key) | |||
| 00000ac0:·207b·0a09·0909·7265·7475·726e·206c·6973···{....return·lis | |||
| 00000ad0:·7447·6574·2824·6f2c·206b·6579·293b·0a09··tGet($o,·key);.. | |||
| 00000a | 00000ae0:·097d·2c0a·0909·6861·733a·2066·756e·6374··.},...has:·funct | ||
| 00000a | 00000af0:·696f·6e20·286b·6579·2920·7b0a·0909·0972··ion·(key)·{....r | ||
| 00000 | 00000b00:·6574·7572·6e20·6c69·7374·4861·7328·246f··eturn·listHas($o | ||
| 00000b | 00000b10:·2c20·6b65·7929·3b0a·0909·7d2c·0a09·0973··,·key);...},...s | ||
| 00000b | 00000b20:·6574·3a20·6675·6e63·7469·6f6e·2028·6b65··et:·function·(ke | ||
| 00000b30:·792c·2076·616c·7565·2920·7b0a·0909·0969··y,·value)·{....i | |||
| 00000b40:·6620·2821·246f·2920·7b0a·0909·0909·2f2f··f·(!$o)·{.....// | |||
| 00000b50:·2049·6e69·7469·616c·697a·6520·7468·6520···Initialize·the· | |||
| 00000b60:·6c69·6e6b·6564·206c·6973·7420·6173·2061··linked·list·as·a | |||
| 00000b70:·6e20·656d·7074·7920·6e6f·6465·2c20·736f··n·empty·node,·so | |||
| 00000b80:·2074·6861·7420·7765·2064·6f6e·2774·2068···that·we·don't·h | |||
| 00000b90:·6176·6520·746f·2073·7065·6369·616c·2d63··ave·to·special-c | |||
| 00000ba0:·6173·6520·6861·6e64·6c69·6e67·206f·6620··ase·handling·of· | |||
| 00000bb0:·7468·6520·6669·7273·7420·6e6f·6465·3a20··the·first·node:· | |||
| 00000bc0:·7765·2063·616e·2061·6c77·6179·7320·7265··we·can·always·re | |||
| 00000bd0:·6665·7220·746f·2069·7420·6173·2028·7072··fer·to·it·as·(pr | |||
| 00000be0:·6576·696f·7573·206e·6f64·6529·2e6e·6578··evious·node).nex | |||
| 00000bf0:·742c·2069·6e73·7465·6164·206f·6620·736f··t,·instead·of·so | |||
| 00000c00:·6d65·7468·696e·6720·6c69·6b65·2028·6c69··mething·like·(li | |||
| 00000c10:·7374·292e·6865·6164·0a09·0909·0924·6f20··st).head.....$o· | |||
| 00000c20:·3d20·7b0a·0909·0909·096e·6578·743a·2076··=·{......next:·v | |||
| 00000c30:·6f69·6420·756e·6465·6669·6e65·640a·0909··oid·undefined... | |||
| 00000c40:·0909·7d3b·0a09·0909·7d0a·0909·092f·2f20··..};....}....//· | |||
| 00000c50:·6573·6c69·6e74·2d64·6973·6162·6c65·2d6e··eslint-disable-n | |||
| 00000c60:·6578·742d·6c69·6e65·206e·6f2d·6578·7472··ext-line·no-extr | |||
| 00000c70:·612d·7061·7265·6e73·0a09·0909·6c69·7374··a-parens....list | |||
| 00000c80:·5365·7428·2f2a·2a20·4074·7970·6520·7b4e··Set(/**·@type·{N | |||
| 00000c90:·6f6e·4e75·6c6c·6162·6c65·3c74·7970·656f··onNullable<typeo | |||
| 00000ca0:·6620·246f·3e7d·202a·2f20·2824·6f29·2c20··f·$o>}·*/·($o),· | |||
| 00000cb0:·6b65·792c·2076·616c·7565·293b·0a09·097d··key,·value);...} | |||
| 00000cc0:·0a09·7d3b·0a09·7265·7475·726e·2063·6861··..};..return·cha | |||
| 00000cd0:·6e6e·656c·3b0a·7d3b·0a···················nnel;.};. | |||
| 00000b20:·6b65·7929·207b·0a09·0909·7265·7475·726e··key)·{....return | |||
| 00000b30:·206c·6973·7448·6173·2824·6f2c·206b·6579···listHas($o,·key | |||
| 00000b40:·293b·0a09·097d·2c0a·0909·7365·743a·2066··);...},...set:·f | |||
| 00000b50:·756e·6374·696f·6e20·286b·6579·2c20·7661··unction·(key,·va | |||
| 00000b60:·6c75·6529·207b·0a09·0909·6966·2028·2124··lue)·{....if·(!$ | |||
| 00000b70:·6f29·207b·0a09·0909·092f·2f20·496e·6974··o)·{.....//·Init | |||
| 00000b80:·6961·6c69·7a65·2074·6865·206c·696e·6b65··ialize·the·linke | |||
| 00000b90:·6420·6c69·7374·2061·7320·616e·2065·6d70··d·list·as·an·emp | |||
| 00000ba0:·7479·206e·6f64·652c·2073·6f20·7468·6174··ty·node,·so·that | |||
| 00000bb0:·2077·6520·646f·6e27·7420·6861·7665·2074···we·don't·have·t | |||
| 00000bc0:·6f20·7370·6563·6961·6c2d·6361·7365·2068··o·special-case·h | |||
| 00000bd0:·616e·646c·696e·6720·6f66·2074·6865·2066··andling·of·the·f | |||
| 00000be0:·6972·7374·206e·6f64·653a·2077·6520·6361··irst·node:·we·ca | |||
| 00000bf0:·6e20·616c·7761·7973·2072·6566·6572·2074··n·always·refer·t | |||
| 00000c00:·6f20·6974·2061·7320·2870·7265·7669·6f75··o·it·as·(previou | |||
| 00000c10:·7320·6e6f·6465·292e·6e65·7874·2c20·696e··s·node).next,·in | |||
| 00000c20:·7374·6561·6420·6f66·2073·6f6d·6574·6869··stead·of·somethi | |||
| 00000c30:·6e67·206c·696b·6520·286c·6973·7429·2e68··ng·like·(list).h | |||
| 00000c40:·6561·640a·0909·0909·246f·203d·207b·0a09··ead.....$o·=·{.. | |||
| 00000c50:·0909·0909·6e65·7874·3a20·766f·6964·2075··....next:·void·u | |||
| 00000c60:·6e64·6566·696e·6564·0a09·0909·097d·3b0a··ndefined.....};. | |||
| 00000c70:·0909·097d·0a09·0909·2f2f·2065·736c·696e··...}....//·eslin | |||
| 00000c80:·742d·6469·7361·626c·652d·6e65·7874·2d6c··t-disable-next-l | |||
| 00000c90:·696e·6520·6e6f·2d65·7874·7261·2d70·6172··ine·no-extra-par | |||
| 00000ca0:·656e·730a·0909·096c·6973·7453·6574·282f··ens....listSet(/ | |||
| 00000cb0:·2a2a·2040·7479·7065·207b·4e6f·6e4e·756c··**·@type·{NonNul | |||
| 00000cc0:·6c61·626c·653c·7479·7065·6f66·2024·6f3e··lable<typeof·$o> | |||
| 00000cd0:·7d20·2a2f·2028·246f·292c·206b·6579·2c20··}·*/·($o),·key,· | |||
| 00000ce0:·7661·6c75·6529·3b0a·0909·7d0a·097d·3b0a··value);...}..};. | |||
| 00000cf0:·092f·2f20·4074·732d·6578·7065·6374·2d65··.//·@ts-expect-e | |||
| 00000d00:·7272·6f72·2054·4f44·4f3a·2066·6967·7572··rror·TODO:·figur | |||
| 00000d10:·6520·6f75·7420·7768·7920·7468·6973·2069··e·out·why·this·i | |||
| 00000d20:·7320·6572·726f·7269·6e67·0a09·7265·7475··s·erroring..retu | |||
| 00000d30:·726e·2063·6861·6e6e·656c·3b0a·7d3b·0a····rn·channel;.};. |
| Offset 9, 30 lines modified | Offset 9, 30 lines modified | ||
| 9 | ········"unreleased":·false | 9 | ········"unreleased":·false |
| 10 | ····}, | 10 | ····}, |
| 11 | ····"bugs":·{ | 11 | ····"bugs":·{ |
| 12 | ········"url":·"https://github.com/ljharb/side-channel-list/issues" | 12 | ········"url":·"https://github.com/ljharb/side-channel-list/issues" |
| 13 | ····}, | 13 | ····}, |
| 14 | ····"dependencies":·{ | 14 | ····"dependencies":·{ |
| 15 | ········"es-errors":·"^1.3.0", | 15 | ········"es-errors":·"^1.3.0", |
| 16 | ········"object-inspect":·"^1.13. | 16 | ········"object-inspect":·"^1.13.4" |
| 17 | ····}, | 17 | ····}, |
| 18 | ····"description":·"Store·information·about·any·JS·value·in·a·side·channel,·using·a·linked·list", | 18 | ····"description":·"Store·information·about·any·JS·value·in·a·side·channel,·using·a·linked·list", |
| 19 | ····"devDependencies":·{ | 19 | ····"devDependencies":·{ |
| 20 | ········"@arethetypeswrong/cli":·"^0.1 | 20 | ········"@arethetypeswrong/cli":·"^0.18.2", |
| 21 | ········"@ljharb/eslint-config":·"^2 | 21 | ········"@ljharb/eslint-config":·"^22.2.2", |
| 22 | ········"@ljharb/tsconfig":·"^0. | 22 | ········"@ljharb/tsconfig":·"^0.3.2", |
| 23 | ········"@types/object-inspect":·"^1.13.0", | 23 | ········"@types/object-inspect":·"^1.13.0", |
| 24 | ········"@types/tape":·"^5. | 24 | ········"@types/tape":·"^5.8.1", |
| 25 | ········"auto-changelog":·"^2.5.0", | 25 | ········"auto-changelog":·"^2.5.0", |
| 26 | ········"eclint":·"^2.8.1", | 26 | ········"eclint":·"^2.8.1", |
| 27 | ········"encoding":·"^0.1.13", | 27 | ········"encoding":·"^0.1.13", |
| 28 | ········"eslint":·" | 28 | ········"eslint":·"^8.57.1", |
| 29 | ········"evalmd":·"^0.0.19", | 29 | ········"evalmd":·"^0.0.19", |
| 30 | ········"in-publish":·"^2.0.1", | 30 | ········"in-publish":·"^2.0.1", |
| 31 | ········"npmignore":·"^0.3. | 31 | ········"npmignore":·"^0.3.5", |
| 32 | ········"nyc":·"^10.3.2", | 32 | ········"nyc":·"^10.3.2", |
| 33 | ········"safe-publish-latest":·"^2.0.0", | 33 | ········"safe-publish-latest":·"^2.0.0", |
| 34 | ········"tape":·"^5.9.0", | 34 | ········"tape":·"^5.9.0", |
| 35 | ········"typescript":·"next" | 35 | ········"typescript":·"next" |
| 36 | ····}, | 36 | ····}, |
| 37 | ····"engines":·{ | 37 | ····"engines":·{ |
| 38 | ········"node":·">=·0.4" | 38 | ········"node":·">=·0.4" |
| Offset 69, 9 lines modified | Offset 69, 9 lines modified | ||
| 69 | ········"prepublishOnly":·"safe-publish-latest", | 69 | ········"prepublishOnly":·"safe-publish-latest", |
| 70 | ········"pretest":·"npm·run·lint", | 70 | ········"pretest":·"npm·run·lint", |
| 71 | ········"test":·"npm·run·tests-only", | 71 | ········"test":·"npm·run·tests-only", |
| 72 | ········"tests-only":·"nyc·tape·'test/**/*.js'", | 72 | ········"tests-only":·"nyc·tape·'test/**/*.js'", |
| 73 | ········"version":·"auto-changelog·&&·git·add·CHANGELOG.md" | 73 | ········"version":·"auto-changelog·&&·git·add·CHANGELOG.md" |
| 74 | ····}, | 74 | ····}, |
| 75 | ····"types":·"./index.d.ts", | 75 | ····"types":·"./index.d.ts", |
| 76 | ····"version":·"1.0. | 76 | ····"version":·"1.0.1" |
| 77 | } | 77 | } |
| Offset 156, 9 lines modified | Offset 156, 104 lines modified | ||
| 000009b0:·2c20·7472·7565·2c20·2764·656c·6574·6564··,·true,·'deleted | 000009b0:·2c20·7472·7565·2c20·2764·656c·6574·6564··,·true,·'deleted | ||
| 000009c0:·2076·616c·7565·2079·6965·6c64·7320·7472···value·yields·tr | 000009c0:·2076·616c·7565·2079·6965·6c64·7320·7472···value·yields·tr | ||
| 000009d0:·7565·2729·3b0a·0a09·0973·742e·6571·7561··ue');....st.equa | 000009d0:·7565·2729·3b0a·0a09·0973·742e·6571·7561··ue');....st.equa | ||
| 000009e0:·6c28·6368·616e·6e65·6c2e·6861·7328·6f29··l(channel.has(o) | 000009e0:·6c28·6368·616e·6e65·6c2e·6861·7328·6f29··l(channel.has(o) | ||
| 000009f0:·2c20·6661·6c73·652c·2027·7661·6c75·6520··,·false,·'value· | 000009f0:·2c20·6661·6c73·652c·2027·7661·6c75·6520··,·false,·'value· | ||
| 00000a00:·6973·206e·6f20·6c6f·6e67·6572·2073·6574··is·no·longer·set | 00000a00:·6973·206e·6f20·6c6f·6e67·6572·2073·6574··is·no·longer·set | ||
| 00000a10:·2729·3b0a·0a09·0973·742e·656e·6428·293b··');....st.end(); | 00000a10:·2729·3b0a·0a09·0973·742e·656e·6428·293b··');....st.end(); | ||
| 00000a20:·0a09·7d29·3b0a·0a09·742e· | 00000a20:·0a09·7d29·3b0a·0a09·742e·7465·7374·2827··..});...t.test(' | ||
| 00000a30:·6465·6c65·7465·3a20·6669·7273·7420·6e6f··delete:·first·no | |||
| 00000a40:·6465·2069·6e20·6120·6d75·6c74·692d·6e6f··de·in·a·multi-no | |||
| 00000a50:·6465·206c·6973·7427·2c20·6675·6e63·7469··de·list',·functi | |||
| 00000a60:·6f6e·2028·7374·2920·7b0a·0909·7661·7220··on·(st)·{...var· | |||
| 00000a70:·6368·616e·6e65·6c20·3d20·6765·7453·6964··channel·=·getSid | |||
| 00000a80:·6543·6861·6e6e·656c·4c69·7374·2829·3b0a··eChannelList();. | |||
| 00000a90:·0a09·0963·6861·6e6e·656c·2e73·6574·2827··...channel.set(' | |||
| 00000aa0:·6127·2c20·3129·3b0a·0909·6368·616e·6e65··a',·1);...channe | |||
| 00000ab0:·6c2e·7365·7428·2762·272c·2032·293b·0a0a··l.set('b',·2);.. | |||
| 00000ac0:·0909·7374·2e65·7175·616c·2863·6861·6e6e··..st.equal(chann | |||
| 00000ad0:·656c·5b27·6465·6c65·7465·275d·2827·6227··el['delete']('b' | |||
| 00000ae0:·292c·2074·7275·652c·2027·6465·6c65·7469··),·true,·'deleti | |||
| 00000af0:·6e67·2066·6972·7374·2064·6174·6120·6e6f··ng·first·data·no | |||
| 00000b00:·6465·2079·6965·6c64·7320·7472·7565·2729··de·yields·true') | |||
| 00000b10:·3b0a·0a09·0973·742e·6571·7561·6c28·6368··;....st.equal(ch | |||
| 00000b20:·616e·6e65·6c2e·6861·7328·2761·2729·2c20··annel.has('a'),· | |||
| 00000b30:·7472·7565·2c20·2773·6563·6f6e·6420·6e6f··true,·'second·no | |||
| 00000b40:·6465·2069·7320·7374·696c·6c20·7072·6573··de·is·still·pres | |||
| 00000b50:·656e·7420·6166·7465·7220·6465·6c65·7469··ent·after·deleti | |||
| 00000b60:·6e67·2066·6972·7374·2729·3b0a·0909·7374··ng·first');...st | |||
| 00000b70:·2e65·7175·616c·2863·6861·6e6e·656c·2e67··.equal(channel.g | |||
| 00000b80:·6574·2827·6127·292c·2031·2c20·2773·6563··et('a'),·1,·'sec | |||
| 00000b90:·6f6e·6420·6e6f·6465·2076·616c·7565·2069··ond·node·value·i | |||
| 00000ba0:·7320·696e·7461·6374·2061·6674·6572·2064··s·intact·after·d | |||
| 00000bb0:·656c·6574·696e·6720·6669·7273·7427·293b··eleting·first'); | |||
| 00000bc0:·0a09·0973·742e·6571·7561·6c28·6368·616e··...st.equal(chan | |||
| 00000bd0:·6e65·6c2e·6861·7328·2762·2729·2c20·6661··nel.has('b'),·fa | |||
| 00000be0:·6c73·652c·2027·6465·6c65·7465·6420·6e6f··lse,·'deleted·no | |||
| 00000bf0:·6465·2069·7320·676f·6e65·2729·3b0a·0a09··de·is·gone');... | |||
| 00000c00:·0973·742e·656e·6428·293b·0a09·7d29·3b0a··.st.end();..});. | |||
| 00000c10:·0a09·742e·7465·7374·2827·6465·6c65·7465··..t.test('delete | |||
| 00000c20:·3a20·6c61·7374·2072·656d·6169·6e69·6e67··:·last·remaining | |||
| 00000c30:·206e·6f64·6520·656d·7074·6965·7320·7468···node·empties·th | |||
| 00000c40:·6520·6c69·7374·272c·2066·756e·6374·696f··e·list',·functio | |||
| 00000c50:·6e20·2873·7429·207b·0a09·0976·6172·2063··n·(st)·{...var·c | |||
| 00000c60:·6861·6e6e·656c·203d·2067·6574·5369·6465··hannel·=·getSide | |||
| 00000c70:·4368·616e·6e65·6c4c·6973·7428·293b·0a0a··ChannelList();.. | |||
| 00000c80:·0909·6368·616e·6e65·6c2e·7365·7428·2761··..channel.set('a | |||
| 00000c90:·272c·2031·293b·0a09·0963·6861·6e6e·656c··',·1);...channel | |||
| 00000ca0:·2e73·6574·2827·6227·2c20·3229·3b0a·0a09··.set('b',·2);... | |||
| 00000cb0:·0973·742e·6571·7561·6c28·6368·616e·6e65··.st.equal(channe | |||
| 00000cc0:·6c5b·2764·656c·6574·6527·5d28·2762·2729··l['delete']('b') | |||
| 00000cd0:·2c20·7472·7565·2c20·2764·656c·6574·6520··,·true,·'delete· | |||
| 00000ce0:·6669·7273·7420·6e6f·6465·2729·3b0a·0909··first·node');... | |||
| 00000cf0:·7374·2e65·7175·616c·2863·6861·6e6e·656c··st.equal(channel | |||
| 00000d00:·5b27·6465·6c65·7465·275d·2827·6127·292c··['delete']('a'), | |||
| 00000d10:·2074·7275·652c·2027·6465·6c65·7465·2073···true,·'delete·s | |||
| 00000d20:·6563·6f6e·6420·286c·6173·7429·206e·6f64··econd·(last)·nod | |||
| 00000d30:·6527·293b·0a0a·0909·7374·2e65·7175·616c··e');....st.equal | |||
| 00000d40:·2863·6861·6e6e·656c·2e68·6173·2827·6127··(channel.has('a' | |||
| 00000d50:·292c·2066·616c·7365·2c20·2761·2069·7320··),·false,·'a·is· | |||
| 00000d60:·676f·6e65·2729·3b0a·0909·7374·2e65·7175··gone');...st.equ | |||
| 00000d70:·616c·2863·6861·6e6e·656c·2e68·6173·2827··al(channel.has(' | |||
| 00000d80:·6227·292c·2066·616c·7365·2c20·2762·2069··b'),·false,·'b·i | |||
| 00000d90:·7320·676f·6e65·2729·3b0a·0909·7374·2e65··s·gone');...st.e | |||
| 00000da0:·7175·616c·2863·6861·6e6e·656c·2e67·6574··qual(channel.get | |||
| 00000db0:·2827·6127·292c·2075·6e64·6566·696e·6564··('a'),·undefined | |||
| 00000dc0:·2c20·2767·6574·2061·2079·6965·6c64·7320··,·'get·a·yields· | |||
| 00000dd0:·756e·6465·6669·6e65·6427·293b·0a0a·0909··undefined');.... | |||
| 00000de0:·6368·616e·6e65·6c2e·7365·7428·2763·272c··channel.set('c', | |||
| 00000df0:·2033·293b·0a09·0973·742e·6571·7561·6c28···3);...st.equal( | |||
| 00000e00:·6368·616e·6e65·6c2e·6765·7428·2763·2729··channel.get('c') | |||
| 00000e10:·2c20·332c·2027·6361·6e20·7365·7420·6e65··,·3,·'can·set·ne | |||
| 00000e20:·7720·7661·6c75·6573·2061·6674·6572·2065··w·values·after·e | |||
| 00000e30:·6d70·7479·696e·6727·293b·0a0a·0909·7374··mptying');....st | |||
| 00000e40:·2e65·6e64·2829·3b0a·097d·293b·0a0a·0974··.end();..});...t | |||
| 00000e50:·2e74·6573·7428·2764·656c·6574·653a·206d··.test('delete:·m | |||
| 00000e60:·6964·646c·6520·6e6f·6465·2069·6e20·6120··iddle·node·in·a· | |||
| 00000e70:·6d75·6c74·692d·6e6f·6465·206c·6973·7427··multi-node·list' | |||
| 00000e80:·2c20·6675·6e63·7469·6f6e·2028·7374·2920··,·function·(st)· | |||
| 00000e90:·7b0a·0909·7661·7220·6368·616e·6e65·6c20··{...var·channel· | |||
| 00000ea0:·3d20·6765·7453·6964·6543·6861·6e6e·656c··=·getSideChannel | |||
| 00000eb0:·4c69·7374·2829·3b0a·0a09·0963·6861·6e6e··List();....chann | |||
| 00000ec0:·656c·2e73·6574·2827·6127·2c20·3129·3b0a··el.set('a',·1);. | |||
| 00000ed0:·0909·6368·616e·6e65·6c2e·7365·7428·2762··..channel.set('b | |||
| 00000ee0:·272c·2032·293b·0a09·0963·6861·6e6e·656c··',·2);...channel | |||
| 00000ef0:·2e73·6574·2827·6327·2c20·3329·3b0a·0a09··.set('c',·3);... | |||
| 00000f00:·0973·742e·6571·7561·6c28·6368·616e·6e65··.st.equal(channe | |||
| 00000f10:·6c5b·2764·656c·6574·6527·5d28·2762·2729··l['delete']('b') | |||
| 00000f20:·2c20·7472·7565·2c20·2764·656c·6574·696e··,·true,·'deletin | |||
| 00000f30:·6720·6d69·6464·6c65·206e·6f64·6520·7969··g·middle·node·yi | |||
| 00000f40:·656c·6473·2074·7275·6527·293b·0a0a·0909··elds·true');.... | |||
| 00000f50:·7374·2e65·7175·616c·2863·6861·6e6e·656c··st.equal(channel | |||
| 00000f60:·2e67·6574·2827·6127·292c·2031·2c20·2766··.get('a'),·1,·'f | |||
| 00000f70:·6972·7374·206e·6f64·6520·7374·696c·6c20··irst·node·still· | |||
| 00000f80:·696e·7461·6374·2729·3b0a·0909·7374·2e65··intact');...st.e | |||
| 00000f90:·7175·616c·2863·6861·6e6e·656c·2e68·6173··qual(channel.has | |||
| 00000fa0:·2827·6227·292c·2066·616c·7365·2c20·276d··('b'),·false,·'m | |||
| 00000fb0:·6964·646c·6520·6e6f·6465·2069·7320·676f··iddle·node·is·go | |||
| 00000fc0:·6e65·2729·3b0a·0909·7374·2e65·7175·616c··ne');...st.equal | |||
| 00000fd0:·2863·6861·6e6e·656c·2e67·6574·2827·6327··(channel.get('c' | |||
| Max diff block lines reached; -1/7311 bytes (-0.01%) of diff not shown. | |||
| Offset 35, 14 lines modified | Offset 35, 20 lines modified | ||
| 35 | ····/** | 35 | ····/** |
| 36 | ·····*·TODO·docs | 36 | ·····*·TODO·docs |
| 37 | ·····*·@default·'shared' | 37 | ·····*·@default·'shared' |
| 38 | ·····*/ | 38 | ·····*/ |
| 39 | ····type?:·'shared'·|·'private' | 39 | ····type?:·'shared'·|·'private' |
| 40 | ····/** | ||
| 41 | ·····*·Array·of·origins·to·cache.·Only·requests·to·these·origins·will·be·cached. | ||
| 42 | ·····*·Supports·strings·(case·insensitive)·and·RegExp·patterns. | ||
| 43 | ·····*·@default·undefined·(cache·all·origins) | ||
| 44 | ·····*/ | ||
| 45 | ····origins?:·(string·|·RegExp)[] | ||
| 40 | ··} | 46 | ··} |
| 41 | ··export·interface·CacheControlDirectives·{ | 47 | ··export·interface·CacheControlDirectives·{ |
| 42 | ····'max-stale'?:·number; | 48 | ····'max-stale'?:·number; |
| 43 | ····'min-fresh'?:·number; | 49 | ····'min-fresh'?:·number; |
| 44 | ····'max-age'?:·number; | 50 | ····'max-age'?:·number; |
| 45 | ····'s-maxage'?:·number; | 51 | ····'s-maxage'?:·number; |
| Offset 88, 14 lines modified | Offset 88, 24 lines modified | ||
| 88 | ·····*/ | 88 | ·····*/ |
| 89 | ····allowH2?:·boolean; | 89 | ····allowH2?:·boolean; |
| 90 | ····/** | 90 | ····/** |
| 91 | ·····*·@description·Dictates·the·maximum·number·of·concurrent·streams·for·a·single·H2·session.·It·can·be·overridden·by·a·SETTINGS·remote·frame. | 91 | ·····*·@description·Dictates·the·maximum·number·of·concurrent·streams·for·a·single·H2·session.·It·can·be·overridden·by·a·SETTINGS·remote·frame. |
| 92 | ·····*·@default·100 | 92 | ·····*·@default·100 |
| 93 | ·····*/ | 93 | ·····*/ |
| 94 | ····maxConcurrentStreams?:·number; | 94 | ····maxConcurrentStreams?:·number; |
| 95 | ····/** | ||
| 96 | ·····*·@description·Sets·the·HTTP/2·stream-level·flow-control·window·size·(SETTINGS_INITIAL_WINDOW_SIZE). | ||
| 97 | ·····*·@default·262144 | ||
| 98 | ·····*/ | ||
| 99 | ····initialWindowSize?:·number; | ||
| 100 | ····/** | ||
| 101 | ·····*·@description·Sets·the·HTTP/2·connection-level·flow-control·window·size·(ClientHttp2Session.setLocalWindowSize). | ||
| 102 | ·····*·@default·524288 | ||
| 103 | ·····*/ | ||
| 104 | ····connectionWindowSize?:·number; | ||
| 95 | ··} | 105 | ··} |
| 96 | ··export·interface·SocketInfo·{ | 106 | ··export·interface·SocketInfo·{ |
| 97 | ····localAddress?:·string | 107 | ····localAddress?:·string |
| 98 | ····localPort?:·number | 108 | ····localPort?:·number |
| 99 | ····remoteAddress?:·string | 109 | ····remoteAddress?:·string |
| 100 | ····remotePort?:·number | 110 | ····remotePort?:·number |
| 101 | ····remoteFamily?:·string | 111 | ····remoteFamily?:·string |
| Offset 47, 9 lines modified | Offset 47, 9 lines modified | ||
| 47 | ····"license":·"MIT", | 47 | ····"license":·"MIT", |
| 48 | ····"name":·"undici-types", | 48 | ····"name":·"undici-types", |
| 49 | ····"repository":·{ | 49 | ····"repository":·{ |
| 50 | ········"type":·"git", | 50 | ········"type":·"git", |
| 51 | ········"url":·"git+https://github.com/nodejs/undici.git" | 51 | ········"url":·"git+https://github.com/nodejs/undici.git" |
| 52 | ····}, | 52 | ····}, |
| 53 | ····"types":·"index.d.ts", | 53 | ····"types":·"index.d.ts", |
| 54 | ····"version":·"7.1 | 54 | ····"version":·"7.19.2" |
| 55 | } | 55 | } |
| Offset 1, 13 lines modified | Offset 1, 13 lines modified | ||
| 1 | -rw-r--r--···0········0········0······518·2026-04-07·22:15:34.000000·info/about.json | 1 | -rw-r--r--···0········0········0······518·2026-04-07·22:15:34.000000·info/about.json |
| 2 | -rw-r--r--···0········0········0······118·2026-04-07·22:15:34.000000·info/hash_input.json | 2 | -rw-r--r--···0········0········0······118·2026-04-07·22:15:34.000000·info/hash_input.json |
| 3 | -rw-r--r--···0········0········0······221·2026-04-07·22:15:34.000000·info/index.json | 3 | -rw-r--r--···0········0········0······221·2026-04-07·22:15:34.000000·info/index.json |
| 4 | -rw-r--r--···0········0········0·····1067·2026-04-07·22:15:34.000000·info/licenses/LICENSE | 4 | -rw-r--r--···0········0········0·····1067·2026-04-07·22:15:34.000000·info/licenses/LICENSE |
| 5 | -rw-r--r--···0········0········0···297236·2026-04-07·22:15:34.000000·info/licenses/third-party-licenses.txt | 5 | -rw-r--r--···0········0········0···297236·2026-04-07·22:15:34.000000·info/licenses/third-party-licenses.txt |
| 6 | -rw-r--r--···0········0········0··159641 | 6 | -rw-r--r--···0········0········0··1596416·2026-04-07·22:15:34.000000·info/paths.json |
| 7 | -rw-r--r--···0········0········0·····1067·2026-04-07·22:15:34.000000·info/recipe/LICENSE | 7 | -rw-r--r--···0········0········0·····1067·2026-04-07·22:15:34.000000·info/recipe/LICENSE |
| 8 | -rwxr-xr-x···0········0········0······697·2026-04-07·22:15:34.000000·info/recipe/build.sh | 8 | -rwxr-xr-x···0········0········0······697·2026-04-07·22:15:34.000000·info/recipe/build.sh |
| 9 | -rw-r--r--···0········0········0·····1520·2026-04-07·22:15:34.000000·info/recipe/recipe-scripts-license.txt | 9 | -rw-r--r--···0········0········0·····1520·2026-04-07·22:15:34.000000·info/recipe/recipe-scripts-license.txt |
| 10 | -rw-r--r--···0········0········0······721·2026-04-07·22:15:34.000000·info/recipe/recipe.yaml | 10 | -rw-r--r--···0········0········0······721·2026-04-07·22:15:34.000000·info/recipe/recipe.yaml |
| 11 | -rw-r--r--···0········0········0····10900·2026-04-07·22:15:34.000000·info/recipe/rendered_recipe.yaml | 11 | -rw-r--r--···0········0········0····10900·2026-04-07·22:15:34.000000·info/recipe/rendered_recipe.yaml |
| 12 | -rw-r--r--···0········0········0······100·2026-04-07·22:15:34.000000·info/recipe/variant_config.yaml | 12 | -rw-r--r--···0········0········0······100·2026-04-07·22:15:34.000000·info/recipe/variant_config.yaml |
| 13 | -rw-r--r--···0········0········0·······38·2026-04-07·22:15:34.000000·info/tests/tests.yaml | 13 | -rw-r--r--···0········0········0·······38·2026-04-07·22:15:34.000000·info/tests/tests.yaml |
| Offset 5044, 15 lines modified | Offset 5044, 15 lines modified | ||
| 00013b30:·2055·5345·204f·5220·4f54·4845·5220·4445···USE·OR·OTHER·DE | 00013b30:·2055·5345·204f·5220·4f54·4845·5220·4445···USE·OR·OTHER·DE | ||
| 00013b40:·414c·494e·4753·2049·4e0a·5448·4520·534f··ALINGS·IN.THE·SO | 00013b40:·414c·494e·4753·2049·4e0a·5448·4520·534f··ALINGS·IN.THE·SO | ||
| 00013b50:·4654·5741·5245·2e0a·0a2d·2d2d·0a0a·5468··FTWARE...---..Th | 00013b50:·4654·5741·5245·2e0a·0a2d·2d2d·0a0a·5468··FTWARE...---..Th | ||
| 00013b60:·6520·666f·6c6c·6f77·696e·6720·736f·6674··e·following·soft | 00013b60:·6520·666f·6c6c·6f77·696e·6720·736f·6674··e·following·soft | ||
| 00013b70:·7761·7265·206d·6179·2062·6520·696e·636c··ware·may·be·incl | 00013b70:·7761·7265·206d·6179·2062·6520·696e·636c··ware·may·be·incl | ||
| 00013b80:·7564·6564·2069·6e20·7468·6973·2070·726f··uded·in·this·pro | 00013b80:·7564·6564·2069·6e20·7468·6973·2070·726f··uded·in·this·pro | ||
| 00013b90:·6475·6374·3a20·4074·7970·6573·2f6e·6f64··duct:·@types/nod | 00013b90:·6475·6374·3a20·4074·7970·6573·2f6e·6f64··duct:·@types/nod | ||
| 00013ba0:·6520·2832·352e·3 | 00013ba0:·6520·2832·352e·362e·3029·0a54·6869·7320··e·(25.6.0).This· | ||
| 00013bb0:·736f·6674·7761·7265·2063·6f6e·7461·696e··software·contain | 00013bb0:·736f·6674·7761·7265·2063·6f6e·7461·696e··software·contain | ||
| 00013bc0:·7320·7468·6520·666f·6c6c·6f77·696e·6720··s·the·following· | 00013bc0:·7320·7468·6520·666f·6c6c·6f77·696e·6720··s·the·following· | ||
| 00013bd0:·6c69·6365·6e73·6520·616e·6420·6e6f·7469··license·and·noti | 00013bd0:·6c69·6365·6e73·6520·616e·6420·6e6f·7469··license·and·noti | ||
| 00013be0:·6365·2062·656c·6f77·3a0a·0a4d·4954·204c··ce·below:..MIT·L | 00013be0:·6365·2062·656c·6f77·3a0a·0a4d·4954·204c··ce·below:..MIT·L | ||
| 00013bf0:·6963·656e·7365·0a0a·436f·7079·7269·6768··icense..Copyrigh | 00013bf0:·6963·656e·7365·0a0a·436f·7079·7269·6768··icense..Copyrigh | ||
| 00013c00:·7420·2863·2920·4d69·6372·6f73·6f66·7420··t·(c)·Microsoft· | 00013c00:·7420·2863·2920·4d69·6372·6f73·6f66·7420··t·(c)·Microsoft· | ||
| 00013c10:·436f·7270·6f72·6174·696f·6e2e·0a0a·5065··Corporation...Pe | 00013c10:·436f·7270·6f72·6174·696f·6e2e·0a0a·5065··Corporation...Pe | ||
| Offset 14406, 15 lines modified | Offset 14406, 15 lines modified | ||
| 00038450:·4f52·204f·5448·4552·2044·4541·4c49·4e47··OR·OTHER·DEALING | 00038450:·4f52·204f·5448·4552·2044·4541·4c49·4e47··OR·OTHER·DEALING | ||
| 00038460:·5320·494e·2054·4845·0a53·4f46·5457·4152··S·IN·THE.SOFTWAR | 00038460:·5320·494e·2054·4845·0a53·4f46·5457·4152··S·IN·THE.SOFTWAR | ||
| 00038470:·452e·0a0a·2d2d·2d0a·0a54·6865·2066·6f6c··E...---..The·fol | 00038470:·452e·0a0a·2d2d·2d0a·0a54·6865·2066·6f6c··E...---..The·fol | ||
| 00038480:·6c6f·7769·6e67·2073·6f66·7477·6172·6520··lowing·software· | 00038480:·6c6f·7769·6e67·2073·6f66·7477·6172·6520··lowing·software· | ||
| 00038490:·6d61·7920·6265·2069·6e63·6c75·6465·6420··may·be·included· | 00038490:·6d61·7920·6265·2069·6e63·6c75·6465·6420··may·be·included· | ||
| 000384a0:·696e·2074·6869·7320·7072·6f64·7563·743a··in·this·product: | 000384a0:·696e·2074·6869·7320·7072·6f64·7563·743a··in·this·product: | ||
| 000384b0:·2073·6964·652d·6368·616e·6e65·6c2d·6c69···side-channel-li | 000384b0:·2073·6964·652d·6368·616e·6e65·6c2d·6c69···side-channel-li | ||
| 000384c0:·7374·2028·312e·302e·3 | 000384c0:·7374·2028·312e·302e·3129·0a54·6869·7320··st·(1.0.1).This· | ||
| 000384d0:·736f·6674·7761·7265·2063·6f6e·7461·696e··software·contain | 000384d0:·736f·6674·7761·7265·2063·6f6e·7461·696e··software·contain | ||
| 000384e0:·7320·7468·6520·666f·6c6c·6f77·696e·6720··s·the·following· | 000384e0:·7320·7468·6520·666f·6c6c·6f77·696e·6720··s·the·following· | ||
| 000384f0:·6c69·6365·6e73·6520·616e·6420·6e6f·7469··license·and·noti | 000384f0:·6c69·6365·6e73·6520·616e·6420·6e6f·7469··license·and·noti | ||
| 00038500:·6365·2062·656c·6f77·3a0a·0a4d·4954·204c··ce·below:..MIT·L | 00038500:·6365·2062·656c·6f77·3a0a·0a4d·4954·204c··ce·below:..MIT·L | ||
| 00038510:·6963·656e·7365·0a0a·436f·7079·7269·6768··icense..Copyrigh | 00038510:·6963·656e·7365·0a0a·436f·7079·7269·6768··icense..Copyrigh | ||
| 00038520:·7420·2863·2920·3230·3234·204a·6f72·6461··t·(c)·2024·Jorda | 00038520:·7420·2863·2920·3230·3234·204a·6f72·6461··t·(c)·2024·Jorda | ||
| 00038530:·6e20·4861·7262·616e·640a·0a50·6572·6d69··n·Harband..Permi | 00038530:·6e20·4861·7262·616e·640a·0a50·6572·6d69··n·Harband..Permi | ||
| Offset 15771, 15 lines modified | Offset 15771, 15 lines modified | ||
| 0003d9a0:·4f52·204f·5448·4552·2044·4541·4c49·4e47··OR·OTHER·DEALING | 0003d9a0:·4f52·204f·5448·4552·2044·4541·4c49·4e47··OR·OTHER·DEALING | ||
| 0003d9b0:·5320·494e·2054·4845·0a53·4f46·5457·4152··S·IN·THE.SOFTWAR | 0003d9b0:·5320·494e·2054·4845·0a53·4f46·5457·4152··S·IN·THE.SOFTWAR | ||
| 0003d9c0:·452e·0a0a·2d2d·2d0a·0a54·6865·2066·6f6c··E...---..The·fol | 0003d9c0:·452e·0a0a·2d2d·2d0a·0a54·6865·2066·6f6c··E...---..The·fol | ||
| 0003d9d0:·6c6f·7769·6e67·2073·6f66·7477·6172·6520··lowing·software· | 0003d9d0:·6c6f·7769·6e67·2073·6f66·7477·6172·6520··lowing·software· | ||
| 0003d9e0:·6d61·7920·6265·2069·6e63·6c75·6465·6420··may·be·included· | 0003d9e0:·6d61·7920·6265·2069·6e63·6c75·6465·6420··may·be·included· | ||
| 0003d9f0:·696e·2074·6869·7320·7072·6f64·7563·743a··in·this·product: | 0003d9f0:·696e·2074·6869·7320·7072·6f64·7563·743a··in·this·product: | ||
| 0003da00:·2075·6e64·6963·692d·7479·7065·7320·2837···undici-types·(7 | 0003da00:·2075·6e64·6963·692d·7479·7065·7320·2837···undici-types·(7 | ||
| 0003da10:·2e31·3 | 0003da10:·2e31·392e·3229·0a54·6869·7320·736f·6674··.19.2).This·soft | ||
| 0003da20:·7761·7265·2063·6f6e·7461·696e·7320·7468··ware·contains·th | 0003da20:·7761·7265·2063·6f6e·7461·696e·7320·7468··ware·contains·th | ||
| 0003da30:·6520·666f·6c6c·6f77·696e·6720·6c69·6365··e·following·lice | 0003da30:·6520·666f·6c6c·6f77·696e·6720·6c69·6365··e·following·lice | ||
| 0003da40:·6e73·6520·616e·6420·6e6f·7469·6365·2062··nse·and·notice·b | 0003da40:·6e73·6520·616e·6420·6e6f·7469·6365·2062··nse·and·notice·b | ||
| 0003da50:·656c·6f77·3a0a·0a4d·4954·204c·6963·656e··elow:..MIT·Licen | 0003da50:·656c·6f77·3a0a·0a4d·4954·204c·6963·656e··elow:..MIT·Licen | ||
| 0003da60:·7365·0a0a·436f·7079·7269·6768·7420·2863··se..Copyright·(c | 0003da60:·7365·0a0a·436f·7079·7269·6768·7420·2863··se..Copyright·(c | ||
| 0003da70:·2920·4d61·7474·656f·2043·6f6c·6c69·6e61··)·Matteo·Collina | 0003da70:·2920·4d61·7474·656f·2043·6f6c·6c69·6e61··)·Matteo·Collina | ||
| 0003da80:·2061·6e64·2055·6e64·6963·6920·636f·6e74···and·Undici·cont | 0003da80:·2061·6e64·2055·6e64·6963·6920·636f·6e74···and·Undici·cont |
| Offset 407, 130 lines modified | Offset 407, 130 lines modified | ||
| 407 | ············"path_type":·"hardlink", | 407 | ············"path_type":·"hardlink", |
| 408 | ············"sha256":·"c2cfccb812fe482101a8f04597dfc5a9991a6b2748266c47ac91b6a5aae15383", | 408 | ············"sha256":·"c2cfccb812fe482101a8f04597dfc5a9991a6b2748266c47ac91b6a5aae15383", |
| 409 | ············"size_in_bytes":·1141 | 409 | ············"size_in_bytes":·1141 |
| 410 | ········}, | 410 | ········}, |
| 411 | ········{ | 411 | ········{ |
| 412 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/README.md", | 412 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/README.md", |
| 413 | ············"path_type":·"hardlink", | 413 | ············"path_type":·"hardlink", |
| 414 | ············"sha256":·" | 414 | ············"sha256":·"f7310dce60c111010075a94beb9ed3c070e7d99bfeda049bd756c374a2a11553", |
| 415 | ············"size_in_bytes":·1582 | 415 | ············"size_in_bytes":·1582 |
| 416 | ········}, | 416 | ········}, |
| 417 | ········{ | 417 | ········{ |
| 418 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/assert/strict.d.ts", | 418 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/assert/strict.d.ts", |
| 419 | ············"path_type":·"hardlink", | 419 | ············"path_type":·"hardlink", |
| 420 | ············"sha256":·" | 420 | ············"sha256":·"3f5e5d9be35913db9fea42a63f3df0b7e3c8703b97670a2125587b4dbbd56d7c", |
| 421 | ············"size_in_bytes":· | 421 | ············"size_in_bytes":·1464 |
| 422 | ········}, | 422 | ········}, |
| 423 | ········{ | 423 | ········{ |
| 424 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/assert.d.ts", | 424 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/assert.d.ts", |
| 425 | ············"path_type":·"hardlink", | 425 | ············"path_type":·"hardlink", |
| 426 | ············"sha256":·" | 426 | ············"sha256":·"d2ae155afe8a01cc0ae612d99117cf8ef16692ba7c4366590156fdec1bcf2d8c", |
| 427 | ············"size_in_bytes":· | 427 | ············"size_in_bytes":·39914 |
| 428 | ········}, | 428 | ········}, |
| 429 | ········{ | 429 | ········{ |
| 430 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/async_hooks.d.ts", | 430 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/async_hooks.d.ts", |
| 431 | ············"path_type":·"hardlink", | 431 | ············"path_type":·"hardlink", |
| 432 | ············"sha256":·" | 432 | ············"sha256":·"8caeb65fdc3bfe0d13f86f67324fcb2d858ed1c55f1f0cce892eb1acfb9f3239", |
| 433 | ············"size_in_bytes":·2 | 433 | ············"size_in_bytes":·24988 |
| 434 | ········}, | 434 | ········}, |
| 435 | ········{ | 435 | ········{ |
| 436 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/buffer.buffer.d.ts", | 436 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/buffer.buffer.d.ts", |
| 437 | ············"path_type":·"hardlink", | 437 | ············"path_type":·"hardlink", |
| 438 | ············"sha256":·" | 438 | ············"sha256":·"cc2110f7decca6bfb9392e30421cfa1436479e4a6756e8fec6cbc22625d4f881", |
| 439 | ············"size_in_bytes":·226 | 439 | ············"size_in_bytes":·22604 |
| 440 | ········}, | 440 | ········}, |
| 441 | ········{ | 441 | ········{ |
| 442 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/buffer.d.ts", | 442 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/buffer.d.ts", |
| 443 | ············"path_type":·"hardlink", | 443 | ············"path_type":·"hardlink", |
| 444 | ············"sha256":·" | 444 | ············"sha256":·"57c23df0b5f7a8e26363a3849b0bc7763f6b241207157c8e40089d1df4116f35", |
| 445 | ············"size_in_bytes":·8 | 445 | ············"size_in_bytes":·80592 |
| 446 | ········}, | 446 | ········}, |
| 447 | ········{ | 447 | ········{ |
| 448 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/child_process.d.ts", | 448 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/child_process.d.ts", |
| 449 | ············"path_type":·"hardlink", | 449 | ············"path_type":·"hardlink", |
| 450 | ············"sha256":·"8b | 450 | ············"sha256":·"3b8bc0c17b54081b0878673989216229e575d67a10874e84566a21025a2461ee", |
| 451 | ············"size_in_bytes":·6 | 451 | ············"size_in_bytes":·60054 |
| 452 | ········}, | 452 | ········}, |
| 453 | ········{ | 453 | ········{ |
| 454 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/cluster.d.ts", | 454 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/cluster.d.ts", |
| 455 | ············"path_type":·"hardlink", | 455 | ············"path_type":·"hardlink", |
| 456 | ············"sha256":·" | 456 | ············"sha256":·"5b0db5a58b73498792a29bfebc333438e61906fef75da898b410e24e52229e6f", |
| 457 | ············"size_in_bytes":· | 457 | ············"size_in_bytes":·19527 |
| 458 | ········}, | 458 | ········}, |
| 459 | ········{ | 459 | ········{ |
| 460 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/compatibility/iterators.d.ts", | 460 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/compatibility/iterators.d.ts", |
| 461 | ············"path_type":·"hardlink", | 461 | ············"path_type":·"hardlink", |
| 462 | ············"sha256":·"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848", | 462 | ············"sha256":·"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848", |
| 463 | ············"size_in_bytes":·1303 | 463 | ············"size_in_bytes":·1303 |
| 464 | ········}, | 464 | ········}, |
| 465 | ········{ | 465 | ········{ |
| 466 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/console.d.ts", | 466 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/console.d.ts", |
| 467 | ············"path_type":·"hardlink", | 467 | ············"path_type":·"hardlink", |
| 468 | ············"sha256":·"b | 468 | ············"sha256":·"dbe055b2b29a7bab2c1ca8f259436306adb43f469dca7e639a02cd3695d3f621", |
| 469 | ············"size_in_bytes":· | 469 | ············"size_in_bytes":·4250 |
| 470 | ········}, | 470 | ········}, |
| 471 | ········{ | 471 | ········{ |
| 472 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/constants.d.ts", | 472 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/constants.d.ts", |
| 473 | ············"path_type":·"hardlink", | 473 | ············"path_type":·"hardlink", |
| 474 | ············"sha256":·" | 474 | ············"sha256":·"1678b04557dca52feab73cc67610918a7f5e25bfdba3e7fa081acd625d93106d", |
| 475 | ············"size_in_bytes":· | 475 | ············"size_in_bytes":·491 |
| 476 | ········}, | 476 | ········}, |
| 477 | ········{ | 477 | ········{ |
| 478 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/crypto.d.ts", | 478 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/crypto.d.ts", |
| 479 | ············"path_type":·"hardlink", | 479 | ············"path_type":·"hardlink", |
| 480 | ············"sha256":·" | 480 | ············"sha256":·"e3905f6902f0b69e5eefc230daa69fdd4ab707a973ec2d086d65af1b3ea47ef0", |
| 481 | ············"size_in_bytes":·17 | 481 | ············"size_in_bytes":·171545 |
| 482 | ········}, | 482 | ········}, |
| 483 | ········{ | 483 | ········{ |
| 484 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/dgram.d.ts", | 484 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/dgram.d.ts", |
| 485 | ············"path_type":·"hardlink", | 485 | ············"path_type":·"hardlink", |
| 486 | ············"sha256":·"e | 486 | ············"sha256":·"2ea729503db9793f2691162fec3dd1118cab62e96d025f8eeb376d43ec293395", |
| 487 | ············"size_in_bytes":·2 | 487 | ············"size_in_bytes":·24921 |
| 488 | ········}, | 488 | ········}, |
| 489 | ········{ | 489 | ········{ |
| 490 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/diagnostics_channel.d.ts", | 490 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/diagnostics_channel.d.ts", |
| 491 | ············"path_type":·"hardlink", | 491 | ············"path_type":·"hardlink", |
| 492 | ············"sha256":·"e | 492 | ············"sha256":·"9ec87fea42b92894b0f209931a880789d43c3397d09dd99c631ae40a2f7071d1", |
| 493 | ············"size_in_bytes":·2 | 493 | ············"size_in_bytes":·23968 |
| 494 | ········}, | 494 | ········}, |
| 495 | ········{ | 495 | ········{ |
| 496 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/dns/promises.d.ts", | 496 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/dns/promises.d.ts", |
| 497 | ············"path_type":·"hardlink", | 497 | ············"path_type":·"hardlink", |
| 498 | ············"sha256":·" | 498 | ············"sha256":·"2bc7aa4fba46df0bd495425a7c8201437a7d465f83854fac859df2d67f664df3", |
| 499 | ············"size_in_bytes":·2 | 499 | ············"size_in_bytes":·20810 |
| 500 | ········}, | 500 | ········}, |
| 501 | ········{ | 501 | ········{ |
| 502 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/dns.d.ts", | 502 | ············"_path":·"lib/node_modules/cypress/node_modules/@types/node/dns.d.ts", |
| 503 | ············"path_type":·"hardlink", | 503 | ············"path_type":·"hardlink", |
| 504 | ············"sha256":·"8 | 504 | ············"sha256":·"c68e88cdfadfb6c8ba5fc38e58a3a166b0beae77b1f05b7d921150a32a5ffb8d", |
| 505 | ············"size_in_bytes":·3 | 505 | ············"size_in_bytes":·34346 |
| Max diff block lines reached; 25750/32272 bytes (79.79%) of diff not shown. | |||