Dev-only major bumps that don't touch the Angular runtime. Independent of the framework epic; can be done together or split.
Bumps (current → latest)
Package
Current
Latest
Notes
concurrently
9.2.1
10.0.3
check CLI flags used in npm scripts
lint-staged
16.4.0
17.0.7
check config shape + husky pre-commit hook
@babel/preset-typescript
7.28.5
8.0.0
used by SWC/test transform path
Risks to check
concurrently 10: verify any flags we pass in package.json scripts (e.g. -k, -n, -c, --kill-others) are unchanged.
lint-staged 17: confirm our lint-staged config + the husky pre-commit hook still run prettier on staged files; review the v17 changelog for config/exit-code changes.
Splitting this ticket. The concurrently 9→10 and lint-staged 16→17 bumps are in spikersoft-angular PR #70 (open). Both require a Node >=22 floor (lint-staged@17 needs >=22.22.1, concurrently@10 needs >=22); CI already runs Node 24.4.0 and prod is a static nginx image (no Node runtime), so PR #70 just bumps engines.node to >=22.
@babel/preset-typescript 7→8 deferred — it is not an isolated bump:
babel.config.js also uses @babel/preset-env, which isn't even a direct dependency today.
So a clean preset-typescript 8 move means migrating the whole Babel toolchain to v8 (@babel/core, @babel/preset-env, etc.) and verifying whatever consumes babel.config.js (Storybook). Recommend keeping this ticket open scoped to the Babel 8 migration once PR #70 merges, or breaking it into its own ticket.
Splitting this ticket. The `concurrently` 9→10 and `lint-staged` 16→17 bumps are in spikersoft-angular PR #70 (open). Both require a **Node >=22** floor (`lint-staged@17` needs `>=22.22.1`, `concurrently@10` needs `>=22`); CI already runs Node 24.4.0 and prod is a static nginx image (no Node runtime), so PR #70 just bumps `engines.node` to `>=22`.
**`@babel/preset-typescript` 7→8 deferred** — it is *not* an isolated bump:
- `@babel/preset-typescript@8.0.1` peer-requires `@babel/core@^8.0.0` (full Babel 8 migration).
- `babel.config.js` also uses `@babel/preset-env`, which isn't even a direct dependency today.
So a clean preset-typescript 8 move means migrating the whole Babel toolchain to v8 (`@babel/core`, `@babel/preset-env`, etc.) and verifying whatever consumes `babel.config.js` (Storybook). Recommend keeping this ticket open scoped to the **Babel 8 migration** once PR #70 merges, or breaking it into its own ticket.
Partial progress: spikersoft-angular PR #70 (merged) shipped the concurrently 9→10 and lint-staged 16→17 bumps plus the Node >=22 floor.
Still outstanding from this ticket's scope: @babel/preset-typescript 7.28.5 → 8.0.0 (confirmed still pinned at ^7.28.5 in package.json). Leaving open for that remaining bump.
Partial progress: spikersoft-angular PR #70 (merged) shipped the `concurrently` 9→10 and `lint-staged` 16→17 bumps plus the Node >=22 floor.
Still outstanding from this ticket's scope: `@babel/preset-typescript` 7.28.5 → 8.0.0 (confirmed still pinned at `^7.28.5` in `package.json`). Leaving open for that remaining bump.
Resolved in spikersoft-angular PR #161 (merged to master). Status of the three bumps: concurrently ^10.0.3 and lint-staged ^17.0.7 were already on master (v17 pre-commit verified live — prettier runs on staged files). @babel/preset-typescript turned out to be a dead Jest-era remnant rather than a bump candidate: babel.config.js referenced @babel/preset-env which was in neither package.json nor the lockfile (config could never resolve; the vitest transform path is SWC), so the orphaned dep and dead config were removed instead of a Babel 8 upgrade. Validation per the ticket checklist: pnpm install clean, nx build spikersoft green, nx test spikersoft 1871/1871, no npm script passes concurrently flags. Closing.
Resolved in spikersoft-angular PR #161 (merged to master). Status of the three bumps: concurrently ^10.0.3 and lint-staged ^17.0.7 were already on master (v17 pre-commit verified live — prettier runs on staged files). @babel/preset-typescript turned out to be a dead Jest-era remnant rather than a bump candidate: babel.config.js referenced @babel/preset-env which was in neither package.json nor the lockfile (config could never resolve; the vitest transform path is SWC), so the orphaned dep and dead config were removed instead of a Babel 8 upgrade. Validation per the ticket checklist: pnpm install clean, nx build spikersoft green, nx test spikersoft 1871/1871, no npm script passes concurrently flags. Closing.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Goal
Dev-only major bumps that don't touch the Angular runtime. Independent of the framework epic; can be done together or split.
Bumps (current → latest)
Risks to check
package.jsonscripts (e.g.-k,-n,-c,--kill-others) are unchanged.lint-stagedconfig + the huskypre-commithook still run prettier on staged files; review the v17 changelog for config/exit-code changes.Validation
pnpm installcleanpnpm test-allgreennx build spikersoftsucceedsconcurrentlyrun as beforeFixes land in
spikersoft-angular.Splitting this ticket. The
concurrently9→10 andlint-staged16→17 bumps are in spikersoft-angular PR #70 (open). Both require a Node >=22 floor (lint-staged@17needs>=22.22.1,concurrently@10needs>=22); CI already runs Node 24.4.0 and prod is a static nginx image (no Node runtime), so PR #70 just bumpsengines.nodeto>=22.@babel/preset-typescript7→8 deferred — it is not an isolated bump:@babel/preset-typescript@8.0.1peer-requires@babel/core@^8.0.0(full Babel 8 migration).babel.config.jsalso uses@babel/preset-env, which isn't even a direct dependency today.So a clean preset-typescript 8 move means migrating the whole Babel toolchain to v8 (
@babel/core,@babel/preset-env, etc.) and verifying whatever consumesbabel.config.js(Storybook). Recommend keeping this ticket open scoped to the Babel 8 migration once PR #70 merges, or breaking it into its own ticket.Partial progress: spikersoft-angular PR #70 (merged) shipped the
concurrently9→10 andlint-staged16→17 bumps plus the Node >=22 floor.Still outstanding from this ticket's scope:
@babel/preset-typescript7.28.5 → 8.0.0 (confirmed still pinned at^7.28.5inpackage.json). Leaving open for that remaining bump.Resolved in spikersoft-angular PR #161 (merged to master). Status of the three bumps: concurrently ^10.0.3 and lint-staged ^17.0.7 were already on master (v17 pre-commit verified live — prettier runs on staged files). @babel/preset-typescript turned out to be a dead Jest-era remnant rather than a bump candidate: babel.config.js referenced @babel/preset-env which was in neither package.json nor the lockfile (config could never resolve; the vitest transform path is SWC), so the orphaned dep and dead config were removed instead of a Babel 8 upgrade. Validation per the ticket checklist: pnpm install clean, nx build spikersoft green, nx test spikersoft 1871/1871, no npm script passes concurrently flags. Closing.