Merge pull request #3122 from jspsych/update-config-package

Update `@jspsych/config` dependencies

(rebased-with-history from commit 76fca2712f)
This commit is contained in:
bjoluc 2023-11-10 21:15:13 +01:00
commit c31b859533
9 changed files with 2095 additions and 1384 deletions

View File

@ -0,0 +1,5 @@
---
"@jspsych/config": patch
---
Remove erroneous browser builds from the rollup configuration returned by `makeNodeRollupConfig()`

View File

@ -0,0 +1,9 @@
---
"@jspsych/config": major
---
Upgrade build tools to their latest versions. This doesn't introduce breaking changes to the artifacts built using `@jspsych/config`, but it requires some minor changes to projects using `@jspsych/config`:
- The minimum required Node.js version is now 18.0.0
- Jest has been upgraded from v28 to v29 and ts-jest has been replaced with the more performant Sucrase Jest plugin to avoid significant memory leaks. As a consequence, Jest does no longer type-check code. If you are facing any issues, please check Jest's [upgrade guide](https://jestjs.io/docs/upgrading-to-jest29) for instructions on updating your tests.
- TypeScript has been upgraded from version 4 to version 5. This is very unlikely to break anything in your code though.

View File

@ -9,10 +9,10 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
node: [18]
node: [18, 20]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Setup Node.js ${{ matrix.node }}
uses: actions/setup-node@v3
@ -38,13 +38,5 @@ jobs:
- name: Build packages
run: npm run build
# TODO setup linting
# - name: Lint
# run: npm run lint
- name: Run tests
run: npm run test -- --ci --coverage --maxWorkers=2 --reporters=default --reporters=github-actions
# TODO setup codecov or coveralls
# - name: Upload coverage to Codecov
# uses: codecov/codecov-action@v1

View File

@ -16,12 +16,12 @@ jobs:
name: Release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 18
node-version: 20
cache: npm
- name: Install dependencies
@ -31,9 +31,9 @@ jobs:
uses: actions/cache@v3
with:
path: node_modules/.cache/turbo
key: ${{ runner.os }}-node-18-turbo-${{ hashFiles('node_modules/.cache/turbo') }}
key: ${{ runner.os }}-node-20-turbo-${{ hashFiles('node_modules/.cache/turbo') }}
restore-keys: |
${{ runner.os }}-node-18-turbo-
${{ runner.os }}-node-20-turbo-
- name: Check types
run: npm run tsc

3403
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -19,6 +19,11 @@
"docs:deploy": "poetry install && poetry run mike deploy -u",
"docs:serve": "poetry install && poetry run mike serve"
},
"engines": {
"node": ">=18.0.0",
"npm": ">=9.0.0"
},
"packageManager": "npm@8.3.1",
"devDependencies": {
"@changesets/changelog-github": "^0.4.7",
"@changesets/cli": "^2.25.2",

View File

@ -21,8 +21,7 @@
"./tsconfig.contrib.json": "./tsconfig.contrib.json"
},
"engines": {
"node": ">=18",
"npm": ">=8"
"node": ">=18.0.0"
},
"repository": {
"type": "git",
@ -36,29 +35,29 @@
},
"homepage": "https://www.jspsych.org/latest/developers/configuration",
"dependencies": {
"@rollup/plugin-commonjs": "23.0.2",
"@rollup/plugin-node-resolve": "15.0.1",
"@rollup/plugin-commonjs": "25.0.7",
"@rollup/plugin-node-resolve": "15.2.3",
"@sucrase/jest-plugin": "3.0.0",
"@types/gulp": "4.0.10",
"@types/jest": "29.2.3",
"alias-hq": "github:bjoluc/alias-hq#fix-jest-plugin",
"canvas": "2.11.2",
"@types/gulp": "4.0.17",
"@types/jest": "29.5.8",
"alias-hq": "6.2.3",
"canvas": "^2.11.2",
"esbuild": "0.15.14",
"gulp": "4.0.2",
"gulp-cli": "2.3.0",
"gulp-file": "0.4.0",
"gulp-rename": "2.0.0",
"gulp-replace": "1.1.3",
"gulp-zip": "5.1.0",
"jest": "29.3.1",
"jest-environment-jsdom": "29.3.1",
"gulp-replace": "1.1.4",
"gulp-zip": "6.0.0",
"jest": "29.7.0",
"jest-environment-jsdom": "29.7.0",
"merge-stream": "2.0.0",
"rollup": "3.3.0",
"rollup": "4.3.0",
"rollup-plugin-dts": "5.0.0",
"rollup-plugin-esbuild": "5.0.0",
"rollup-plugin-node-externals": "5.0.2",
"sucrase": "3.29.0",
"tslib": "2.4.1",
"typescript": "4.9.3"
"sucrase": "3.34.0",
"tslib": "2.6.2",
"typescript": "^5.2.2"
}
}

View File

@ -14,7 +14,7 @@ describe("survey-html-form plugin", () => {
]);
expect(
displayElement.querySelectorAll('#jspsych-survey-html-form input:not([type="submit"]').length
displayElement.querySelectorAll('#jspsych-survey-html-form input:not([type="submit"])').length
).toBe(3);
// Provide some test input

View File

@ -62,7 +62,7 @@ describe("survey-likert plugin simulation", () => {
await expectFinished();
const surveyData = getData().values()[0].response;
const surveyData = getData().values()[0].response as Record<string, number>;
const all_valid = Object.entries(surveyData).every((x) => {
return x[1] <= 4 && x[1] >= 0;
});
@ -94,7 +94,7 @@ describe("survey-likert plugin simulation", () => {
await expectFinished();
const surveyData = getData().values()[0].response;
const surveyData = getData().values()[0].response as Record<string, number>;
const all_valid = Object.entries(surveyData).every((x) => {
return x[1] <= 4 && x[1] >= 0;
});