You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
chore(lint): drop @react-native/eslint-config, bump @shopify/flash-list
Two related peer-warning fixes:
1) @shopify/flash-list -- examples/ExpoMessaging pinned 2.0.2 while
core's peerDependency required >=2.1.0. Bump every workspace to a
2.3.x baseline:
- examples/ExpoMessaging: 2.0.2 -> ^2.3.1
- examples/SampleApp: ^2.1.0 -> ^2.3.1
- package (peer): >=2.1.0 -> >=2.3.0
- package (devDep): ^2.1.0 -> ^2.3.1
2) @react-native/eslint-config (and its companion -plugin) -- drop
both entirely. The config contributed:
- No @react-native/* rules of its own (the plugin was unused).
- ~120 mostly-default rule levels that overlap with what we already
get from @eslint/js.recommended, tsEslint.configs.recommended and
eslintPluginReact.configs.flat.recommended.
- 43 globals, all but one (__DEV__) covered by the standard
`globals` package presets (browser + node + es2021).
The bundled @typescript-eslint/eslint-plugin@7.18.0 it dragged in
was also the source of an "eslint 9.39.4 doesn't satisfy ^8.57.0"
peer warning -- gone now that the package is removed.
What changes in our config:
- Replace dynamic globals/rules extraction with explicit values:
globals.browser + globals.node + globals.es2021 + __DEV__.
- Replace `...reactNativeRules` spread with explicit rule
declarations. Behavior preserved for everything our codebase
touches; a handful of recommended-preset rules
(no-constant-condition, no-empty, no-inner-declarations,
no-redeclare, react/display-name, react/no-unknown-property,
react/react-in-jsx-scope) are silenced explicitly to match the
prior state.
- Re-enable three rules at `warn` that the RN config had on and
that catch real footguns: react/no-unstable-nested-components,
no-bitwise, no-extend-native. Keeps existing eslint-disable
directives in example apps valid.
- Fix the React-version warning placement: settings are now a
standalone top-level config object so they cover
eslintPluginReact.configs.flat.recommended (previously they only
applied to the 'default' overlay, so the warning kept firing).
Adds `globals: ^17.6.0` to root devDependencies. Removes
@react-native/eslint-config and @react-native/eslint-plugin from root
devDependencies.
0 commit comments