Skip to content

use latest @shiftcode dependencies + node 24#79

Merged
michaelwittwer merged 34 commits intomainfrom
#07-support-new-sc-lib-versions
Mar 18, 2026
Merged

use latest @shiftcode dependencies + node 24#79
michaelwittwer merged 34 commits intomainfrom
#07-support-new-sc-lib-versions

Conversation

@mumenthalers
Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI review requested due to automatic review settings March 18, 2026 09:13
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR modernizes the workspace tooling and runtime targets while updating @shiftcode/* dependencies, including a migration from Jest to Vitest for unit tests and a shift toward ESM (type: module) + Node 24.

Changes:

  • Switch Angular unit testing from Jest to Vitest (@angular/build:unit-test runner), updating specs accordingly and removing Jest config/types.
  • Update build/lint/format tooling (ESLint flat configs, lint-staged/prettier/commitlint configs) and raise the target runtime/library baseline (Node 24, ES2022 + ES2023.Array).
  • Add new logger features (custom transport + global error handler) and export them via the public API.

Reviewed changes

Copilot reviewed 70 out of 75 changed files in this pull request and generated 13 comments.

Show a summary per file
File Description
tsconfig.spec.json Removes ts-jest-specific config from spec TS config.
tsconfig.json Updates TS libs to include ES2023 array + DOM.
scripts/tsconfig.json Adds a new TS config for scripts (NodeNext).
scripts/ts/tsconfig.json Removes legacy scripts TS config.
scripts/ts/copy-version.ts Removes legacy ts-node-based copy-version script.
scripts/copy-version.ts Adds new async (promises-based) version sync script.
prettier.config.js Adds Prettier config as JS module export.
package.json Updates dependencies/tooling, switches to ESM, adjusts scripts, pins Node engine to ^24.
lint-staged.config.js Adds root lint-staged configuration.
libs/core/tsconfig.spec.json Drops Jest types from core spec TS config.
libs/core/tsconfig.lint.json Updates lint TS config include/types/baseUrl.
libs/core/test/mock-storage.ts Adds ESLint rule suppression header.
libs/core/src/public-api.ts Exports new logger feature helpers.
libs/core/src/lib/ui-events/ui-event.service.spec.ts Migrates spec to Vitest APIs/imports.
libs/core/src/lib/static-utils/to-promise.function.spec.ts Migrates spec to Vitest imports.
libs/core/src/lib/static-utils/rxjs/wrap-into-observable.spec.ts Migrates spec to Vitest and adjusts async test structure.
libs/core/src/lib/static-utils/rxjs/tap-previous.operator.spec.ts Replaces Jest mocks with Vitest (vi).
libs/core/src/lib/static-utils/rxjs/tap-last.operator.spec.ts Replaces Jest mocks with Vitest (vi).
libs/core/src/lib/static-utils/rxjs/setup.operator.spec.ts Replaces Jest mocks with Vitest (vi).
libs/core/src/lib/static-utils/rxjs/select.operator.spec.ts Replaces Jest mocks with Vitest (vi).
libs/core/src/lib/static-utils/rxjs/on-destroy.observable.spec.ts Migrates spec to Vitest and replaces Jest spies with vi.
libs/core/src/lib/static-utils/rxjs/filter-if-truthy.operator.spec.ts Migrates spec to Vitest and updates async handling.
libs/core/src/lib/static-utils/rxjs/filter-if-instance-of.operator.spec.ts Migrates spec to Vitest and replaces Jest mocks with vi.
libs/core/src/lib/static-utils/rxjs/filter-if-falsy.operator.spec.ts Migrates spec to Vitest and replaces Jest mocks with vi.
libs/core/src/lib/static-utils/resolve-fn-to-can-activate-fn.function.spec.ts Migrates spec to Vitest imports.
libs/core/src/lib/static-utils/jwt-helper.spec.ts Migrates spec to Vitest imports.
libs/core/src/lib/static-utils/is-input-element.function.spec.ts Migrates spec to Vitest imports.
libs/core/src/lib/script-loader/script-loader.service.spec.ts Migrates spec to Vitest imports.
libs/core/src/lib/origin/provide-origin-from-env.function.spec.ts Migrates spec to Vitest and converts it to test.
libs/core/src/lib/origin/ensure-origin.interceptor.spec.ts Migrates spec to Vitest and replaces Jest mocks with vi.
libs/core/src/lib/logger/with-error-handler.function.ts Adds new logger feature to register a global Angular ErrorHandler.
libs/core/src/lib/logger/with-custom-log-transport.function.ts Adds new logger feature to register custom LogTransport.
libs/core/src/lib/logger/with-custom-log-transport.function.spec.ts Adds Vitest coverage for custom transport feature.
libs/core/src/lib/logger/remote/remote-log.service.spec.ts Migrates remote logger tests to Vitest.
libs/core/src/lib/logger/logger.service.spec.ts Migrates logger service tests to Vitest.
libs/core/src/lib/logger/logger-feature-kind.enum.ts Extends feature kind enum with GLOBAL_ERROR_HANDLER.
libs/core/src/lib/logger/logger-error-handler.ts Adds LoggerErrorHandler implementation.
libs/core/src/lib/logger/logger-error-handler.spec.ts Adds Vitest coverage for LoggerErrorHandler integration.
libs/core/src/lib/logger/helper/logging-time-format.const.spec.ts Migrates spec to Vitest and converts it to test.
libs/core/src/lib/logger/helper/leading-zero.function.spec.ts Migrates spec to Vitest imports.
libs/core/src/lib/local-storage/local-storage.service.spec.ts Migrates spec to Vitest and updates spy types.
libs/core/src/lib/http/http-date.interceptor.spec.ts Migrates spec to Vitest and updates spy types.
libs/core/package.json Bumps package version, sets ESM, updates peers/engines.
libs/core/lint-staged.config.js Adds package-level lint-staged configuration.
libs/core/jest.config.js Removes Jest config for core.
libs/core/eslint.config.js Adds ESLint flat config for core.
libs/core/eslint-suppressions.json Updates suppressions after tooling changes.
libs/core/README.md Documents Node 24 + ES2022/ES2023.Array targets.
libs/core/.lintstagedrc.yml Removes legacy lint-staged YAML config.
libs/components/tsconfig.spec.json Drops Jest types and adds path mapping for core in specs.
libs/components/tsconfig.lint.json Updates lint TS config include/types/baseUrl and path mapping.
libs/components/src/lib/tooltip/tooltip.directive.ts Updates tooltip input aliasing / eslint suppression placement.
libs/components/src/lib/svg/svg-registry.service.spec.ts Adds new Vitest coverage for SvgRegistry service.
libs/components/package.json Bumps package version, sets ESM, updates peers/engines.
libs/components/lint-staged.config.js Adds package-level lint-staged configuration.
libs/components/jest.config.js Removes Jest config for components.
libs/components/eslint.config.js Adds ESLint flat config for components.
libs/components/README.md Documents Node 24 + ES2022/ES2023.Array targets.
libs/components/.lintstagedrc.yml Removes legacy lint-staged YAML config.
lerna.json Bumps lerna-managed version.
commitlint.config.js Adds commitlint config as JS module export.
apps/styleguide/package.json Adds version + ESM type, adjusts package.json layout.
apps/styleguide/lint-staged.config.js Adds app-level lint-staged configuration.
apps/styleguide/eslint.config.js Adds ESLint flat config for styleguide.
apps/styleguide/eslint-suppressions.json Adds (empty) suppressions file for styleguide.
apps/styleguide/.lintstagedrc.yml Removes legacy lint-staged YAML config.
angular.json Switches test builder to @angular/build:unit-test with Vitest runner; adds development configs.
README.md Documents Node 24 + ES2022/ES2023.Array targets and updates version mapping.
.prettierrc.yml Removes legacy Prettier YAML config.
.nvmrc Updates Node version selection for local/CI tooling.
.lintstagedrc.yml Removes legacy root lint-staged YAML config.
.husky/pre-commit Changes pre-commit hook to run only root lint-staged.
.github/workflows/main.yml Updates workflow actions pinning, auth, permissions, and publish flow.
.commitlintrc.yml Removes legacy commitlint YAML config.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread scripts/tsconfig.json Outdated
Comment thread .nvmrc
Comment thread scripts/copy-version.ts Outdated
Comment thread scripts/copy-version.ts
Comment thread libs/core/src/lib/logger/with-error-handler.function.ts
Comment thread .husky/pre-commit
Comment thread package.json
Comment thread libs/core/src/lib/logger/with-error-handler.function.ts Outdated
Comment thread libs/core/README.md Outdated
Comment thread libs/components/README.md Outdated
@mumenthalers mumenthalers force-pushed the #07-support-new-sc-lib-versions branch from 8dd40ab to 50beb3a Compare March 18, 2026 09:27
BREAKING CHANGE:
- requires @shiftcode/logger@^5.0.0
- requires @shiftcode/utilities@^5.0.0
BREAKING CHANGE:
- requires @shiftcode/logger@^5.0.0
- requires @shiftcode/ngx-core@^15.0.0
@mumenthalers mumenthalers linked an issue Mar 18, 2026 that may be closed by this pull request
5 tasks
This was linked to issues Mar 18, 2026
@mumenthalers mumenthalers changed the title build: use latest @shiftcode dependencies use latest @shiftcode dependencies + node 24 Mar 18, 2026
@michaelwittwer michaelwittwer merged commit a4f429e into main Mar 18, 2026
2 checks passed
@michaelwittwer michaelwittwer deleted the #07-support-new-sc-lib-versions branch March 18, 2026 17:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix lint-staged update tests to vitest change lerna config to keep versions in sync

4 participants