cargo fmt --all completely stops formatting when failing on a single file
Open
Nobody has claimed this yet.
C-bug
E-needs-mcve
- Dominant language
- Rust
- Stars
- 7k
- Forks
- 1.1k
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 24
Description
meta:
rustc 1.30.0-nightly (2d4e34ca8 2018-09-09)
cargo fmt --version: rustfmt 0.99.4-nightly (1c40881 2018-08-27)
rustfmt --version: rustfmt 0.99.4-nightly (1c40881 2018-08-27)
example crate: clippy
cd clippy_lints
cargo fmt --all
changed files:
modified: src/assign_ops.rs
modified: src/attrs.rs
cd clippy_lints
fd \.rs -x rustfmt
changed files:
modified: src/assign_ops.rs
modified: src/attrs.rs
modified: src/blacklisted_name.rs
modified: src/block_in_if_condition.rs
modified: src/booleans.rs
modified: src/bytecount.rs
modified: src/const_static_lifetime.rs
modified: src/consts.rs
modified: src/cyclomatic_complexity.rs
modified: src/default_trait_access.rs
modified: src/deprecated_lints.rs
modified: src/doc.rs
modified: src/double_comparison.rs
modified: src/double_parens.rs
modified: src/drop_forget_ref.rs
modified: src/duration_subsec.rs
modified: src/else_if_without_else.rs
modified: src/empty_enum.rs
modified: src/entry.rs
modified: src/enum_clike.rs
modified: src/enum_glob_use.rs
modified: src/enum_variants.rs
modified: src/eq_op.rs
modified: src/erasing_op.rs
modified: src/escape.rs
modified: src/eta_reduction.rs
modified: src/eval_order_dependence.rs
modified: src/excessive_precision.rs
modified: src/explicit_write.rs
modified: src/fallible_impl_from.rs
modified: src/format.rs
modified: src/formatting.rs
modified: src/functions.rs
modified: src/identity_conversion.rs
modified: src/identity_op.rs
modified: src/if_let_redundant_pattern_matching.rs
modified: src/if_not_else.rs
modified: src/indexing_slicing.rs
modified: src/infallible_destructuring_match.rs
modified: src/infinite_iter.rs
modified: src/inherent_impl.rs
modified: src/inline_fn_without_body.rs
modified: src/int_plus_one.rs
modified: src/invalid_ref.rs
modified: src/items_after_statements.rs
modified: src/large_enum_variant.rs
modified: src/len_zero.rs
modified: src/let_if_seq.rs
modified: src/lifetimes.rs
modified: src/literal_representation.rs
modified: src/loops.rs
modified: src/map_clone.rs
modified: src/map_unit_fn.rs
modified: src/matches.rs
modified: src/misc.rs
modified: src/misc_early.rs
modified: src/missing_doc.rs
modified: src/missing_inline.rs
modified: src/multiple_crate_versions.rs
modified: src/mut_mut.rs
modified: src/mut_reference.rs
modified: src/mutex_atomic.rs
modified: src/needless_bool.rs
modified: src/needless_borrow.rs
modified: src/needless_borrowed_ref.rs
modified: src/needless_pass_by_value.rs
modified: src/needless_update.rs
modified: src/neg_cmp_op_on_partial_ord.rs
modified: src/neg_multiply.rs
modified: src/new_without_default.rs
modified: src/no_effect.rs
modified: src/non_copy_const.rs
modified: src/non_expressive_names.rs
modified: src/ok_if_let.rs
modified: src/open_options.rs
modified: src/overflow_check_conditional.rs
modified: src/panic_unimplemented.rs
modified: src/partialeq_ne_impl.rs
modified: src/precedence.rs
modified: src/ptr.rs
modified: src/ptr_offset_with_cast.rs
modified: src/question_mark.rs
modified: src/ranges.rs
modified: src/redundant_field_names.rs
modified: src/reference.rs
modified: src/regex.rs
modified: src/replace_consts.rs
modified: src/returns.rs
modified: src/serde_api.rs
modified: src/shadow.rs
modified: src/strings.rs
modified: src/suspicious_trait_impl.rs
modified: src/swap.rs
modified: src/temporary_assignment.rs
modified: src/transmute.rs
modified: src/trivially_copy_pass_by_ref.rs
modified: src/types.rs
modified: src/unicode.rs
modified: src/unsafe_removed_from_name.rs
modified: src/unused_io_amount.rs
modified: src/unused_label.rs
modified: src/unwrap.rs
modified: src/use_self.rs
modified: src/utils/author.rs
modified: src/utils/camel_case.rs
modified: src/utils/conf.rs
modified: src/utils/constants.rs
modified: src/utils/higher.rs
modified: src/utils/hir_utils.rs
modified: src/utils/internal_lints.rs
modified: src/utils/ptr.rs
modified: src/utils/sugg.rs
modified: src/vec.rs
modified: src/zero_div_zero.rs
What is going on here?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the report in the clippy_lints crate with cargo fmt --all, then compare its changed files with running fd .rs -x rustfmt. Start by tracing how cargo fmt --all processes the listed Rust files and handles a formatting failure; done means all eligible files are processed consistently rather than stopping after one file.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100