Skip to content

fix(lint/js): correct the rule source of noReactNativeDeepImports#10344

Merged
siketyan merged 3 commits into
mainfrom
fix/GH-10123
May 12, 2026
Merged

fix(lint/js): correct the rule source of noReactNativeDeepImports#10344
siketyan merged 3 commits into
mainfrom
fix/GH-10123

Conversation

@siketyan

Copy link
Copy Markdown
Member

Summary

Closes #10123

Added a new rule source EslintReactNativeIntellicode to distinguish it from the official (facebook/react) one. Existing rules that are from the intellicode one are updated to use the new rule source.

Test Plan

N/A

Docs

N/A

@siketyan siketyan requested review from a team May 11, 2026 16:15
@siketyan siketyan self-assigned this May 11, 2026
@changeset-bot

changeset-bot Bot commented May 11, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 6de8a89

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 13 packages
Name Type
@biomejs/biome Patch
@biomejs/cli-win32-x64 Patch
@biomejs/cli-win32-arm64 Patch
@biomejs/cli-darwin-x64 Patch
@biomejs/cli-darwin-arm64 Patch
@biomejs/cli-linux-x64 Patch
@biomejs/cli-linux-arm64 Patch
@biomejs/cli-linux-x64-musl Patch
@biomejs/cli-linux-arm64-musl Patch
@biomejs/wasm-web Patch
@biomejs/wasm-bundler Patch
@biomejs/wasm-nodejs Patch
@biomejs/backend-jsonrpc Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions github-actions Bot added A-Linter Area: linter L-JavaScript Language: JavaScript and super languages labels May 11, 2026
@coderabbitai

coderabbitai Bot commented May 11, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack
No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: e2eb8b23-0900-4093-a7fa-fe9a2c426392

📥 Commits

Reviewing files that changed from the base of the PR and between c158d16 and d48cb0e.

📒 Files selected for processing (1)
  • .changeset/seven-cats-stay.md
✅ Files skipped from review due to trivial changes (1)
  • .changeset/seven-cats-stay.md

Walkthrough

