Skip to content

v1.30.0

Choose a tag to compare

@onigoetz onigoetz released this 03 Jun 14:21
· 28 commits to master since this release

Vitest support

Crafty now ships @swissquote/crafty-preset-vitest, a first-class preset for running tests with Vitest as an alternative to Jest (#3110).

It follows the same patterns as crafty-preset-jest: crafty test is the single entry point, crafty ide generates the IDE-facing config, and crafty test --coverage produces LCOV output and a SonarQube-compatible test execution report out of the box.

Crafty supports exactly one active test runner per project. If both Jest and Vitest presets are configured, Crafty will fail with a clear error.

ESLint 10

crafty-preset-eslint and eslint-plugin-swissquote have been migrated from ESLint 9 to ESLint 10 (#3076).

ESLint 10 release notes

Bug fixes

  • Fixed crafty watch crash (minimatch_1.default is not a function) in the TypeScript + webpack + fork-ts-checker path. The minimatch wrapper is now exported correctly as a callable default (#3132).
  • Fixed crafty watch crash (stream.push() after EOF) when using crafty-preset-postcss + crafty-runner-gulp (#3161).
  • Restored the init() feature in PostCSS's Processor configuration that was inadvertently dropped during the ESM conversion (#3151).
  • Fixed a Stylelint rule that was not correctly matching CSS property names (#3127).

Internal

  • Removed ts-loader from the Rspack runner; TypeScript is now handled directly by the SWC-based Rspack transform (#3149).
  • Several internally-bundled package forks converted to ESM, and parts of the PostCSS loader made async to support ESM PostCSS plugins (#3114).
  • Added a build benchmark suite (#3156).
  • Security update for the tmp dependency (#3148).
  • Yarn upgraded to 4.15.0.

Tool updates

  • ESLint: 9.39.4 → 10.4.1
  • typescript-eslint: 8.59.3 → 8.60.1
  • webpack: 5.106.2 → 5.107.2
  • Rspack: 2.0.2 → 2.0.6
  • Vitest: introduced at 4.1.7
  • babel: 7.29.0 → 7.29.7
  • SWC: 1.15.33 → 1.15.40
  • postcss: 8.5.14 → 8.5.15

Thanks for the bug reports and contributions

Thanks to @AndreySushkovich for the vitest contribution and to @saniaBarish, Georgios Andreas Nellas, and Quentin Walter for the extensive tests and reproducible bug reports

Full changelog

v1.29.0...v1.30.0