Conversation
🦋 Changeset detectedLatest commit: 6b1a21f The changes in this PR will be included in the next version bump. This PR includes changesets to release 14 packages
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 |
WalkthroughThis PR promotes 21 nursery linting rules to stable groups—Correctness, Suspicious, Complexity, and Style—each assigned appropriate default severity levels (Error, Warning, or Information). The changes update lint rule declarations across multiple crates (JavaScript, GraphQL, CSS, HTML) to reflect the new groupings, reorganise test configuration files, and remove the ROME_CHANGELOG.md file. Possibly related PRs
Suggested reviewers
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
🧪 Generate unit tests (beta)
⚔️ Resolve merge conflicts (beta)
No actionable comments were generated in the recent review. 🎉 Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
crates/biome_js_analyze/src/lint/nursery/use_explicit_type.rs (1)
324-335:⚠️ Potential issue | 🟡 MinorAvoid marking this nursery rule as WIP unless it’s intentional.
Adding
issue_numbermakes the rule appear work‑in‑progress in diagnostics/website. If this isn’t explicitly WIP or tracked for external observers, please drop it (or add a short rationale in the PR).
Based on learnings, “In Rust lint rules under the nursery category, the issue_number field in declare_lint_rule! is optional and should not be added unless there is a compelling reason.”🔧 Suggested change
- issue_number: Some("2017"),
🤖 Fix all issues with AI agents
In @.changeset/promote-nursery-rules-to-stable.md:
- Line 5: The headline "Promoted 24 nursery rules to stable groups." is
inconsistent with the enumerated lists that sum to 22 (9+8+3+2); either update
the headline to "Promoted 22 nursery rules to stable groups." or add the two
missing rule entries into the lists so the totals match. Locate the sentence
"Promoted 24 nursery rules to stable groups." in
.changeset/promote-nursery-rules-to-stable.md and either change the numeric
count or append the two missing rule names to the appropriate group lists so the
arithmetic (9+8+3+2 or revised group totals) equals the headline, and ensure any
summary or changelog metadata reflects the corrected total.
Conaclos
left a comment
There was a problem hiding this comment.
Have you taken care of reviewing the severity of each rule ?
Also, should we rename noDuplicateDependencies into noDuplicatePackageJsonDependencies?
|
@Conaclos |
Not really. You're more than welcome to provide some suggestions |
I was thinking about future rules for |
|
I'm also not a fan of lengthy names. IMO, the word "dependencies" implies that the rule is talking about package.json, so |
|
I pushed a commit that sets explicitly the severity level of the promoted rules. Here some thinkings / question:
|
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In
`@crates/biome_js_analyze/src/lint/correctness/no_vue_data_object_declaration.rs`:
- Line 106: The rule "no_vue_data_object_declaration" in
crates/biome_js_analyze/src/lint/correctness/no_vue_data_object_declaration.rs
currently sets severity to Severity::Warning; update that severity to
Severity::Error so the correctness rule aligns with the contributing guidelines
and other Vue correctness rules (e.g., noVueSetupPropsReactivityLoss,
noVueReservedKeys). Locate the severity: Severity::Warning entry in the rule
definition and change it to Severity::Error.
crates/biome_js_analyze/src/lint/correctness/no_vue_data_object_declaration.rs
Outdated
Show resolved
Hide resolved
|
@Conaclos please update the changset to reflect your changes. Plus you must update the snapshots too. You also changed the severity of other rules weren't promoted. Why that? |
Only one. However, this doesn't change its severity level because it matched the default one. Anyway I reverted this change. I had to fix a test that made the compilation fails. Strangely the CI didn't fail. This it must skip some tests. |
Thank you. It was misleading and it doesn't make much sense to change it if there's a default already |
7f08221 to
1053073
Compare
Merging this PR will not alter performance
Comparing Footnotes
|
|
I demoted noShadow |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In @.changeset/promote-nursery-rules-to-stable.md:
- Around line 17-20: The changeset text incorrectly states the default severity
for noVueDataObjectDeclaration as `warn`—update the description to `error` since
the rule implementation omits an explicit severity and the macro defaults to
`error`; also verify noNextAsyncClientComponent: if its severity was
intentionally set to `warn` in the rule implementation keep the changeset note
as-is, otherwise change its listed default to `error` to match the guideline
that correctness rules default to `error` (refer to the rule names
noVueDataObjectDeclaration and noNextAsyncClientComponent when locating and
editing the changeset text).
🧹 Nitpick comments (1)
.changeset/promote-nursery-rules-to-stable.md (1)
23-24: Optional: Consider adding a comma for readability."Vue 3 setup which causes" could read slightly better as "Vue 3 setup, which causes" — but this is purely a stylistic nit.
📝 Suggested tweak
-- [`noVueSetupPropsReactivityLoss`](https://biomejs.dev/linter/rules/no-vue-setup-props-reactivity-loss/). The rule reports destructuring of props in Vue 3 setup which causes reactivity loss. +- [`noVueSetupPropsReactivityLoss`](https://biomejs.dev/linter/rules/no-vue-setup-props-reactivity-loss/). The rule reports destructuring of props in Vue 3 setup, which causes reactivity loss.
|
For some reason, the code in |
Summary
This PR promotes various rules to stable. I used the help of AI to create a plan and run the scripts for moving a rule.
Test Plan
Green CI
Docs
Not needed