Skip to main content

trackunit/iris-app — new workspaces include Trackunit linting

Workspaces created with npx @trackunit/create-iris-app-workspace now come with @trackunit/eslint-plugin-trackunit set up. The root eslint.config.cjs applies the plugin's base and react presets, and every app and extension gets a lint target. Freshly generated apps and extensions pass lint with zero errors and zero warnings. To lint the whole workspace, run:

npx nx run-many -t lint

Upgrading the @trackunit/* packages in an existing workspace doesn't set up Trackunit linting for you. To adopt Trackunit linting in a workspace you already have, follow Linting.

The published presets also no longer include Jest rules; see below if your projects use Jest.

Jest rules removed from the published presets​

configs.base and configs.react no longer configure eslint-plugin-jest, so linting no longer fails with Unable to detect Jest version in Vitest-only workspaces. configs.react declares the Vitest globals instead. The presets also no longer enable @trackunit/no-jest-mock-trackunit-react-core-hooks; set it to "error" in your config if your specs use Jest.

If your ESLint config or eslint-disable comments reference jest/* rules, ESLint now reports that the jest plugin or rule can't be found. Install eslint-plugin-jest and add its flat config to your ESLint config yourself, or remove those references. The plugin README lists what each preset includes.