This PR adds a new RuleSource variant EslintReactNativeIntellicode, updates Display/as_rule_name/namespace/to_rule_url handling to distinguish Intellicode vs the official React Native plugin, and switches three React Native lint rules to use the Intellicode variant. A changeset documents a patch release and fixes the noReactNativeDeepImports source mapping (issue #10123).

Possibly related PRs

  • biomejs/biome#9871: Modifies the same RuleSource enum and trait implementations to add new ESLint plugin source variants.
  • biomejs/biome#10023: Introduced the noReactNativeDeepImports rule referenced by issue #10123 that this changeset documents.
  • biomejs/biome#10033: Added UseReactNativePlatformComponents, which this PR updates to reference the Intellicode variant.

Suggested reviewers

  • ematipico
  • dyc3
🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title directly addresses the main issue: correcting the rule source mapping for noReactNativeDeepImports to reference the proper upstream Intellicode plugin.
Description check ✅ Passed The description explains the core change—adding EslintReactNativeIntellicode and updating affected rules—and directly references the resolved issue #10123.
Linked Issues check ✅ Passed The PR successfully adds the EslintReactNativeIntellicode enum variant and updates four React Native rules to use the correct source, resolving issue #10123's requirement for proper rule source attribution.
Out of Scope Changes check ✅ Passed All changes are scoped to the stated objective: introducing the new rule source variant and updating existing Intellicode-sourced rules. No extraneous modifications detected.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/GH-10123

Tip

💬 Introducing Slack Agent: The best way for teams to turn conversations into code.

Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.

  • Generate code and open pull requests
  • Plan features and break down work
  • Investigate incidents and troubleshoot customer tickets together
  • Automate recurring tasks and respond to alerts with triggers
  • Summarize progress and report instantly

Built for teams:

  • Shared memory across your entire org—no repeating context
  • Per-thread sandboxes to safely plan and execute work
  • Governance built-in—scoped access, auditability, and budget controls

One agent for your entire SDLC. Right inside Slack.

👉 Get started


Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.changeset/seven-cats-stay.md:
- Line 5: Update the changeset entry text to link the referenced rule name to
the Biome docs by replacing the plain rule name `noReactNativeDeepImports` with
the required website link format; use the markdown link format
[`noReactNativeDeepImports`](https://biomejs.dev/linter/rules/noReactNativeDeepImports/)
so the changeset line reads something like "Corrected the
[`noReactNativeDeepImports`](https://biomejs.dev/linter/rules/noReactNativeDeepImports/)
source rule..." to satisfy the documentation-linking guideline.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: a14eeb08-02f1-4079-a85a-c4ca9b21abbb

📥 Commits

Reviewing files that changed from the base of the PR and between d50546a and c158d16.

📒 Files selected for processing (5)
  • .changeset/seven-cats-stay.md
  • crates/biome_analyze/src/rule.rs
  • crates/biome_js_analyze/src/lint/nursery/no_react_native_literal_colors.rs
  • crates/biome_js_analyze/src/lint/nursery/no_react_native_raw_text.rs
  • crates/biome_js_analyze/src/lint/nursery/use_react_native_platform_components.rs

Comment thread .changeset/seven-cats-stay.md Outdated
siketyan and others added 2 commits May 12, 2026 01:19
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
@github-actions github-actions Bot added the A-CLI Area: CLI label May 11, 2026
@codspeed-hq

codspeed-hq Bot commented May 11, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 178 untouched benchmarks
⏩ 71 skipped benchmarks1


Comparing fix/GH-10123 (6de8a89) with main (b6d9e57)

Open in CodSpeed

Footnotes

  1. 71 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@siketyan siketyan merged commit b30208c into main May 12, 2026
37 checks passed
@siketyan siketyan deleted the fix/GH-10123 branch May 12, 2026 00:15
@github-actions github-actions Bot mentioned this pull request May 12, 2026
OIRNOIR pushed a commit to OIRNOIR/YouTube-Helper-Client that referenced this pull request Jun 3, 2026
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [@biomejs/biome](https://biomejs.dev) ([source](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome)) | imports | patch | [`2.4.15` -> `2.4.16`](https://renovatebot.com/diffs/npm/@biomejs%2fbiome/2.4.15/2.4.16) |

---

### Release Notes

<details>
<summary>biomejs/biome (@&#8203;biomejs/biome)</summary>

### [`v2.4.16`](https://github.com/biomejs/biome/blob/HEAD/packages/@&#8203;biomejs/biome/CHANGELOG.md#2416)

[Compare Source](https://github.com/biomejs/biome/compare/@biomejs/biome@2.4.15...@biomejs/biome@2.4.16)

##### Patch Changes

- [#&#8203;10329](biomejs/biome#10329) [`ef764d5`](biomejs/biome@ef764d5) Thanks [@&#8203;Conaclos](https://github.com/Conaclos)! - Fixed an issue where diagnostics showed an incorrect location in Astro files.

- [#&#8203;10363](biomejs/biome#10363) [`50aa415`](biomejs/biome@50aa415) Thanks [@&#8203;dyc3](https://github.com/dyc3)! - Fixed HTML formatting for a case where comments could cause the formatter to split up a closing tag, which would cause the resulting HTML to be syntactically invalid.

  Input:

  ```html
  <span
    ><!-- 1
  --><span>a</span
    ><!-- 2
  --><span>b</span
    ><!-- 3
  --></span>
  ```

  Output:

  ```diff
    <span
  	  ><!-- 1
  - --> <span>a</span<!-- 2
  - --> ><span>b</span><!-- 3
  + --><span>a</span><!-- 2
  + --><span>b</span><!-- 3
    --></span
    >
  ```

- [#&#8203;10465](biomejs/biome#10465) [`0c718da`](biomejs/biome@0c718da) Thanks [@&#8203;dfedoryshchev](https://github.com/dfedoryshchev)! - Fixed diagnostics emitted by the `noUntrustedLicenses` rule.

- [#&#8203;10358](biomejs/biome#10358) [`05c2617`](biomejs/biome@05c2617) Thanks [@&#8203;dyc3](https://github.com/dyc3)! - Fixed [#&#8203;10356](biomejs/biome#10356): `biome rage --linter` now displays rules enabled through linter domains in the enabled rules list.

- [#&#8203;10300](biomejs/biome#10300) [`950247c`](biomejs/biome@950247c) Thanks [@&#8203;dyc3](https://github.com/dyc3)! - Fixed [#&#8203;10265](biomejs/biome#10265): Svelte function bindings such as `bind:value={get, set}` are now parsed more precisely, so [`noCommaOperator`](https://biomejs.dev/linter/rules/no-comma-operator/) won't emit false positives for that syntax anymore.

- [#&#8203;9786](biomejs/biome#9786) [`e71f584`](biomejs/biome@e71f584) Thanks [@&#8203;MeGaNeKoS](https://github.com/MeGaNeKoS)! - Fixed [#&#8203;8480](biomejs/biome#8480): [`useDestructuring`](https://biomejs.dev/linter/rules/use-destructuring/) now provides `variableDeclarator` and `assignmentExpression` options to control which contexts enforce destructuring, matching ESLint's `prefer-destructuring` configuration. Both default to `{array: true, object: true}`. The diagnostic for object destructuring in assignment expressions now instructs users to wrap the assignment in parentheses.

- [#&#8203;10425](biomejs/biome#10425) [`1948b72`](biomejs/biome@1948b72) Thanks [@&#8203;sjh9714](https://github.com/sjh9714)! - Fixed [#&#8203;10244](biomejs/biome#10244): The `useOptionalChain` rule now detects negated guard inequality chains like `!foo || foo.bar !== "x"`.

- [#&#8203;10442](biomejs/biome#10442) [`001f94f`](biomejs/biome@001f94f) Thanks [@&#8203;ematipico](https://github.com/ematipico)! - Fixed [#&#8203;10411](biomejs/biome#10411): [`noMisusedPromises`](https://biomejs.dev/linter/rules/no-misused-promises/) no longer causes a stack overflow when a nested function returns an object with shorthand properties that shadow destructured variables from an outer scope.

- [#&#8203;10318](biomejs/biome#10318) [`9b1577f`](biomejs/biome@9b1577f) Thanks [@&#8203;dyc3](https://github.com/dyc3)! - Added support for `formatter.trailingCommas` in overrides. This option was previously available in the top-level formatter configuration but missing from formatter overrides.

- [#&#8203;10319](biomejs/biome#10319) [`2e37709`](biomejs/biome@2e37709) Thanks [@&#8203;dyc3](https://github.com/dyc3)! - Fixed Vue and Svelte formatting for standalone interpolations in inline elements. Biome now preserves existing newlines in cases like:

  ```diff
  - <span> {{ value }} </span>
  + <span>
  +   {{ value }}
  + </span>
  ```

- [#&#8203;10365](biomejs/biome#10365) [`0a58eb0`](biomejs/biome@0a58eb0) Thanks [@&#8203;Netail](https://github.com/Netail)! - Fixed [#&#8203;10361](biomejs/biome#10361): [`noUnusedFunctionParameters`](https://biomejs.dev/linter/rules/no-unused-function-parameters/) now mentions the parameter name in the diagnostic.

- [#&#8203;10439](biomejs/biome#10439) [`df6b867`](biomejs/biome@df6b867) Thanks [@&#8203;denbezrukov](https://github.com/denbezrukov)! - Fixed CSS and SCSS formatting for comments around declaration colons so comments between property names, colons, and values stay at the same boundary as Prettier.

  ```diff
   .selector {
  -  color: /* red, */
  -    blue;
  +  color: /* red, */ blue;
   }
  ```

- [#&#8203;10344](biomejs/biome#10344) [`b30208c`](biomejs/biome@b30208c) Thanks [@&#8203;siketyan](https://github.com/siketyan)! - Fixed [`#10123`](biomejs/biome#10123): Corrected the [`noReactNativeDeepImports`](https://biomejs.dev/linter/rules/no-react-native-deep-imports/) source rule to point to the proper upstream rule, so users can migrate from the original rule correctly.

- [#&#8203;10328](biomejs/biome#10328) [`b59133f`](biomejs/biome@b59133f) Thanks [@&#8203;dyc3](https://github.com/dyc3)! - Fixed [#&#8203;10309](biomejs/biome#10309): Biome no longer adds newlines to Astro frontmatter when linter or assist `--write` mode is enabled.

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xOTUuMiIsInVwZGF0ZWRJblZlciI6IjQzLjE5NS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Reviewed-on: https://git.oirnoir.dev/OIRNOIR/YouTube-Helper-Client/pulls/5
OIRNOIR pushed a commit to OIRNOIR/YouTube-Helper-Server that referenced this pull request Jun 3, 2026
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [@biomejs/biome](https://biomejs.dev) ([source](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome)) | imports | patch | [`2.4.15` -> `2.4.16`](https://renovatebot.com/diffs/npm/@biomejs%2fbiome/2.4.15/2.4.16) |

---

### Release Notes

<details>
<summary>biomejs/biome (@&#8203;biomejs/biome)</summary>

### [`v2.4.16`](https://github.com/biomejs/biome/blob/HEAD/packages/@&#8203;biomejs/biome/CHANGELOG.md#2416)

[Compare Source](https://github.com/biomejs/biome/compare/@biomejs/biome@2.4.15...@biomejs/biome@2.4.16)

##### Patch Changes

- [#&#8203;10329](biomejs/biome#10329) [`ef764d5`](biomejs/biome@ef764d5) Thanks [@&#8203;Conaclos](https://github.com/Conaclos)! - Fixed an issue where diagnostics showed an incorrect location in Astro files.

- [#&#8203;10363](biomejs/biome#10363) [`50aa415`](biomejs/biome@50aa415) Thanks [@&#8203;dyc3](https://github.com/dyc3)! - Fixed HTML formatting for a case where comments could cause the formatter to split up a closing tag, which would cause the resulting HTML to be syntactically invalid.

  Input:

  ```html
  <span
    ><!-- 1
  --><span>a</span
    ><!-- 2
  --><span>b</span
    ><!-- 3
  --></span>
  ```

  Output:

  ```diff
    <span
  	  ><!-- 1
  - --> <span>a</span<!-- 2
  - --> ><span>b</span><!-- 3
  + --><span>a</span><!-- 2
  + --><span>b</span><!-- 3
    --></span
    >
  ```

- [#&#8203;10465](biomejs/biome#10465) [`0c718da`](biomejs/biome@0c718da) Thanks [@&#8203;dfedoryshchev](https://github.com/dfedoryshchev)! - Fixed diagnostics emitted by the `noUntrustedLicenses` rule.

- [#&#8203;10358](biomejs/biome#10358) [`05c2617`](biomejs/biome@05c2617) Thanks [@&#8203;dyc3](https://github.com/dyc3)! - Fixed [#&#8203;10356](biomejs/biome#10356): `biome rage --linter` now displays rules enabled through linter domains in the enabled rules list.

- [#&#8203;10300](biomejs/biome#10300) [`950247c`](biomejs/biome@950247c) Thanks [@&#8203;dyc3](https://github.com/dyc3)! - Fixed [#&#8203;10265](biomejs/biome#10265): Svelte function bindings such as `bind:value={get, set}` are now parsed more precisely, so [`noCommaOperator`](https://biomejs.dev/linter/rules/no-comma-operator/) won't emit false positives for that syntax anymore.

- [#&#8203;9786](biomejs/biome#9786) [`e71f584`](biomejs/biome@e71f584) Thanks [@&#8203;MeGaNeKoS](https://github.com/MeGaNeKoS)! - Fixed [#&#8203;8480](biomejs/biome#8480): [`useDestructuring`](https://biomejs.dev/linter/rules/use-destructuring/) now provides `variableDeclarator` and `assignmentExpression` options to control which contexts enforce destructuring, matching ESLint's `prefer-destructuring` configuration. Both default to `{array: true, object: true}`. The diagnostic for object destructuring in assignment expressions now instructs users to wrap the assignment in parentheses.

- [#&#8203;10425](biomejs/biome#10425) [`1948b72`](biomejs/biome@1948b72) Thanks [@&#8203;sjh9714](https://github.com/sjh9714)! - Fixed [#&#8203;10244](biomejs/biome#10244): The `useOptionalChain` rule now detects negated guard inequality chains like `!foo || foo.bar !== "x"`.

- [#&#8203;10442](biomejs/biome#10442) [`001f94f`](biomejs/biome@001f94f) Thanks [@&#8203;ematipico](https://github.com/ematipico)! - Fixed [#&#8203;10411](biomejs/biome#10411): [`noMisusedPromises`](https://biomejs.dev/linter/rules/no-misused-promises/) no longer causes a stack overflow when a nested function returns an object with shorthand properties that shadow destructured variables from an outer scope.

- [#&#8203;10318](biomejs/biome#10318) [`9b1577f`](biomejs/biome@9b1577f) Thanks [@&#8203;dyc3](https://github.com/dyc3)! - Added support for `formatter.trailingCommas` in overrides. This option was previously available in the top-level formatter configuration but missing from formatter overrides.

- [#&#8203;10319](biomejs/biome#10319) [`2e37709`](biomejs/biome@2e37709) Thanks [@&#8203;dyc3](https://github.com/dyc3)! - Fixed Vue and Svelte formatting for standalone interpolations in inline elements. Biome now preserves existing newlines in cases like:

  ```diff
  - <span> {{ value }} </span>
  + <span>
  +   {{ value }}
  + </span>
  ```

- [#&#8203;10365](biomejs/biome#10365) [`0a58eb0`](biomejs/biome@0a58eb0) Thanks [@&#8203;Netail](https://github.com/Netail)! - Fixed [#&#8203;10361](biomejs/biome#10361): [`noUnusedFunctionParameters`](https://biomejs.dev/linter/rules/no-unused-function-parameters/) now mentions the parameter name in the diagnostic.

- [#&#8203;10439](biomejs/biome#10439) [`df6b867`](biomejs/biome@df6b867) Thanks [@&#8203;denbezrukov](https://github.com/denbezrukov)! - Fixed CSS and SCSS formatting for comments around declaration colons so comments between property names, colons, and values stay at the same boundary as Prettier.

  ```diff
   .selector {
  -  color: /* red, */
  -    blue;
  +  color: /* red, */ blue;
   }
  ```

- [#&#8203;10344](biomejs/biome#10344) [`b30208c`](biomejs/biome@b30208c) Thanks [@&#8203;siketyan](https://github.com/siketyan)! - Fixed [`#10123`](biomejs/biome#10123): Corrected the [`noReactNativeDeepImports`](https://biomejs.dev/linter/rules/no-react-native-deep-imports/) source rule to point to the proper upstream rule, so users can migrate from the original rule correctly.

- [#&#8203;10328](biomejs/biome#10328) [`b59133f`](biomejs/biome@b59133f) Thanks [@&#8203;dyc3](https://github.com/dyc3)! - Fixed [#&#8203;10309](biomejs/biome#10309): Biome no longer adds newlines to Astro frontmatter when linter or assist `--write` mode is enabled.

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xOTUuMiIsInVwZGF0ZWRJblZlciI6IjQzLjE5NS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Reviewed-on: https://git.oirnoir.dev/OIRNOIR/YouTube-Helper-Server/pulls/13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-CLI Area: CLI A-Linter Area: linter L-JavaScript Language: JavaScript and super languages

Projects

None yet

Development

Successfully merging this pull request may close these issues.

💅 noReactNativeDeepImports's rule source does not exist

3 participants