Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
152 changes: 76 additions & 76 deletions Cargo.lock

Large diffs are not rendered by default.

74 changes: 37 additions & 37 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -16,48 +16,48 @@ path = "codegen/src/lib.rs"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
anyhow = "1.0.100"
biome_analyze = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db", features = [
biome_analyze = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5", features = [
"schema",
] }
biome_cli = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_configuration = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db", features = [
biome_cli = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_configuration = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5", features = [
"schema",
] }
biome_console = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_css_analyze = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_css_parser = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_css_semantic = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_css_syntax = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_deserialize = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_diagnostics = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_flags = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_formatter = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_fs = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_graphql_analyze = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_graphql_parser = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_graphql_syntax = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_html_analyze = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_html_parser = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_html_syntax = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_js_analyze = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_js_formatter = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_js_parser = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_js_syntax = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_json_analyze = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_json_factory = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_json_formatter = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_json_parser = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_json_syntax = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_module_graph = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_project_layout = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_rowan = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_ruledoc_utils = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_service = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_string_case = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_test_utils = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_text_edit = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db" }
biome_console = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_css_analyze = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_css_parser = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_css_semantic = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_css_syntax = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_deserialize = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_diagnostics = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_flags = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_formatter = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_fs = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_graphql_analyze = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_graphql_parser = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_graphql_syntax = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_html_analyze = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_html_parser = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_html_syntax = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_js_analyze = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_js_formatter = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_js_parser = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_js_syntax = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_json_analyze = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_json_factory = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_json_formatter = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_json_parser = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_json_syntax = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_module_graph = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_project_layout = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_rowan = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_ruledoc_utils = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_service = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_string_case = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_test_utils = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
biome_text_edit = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5" }
bpaf = { version = "0.9.20", features = ["docgen"] }
xtask_codegen = { git = "https://github.com/biomejs/biome.git", rev = "1dc8dc23e06af42af00330e2949db48e987909db", features = [
xtask_codegen = { git = "https://github.com/biomejs/biome.git", rev = "adcce82eaede7d2db2ef95f27a6109b2475595b5", features = [
"schema",
] }
# Needed to fix some weird dependency
Expand Down
9 changes: 8 additions & 1 deletion codegen/src/domains.rs
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ impl DocDomains {
writeln!(buffer, "## {name}")?;
writeln!(
buffer,
"This domain contains rules that perform project-level analysis. This includes our module graph for dependency resolution, as well as type information. When enabling rules that belong to this domain, Biome will scan the entire project. The scanning phase will have a performance impact on the linting process. See the documentation on our [scanner](/internals/architecture/#scanner) to learn more about the scanner."
"This domain contains rules that perform project-level analysis. This includes our module graph for dependency resolution. When enabling rules that belong to this domain, Biome will scan the entire project. The scanning phase will have a performance impact on the linting process. See the documentation on our [scanner](/internals/architecture/#scanner) to learn more about the scanner."
)?;
}
RuleDomain::Vue => {
Expand All @@ -123,6 +123,13 @@ impl DocDomains {
"Use this domain inside Turborepo projects. This domain enables rules that are specific to Turborepo projects."
)?;
}
RuleDomain::Types => {
writeln!(buffer, "## {name}")?;
writeln!(
buffer,
"This domain contains rules that perform project-level analysis. This includes our module graph for dependency resolution. When enabling rules that belong to this domain, Biome will scan the entire project, *and it will enable the inference engine to resolve and flat types*. The scanning phase will have a performance impact on the linting process. See the documentation on our [scanner](/internals/architecture/#scanner) to learn more about the scanner."
)?;
}
Comment on lines +126 to +132
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Minor wording issue: "flat types" should likely be "flatten types"

The phrase "resolve and flat types" on line 130 appears grammatically incorrect. Consider "resolve and flatten types" instead.

🔎 Proposed fix
                 RuleDomain::Types => {
                     writeln!(buffer, "## {name}")?;
                     writeln!(
                         buffer,
-                        "This domain contains rules that perform project-level analysis. This includes our module graph for dependency resolution. When enabling rules that belong to this domain, Biome will scan the entire project, *and it will enable the inference engine to resolve and flat types*. The scanning phase will have a performance impact on the linting process. See the documentation on our [scanner](/internals/architecture/#scanner) to learn more about the scanner."
+                        "This domain contains rules that perform project-level analysis. This includes our module graph for dependency resolution. When enabling rules that belong to this domain, Biome will scan the entire project, *and it will enable the inference engine to resolve and flatten types*. The scanning phase will have a performance impact on the linting process. See the documentation on our [scanner](/internals/architecture/#scanner) to learn more about the scanner."
                     )?;
                 }
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
RuleDomain::Types => {
writeln!(buffer, "## {name}")?;
writeln!(
buffer,
"This domain contains rules that perform project-level analysis. This includes our module graph for dependency resolution. When enabling rules that belong to this domain, Biome will scan the entire project, *and it will enable the inference engine to resolve and flat types*. The scanning phase will have a performance impact on the linting process. See the documentation on our [scanner](/internals/architecture/#scanner) to learn more about the scanner."
)?;
}
RuleDomain::Types => {
writeln!(buffer, "## {name}")?;
writeln!(
buffer,
"This domain contains rules that perform project-level analysis. This includes our module graph for dependency resolution. When enabling rules that belong to this domain, Biome will scan the entire project, *and it will enable the inference engine to resolve and flatten types*. The scanning phase will have a performance impact on the linting process. See the documentation on our [scanner](/internals/architecture/#scanner) to learn more about the scanner."
)?;
}
🤖 Prompt for AI Agents
In @codegen/src/domains.rs around lines 126-132, In the RuleDomain::Types
documentation string (the writeln! call that writes "This domain contains
rules..."), replace the incorrect phrase "resolve and flat types" with "resolve
and flatten types" so the sentence reads "and it will enable the inference
engine to resolve and flatten types"; update the string literal inside the
writeln! invocation accordingly.

#[allow(unreachable_patterns)]
domain => {
eprintln!("Undocumented domain: {domain:?}");
Expand Down
14 changes: 11 additions & 3 deletions codegen/src/lintdoc.rs
Original file line number Diff line number Diff line change
Expand Up @@ -730,12 +730,20 @@ fn generate_rule_content(rule_content: RuleContent) -> Result<(Vec<u8>, String,
}

let is_project_domain = meta.domains.iter().find(|d| **d == RuleDomain::Project);
let is_types_domain = meta.domains.iter().find(|d| **d == RuleDomain::Types);

if is_project_domain.is_some() {
if is_types_domain.is_some() {
writeln!(content, ":::note")?;
writeln!(
content,
"This rule belongs to the project domain. This means that its activation will activate the Biome Scanner, which might affect the performance. Read more about it in the [documentation page](/linter/domains#project)"
"This rule belongs to the types domain. This means that its activation will activate the Biome Scanner to scan the files of your project, and enable the type inference engine. Read more about it in the [documentation page](/linter/domains#types)"
)?;
writeln!(content, ":::")?;
} else if is_project_domain.is_some() {
writeln!(content, ":::note")?;
writeln!(
content,
"This rule belongs to the project domain. This means that its activation will activate the Biome Scanner to scan the files of your project. Read more about it in the [documentation page](/linter/domains#project)"
)?;
writeln!(content, ":::")?;
}
Expand Down Expand Up @@ -1843,7 +1851,7 @@ fn print_diagnostics_or_actions(
};

let options = AnalyzerOptions::default().with_file_path(test.file_path());
biome_html_analyze::analyze(&root, filter, &options, |signal| {
biome_html_analyze::analyze(&root, filter, &options, file_source, |signal| {
match to_print_kind {
ToPrintKind::Diagnostics => {
if let Some(mut diag) = signal.diagnostic() {
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
"@astrojs/starlight": "0.37.1",
"@biomejs/biome": "2.3.10",
"@biomejs/version-utils": "0.4.0",
"@biomejs/wasm-web": "https://pkg.pr.new/biomejs/biome/@biomejs/wasm-web@1dc8dc2",
"@biomejs/wasm-web": "https://pkg.pr.new/biomejs/biome/@biomejs/wasm-web@adcce82",
"@codemirror/lang-css": "6.3.1",
"@codemirror/lang-html": "6.4.11",
"@codemirror/lang-javascript": "6.2.4",
Expand Down
12 changes: 6 additions & 6 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

57 changes: 48 additions & 9 deletions src/content/docs/linter/domains.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ Rules that belong to the domain:
- [noDocumentImportInPage](/linter/rules/no-document-import-in-page) (recommended)
- [noHeadImportInDocument](/linter/rules/no-head-import-in-document) (recommended)
## Project
This domain contains rules that perform project-level analysis. This includes our module graph for dependency resolution, as well as type information. When enabling rules that belong to this domain, Biome will scan the entire project. The scanning phase will have a performance impact on the linting process. See the documentation on our [scanner](/internals/architecture/#scanner) to learn more about the scanner.
This domain contains rules that perform project-level analysis. This includes our module graph for dependency resolution. When enabling rules that belong to this domain, Biome will scan the entire project. The scanning phase will have a performance impact on the linting process. See the documentation on our [scanner](/internals/architecture/#scanner) to learn more about the scanner.
### Project activation
Enable the **recommended, non-nursery** rules of the domain:
```json title="biome.json" ins={3-5}
Expand Down Expand Up @@ -93,16 +93,8 @@ Rules that belong to the domain:
- [useImportExtensions](/linter/rules/use-import-extensions)
- [useJsonImportAttributes](/linter/rules/use-json-import-attributes)
- [noDeprecatedImports](/linter/rules/no-deprecated-imports) [(nursery)](/linter/#nursery)
- [noFloatingPromises](/linter/rules/no-floating-promises) [(nursery)](/linter/#nursery)
- [noImportCycles](/linter/rules/no-import-cycles) [(nursery)](/linter/#nursery)
- [noMisusedPromises](/linter/rules/no-misused-promises) [(nursery)](/linter/#nursery)
- [noUnnecessaryConditions](/linter/rules/no-unnecessary-conditions) [(nursery)](/linter/#nursery)
- [noUnresolvedImports](/linter/rules/no-unresolved-imports) [(nursery)](/linter/#nursery)
- [useArraySortCompare](/linter/rules/use-array-sort-compare) [(nursery)](/linter/#nursery)
- [useAwaitThenable](/linter/rules/use-await-thenable) [(nursery)](/linter/#nursery)
- [useExhaustiveSwitchCases](/linter/rules/use-exhaustive-switch-cases) [(nursery)](/linter/#nursery)
- [useFind](/linter/rules/use-find) [(nursery)](/linter/#nursery)
- [useRegexpExec](/linter/rules/use-regexp-exec) [(nursery)](/linter/#nursery)
## Qwik
Use this domain inside Qwik projects. This domain enables rules that are specific to Qwik projects.
### Qwik activation
Expand Down Expand Up @@ -354,6 +346,53 @@ Enabled when the following dependencies are declared:
### Turborepo rules
Rules that belong to the domain:
- [noUndeclaredEnvVars](/linter/rules/no-undeclared-env-vars) [(nursery)](/linter/#nursery)
## Types
This domain contains rules that perform project-level analysis. This includes our module graph for dependency resolution. When enabling rules that belong to this domain, Biome will scan the entire project, *and it will enable the inference engine to resolve and flat types*. The scanning phase will have a performance impact on the linting process. See the documentation on our [scanner](/internals/architecture/#scanner) to learn more about the scanner.
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Grammar issue: "flat types" should be "flatten types".

The phrase "resolve and flat types" contains a grammar error. It should read "resolve and flatten types" or "resolve and infer types".

Since this file is auto-generated, the fix needs to be applied in the source code at biomejs/biome repository, likely in src/codegen/src/domains.rs.

🤖 Prompt for AI Agents
In @src/content/docs/linter/domains.mdx around line 350, The generated sentence
contains a grammar bug: the phrase "resolve and flat types" should be changed to
"resolve and flatten types" (or "resolve and infer types"); update the template
or string in the code generator that emits the domain description by replacing
the literal "resolve and flat types" with "resolve and flatten types" (locate
the generator entry that produces the sentence—the template/constant that
includes "This domain contains rules that perform project-level analysis" in
your codegen module, e.g., the domains.rs generator function or template) so
regenerated docs include the corrected wording.

### Types activation
Enable the **recommended, non-nursery** rules of the domain:
```json title="biome.json" ins={3-5}
{
"linter": {
"domains": {
"types": "recommended"
}
}
}
```

:::note[No recommended rules]
Since all rules in this domain are nursery rules, no rules will be activated when using the "recommended" setting. Use "all" to enable all nursery rules in this domain.
:::
Enabled the **all** rules of the domain:
```json title="biome.json" ins={3-5}
{
"linter": {
"domains": {
"types": "all"
}
}
}
```
**Disable** all rules of the domain:
```json title="biome.json" ins={3-5}
{
"linter": {
"domains": {
"types": "none"
}
}
}
```
### Types rules
Rules that belong to the domain:
- [noFloatingPromises](/linter/rules/no-floating-promises) [(nursery)](/linter/#nursery)
- [noMisusedPromises](/linter/rules/no-misused-promises) [(nursery)](/linter/#nursery)
- [noUnnecessaryConditions](/linter/rules/no-unnecessary-conditions) [(nursery)](/linter/#nursery)
- [useArraySortCompare](/linter/rules/use-array-sort-compare) [(nursery)](/linter/#nursery)
- [useAwaitThenable](/linter/rules/use-await-thenable) [(nursery)](/linter/#nursery)
- [useExhaustiveSwitchCases](/linter/rules/use-exhaustive-switch-cases) [(nursery)](/linter/#nursery)
- [useFind](/linter/rules/use-find) [(nursery)](/linter/#nursery)
- [useRegexpExec](/linter/rules/use-regexp-exec) [(nursery)](/linter/#nursery)
## Vue
Use this domain inside Vue projects. This domain enables rules that are specific to Vue projects.
### Vue activation
Expand Down
Loading