Skip to content

Commit b47440f

Browse files
committed
feat(semver-major): Upgrade package to Node.js v23
1 parent 414743a commit b47440f

File tree

331 files changed

+24893
-17756
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

331 files changed

+24893
-17756
lines changed

.github/workflows/ci.yml

+3-7
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,11 @@ jobs:
88
runs-on: ubuntu-latest
99
strategy:
1010
matrix:
11-
node: ['14', '16', '18']
11+
node: ['18', '20', '22']
1212
steps:
13-
- uses: actions/checkout@v3
14-
- uses: actions/setup-node@v3
13+
- uses: actions/checkout@v4
14+
- uses: actions/setup-node@v4
1515
with:
1616
node-version: ${{ matrix.node }}
1717
- run: npm ci
1818
- run: npm test
19-
- name: Run test with experimental flag
20-
run: npm test
21-
env:
22-
NODE_OPTIONS: --experimental-abortcontroller --no-warnings

.github/workflows/commitlint.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ jobs:
1010
commitlint:
1111
runs-on: ubuntu-latest
1212
steps:
13-
- uses: actions/checkout@v3
13+
- uses: actions/checkout@v4
1414
with:
1515
fetch-depth: 100
16-
- uses: wagoid/commitlint-github-action@v2
16+
- uses: wagoid/commitlint-github-action@v6
1717
with:
1818
token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/release-please.yml

+3-4
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,17 @@ jobs:
1111
outputs:
1212
release_created: ${{ steps.release.outputs.release_created }}
1313
steps:
14-
- uses: google-github-actions/release-please-action@v3
14+
- uses: googleapis/release-please-action@v4
1515
id: release
1616
with:
1717
release-type: node
18-
package-name: test
1918
npm-publish:
2019
needs: release-please
2120
if: ${{ needs.release-please.outputs.release_created }}
2221
runs-on: ubuntu-latest
2322
steps:
24-
- uses: actions/checkout@v3
25-
- uses: actions/setup-node@v3
23+
- uses: actions/checkout@v4
24+
- uses: actions/setup-node@v4
2625
with:
2726
node-version: lts/*
2827
registry-url: 'https://registry.npmjs.org'

.npmignore

+2-1
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
1+
test
2+
.github

.release-please-manifest.json

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
".": "4.0.0"
3+
}

MAINTAINING.md

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# Maintenance Guide for the Package
2+
3+
This guide outlines the procedures necessary for maintaining this package, ensuring its functionality and compatibility with newer versions of Node.js. The goal is to streamline the maintenance process until a majority of users can transition to the latest versions, paving the way for eventual deprecation of this library.
4+
5+
## Overview
6+
7+
Maintaining this library involves updating specific internal files and ensuring that all references are correctly modified. The steps below provide a clear pathway for effective package maintenance.
8+
9+
## Maintenance Steps
10+
11+
### 1. Identify Files for Update
12+
Start by identifying the internal files that require updates. These files are typically located in the `lib/internal/` directory. For example, `lib/internal/test_runner/runner.js` is one file that may need attention.
13+
14+
### 2. Update File Contents
15+
- Replace the entire contents of the identified file with the updated version from your reference source. Ensure you use the correct version that corresponds to the changes made in Node.js internals.
16+
17+
### 3. Modify Require Statements
18+
- After replacing the file contents, locate all instances of the following pattern in the file:
19+
```javascript
20+
require('internal/...');
21+
```
22+
- Update these instances to the new syntax:
23+
```javascript
24+
require('#internal/...');
25+
```
26+
27+
### 4. Add Necessary Imports
28+
- If the updated file requires specific bindings, include the following line at the top of the file:
29+
```javascript
30+
const { primordials, internalBinding } = require('#lib/bootstrap');
31+
```
32+
33+
### 5. Follow Special Comments
34+
- Pay close attention to any comments formatted as `/* NOTE(Author): ... */` within the files. These notes may contain essential guidelines or considerations regarding the code. Adhere to any instructions provided in these comments during the update process.
35+
36+
### 6. Implement Polyfills as Needed
37+
- When updating the library, you may encounter new features that require polyfilling if they are not present in the library. Add the minimal amount of code necessary for functionality. For instance, in `lib/internal/options`, only implement parsing for the options that are actually needed.
38+
39+
## Final Steps
40+
41+
- After completing the updates, conduct thorough testing of the package to ensure all functionality works as expected with the new changes.
42+
- Document any significant modifications made during the update process to maintain a clear history for future reference.
43+
44+
If you have any questions about this document, it was written by @RedYetiDev.

0 commit comments

Comments
 (0)