test(fmt): improve ignored files#10068
Conversation
|
WalkthroughMany Prettier snapshot fixture files were removed across CSS and JavaScript formatter test suites. New Suggested labelsA-Formatter, L-CSS, L-JavaScript 🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
crates/biome_formatter_test/src/test_prettier_snapshot.rs (1)
94-107: Cache is path-blind, but safe in practice given hardcoded roots.The
OnceLock<Vec<String>>initialises from the first root_path only; however, because all callers pass compile-time constants, there's only ever one distinct root in a single test binary. The current implementation is fine, but it's not defensive. If you ever need to support dynamic roots or multiple formatter roots in one process, you'll want to either key the cache by root_path or skip caching altogether (the file is small).🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@crates/biome_formatter_test/src/test_prettier_snapshot.rs` around lines 94 - 107, The current static CACHE (OnceLock<Vec<String>>) is path-blind; change it to a path-keyed cache so different root_path values get distinct entries: replace CACHE with a static OnceLock<Mutex<HashMap<String, Vec<String>>>>, initialize it once, then in load_ignored_tests(root_path: &Utf8Path) lock the mutex, check the map for root_path.as_str(), and if missing read the file (path = root_path.join("../prettier_ignored_tests")), parse lines into a Vec<String>, insert it under the root key and return a reference or cloned Vec as needed; alternatively, if you prefer simplicity, remove the static cache entirely and have load_ignored_tests read and return a fresh Vec<String> each call. Ensure you update the function signature and callers accordingly (reference load_ignored_tests and CACHE in your edits).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@crates/biome_formatter_test/src/test_prettier_snapshot.rs`:
- Around line 94-107: The current static CACHE (OnceLock<Vec<String>>) is
path-blind; change it to a path-keyed cache so different root_path values get
distinct entries: replace CACHE with a static OnceLock<Mutex<HashMap<String,
Vec<String>>>>, initialize it once, then in load_ignored_tests(root_path:
&Utf8Path) lock the mutex, check the map for root_path.as_str(), and if missing
read the file (path = root_path.join("../prettier_ignored_tests")), parse lines
into a Vec<String>, insert it under the root key and return a reference or
cloned Vec as needed; alternatively, if you prefer simplicity, remove the static
cache entirely and have load_ignored_tests read and return a fresh Vec<String>
each call. Ensure you update the function signature and callers accordingly
(reference load_ignored_tests and CACHE in your edits).
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 2633720c-315a-4ebb-83c5-84e04bb3e042
⛔ Files ignored due to path filters (116)
crates/biome_css_formatter/tests/specs/prettier/css/atword/atword.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/front-matter/custom-parser.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/front-matter/embedded-language-formatting/yaml.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/front-matter/empty.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/postcss-8-improment/empty-props.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/postcss-8-improment/test.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-mixins.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-nested-props.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-nesting.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-simple-vars.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/yaml/comment_after.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/yaml/dirty.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/yaml/empty.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/yaml/empty_newlines.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/yaml/ignore.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/yaml/malformed-2.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/yaml/only_comments.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/yaml/with_comments.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/yaml/without-newline-after.css.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/css/yaml/yaml.css.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/arrays/tuple-and-record.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/arrows-bind/arrows-bind.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/arrows/tuple-and-record.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/async-do-expressions/async-do-expressions.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/async-do-expressions.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/decimal.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/do-expressions.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/export-default-from.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/function-bind.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-assertions-static.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-reflection.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/module-blocks.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/partial-application.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/pipeline-operator-fsharp.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/pipeline-operator-hack.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/pipeline-operator-minimal.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/record-tuple-record.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/record-tuple-tuple.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/throw-expressions.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/v8intrinsic.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/binary-expressions/tuple-and-record.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/await.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/bind_parens.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/long_name_method.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/method_chain.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/short_name_method.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/unary.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/chain-expression/new-expression.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/chain-expression/tagged-template-literals.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/class-extends/tuple-and-record.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/comments-closure-typecast/styled-components.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/comments-closure-typecast/tuple-and-record.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/comments-pipeline-own-line/pipeline_own_line.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/comments/tuple-and-record.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/arrow-params.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/async-arrow-params.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/nested-bindings.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/valid-multiple-bindings.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/do/call-arguments.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/do/do.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/explicit-resource-management/valid-module-block-top-level-await-using-binding.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/explicit-resource-management/valid-module-block-top-level-using-binding.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/export-default/escaped/default-escaped.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/export-default/export-default-from/export.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/function-single-destructuring/tuple-and-record.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/import-reflection/comments.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/import-reflection/import-reflection.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/last-argument-expansion/embed.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/method-chain/tuple-and-record.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/module-blocks/comments.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/module-blocks/module-blocks.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/module-blocks/range.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/module-blocks/worker.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-comments/comment-inside.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-comments/tagged.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/colons-after-substitutions.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/colons-after-substitutions2.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-11797.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-2883.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-5697.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-5961.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-9072.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/styled-components-multiple-expressions.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/styled-components.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/url.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/var.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/comment-tag.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/escape.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/expressions.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/graphql-tag.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/graphql.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/react-relay.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-html/html-template-literals.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-html/issue-10691.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-html/lit-html.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/multiparser-text/text.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/no-semi-babylon-extensions/no-semi.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/objects/expression.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/optional-chaining-assignment/valid-parenthesized.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/partial-application/test.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/pipeline-operator/block-comments.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/pipeline-operator/fsharp_style_pipeline_operator.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/pipeline-operator/hack_pipeline_operator.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/pipeline-operator/minimal_pipeline_operator.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/range/issue-7082.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/record/computed.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/record/destructuring.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/record/record.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/record/shorthand.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/record/spread.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/record/syntax.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/template-literals/css-prop.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/template-literals/styled-components-with-expressions.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/template-literals/styled-jsx-with-expressions.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/template-literals/styled-jsx.js.snapis excluded by!**/*.snapand included by**crates/biome_js_formatter/tests/specs/prettier/js/throw_expressions/throw_expression.js.snapis excluded by!**/*.snapand included by**
📒 Files selected for processing (184)
crates/biome_css_formatter/tests/specs/prettier/css/atword/atword.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/cursor/test.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/front-matter/custom-parser.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/front-matter/embedded-language-formatting/yaml.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/front-matter/empty.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/postcss-8-improment/empty-props.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/postcss-8-improment/test.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-mixins.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-nested-props.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-nested.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-nesting.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-simple-vars.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/yaml/comment_after.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/yaml/dirty.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/yaml/empty.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/yaml/empty_newlines.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/yaml/ignore.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/yaml/malformed-2.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/yaml/malformed.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/yaml/only_comments.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/yaml/with_comments.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/yaml/without-newline-after.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier/css/yaml/yaml.css.prettier-snapcrates/biome_css_formatter/tests/specs/prettier_ignored_testscrates/biome_formatter_test/src/diff_report.rscrates/biome_formatter_test/src/test_prettier_snapshot.rscrates/biome_graphql_formatter/tests/specs/prettier_ignored_testscrates/biome_html_formatter/tests/specs/prettier_ignored_testscrates/biome_js_formatter/tests/specs/prettier/js/arrays/tuple-and-record.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/arrows-bind/arrows-bind.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/arrows/tuple-and-record.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/async-do-expressions/async-do-expressions.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/async-do-expressions.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/async-generators.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/bigint.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/class-properties.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/class-static-block.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/decimal.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/decorator-auto-accessors.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/decorators.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/deferred-import-evaluation.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/destructuring-private.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/do-expressions.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/dynamic-import.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/explicit-resource-management.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/export-default-from.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/export-namespace-from.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/function-bind.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/function-sent.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-assertions-dynamic.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-assertions-static.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-attributes-dynamic.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-attributes-static.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-meta.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-reflection.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/jsx.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/logical-assignment-operators.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/module-blocks.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/module-string-names.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/nullish-coalescing-operator.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/numeric-separator.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/object-rest-spread.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/optional-catch-binding.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/optional-chaining-assignment.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/optional-chaining.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/partial-application.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/pipeline-operator-fsharp.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/pipeline-operator-hack.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/pipeline-operator-minimal.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/private-fields-in-in.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/private-methods.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/record-tuple-record.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/record-tuple-tuple.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/regex-v-flag.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/regexp-modifiers.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/source-phase-imports.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/throw-expressions.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/v8intrinsic.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/binary-expressions/tuple-and-record.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/await.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/bind_parens.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/long_name_method.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/method_chain.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/short_name_method.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/unary.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/chain-expression/new-expression.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/chain-expression/tagged-template-literals.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/class-extends/tuple-and-record.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/comments-closure-typecast/styled-components.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/comments-closure-typecast/tuple-and-record.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/comments-pipeline-own-line/pipeline_own_line.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/comments/tuple-and-record.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/deferred-import-evaluation/import-defer-attributes-declaration.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/deferred-import-evaluation/import-defer.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/arrow-params.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/assignment.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/async-arrow-params.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/bindings.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/for-lhs.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/nested-bindings.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/valid-multiple-bindings.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/do/call-arguments.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/do/do.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/dynamic-import/import-phase.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/dynamic-import/template-literal.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/explicit-resource-management/valid-module-block-top-level-await-using-binding.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/explicit-resource-management/valid-module-block-top-level-using-binding.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/export-default/escaped/default-escaped.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/export-default/export-default-from/export.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/function-single-destructuring/tuple-and-record.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/import-reflection/comments.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/import-reflection/import-reflection.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/last-argument-expansion/embed.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/method-chain/tuple-and-record.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/module-blocks/comments.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/module-blocks/module-blocks.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/module-blocks/non-module-blocks.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/module-blocks/range.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/module-blocks/worker.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-comments/comment-inside.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-comments/comments.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-comments/tagged.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/colons-after-substitutions.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/colons-after-substitutions2.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-11797.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-2636.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-2883.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-5697.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-5961.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-6259.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-8352.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-9072.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/styled-components-multiple-expressions.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/styled-components.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/url.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/var.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/comment-tag.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/definitions.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/escape.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/expressions.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/graphql-tag.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/graphql.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/invalid.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/react-relay.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-html/html-template-literals.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-html/issue-10691.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-html/language-comment/not-language-comment.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-html/lit-html.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-invalid/text.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-markdown/0-indent.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-markdown/codeblock.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-markdown/escape.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-markdown/issue-5021.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-markdown/markdown.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-markdown/single-line.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/multiparser-text/text.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/no-semi-babylon-extensions/no-semi.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/objects/expression.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/optional-chaining-assignment/valid-parenthesized.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/partial-application/test.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/pipeline-operator/block-comments.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/pipeline-operator/fsharp_style_pipeline_operator.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/pipeline-operator/hack_pipeline_operator.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/pipeline-operator/minimal_pipeline_operator.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/range/issue-7082.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/record/computed.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/record/destructuring.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/record/record.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/record/shorthand.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/record/spread.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/record/syntax.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/source-phase-imports/default-binding.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/source-phase-imports/import-source-attributes-declaration.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/source-phase-imports/import-source-attributes-expression.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/source-phase-imports/import-source-binding-from.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/source-phase-imports/import-source-binding-source.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/source-phase-imports/import-source-dynamic-import.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/source-phase-imports/import-source.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/template-literals/css-prop.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/template-literals/styled-components-with-expressions.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/template-literals/styled-jsx-with-expressions.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/template-literals/styled-jsx.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/throw_expressions/throw_expression.js.prettier-snapcrates/biome_js_formatter/tests/specs/prettier/js/tuple/destructuring.js.prettier-snap
💤 Files with no reviewable changes (145)
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/deferred-import-evaluation.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/export-namespace-from.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-attributes-dynamic.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/function-sent.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/pipeline-operator-hack.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/source-phase-imports.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/jsx.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-meta.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-reflection.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/regex-v-flag.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/module-string-names.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/decorators.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/optional-catch-binding.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/arrows/tuple-and-record.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/class-extends/tuple-and-record.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/optional-chaining-assignment.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/function-bind.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/module-blocks.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/record-tuple-tuple.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/last-argument-expansion/embed.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/import-reflection/import-reflection.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/dynamic-import/import-phase.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/front-matter/empty.css.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/yaml/dirty.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-assertions-dynamic.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/yaml/malformed-2.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/do-expressions.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/cursor/test.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/record-tuple-record.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/export-default-from.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/await.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-assertions-static.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/bindings.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/module-blocks/range.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/yaml/without-newline-after.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/logical-assignment-operators.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/long_name_method.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/atword/atword.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/decimal.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/yaml/with_comments.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/pipeline-operator-minimal.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/binary-expressions/tuple-and-record.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/front-matter/custom-parser.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-comments/comment-inside.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/class-static-block.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/async-do-expressions.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/import-reflection/comments.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-comments/comments.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/throw-expressions.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/private-methods.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/definitions.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/pipeline-operator-fsharp.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/postcss-8-improment/test.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/unary.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/valid-multiple-bindings.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/short_name_method.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/explicit-resource-management.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/deferred-import-evaluation/import-defer-attributes-declaration.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/deferred-import-evaluation/import-defer.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/async-generators.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/explicit-resource-management/valid-module-block-top-level-using-binding.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/arrow-params.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/decorator-auto-accessors.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/yaml/ignore.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/export-default/escaped/default-escaped.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/bind_parens.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/chain-expression/new-expression.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/destructuring-private.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/url.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/for-lhs.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-nested-props.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/partial-application.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-nested.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/dynamic-import/template-literal.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/yaml/yaml.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/method-chain/tuple-and-record.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/async-arrow-params.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/explicit-resource-management/valid-module-block-top-level-await-using-binding.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/assignment.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/arrows-bind/arrows-bind.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/module-blocks/comments.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/import-attributes-static.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/bind-expressions/method_chain.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/export-default/export-default-from/export.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/module-blocks/worker.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/async-do-expressions/async-do-expressions.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/module-blocks/non-module-blocks.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/optional-chaining.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/react-relay.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-nesting.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-html/html-template-literals.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-8352.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/graphql.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/do/call-arguments.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-markdown/0-indent.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/comments/tuple-and-record.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/var.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/postcss-8-improment/empty-props.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/destructuring-private-fields/nested-bindings.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/comments-closure-typecast/styled-components.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-9072.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-mixins.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/nullish-coalescing-operator.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/colons-after-substitutions.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-html/issue-10691.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-2883.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/v8intrinsic.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-invalid/text.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/styled-components-multiple-expressions.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/escape.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/comments-closure-typecast/tuple-and-record.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/numeric-separator.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/module-blocks/module-blocks.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-5961.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/invalid.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/bigint.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/regexp-modifiers.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-6259.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/colons-after-substitutions2.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-html/lit-html.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/graphql-tag.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/do/do.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/comments-pipeline-own-line/pipeline_own_line.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-11797.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/yaml/only_comments.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/function-single-destructuring/tuple-and-record.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/comment-tag.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/object-rest-spread.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/dynamic-import.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-html/language-comment/not-language-comment.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-2636.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/front-matter/embedded-language-formatting/yaml.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/private-fields-in-in.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/yaml/empty_newlines.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-comments/tagged.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/postcss-plugins/postcss-simple-vars.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/arrays/tuple-and-record.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/yaml/empty.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-graphql/expressions.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/yaml/comment_after.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/issue-5697.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/babel-plugins/class-properties.js.prettier-snap
- crates/biome_css_formatter/tests/specs/prettier/css/yaml/malformed.css.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/multiparser-css/styled-components.js.prettier-snap
- crates/biome_js_formatter/tests/specs/prettier/js/chain-expression/tagged-template-literals.js.prettier-snap
There was a problem hiding this comment.
🧹 Nitpick comments (1)
crates/biome_formatter_test/src/check_reformat.rs (1)
143-149: Consider extracting a tiny helper for diff serialisation.This block duplicates the same
Vec<u8> -> unified_diff -> UTF-8 Stringflow used above; a small helper would keep future tweaks in one place.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@crates/biome_formatter_test/src/check_reformat.rs` around lines 143 - 149, Extract the Vec<u8> -> unified_diff -> UTF-8 String serialization into a small helper (e.g. render_unified_diff) and replace the duplicated block: call render_unified_diff(pretty_reformat_ir, pretty_input_ir, "re-formatted IR", "formatted IR") instead of manually creating buf and invoking similar::TextDiff::from_lines(...).unified_diff().header(...).to_writer(&mut buf).unwrap(); then String::from_utf8(buf).unwrap(). Ensure the helper accepts the two text slices and header labels, performs the to_writer on an internal Vec<u8>, converts with String::from_utf8, and returns the String (or Result<String, _> if you prefer preserving error handling), and update both places that currently create buf and call similar::TextDiff::from_lines/unified_diff/to_writer/String::from_utf8 to use it.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@crates/biome_formatter_test/src/check_reformat.rs`:
- Around line 143-149: Extract the Vec<u8> -> unified_diff -> UTF-8 String
serialization into a small helper (e.g. render_unified_diff) and replace the
duplicated block: call render_unified_diff(pretty_reformat_ir, pretty_input_ir,
"re-formatted IR", "formatted IR") instead of manually creating buf and invoking
similar::TextDiff::from_lines(...).unified_diff().header(...).to_writer(&mut
buf).unwrap(); then String::from_utf8(buf).unwrap(). Ensure the helper accepts
the two text slices and header labels, performs the to_writer on an internal
Vec<u8>, converts with String::from_utf8, and returns the String (or
Result<String, _> if you prefer preserving error handling), and update both
places that currently create buf and call
similar::TextDiff::from_lines/unified_diff/to_writer/String::from_utf8 to use
it.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 4415a11b-49b3-49f5-b06c-ac50cec52214
⛔ Files ignored due to path filters (4)
crates/biome_css_formatter/tests/specs/prettier/scss/comments/at-rule.scss.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/scss/comments/if-eslit-at-rule-decloration.scss.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/scss/comments/lists.scss.snapis excluded by!**/*.snapand included by**crates/biome_css_formatter/tests/specs/prettier/scss/map/comment.scss.snapis excluded by!**/*.snapand included by**
📒 Files selected for processing (1)
crates/biome_formatter_test/src/check_reformat.rs
There was a problem hiding this comment.
🧹 Nitpick comments (1)
crates/biome_formatter_test/src/test_prettier_snapshot.rs (1)
95-109:load_ignored_testscache scope is broader than its input.
OnceLock<Vec<String>>keeps the first loaded list forever, but the function takesroot_path; if multiple roots are used in one test process, later calls can silently use the wrong ignore rules. Consider keying the cache by root path or removing the parameter to make the single-root assumption explicit.Possible direction
-use std::sync::OnceLock; +use std::collections::HashMap; +use std::sync::{Mutex, OnceLock}; -fn load_ignored_tests(root_path: &Utf8Path) -> &'static [String] { - static CACHE: OnceLock<Vec<String>> = OnceLock::new(); - CACHE.get_or_init(|| { +fn load_ignored_tests(root_path: &Utf8Path) -> Vec<String> { + static CACHE: OnceLock<Mutex<HashMap<String, Vec<String>>>> = OnceLock::new(); + let cache = CACHE.get_or_init(|| Mutex::new(HashMap::new())); + let key = root_path.as_str().to_string(); + let mut guard = cache.lock().expect("cache poisoned"); + if let Some(found) = guard.get(&key) { + return found.clone(); + } + let loaded = { let path = root_path.join("../prettier_ignored_tests"); match std::fs::read_to_string(&path) { Ok(content) => content .lines() .map(str::trim) .filter(|line| !line.is_empty() && !line.starts_with('#')) .map(String::from) .collect(), Err(_) => Vec::new(), } - }) + }; + guard.insert(key, loaded.clone()); + loaded }🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@crates/biome_formatter_test/src/test_prettier_snapshot.rs` around lines 95 - 109, The cache in load_ignored_tests is global (static CACHE: OnceLock<Vec<String>>) but the function accepts root_path, so different roots can incorrectly share the same ignores; fix by keying the cache by root_path instead of a single Vec: replace CACHE with a OnceLock<Mutex<HashMap<String, Vec<String>>>> (or OnceLock<RwLock<...>>) and on each call lookup root_path.as_str() (or display()) to return the Vec for that root, inserting and reading from the map when missing; also change the function signature to return an owned Vec<String> (instead of &'static [String]) and update callers accordingly so each root gets its own cached ignore list.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@crates/biome_formatter_test/src/test_prettier_snapshot.rs`:
- Around line 95-109: The cache in load_ignored_tests is global (static CACHE:
OnceLock<Vec<String>>) but the function accepts root_path, so different roots
can incorrectly share the same ignores; fix by keying the cache by root_path
instead of a single Vec: replace CACHE with a OnceLock<Mutex<HashMap<String,
Vec<String>>>> (or OnceLock<RwLock<...>>) and on each call lookup
root_path.as_str() (or display()) to return the Vec for that root, inserting and
reading from the map when missing; also change the function signature to return
an owned Vec<String> (instead of &'static [String]) and update callers
accordingly so each root gets its own cached ignore list.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 8aef1652-80f6-4029-b953-fcd1fbbb43b1
📒 Files selected for processing (4)
crates/biome_formatter_test/src/diff_report.rscrates/biome_formatter_test/src/spec.rscrates/biome_formatter_test/src/test_prettier_snapshot.rscrates/biome_formatter_test/src/utils.rs
🚧 Files skipped from review as they are similar to previous changes (1)
- crates/biome_formatter_test/src/diff_report.rs
There was a problem hiding this comment.
🧹 Nitpick comments (1)
crates/biome_formatter_test/src/diff_report.rs (1)
197-197: Minor: redundant explicit dereference.
file_nameis&String, sofile_name.clone()already yields a clonedStringvia deref coercion. The(*file_name)is unnecessary.Suggested simplification
- filename: (*file_name).clone(), + filename: file_name.clone(),🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@crates/biome_formatter_test/src/diff_report.rs` at line 197, The assignment uses an unnecessary explicit dereference: replace filename: (*file_name).clone() with filename: file_name.clone() (or file_name.to_owned()) in the code that constructs the struct (the field named filename using the variable file_name) to rely on deref coercion and remove the redundant (*...) dereference.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@crates/biome_formatter_test/src/diff_report.rs`:
- Line 197: The assignment uses an unnecessary explicit dereference: replace
filename: (*file_name).clone() with filename: file_name.clone() (or
file_name.to_owned()) in the code that constructs the struct (the field named
filename using the variable file_name) to rely on deref coercion and remove the
redundant (*...) dereference.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 7c7b1ac1-70b7-4a9a-84f3-46710838da04
📒 Files selected for processing (2)
crates/biome_formatter_test/src/diff_report.rscrates/biome_formatter_test/src/test_prettier_snapshot.rs
🚧 Files skipped from review as they are similar to previous changes (1)
- crates/biome_formatter_test/src/test_prettier_snapshot.rs
|
@ematipico I don't know about other formatters. But for markdown, how are we sure that those leftover |
|
Ah I didn't look closely. I saw crates/biome_markdown_formatter/tests/specs/prettier_ignored_tests just now. and the "not supported" notes just now. |
Summary
This PR seems big, but it's straightforward: it removes from the code base snapshots of prettier files that we ignore.
Also, the ignore strategy has been improved by adding the
prettier_ignored_testsat the top of the formatter crate.The prettier testing infra had already files that we could ignore, they were difficult to find, and snapshots were generated anyway, inflating the size of the repository.
I ignored some test cases from the markdown testing infra and the CSS testing infra.
Test Plan
Green CI
Docs
N/A