diff --git a/.changeset/add-eslint-config-expo.md b/.changeset/add-eslint-config-expo.md deleted file mode 100644 index 078de13..0000000 --- a/.changeset/add-eslint-config-expo.md +++ /dev/null @@ -1,38 +0,0 @@ ---- -'@lyracom/eslint-config-expo': major ---- - -Add `@lyracom/eslint-config-expo`, Lyra's ESLint config for Expo React Native apps. - -Flat config (ESLint 9+) built on top of `eslint-config-expo` (React, React Hooks, -import resolution and TypeScript baseline tuned for Expo / React Native), with -`eslint-config-prettier` applied last so Prettier stays the single source of -truth for formatting. - -The package exports two named flat-config arrays: `lyraExpoConfig` (the main -config) and `reactCompilerRecommendedWarn` (optional, see below). - -On top of the Expo baseline it adds a lean house-rules layer (all `warn` during -migration unless noted otherwise): - -- The `@typescript-eslint` **recommended** preset, layered before Expo (so Expo's - RN-specific tuning still wins) and downgraded to `warn`. -- Type-aware `@typescript-eslint/no-deprecated` (requiring `typescript` + a - tsconfig), replacing the archived `eslint-plugin-deprecation`. -- `@typescript-eslint/no-floating-promises` and `@typescript-eslint/no-misused-promises` - are explicitly disabled: runtime monitoring handles unhandled failures, and - intentional fire-and-forget calls use `void` where appropriate. -- `@typescript-eslint/no-empty-function` (allowing empty arrow functions, since - they're an idiomatic no-op default in React Contexts). -- `prefer-promise-reject-errors` and `react/display-name` left off (noisy in RN). -- `react/self-closing-comp` enabled as an **error** for consistent JSX (`` - instead of ``). -- Type-aware `eslint-plugin-import` rules disabled where redundant with - TypeScript and expensive to run: `import/namespace`, - `import/no-named-as-default-member`, `import/no-unresolved`. -- Bug rules ESLint 10 promotes to recommended, enabled early on v9: - `no-unassigned-vars`, `no-useless-assignment`, `preserve-caught-error`. -- React Compiler-oriented Hooks rules are enabled by the Expo preset. Projects - migrating gradually can use the opt-in - `reactCompilerRecommendedWarn` named preset to downgrade them all to warnings - with one config spread. diff --git a/.changeset/bump-prettier-import-plugin.md b/.changeset/bump-prettier-import-plugin.md deleted file mode 100644 index ab7935b..0000000 --- a/.changeset/bump-prettier-import-plugin.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@lyracom/prettier-config': major ---- - -Require `@trivago/prettier-plugin-sort-imports` v6 as a peer dependency. diff --git a/packages/eslint-config-expo/CHANGELOG.md b/packages/eslint-config-expo/CHANGELOG.md new file mode 100644 index 0000000..c8773d0 --- /dev/null +++ b/packages/eslint-config-expo/CHANGELOG.md @@ -0,0 +1,40 @@ +# @lyracom/eslint-config-expo + +## 1.0.0 + +### Major Changes + +- 80c1ee3: Add `@lyracom/eslint-config-expo`, Lyra's ESLint config for Expo React Native apps. + + Flat config (ESLint 9+) built on top of `eslint-config-expo` (React, React Hooks, + import resolution and TypeScript baseline tuned for Expo / React Native), with + `eslint-config-prettier` applied last so Prettier stays the single source of + truth for formatting. + + The package exports two named flat-config arrays: `lyraExpoConfig` (the main + config) and `reactCompilerRecommendedWarn` (optional, see below). + + On top of the Expo baseline it adds a lean house-rules layer (all `warn` during + migration unless noted otherwise): + + - The `@typescript-eslint` **recommended** preset, layered before Expo (so Expo's + RN-specific tuning still wins) and downgraded to `warn`. + - Type-aware `@typescript-eslint/no-deprecated` (requiring `typescript` + a + tsconfig), replacing the archived `eslint-plugin-deprecation`. + - `@typescript-eslint/no-floating-promises` and `@typescript-eslint/no-misused-promises` + are explicitly disabled: runtime monitoring handles unhandled failures, and + intentional fire-and-forget calls use `void` where appropriate. + - `@typescript-eslint/no-empty-function` (allowing empty arrow functions, since + they're an idiomatic no-op default in React Contexts). + - `prefer-promise-reject-errors` and `react/display-name` left off (noisy in RN). + - `react/self-closing-comp` enabled as an **error** for consistent JSX (`` + instead of ``). + - Type-aware `eslint-plugin-import` rules disabled where redundant with + TypeScript and expensive to run: `import/namespace`, + `import/no-named-as-default-member`, `import/no-unresolved`. + - Bug rules ESLint 10 promotes to recommended, enabled early on v9: + `no-unassigned-vars`, `no-useless-assignment`, `preserve-caught-error`. + - React Compiler-oriented Hooks rules are enabled by the Expo preset. Projects + migrating gradually can use the opt-in + `reactCompilerRecommendedWarn` named preset to downgrade them all to warnings + with one config spread. diff --git a/packages/eslint-config-expo/package.json b/packages/eslint-config-expo/package.json index b85058a..cf5ab11 100644 --- a/packages/eslint-config-expo/package.json +++ b/packages/eslint-config-expo/package.json @@ -1,6 +1,6 @@ { "name": "@lyracom/eslint-config-expo", - "version": "0.0.0", + "version": "1.0.0", "description": "Lyra's ESLint config for Expo React Native apps", "license": "MIT", "author": "Lyra (https://www.lyra.com)", diff --git a/packages/prettier-config/CHANGELOG.md b/packages/prettier-config/CHANGELOG.md index 0128d04..63d3ad0 100644 --- a/packages/prettier-config/CHANGELOG.md +++ b/packages/prettier-config/CHANGELOG.md @@ -1,5 +1,11 @@ # @lyracom/prettier-config +## 7.0.0 + +### Major Changes + +- 80c1ee3: Require `@trivago/prettier-plugin-sort-imports` v6 as a peer dependency. + ## 6.0.0 ### Major Changes diff --git a/packages/prettier-config/package.json b/packages/prettier-config/package.json index f57ca69..fdc6ac2 100644 --- a/packages/prettier-config/package.json +++ b/packages/prettier-config/package.json @@ -1,6 +1,6 @@ { "name": "@lyracom/prettier-config", - "version": "6.0.0", + "version": "7.0.0", "description": "Lyra's Prettier config", "license": "MIT", "author": "Lyra (https://www.lyra.com)",