Release v0.52.1
Release v0.52.1
Date: 2026-04-04
Dev toolchain major version upgrades: ESLint 10 and TypeScript 6.
Changed
ESLint 9 → 10
eslint9.39.4 → 10.2.0,@eslint/js9.39.4 → 10.0.1- ESLint 10’s new
preserve-caught-errorrecommended rule flagged 5 catch-and-rethrow sites that discarded the original error. All now attach{ cause }for proper error chain preservation. eslint-plugin-react-hooks7.0.1 does not yet declare ESLint 10 in its peer range. A scopedpeerDependencyRulesoverride (^10) suppresses the warning until the plugin publishes an update.
TypeScript 5 → 6
typescript5.9.3 → 6.0.2 across root and all 10 workspace packages.tsconfig.base.json: added"types": ["node"](TS6 defaultstypesto[]), removedesModuleInteropandallowSyntheticDefaultImports(always-on in TS6).apps/editor/e2e/tsconfig.json: migrated off deprecated"moduleResolution": "node"→"bundler".apps/editortest: replacedglobal.URLwithglobalThis.URL(TS6types: []default removed Node ambientglobalfrom browser configs).apps/apitest: added explicitPromise<never>return type on a throwing override (TS6 stricter return-type inference).@types/nodeadded as explicit root devDependency (previously relied on transitive hoisting fromapps/api).
Other
- Warmup crash resilience:
buildServernow catches a rejectedwarmup()promise instead of letting it crash the process. New test(s-c2)covers this path. - CI: added
PULP_ENGINE_DISABLE_SANDBOXandPUPPETEER_EXECUTABLE_PATHfor GitHub Actions Linux runners. - Test guards:
afterAllhooks in schema validation tests now checkappexists before cleanup. - Removed stale
package-lock.json(repo uses pnpm exclusively).
Upgrade notes
- Node.js requirement: ESLint 10 requires
^20.19.0 || ^22.13.0 || >=24.0.0. CI and Docker use Node 22. - No application behaviour changes. All changes are dev-toolchain and test infrastructure.