Yacin Tmimi
1de65a2711
wrap else
to next line if let-else
pattern is multi-lined
...
This rule wasn't explicity stated in the style guide so it was missed,
but luckily we caught it during testing.
2023-07-01 01:06:35 -05:00
Yacin Tmimi
fe8b72d98e
implement single_line_let_else_max_width
...
This allows users to configure the maximum length of a single line
`let-else` statements. `let-else` statements that otherwise meet the
requirements to be formatted on a single line will have their divergent
`else` block formatted over multiple lines if they exceed this length.
**Note**: `single_line_let_else_max_widt` will be introduced as a stable
configuration option.
2023-07-01 01:06:35 -05:00
yukang
a74d2d7440
fix tests
2023-05-01 16:15:17 +08:00
clubby789
a5ba6e025f
Remove uses of box_syntax
in rustc and tools
2023-03-12 13:19:46 +00:00
Caleb Cartwright
094b7f599c
Merge commit '1d8491b120223272b13451fc81265aa64f7f4d5b' into sync-from-rustfmt
2023-01-24 14:16:03 -06:00
Caleb Cartwright
ac595dd57a
Merge commit 'c4416f20dcaec5d93077f72470e83e150fb923b1' into sync-rustfmt
2022-06-22 22:14:32 -05:00
Caleb Cartwright
d03a547cad
Merge commit '7b73b60faca71d01d900e49831fcb84553e93019' into sync-rustfmt
2022-06-12 22:03:05 -05:00
Caleb Cartwright
8211d64c71
Merge commit '5ff7b632a95bac6955611d85040859128902c580' into sync-rustfmt-subtree
2022-03-29 23:17:30 -05:00
Caleb Cartwright
f99e3582bd
Merge commit 'ea199bacef07213dbe008841b89c450e3bf0c638' into rustfmt-sync
2021-11-07 20:37:34 -06:00
Caleb Cartwright
2b41b6d022
Merge commit 'efa8f5521d3813cc897ba29ea0ef98c7aef66bb6' into rustfmt-subtree
2021-10-20 00:11:59 -05:00
Caleb Cartwright
e4b8714c09
Merge commit '4236289b75ee55c78538c749512cdbeea5e1c332' into update-rustfmt
2021-07-25 22:57:19 -05:00
Joseph Birr-Pixton
58157bb4b7
Add some basic tests for chain_width use
2021-04-21 21:27:50 -05:00
Caleb Cartwright
a168d92f9a
tests: augment heuristics tests
2021-04-21 21:27:50 -05:00
Geoffry Song
71863753bd
Rename merge_imports
to imports_granularity
and add a Module
option.
...
This renames the existing `true`/`false` options to `Crate`/`Never`, then adds a
new `Module` option which causes imports to be grouped together by their
originating module.
2021-01-17 11:48:47 -06:00
meiomorphism
003786228d
fix: don't force a newline after an empty where clause
...
Fixes #4547 .
2020-11-25 21:32:46 -06:00
Matt
073cc3891f
Option to create groups for std, external crates, and other imports
...
Backport of 17d90ca.
2020-11-18 21:37:42 -06:00
Aaron Hill
46ab14437e
Don't flatten a block containing a single macro call
...
We no longer flatten a block that looks like this:
```rust
match val {
pat => { macro_call!() }
}
```
Currently, rust ignores trailing semicolons in macro expansion in
expression position (see https://github.com/rust-lang/rust/issues/33953 )
If this is changed, flattening a block with a macro call may break the
user's code - the trailing semicolon will no longer parse if the macro
call occurs immediately on the right-hand side of the match arm
(e.g. `pat => macro_call!()`)
2020-11-05 20:45:11 -06:00
Caleb Cartwright
4908ee19c3
tests: add tests for leading pipe config
2020-09-24 09:43:31 -05:00
Caleb Cartwright
00e199c974
backport new syntax to rustfmt 1.x ( #4105 )
...
* feat: support raw reference operator
* feat: support const opt-out syntax
* feat: support half open range syntax
2020-03-31 15:28:01 +09:00
Stéphane Campinas
5327c3633f
handle field attributes when aligning a struct's fields ( #3513 )
2019-10-19 16:56:32 +09:00
Valentine Valyaeff
15a28f79b8
Another fix for merge_imports
( #3769 )
2019-09-04 23:02:10 +09:00
Seiichi Uchida
c0e616bc1d
Implement closing-block procedure without relying on missed_span module ( #3691 )
2019-07-17 23:07:12 +09:00
Caleb Cartwright
aa0c9dd212
tests: add normalize_doc_attributes config tests ( #3630 )
2019-06-16 23:46:25 +09:00
Stéphane Campinas
87565c42ce
Merge pull request #3607 from topecongiro/issue-3493
...
Ignore sub-modules when skip-children is used
2019-06-08 09:50:12 +02:00
topecongiro
788a4cbe4f
Add a test for #3493
2019-06-08 14:52:49 +09:00
Stéphane Campinas
e6b60a40d5
stabilise fn_args_density ( #3581 )
2019-06-03 22:26:48 +09:00
topecongiro
7fc4e418bf
Tweak test settings
2019-03-17 12:33:18 +09:00
Alexander Regueiro
7a3b7c9275
Various cosmetic improvements ( #3403 )
2019-02-19 11:56:42 +09:00
Seiichi Uchida
bfcfaf1743
Merge pull request #3308 from topecongiro/issue-2835
...
Prioritize single_line_fn and empty_item_single_line over brace_style
2019-02-04 00:11:01 +09:00
rchaser53
c2534f5324
fix "internal error: left behind trailing whitespace" with long lines
2019-02-01 19:58:38 +09:00
topecongiro
0142e961ad
Prioritize single_line_fn and empty_item_single_line over brace_style
...
When either one of these two options are set to `true`, each should take
precedence over the brace_style option.
This commit does not introduce any formatting change to the default
configuration, so no version gate is required.
2019-02-01 00:22:47 +09:00
Nick Cameron
378994b858
Add a version option
2018-11-27 14:18:14 +13:00
Ivan Molodetskikh
cbaed838d5
No trailing comma in struct literals (Visual)
2018-10-06 10:59:47 +03:00
moxian
65ae0b9a09
Change enum align semantics to care about absolute length, rather than difference.
...
If we're only aligning enum discriminants that are "not too far apart
(length-wise)", then this works really well for enums with
consistently-long or consistently-short idents, but not for the mixed
ones.
However, consistently-long idents is somewhate of an uncommon case and
overlong idents may be allowed to be formatted suboptimally if that
makes mixed-length idents work better (and it does in this case).
2018-09-26 18:47:17 +00:00
moxian
cc22869fb4
Add option to vertically align enum discriminants.
2018-09-26 14:35:38 +00:00
Seiichi Uchida
594774b4e5
Update tests
2018-09-19 23:19:24 +09:00
Nick Cameron
9c34986bab
Add some tests I forgot about earlier
2018-08-01 10:41:16 +12:00
Nick Cameron
4fa2969c39
fixup tests
2018-07-24 15:46:39 +12:00
Michael Bebenita
c2ae39e77a
Add max_width option for all heuristics.
...
This is useful when working with very small max_widths like 79 chars.
2018-07-17 13:17:36 -04:00
Seiichi Uchida
0204dcbd98
Update tests
2018-06-05 19:58:21 +09:00
csmoe
d46852b3f7
fix tests
2018-05-31 18:34:06 +08:00
Nick Cameron
d726492e65
Remove spaces_within_parens_and_brackets
...
cc #1974
2018-05-18 16:35:09 +12:00
Nick Cameron
51f566062f
Update uses of rustfmt_skip
to rustfmt::skip
2018-05-14 16:25:10 +12:00
topecongiro
680c65dc97
Update tests to use the absolute position for small parent heuristic
2018-05-08 06:23:14 +09:00
Nick Cameron
17b04f181d
Merge pull request #2677 from csmoe/remove_nested_parens_opt
...
Add remove nested parens option
2018-05-06 14:01:17 +12:00
csmoe
5b121582e5
add config test
2018-05-06 09:23:45 +08:00
csmoe
8c8676cd30
fix merge_mix
2018-05-03 10:26:53 +08:00
topecongiro
3432807ac2
Temporarily fix tests
...
cc #2655 .
2018-04-28 14:07:10 +09:00
Nick Cameron
aa4419019a
Update tests
2018-04-11 10:46:49 +12:00
Seiichi Uchida
94f5a05a6a
Add reorder_impl_items config option
2018-04-05 12:49:16 +09:00