# Run rustfmt with this config (it should be picked up automatically). version = "Two" use_small_heuristics = "Max" merge_derives = false # Files to ignore. Each entry uses gitignore syntax, but `!` prefixes aren't allowed. ignore = [ "/build/", "/*-build/", "/build-*/", "/vendor/", # Some tests are not formatted, for multiple reasons: # - some contain syntax errors that cause rustfmt to give an error # - some UI tests are broken by different formatting # - some require special comments in a particular position (e.g. `EMIT_MIR` comments) "/tests/codegen/simd-intrinsic/", # Many types like `u8x64` are better hand-formatted. "/tests/crashes/", # Many tests contain syntax errors. "/tests/debuginfo/", # Tests are somewhat sensitive to source code layout. "/tests/incremental/", # Tests are somewhat sensitive to source code layout. "/tests/mir-opt/", "/tests/pretty/", "/tests/run-make/translation/test.rs", # Contains syntax errors. "/tests/run-make-fulldeps/", "/tests/run-pass-valgrind/", "/tests/rustdoc/", "/tests/rustdoc-gui/", "/tests/rustdoc-js/", "/tests/rustdoc-json/", "/tests/rustdoc-js-std/", "/tests/rustdoc-ui/", "/tests/ui/", "/tests/ui-fulldeps/", # Do not format submodules. # FIXME: sync submodule list with tidy/bootstrap/etc # tidy/src/walk.rs:filter_dirs "library/backtrace", "library/portable-simd", "library/stdarch", "compiler/rustc_codegen_gcc", "src/doc/book", "src/doc/edition-guide", "src/doc/embedded-book", "src/doc/nomicon", "src/doc/reference", "src/doc/rust-by-example", "src/doc/rustc-dev-guide", "src/llvm-project", "src/tools/cargo", "src/tools/clippy", "src/tools/miri", "src/tools/rust-analyzer", "src/tools/rustc-perf", "src/tools/rustfmt", # These are ignored by a standard cargo fmt run. "compiler/rustc_codegen_cranelift/scripts", "compiler/rustc_codegen_cranelift/example/gen_block_iterate.rs", # uses edition 2024 ]