Skip to content

v27.0.0

Choose a tag to compare

@ct-changesets ct-changesets released this 11 Mar 15:19
· 45 commits to main since this release
d96c5ad

@commercetools-backend/eslint-config-node@27.0.0

Major Changes

  • #3936 d890dce Thanks @valoriecarli! - Migrate to ESLint 9 flat config format.

    Peer dependency: eslint@^9.0.0 is now required.

    How to update

    Both packages ship a migrations/v27.md with full step-by-step instructions, structured for both human and AI-assisted migration:

    node_modules/@commercetools-frontend/eslint-config-mc-app/migrations/v27.md
    node_modules/@commercetools-backend/eslint-config-node/migrations/v27.md
    

    "Migrate my eslint config following node_modules/@commercetools-frontend/eslint-config-mc-app/migrations/v27.md"

    Quick summary:

    1. Upgrade ESLint to v9: eslint@^9.0.0
    2. Replace .eslintrc.js with eslint.config.js:
    const mcAppConfig = require('@commercetools-frontend/eslint-config-mc-app');
    
    module.exports = [
      ...mcAppConfig,
      // your overrides here
    ];
    1. Delete .eslintignore and inline ignore patterns as { ignores: ['dist/', 'build/'] } in eslint.config.js
    2. Remove @rushstack/eslint-patch if present

    What changed

    Both packages now export a flat config array instead of a legacy .eslintrc object:

    • Config is now an array of objects, each targeting its own file patterns (replaces overrides)
    • Plugins must be imported as objects, not referenced as strings
    • Parsers moved into languageOptions.parser
    • env replaced with explicit globals via the globals package
    • extends removed — plugin rules are configured directly
    • @rushstack/eslint-patch removed — no longer needed in ESLint 9
    • react-hooks rules now explicitly applied to **/*.ts files (custom hooks without JSX)

    Dependency upgrades: @typescript-eslint/* v5→v8, eslint-plugin-jest v27→v28, eslint-plugin-react-hooks v4→v5, eslint-plugin-testing-library v5→v7.

    Why

    ESLint 9 drops support for the legacy .eslintrc format. The flat config system provides explicit, predictable scoping — plugins and parsers apply only to the file patterns they are registered for, eliminating the silent global leaking behavior of ESLint 8 overrides.

@commercetools-backend/express@27.0.0

@commercetools-backend/loggers@27.0.0

@commercetools-frontend/actions-global@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/browser-history@27.0.0
    • @commercetools-frontend/constants@27.0.0
    • @commercetools-frontend/notifications@27.0.0
    • @commercetools-frontend/sentry@27.0.0

@commercetools-frontend/application-components@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/actions-global@27.0.0
    • @commercetools-frontend/application-config@27.0.0
    • @commercetools-frontend/application-shell-connectors@27.0.0
    • @commercetools-frontend/assets@27.0.0
    • @commercetools-frontend/constants@27.0.0
    • @commercetools-frontend/i18n@27.0.0
    • @commercetools-frontend/l10n@27.0.0
    • @commercetools-frontend/sentry@27.0.0

@commercetools-frontend/application-config@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/constants@27.0.0

@commercetools-frontend/application-shell@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/actions-global@27.0.0
    • @commercetools-frontend/application-components@27.0.0
    • @commercetools-frontend/application-config@27.0.0
    • @commercetools-frontend/application-shell-connectors@27.0.0
    • @commercetools-frontend/assets@27.0.0
    • @commercetools-frontend/browser-history@27.0.0
    • @commercetools-frontend/constants@27.0.0
    • @commercetools-frontend/i18n@27.0.0
    • @commercetools-frontend/l10n@27.0.0
    • @commercetools-frontend/notifications@27.0.0
    • @commercetools-frontend/permissions@27.0.0
    • @commercetools-frontend/react-notifications@27.0.0
    • @commercetools-frontend/sdk@27.0.0
    • @commercetools-frontend/sentry@27.0.0
    • @commercetools-frontend/url-utils@27.0.0

@commercetools-frontend/application-shell-connectors@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/application-config@27.0.0
    • @commercetools-frontend/browser-history@27.0.0
    • @commercetools-frontend/constants@27.0.0
    • @commercetools-frontend/sentry@27.0.0

@commercetools-frontend/assets@27.0.0

@commercetools-frontend/babel-preset-mc-app@27.0.0

@commercetools-frontend/browser-history@27.0.0

@commercetools-frontend/codemod@27.0.0

@commercetools-frontend/constants@27.0.0

@commercetools-frontend/create-mc-app@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/application-config@27.0.0

@commercetools-frontend/cypress@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/application-config@27.0.0
    • @commercetools-frontend/application-shell@27.0.0
    • @commercetools-frontend/constants@27.0.0

@commercetools-frontend/eslint-config-mc-app@27.0.0

Major Changes

  • #3936 d890dce Thanks @valoriecarli! - Migrate to ESLint 9 flat config format.

    Peer dependency: eslint@^9.0.0 is now required.

    How to update

    Both packages ship a migrations/v27.md with full step-by-step instructions, structured for both human and AI-assisted migration:

    node_modules/@commercetools-frontend/eslint-config-mc-app/migrations/v27.md
    node_modules/@commercetools-backend/eslint-config-node/migrations/v27.md
    

    "Migrate my eslint config following node_modules/@commercetools-frontend/eslint-config-mc-app/migrations/v27.md"

    Quick summary:

    1. Upgrade ESLint to v9: eslint@^9.0.0
    2. Replace .eslintrc.js with eslint.config.js:
    const mcAppConfig = require('@commercetools-frontend/eslint-config-mc-app');
    
    module.exports = [
      ...mcAppConfig,
      // your overrides here
    ];
    1. Delete .eslintignore and inline ignore patterns as { ignores: ['dist/', 'build/'] } in eslint.config.js
    2. Remove @rushstack/eslint-patch if present

    What changed

    Both packages now export a flat config array instead of a legacy .eslintrc object:

    • Config is now an array of objects, each targeting its own file patterns (replaces overrides)
    • Plugins must be imported as objects, not referenced as strings
    • Parsers moved into languageOptions.parser
    • env replaced with explicit globals via the globals package
    • extends removed — plugin rules are configured directly
    • @rushstack/eslint-patch removed — no longer needed in ESLint 9
    • react-hooks rules now explicitly applied to **/*.ts files (custom hooks without JSX)

    Dependency upgrades: @typescript-eslint/* v5→v8, eslint-plugin-jest v27→v28, eslint-plugin-react-hooks v4→v5, eslint-plugin-testing-library v5→v7.

    Why

    ESLint 9 drops support for the legacy .eslintrc format. The flat config system provides explicit, predictable scoping — plugins and parsers apply only to the file patterns they are registered for, eliminating the silent global leaking behavior of ESLint 8 overrides.

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/babel-preset-mc-app@27.0.0

@commercetools-frontend/i18n@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/sentry@27.0.0

@commercetools-frontend/jest-preset-mc-app@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/babel-preset-mc-app@27.0.0

@commercetools-frontend/jest-stylelint-runner@27.0.0

@commercetools-frontend/l10n@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/sentry@27.0.0

@commercetools-frontend/mc-dev-authentication@27.0.0

@commercetools-frontend/mc-html-template@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/application-config@27.0.0
    • @commercetools-frontend/constants@27.0.0

@commercetools-frontend/mc-scripts@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/application-components@27.0.0
    • @commercetools-frontend/application-config@27.0.0
    • @commercetools-frontend/assets@27.0.0
    • @commercetools-frontend/babel-preset-mc-app@27.0.0
    • @commercetools-frontend/constants@27.0.0
    • @commercetools-frontend/mc-dev-authentication@27.0.0
    • @commercetools-frontend/mc-html-template@27.0.0

@commercetools-frontend/notifications@27.0.0

@commercetools-frontend/permissions@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/application-shell-connectors@27.0.0
    • @commercetools-frontend/sentry@27.0.0

@commercetools-frontend/react-notifications@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/actions-global@27.0.0
    • @commercetools-frontend/application-components@27.0.0
    • @commercetools-frontend/constants@27.0.0
    • @commercetools-frontend/notifications@27.0.0
    • @commercetools-frontend/sentry@27.0.0

@commercetools-frontend/sdk@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/constants@27.0.0

@commercetools-frontend/sentry@27.0.0

Patch Changes

  • Updated dependencies []:
    • @commercetools-frontend/browser-history@27.0.0
    • @commercetools-frontend/constants@27.0.0

@commercetools-frontend/url-utils@27.0.0