Skip to content

Releases: sumup-oss/foundry

v7.1.1

14 Mar 13:44
c466e6b
Compare
Choose a tag to compare

Patch Changes

v7.1.0

14 Mar 13:34
17659ae
Compare
Choose a tag to compare

Minor Changes

v7.0.1

05 Mar 09:34
7f8d8e7
Compare
Choose a tag to compare

Patch Changes

  • #952 2cc9640 Thanks @connor-baer! - Reduced the scope of the integration test file globs to prevent false positive lint issues in unit test files. Integration tests must be located in the e2e/ or tests/ folders in the repo or workspace root directories.

v7.0.0

04 Mar 08:28
7751f69
Compare
Choose a tag to compare

7.0.0 (2024-03-04)

Foundry v7 provides better compatibility with monorepos and supports a wider range of plugin versions. The minimum Node version has been raised to ^18.12 || >=20 (i.e. Node 19 is not supported). Here's how to upgrade:

Explicit plugin dependencies ✨

Foundry no longer bundles every supported ESLint plugin. This reduces its install size and enables support for multiple major versions of a plugin. You need to explicitly install the relevant plugins for the frameworks you use. Foundry's new debug command can help by analyzing your dependencies to suggest missing ESLint plugins and warn if an installed plugin version is untested or unsupported. Here's an example:

Running npx foundry debug in a project that uses Next.js, Emotion.js, and Jest yields the following output:

⚠️ "next" is installed but not the corresponding ESLint plugin. Please install "eslint-config-next".
⚠️ "@emotion/react" is installed but not the corresponding ESLint plugin. Please install "@emotion/eslint-plugin".
⚠️ "jest" is installed but not the corresponding ESLint plugin. Please install "eslint-plugin-jest".

ℹ️ Detected configuration:
┌──────────────┬─────────────────┐
│   (index)    │     Values      │
├──────────────┼─────────────────┤
│   language   │  'TypeScript'   │
│ environments │ 'Node, Browser' │
│  frameworks  │    'Next.js'    │
│   plugins    │                 │
│  openSource  │      false      │
└──────────────┴─────────────────┘

Installing the suggested plugins is strongly recommended but not required for Foundry to work.

Better monorepo support 🪨

Foundry's previous approach (still used in the new debug command) to detecting the installed frameworks only considered the package.json file in the root directory. This meant that in monorepos, Foundry would not automatically enable all relevant ESLint plugins.

It's generally recommended to treat ESLint and its plugins as shared dependencies and install them in the monorepo root. Thanks to its new detection logic, Foundry will pick up on the plugins and enable the relevant configs, which have been tweaked for better monorepo support as well.

New lint rules 🧿

Foundry v7 adds support for the Node security, Circuit UI, and Storybook ESLint plugins.

Especially on larger codebases, the number of new lint errors can be overwhelming. In that case, we recommend using overrides to set the severity level of the new rules to warn, thus enabling you to address them gradually.


Full Changelog

Major Changes

Minor Changes

  • #931 39b28a8 Thanks @connor-baer! - Added a new debug command to inspect the detected configuration options.

  • #932 85b5fbe Thanks @connor-baer! - Expanded the scope of the Cypress and Playwright plugins to account for end-to-end test in subdirectories.

  • #931 39b28a8 Thanks @connor-baer! - Removed the obsolete publish option which hasn't been used since v6.

v6.2.1

22 Feb 11:01
705ada1
Compare
Choose a tag to compare

Patch Changes

v7.0.0-next.5

29 Jan 12:27
72e13e7
Compare
Choose a tag to compare
v7.0.0-next.5 Pre-release
Pre-release

Patch Changes

  • #934 1f3067e Thanks @connor-baer! - Improved package version detection to handle tarball URLs and fail gracefully.

v7.0.0-next.4

26 Jan 16:57
aa6f69e
Compare
Choose a tag to compare
v7.0.0-next.4 Pre-release
Pre-release

Minor Changes

  • #932 85b5fbe Thanks @connor-baer! - Expanded the scope of the Cypress and Playwright plugins to account for end-to-end test in subdirectories.

v7.0.0-next.3

24 Jan 10:56
09a7d13
Compare
Choose a tag to compare
v7.0.0-next.3 Pre-release
Pre-release

Major Changes

Minor Changes

v7.0.0-next.2

23 Jan 14:24
13bec0b
Compare
Choose a tag to compare
v7.0.0-next.2 Pre-release
Pre-release

Major Changes

  • #923 ea7c264 Thanks @connor-baer! - Removed the ESLint plugins for Cypress, Emotion.js, Jest, Next.js, Playwright, Storybook, and Testing Library from the dependencies.

v7.0.0-next.1

01 Dec 14:15
20f9314
Compare
Choose a tag to compare
v7.0.0-next.1 Pre-release
Pre-release

Major Changes