Conversation
❌ Deploy Preview for biomejs failed. Why did it fail? →
|
Lunaria Status Overview🌕 This pull request will trigger status changes. Learn moreBy default, every PR changing files present in the Lunaria configuration's You can change this by adding one of the keywords present in the Tracked Files
Warnings reference
|
WalkthroughThis pull request introduces two new linter rules—useAwaitThenable and useDestructuring—with corresponding documentation pages and configuration references. The underlying analysis pipeline is refactored to use structured service objects (JsonAnalyzeServices and CssAnalyzerServices) instead of raw arguments in the codegen. Biome dependency crates are updated to a new git revision with expanded feature sets. URL redirects are added for the new rule documentation pages, and existing documentation for noBiomeFirstException is broadened to cover general glob pattern misuse guidance. Pre-merge checks and finishing touches❌ Failed checks (1 warning, 1 inconclusive)
✨ Finishing touches
🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
src/content/docs/linter/rules/no-biome-first-exception.mdx (1)
32-88: Tighten wording in heading and “files/folder” sentenceThe content and examples look spot on, but there are a couple of small text nits:
- The heading “Leading of negated patterns” reads a bit awkwardly; something like “Leading negated patterns” would be more natural.
- The sentence “declare the files/folder to include first, and then the files/folder to ignore” would read better as “files and folders” (or “files/folders”) in both places.
If you tweak those in the generator, the page will read much more smoothly.
🧹 Nitpick comments (3)
src/content/docs/linter/rules/use-await-thenable.mdx (1)
46-51: Optional wording polish in the limitation noteThe caution about only checking the global
Promiseis very helpful. If you fancy trimming the prose, you could change “At the moment, this rule only checks…” to “Currently, this rule only checks…”, which reads a touch leaner without changing the meaning.Pure bikeshedding; the rest of the page reads well and is technically clear.
src/content/docs/linter/javascript/rules.mdx (1)
202-204: New nursery rule entries are consistent; one tiny style nitThe two new nursery entries line up with the dedicated rule pages and domains, and the “not released yet” moon icon is the right call.
If you want to match the prevailing style in this table, consider adding a trailing full stop to the
useDestructuringdescription (“Require destructuring from arrays and/or objects.”).src/content/docs/linter/rules/use-destructuring.mdx (1)
18-41: Clarify the “Sources” phrasing and consider a small punctuation tweakThe rule description and examples are clear and mirror the intent of ESLint’s
prefer-destructuringnicely.Two minor wording nits you might want to adjust in the generator:
- “Sources: Same as [
prefer-destructuring]” could be softened to “Inspired by” or “Based on” to avoid implying exact behavioural equivalence now and in future.- For consistency with other docs, you might add a full stop to the description sentence “Require destructuring from arrays and/or objects.”
Both are purely editorial; the technical content looks solid.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (3)
Cargo.lockis excluded by!**/*.locksrc/components/generated/linter/NumberOfRules.astrois excluded by!**/generated/**src/playground/generated/lintRules.tsis excluded by!**/generated/**
📒 Files selected for processing (9)
Cargo.toml(1 hunks)codegen/src/lintdoc.rs(4 hunks)redirects.js(2 hunks)src/content/docs/linter/domains.mdx(1 hunks)src/content/docs/linter/javascript/rules.mdx(1 hunks)src/content/docs/linter/json/rules.mdx(1 hunks)src/content/docs/linter/rules/no-biome-first-exception.mdx(3 hunks)src/content/docs/linter/rules/use-await-thenable.mdx(1 hunks)src/content/docs/linter/rules/use-destructuring.mdx(1 hunks)
🧰 Additional context used
🪛 LanguageTool
src/content/docs/linter/rules/use-await-thenable.mdx
[style] ~46-~46: For conciseness, consider replacing this expression with an adverb.
Context: ..._ used on Promise values. :::caution At the moment, this rule only checks for instances of...
(AT_THE_MOMENT)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: test
🔇 Additional comments (7)
src/content/docs/linter/json/rules.mdx (1)
29-29: Description now matches the broader rule semanticsThe updated wording is clear, accurate, and aligned with the dedicated rule page. Nothing to change here.
src/content/docs/linter/domains.mdx (1)
101-101: Project-domain listing foruseAwaitThenablelooks consistentThe new entry is in the right domain, marked as nursery, and alphabetically slotted; it matches the dedicated rule docs.
redirects.js (1)
278-300: New redirects for camelCase rule URLs are correctBoth mappings (
useAwaitThenableanduseDestructuring) point to the expected kebab-case paths and fit neatly into the existing sorted list.codegen/src/lintdoc.rs (3)
19-19: LGTM!Necessary imports for the service object refactoring below.
Also applies to: 31-31
1656-1660: LGTM!Correctly constructs
JsonAnalyzeServiceswithconfiguration_source: None, appropriate for the codegen context where no custom configuration is being analysed.
1721-1723: LGTM!The semantic model construction and
CssAnalyzerServicesbuilder pattern usage are correct, enabling richer CSS analysis.Cargo.toml (1)
19-62: Verify git revision consistency and required API types.The AI summary references revision
e039f3b1...while the code showsd407efb8c650b9288f545efedd4b7d3f9783c8d1. Confirm which revision is correct and that it contains theCssAnalyzerServicesandJsonAnalyzeServicestypes required by the changes incodegen/src/lintdoc.rs.
Summary