mirror of
https://github.com/game-ci/unity-builder.git
synced 2026-05-31 13:56:13 -07:00
* chore: migrate to mise + bump yarn to 4.14.1 (yarn 1 -> 4) - Pin Node and Yarn 4.14.1 in mise.toml - Drop Volta from package.json - Switch to corepack-managed yarn via packageManager field - Regenerate yarn.lock from scratch (yarn 1 v1 format -> yarn 4 v9) - enableScripts off (default); allowlist lefthook via dependenciesMeta - Replace setup-node + cache:'yarn' across 4 yarn-using workflows (integrity-check, validate-community-plugins, validate-orchestrator, validate-orchestrator-integration) with the standard cache pattern - Add yarn 4 (berry) gitignore rules * chore: revert dist/ + build-tests workflow churn Keep PR scoped to tooling migration only; dist/ rebuild and prettier auto-wraps in build-tests-* workflows are unrelated drive-by changes. * fix(ci): add missing eslint plugins + jest globals Yarn 4 strict layout doesn't expose @typescript-eslint/eslint-plugin or eslint-plugin-import which were resolved transitively under yarn 1. Add them as explicit devDeps. Same for @jest/globals (used by jest-fail-on-console). Disable unicorn/no-useless-undefined which now fires on existing mockResolvedValue(undefined) calls. The undefined arg is required by @types/jest 27 typings (removing it breaks tsc), so the rule and the typecheck disagree. Pre-existing under yarn 1 these calls compiled because the eslint config was effectively non-functional (plugin resolution failed silently) so the rule never ran. * fix(ci): disable unicorn/no-useless-undefined @types/jest 27 typings require explicit .mockResolvedValue(undefined), which the rule wants removed; tsc and eslint disagreed. Disable the rule to match upstream behaviour (it only fires now because yarn 4 exposes the eslint plugin tree that yarn 1 silently broke). * ci: bump cache key to v2 to bust stale node_modules The restore-key pattern matched an older cache that had @types/tar + minipass 3.x in node_modules from before the lockfile regen. Fresh installs end up with that stale tree and tsc fails on incompatible types. Versioning the key forces a clean cache. * chore: actually revert dist/ to origin/main Earlier revert commit only fixed workflows; dist/ stayed rebuilt. The newer ncc bundle output triggers 2 high-severity CodeQL alerts (URL substring sanitization + escape sanitization) that don't fire on the main branch's dist/. Restore main's dist/ so CodeQL passes. * ci: drop node_modules from yarn cache (stale-state fix) Caching node_modules causes stale trees to leak across yarn.lock changes (e.g. @types/tar persisting after a regen). Cache only the yarn cacheFolder + install-state.gz; yarn install rebuilds node_modules from those (fast).
70 lines
2.0 KiB
JSON
70 lines
2.0 KiB
JSON
{
|
|
"name": "unity-builder",
|
|
"version": "3.0.0",
|
|
"description": "Build Unity projects for different platforms.",
|
|
"main": "dist/index.js",
|
|
"repository": "git@github.com:game-ci/unity-builder.git",
|
|
"author": "Webber <webber@takken.io>",
|
|
"license": "MIT",
|
|
"scripts": {
|
|
"prepare": "lefthook install",
|
|
"build": "yarn && tsc && ncc build lib --source-map --license licenses.txt",
|
|
"lint": "prettier --check \"src/**/*.{js,ts}\" && eslint src/**/*.ts",
|
|
"format": "prettier --write \"src/**/*.{js,ts}\"",
|
|
"test": "jest",
|
|
"test:ci": "jest --config=jest.ci.config.js --runInBand"
|
|
},
|
|
"engines": {
|
|
"node": ">=18.x"
|
|
},
|
|
"dependencies": {
|
|
"@actions/cache": "^4.0.0",
|
|
"@actions/core": "^1.11.1",
|
|
"@actions/exec": "^1.1.1",
|
|
"@actions/github": "^6.0.0",
|
|
"commander": "^9.0.0",
|
|
"commander-ts": "^0.2.0",
|
|
"md5": "^2.3.0",
|
|
"nanoid": "^3.3.1",
|
|
"reflect-metadata": "^0.1.13",
|
|
"semver": "^7.5.2",
|
|
"ts-md5": "^1.3.1",
|
|
"unity-changeset": "^3.1.0",
|
|
"yaml": "^2.2.2"
|
|
},
|
|
"devDependencies": {
|
|
"@jest/globals": "^27.5.1",
|
|
"@types/jest": "^27.4.1",
|
|
"@types/node": "^17.0.23",
|
|
"@types/semver": "^7.3.9",
|
|
"@typescript-eslint/eslint-plugin": "4.8.1",
|
|
"@typescript-eslint/parser": "4.8.1",
|
|
"@vercel/ncc": "^0.36.1",
|
|
"cross-env": "^7.0.3",
|
|
"eslint": "^7.23.0",
|
|
"eslint-config-prettier": "8.1.0",
|
|
"eslint-plugin-github": "^4.1.1",
|
|
"eslint-plugin-import": "^2.31.0",
|
|
"eslint-plugin-jest": "24.1.3",
|
|
"eslint-plugin-prettier": "^3.3.1",
|
|
"eslint-plugin-unicorn": "28.0.2",
|
|
"jest": "^27.5.1",
|
|
"jest-circus": "^27.5.1",
|
|
"jest-fail-on-console": "^3.0.2",
|
|
"js-yaml": "^4.1.0",
|
|
"lefthook": "^1.6.1",
|
|
"node-fetch": "2",
|
|
"prettier": "^2.5.1",
|
|
"ts-jest": "^27.1.3",
|
|
"ts-node": "10.8.1",
|
|
"typescript": "4.7.4",
|
|
"yarn-audit-fix": "^9.3.8"
|
|
},
|
|
"packageManager": "yarn@4.14.1",
|
|
"dependenciesMeta": {
|
|
"lefthook": {
|
|
"built": true
|
|
}
|
|
}
|
|
}
|