Skip to content

Commit 563c82d

Browse files
authored
Require Node.js 20 and update CI/docs (#1832)
Bump the project's Node requirement to v20 and align tooling and docs. Updates package.json engines and Volta pin, .nvmrc, README, CONTRIBUTING, copilot-instructions.md, and the getting-started docs to require Node.js 20. Adjust CI workflows by adding concurrency groups to ossf-scorecard, spellcheck, and super-linter, and remove Node 18 from the test matrix so tests run on 20/22/24. These changes standardize the development environment on Node 20 LTS and reduce duplicated CI runs.
1 parent 5a7bab4 commit 563c82d

File tree

11 files changed

+25
-6
lines changed

11 files changed

+25
-6
lines changed

.github/CONTRIBUTING.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@ We welcome any type of contribution, not only code. You can help with
1111
- **Community**: presenting the project at meetups, organizing a dedicated meetup for the local community, ...
1212
- **Code**: take a look at the [open issues](https://github.com/HTMLHint/HTMLHint/issues). Even if you can't write code, commenting on them, showing that you care about a given issue matters. It helps us triage them.
1313

14+
## Development setup
15+
16+
Use Node.js 20 or later (the repo pins a version with [Volta](https://volta.sh/) in `package.json`).
17+
1418
## Submitting code
1519

1620
Any code change should be submitted as a pull request. The description should explain what the code does and give steps to execute it. The pull request should also contain tests.

.github/copilot-instructions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
- All code should be formatted with Prettier.
77
- Use ESLint to check for JavaScript errors.
88
- Rollup is used for building the project.
9-
- Node v20 is used for development.
9+
- Node.js 20 or newer is required; Volta pins the repo to Node 20 LTS in `package.json`.
1010
- Core code is in TypeScript v5.4.5.
1111
- All new rules for HTMLHint should be placed in the rules directory.
1212
- Tests for new rules should be added in rules and follow the naming pattern `<rule-name>.spec.js`.

.github/workflows/ossf-scorecard.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@ on:
77
push:
88
branches: ['main']
99

10+
concurrency:
11+
group: scorecard-${{ github.ref }}
12+
cancel-in-progress: true
13+
1014
permissions: read-all
1115

1216
jobs:

.github/workflows/spellcheck.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ on:
66
pull_request:
77
branches: [main]
88

9+
concurrency:
10+
group: spellcheck-${{ github.ref }}
11+
cancel-in-progress: true
12+
913
permissions:
1014
contents: read
1115

.github/workflows/super-linter.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ on:
99
branches-ignore:
1010
- 'dependabot/**'
1111

12+
concurrency:
13+
group: super-linter-${{ github.event.pull_request.number || github.ref }}
14+
cancel-in-progress: true
15+
1216
permissions:
1317
contents: read
1418

.github/workflows/test.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ jobs:
4343
fail-fast: false
4444
matrix:
4545
node:
46-
- 18
4746
- 20
4847
- 22
4948
- 24

.nvmrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v20
1+
v20.20.1

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@
3838

3939
## 📟 Installation and Usage
4040

41+
HTMLHint requires [Node.js](https://nodejs.org/) 20 or later.
42+
4143
There are two ways to install HTMLHint: globally and locally.
4244

4345
### Local Installation and Usage

package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,9 +79,9 @@
7979
"typescript": "5.4.5"
8080
},
8181
"engines": {
82-
"node": ">=18"
82+
"node": ">=20"
8383
},
8484
"volta": {
85-
"node": "18.20.8"
85+
"node": "20.20.1"
8686
}
8787
}

0 commit comments

Comments
 (0)