Commit Graph

1728 Commits

Author SHA1 Message Date
Seiichi Uchida
c4611a0e6b
Merge pull request #3326 from scampi/issue-3302
fix formatting of strings within a macro
2019-02-11 00:32:06 +09:00
Seiichi Uchida
44d6f7c43e
Merge pull request #3332 from rchaser53/issue-3234
add issue-3234 test
2019-02-08 12:35:50 +09:00
Seiichi Uchida
672f352c89
Merge pull request #3325 from topecongiro/rustcap
Update rustc-ap-* crates to 366.0.0
2019-02-08 00:24:57 +09:00
rchaser53
5e530980b7 add issue-3234 test
this issue is already resolved
2019-02-08 00:05:54 +09:00
Stéphane Campinas
4ed31b606d
Merge pull request #3322 from fyrchik/fix/3304
calculate statement first line properly
2019-02-07 10:51:08 +01:00
Evgenii
109394536d add more tests 2019-02-07 12:12:36 +03:00
Evgenii
2502939b60 fix review comments 2019-02-07 10:55:55 +03:00
Stéphane Campinas
813aa79567
fix formatting of strings within a macro 2019-02-07 00:05:05 +01:00
Seiichi Uchida
1ae032652c Add a test for #3313 2019-02-06 23:10:27 +09:00
Evgenii
da2d8a4c57 calculate statement first line properly 2019-02-06 10:05:51 +03:00
Stéphane Campinas
4c5ef9a2f5
remove unecessary source test file 2019-02-05 21:19:41 +01:00
rchaser53
5fcb7507ca fix Removed indentation after nested comments error 2019-02-05 13:12:45 +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
Seiichi Uchida
efd6fda43f
Merge pull request #3311 from rchaser53/issue-3295
fix "internal error: left behind trailing whitespace" with long lines
2019-02-04 00:10:42 +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
topecongiro
154ccf6a02 Do not force trailing comma when using mixed layout 2019-01-31 23:44:58 +09:00
Seiichi Uchida
923da60f72
Merge pull request #3298 from topecongiro/issue-3272
Use the same rule between function and macro
2019-01-30 00:36:55 +09:00
topecongiro
181ca427dc Use the same rule with macro and function calls with a single chain 2019-01-28 23:05:42 +09:00
topecongiro
5df0a18849 Avoid putting a long macro call in a single line 2019-01-28 23:05:39 +09:00
Seiichi Uchida
36c9dc646c
Merge pull request #3293 from scampi/issue-3241
Keep leading colons for global paths
2019-01-27 23:14:57 +09:00
Stéphane Campinas
2125ad272e
fix glob and nested global imports 2019-01-27 12:46:14 +01:00
Seiichi Uchida
203e6d265d
Merge pull request #3294 from rchaser53/issue-3278
change new line point in the case of no args
2019-01-27 16:28:28 +09:00
Seiichi Uchida
35d5ef7828
Apply rustfmt::skip on imports (#3289) 2019-01-27 16:26:09 +09:00
rchaser53
f92f3e3bda add the version gate to the code and test 2019-01-27 14:38:57 +09:00
rchaser53
7b996542cc change new line point in the case of no args 2019-01-26 00:16:51 +09:00
Nick Cameron
d2e91b5b68
Merge pull request #3284 from scampi/issue-3270
recognize strings inside comments in order to avoid indenting them
2019-01-17 20:22:36 +13:00
Stéphane Campinas
083a20fb1a
version-gate the formatting of commented strings 2019-01-16 23:06:28 +01:00
wada314
a01990c4d0 Use Unicode-standard char width to wrap comments or strings. (#3275) 2019-01-15 08:41:09 +09:00
Stéphane Campinas
503cddeb0f
Merge pull request #3225 from scampi/issue-3224
rewrite_comment: fix block fallback when failing to rewrite an itemized block
2019-01-14 14:41:00 +01:00
Stéphane Campinas
baa62c609e
recognize strings inside comments in order to avoid indenting them
Close #3270
2019-01-10 21:04:16 +01:00
Nick Cameron
2c204c11d1
Merge pull request #3260 from topecongiro/issue-3004
Do not modify original source code inside macro call
2019-01-07 17:39:05 +13:00
Stéphane Campinas
3b18238009
simplify function to create a string from the itemized block 2018-12-25 23:15:52 +01:00
Seiichi Uchida
996d5e8d6c
Fix shape when formatting return or break expr on statement position (#3259) 2018-12-25 18:20:29 +09:00
wada314
09c9cd4125 Fix issue #3263 (#3264) 2018-12-25 18:03:48 +09:00
Shohei Wada
6a316e3ac7 Add test cases. 2018-12-24 06:18:00 +09:00
topecongiro
30cda580bd Add a test for #3004 2018-12-20 01:13:18 +09:00
Stéphane Campinas
b73a602d6e
version-gate the trailing semicolon change of return statements inside a match arm 2018-12-14 09:54:23 +01:00
Stéphane Campinas
d03d9a45ef
end expressions like return/continue/break with a semicolon
Close #3213
2018-11-29 20:39:07 +01:00
Stéphane Campinas
40174e9481
fix the visitor's starting position when visiting a labelled block
Close #3217
2018-11-28 22:50:17 +01:00
Nick Cameron
378994b858 Add a version option 2018-11-27 14:18:14 +13:00
Nick Cameron
3d01fc186a
Merge pull request #3177 from kestred/kstenerson/preserve-brace-leading-ws
Format brace-delimited macros with a space after the name
2018-11-19 13:35:09 +13:00
Seiichi Uchida
1dd54e67a1
Prefer to break arguments over putting output type on the next line (#3190) 2018-11-18 21:31:40 +09:00
Kevin Stenerson
bc5124e016 Always enforce exactly one space between macro! and braces ({}) 2018-11-17 11:53:11 -07:00
Kevin Stenerson
1a3bc79c68 Preserve possibly one whitespace for brace macros 2018-11-16 14:57:43 -07:00
Nick Cameron
5dbe107f56 test for #3128 2018-11-15 21:38:23 +13:00
Stéphane Campinas
a4e97fa17b
compute the span after a struct-like item based on the ident description 2018-11-13 21:10:30 +01:00
Stéphane Campinas
d121d7205f
fix logic for adding or not a newline after a missed span 2018-11-09 20:50:07 +01:00
Nick Cameron
4e2f741917
Merge pull request #3175 from kestred/kstenerson/delimited-overflow
Add config option to more aggressively allow overflow
2018-11-09 15:46:23 +13:00
Kevin Stenerson
3330e6717e Add tests that include comments before the overflow-able params 2018-11-08 19:38:01 -07:00
Nick Cameron
6efc963245
Merge pull request #3188 from scampi/issue3124
do not add a newline after a missed span if it is the end of a block comment
2018-11-09 15:26:05 +13:00
Nick Cameron
c4cc479fcd
Merge pull request #3183 from scampi/issue3182
do not wrap comments in doctest to avoid failing doctest runs
2018-11-09 15:14:44 +13:00
Stéphane Campinas
f570438e75
do not add a newline after a missed span if it is the end of a block comment 2018-11-08 22:44:59 +01:00
Alan Du
3986e690d1 Do not count /*/ as both start and end comment (#3185) 2018-11-08 14:28:08 +09:00
Stéphane Campinas
a5043a81be
do not wrap comments in doctest to avoid failing doctest runs 2018-11-07 16:48:39 +01:00
Stéphane Campinas
9467033a8e
fix the logic for retaining a comment before the arrow in a match 2018-11-07 15:00:33 +01:00
Kevin Stenerson
cd8bb50aea Trim the indentation on macros which heuristically appear to use block-style indentation (#3178) 2018-11-07 17:49:53 +09:00
Kevin Stenerson
25b828d35f Add config option to more aggressively allow overflow 2018-11-05 21:12:40 -07:00
Nick Cameron
16d5f507b6
Merge pull request #3172 from scampi/issue3153
trim the start of a line when wrapping an item in preparation for formatting
2018-11-06 10:23:30 +13:00
Stéphane Campinas
5a2ebdddcc
trim the start of a line when wrapping an item in preparation for formatting 2018-11-05 20:22:06 +01:00
Rémy Rakic
83d1d9aa14 normalize_doc_attributes: remove leading whitespace from the doc comment opener
Remove possible whitespace from the `CommentStyle::opener()` so that the literal itself has control over the comment's leading spaces.

This is most useful for tools, such as bindgen, to allow for example: machine-readable comments with precise syntax rules, or idempotently round-tripping between the proc-macro API and rustfmt.
2018-11-05 18:24:36 +01:00
Stéphane Campinas
7132fe03a0
fix alignment of a struct's fields with the visual style
- rewrite_with_alignment was called from the expr module with the wrong
  shape that missed the extra offset needed for the visual style
- rewrite_with_alignment was indenting the given shape although that
  should have been the caller's responsability
2018-11-04 23:41:21 +01:00
Stéphane Campinas
2d718a3fc2
The method trim_left_preserve_layout didn't handle tabs properly.
This is fixed by taking the method macros::indent_macro_snippet which
essentially does the same: it indents a paragraph while preserving the
layout.
2018-10-30 20:24:03 +01:00
Emilio Cobos Álvarez
4a82252f03
missed-spans: Fix bogus check.
I don't really know what it's trying to do, but forgetting about everything
you've seen before when you see whitespace followed by a semicolon doesn't look
right to me, and absolutely no tests were hitting that.

This check was introduced in 5ecdd072d6, however
it was wrong even at that point, and now rustfmt still passes that test,
regardless of macro name.

Fixes #3154.
2018-10-30 03:21:28 +01:00
Nick Cameron
1f64f4012f
Merge pull request #3141 from dfyz/issue-2810
Try to fix formatting failures on Windows (issue #2810)
2018-10-29 11:29:51 +13:00
Ivan Komarov
00a20bceff Fix formatting failures on Windows
When newline_style is set to Windows, an empty line inside of a macro
results in `\r` being passed to the `fold()` in `MacroBranch::rewrite()`.

`\r` is technically not an empty string, so we try to indent it, leaving
trailing whitespaces behind, even though that was not intended
(as far as I can see).

This commit replaces the `!l.is_empty()` check with calling
`is_empty_line()`, since trying to indent any whitespace-only string
will probably result in problematic trailing whitespaces.

Fixes: #2810
2018-10-28 02:37:55 +03:00
Seiichi Uchida
131f11a6e5 Add a test for #3139 2018-10-27 11:22:18 +09:00
Seiichi Uchida
2d0487164f Add a test for #3137 2018-10-26 16:36:01 +09:00
Stéphane Campinas
2f5d864c08
keep track of lines which formatting was disabled in order to prevent indentation which would cause code right-shifting 2018-10-24 12:11:11 +02:00
Stéphane Campinas
9c75a15f4c
Fix handling of code that is annotated with rustfmt::skip.
A rustfmt::skip'ed block is indented although original lines are
returned. In order to resolve this, the leading whitespaces are trimmed
on each line while retaining the layout; this leaves the skipped code
to be indented as necessary by the caller.
2018-10-24 12:11:11 +02:00
Nick Cameron
c3ad58c381
Remove the source test file 2018-10-24 18:13:26 +13:00
JoshBrudnak
ce54aea4c8 Added test for crate non-alphabetizing 2018-10-23 19:00:42 -04:00
Nick Cameron
825207dd2e
Merge pull request #3126 from topecongiro/issue-3117
Use correct width when formatting type on local statement
2018-10-23 10:35:32 +13:00
Seiichi Uchida
cf44c079c1 Add a test for #3117 2018-10-22 22:20:48 +09:00
Matthias Krüger
b25f974c0d fix a few typos found via codespell. 2018-10-19 12:28:00 +02:00
Nick Cameron
e633f2b3f5
Merge pull request #3109 from scampi/issue-3038
force a newline after the `if` condition if there is a different indentation level
2018-10-18 19:56:17 +13:00
Seiichi Uchida
8c4e92a14e
Catch parser panic in format_snippet (#3103) 2018-10-17 14:21:04 +09:00
Stéphane Campinas
30c06da781
force a newline after the if condition if there is a different
indentation level
2018-10-15 23:24:35 +02:00
Nick Cameron
5f02be6294
Merge pull request #3102 from nrc/arm-guard-newline
Only put `{` on a newline in a match arm where necessary
2018-10-16 09:06:15 +13:00
Nick Cameron
bc4414e53c
Merge pull request #3101 from nrc/pair-newline
Simplify multi-lining binop exprs
2018-10-16 09:01:40 +13:00
Daniele D'Orazio
075aa909cd try to fix comment bad wrapping (#3099) 2018-10-15 11:18:37 +09:00
Nick Cameron
e2be62c7a5 Add test (issue 3005) 2018-10-15 14:09:31 +13:00
Nick Cameron
7be173eb8c add test 2018-10-15 12:09:53 +13:00
Nick Cameron
a6ef302236
Merge pull request #3100 from topecongiro/issue-3092
Fix poor formatting of empty trait with generic bounds
2018-10-15 08:07:59 +12:00
Nick Cameron
2f8c1fea72
Merge pull request #3093 from scampi/issue2633
do not vertically align list items in case the tactic is Horizontal
2018-10-15 07:57:39 +12:00
Nick Cameron
945fb504b1
Merge pull request #3091 from topecongiro/issue-3060
Do not add parens around lifetimes
2018-10-15 07:40:34 +12:00
Seiichi Uchida
476992a15d Add a test for #3092 2018-10-14 21:47:50 +09:00
Otavio Salvador
ef59b34cd7 Avoid control flow expressions conditions to go multi line
Extends the multi line condition to over other control flow
expressions, it now covers: `if`, `if let`, `for`, `loop`, `while`,
`while let` and `match`.

Refs: #3029

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-10-13 14:12:43 -03:00
Stéphane Campinas
8f7a0470b0
handle lines prefixed with a # inside code blocks 2018-10-13 09:57:43 +02:00
Otavio Salvador
8feeddf1f8 Only combine match if its condition expression fits in a single line
This improves the formatting and reading of code avoiding the
condition expression to be rewrite, if it goes multi line.

Fixes: #3029.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-10-12 20:12:45 -03:00
Stéphane Campinas
78d9091aff
do not vertically align list items in case the tactic is Horizontal 2018-10-12 20:41:56 +02:00
Seiichi Uchida
6b33043e06 Add a test for #3060 2018-10-13 00:42:22 +09:00
Nick Cameron
8b709c0019 Add attr_fn_like_width to the width heuristics
It is a bit larger than than `fn_call_width` which we used previously, so fewer attributes get reformatted.

Closes #2929
2018-10-12 15:20:42 +13:00
Seiichi Uchida
b2de574848 Add format_doc_comments 2018-10-11 23:34:36 +09:00
Nick Cameron
4895699e88
Merge pull request #3083 from scampi/itemized_blocks
Handle itemized blocks in comments
2018-10-10 10:38:54 +12:00
Stéphane Campinas
375c87820f
rewrite_string: detect when a url is being split and place the new line
after it
2018-10-09 21:47:32 +02:00
Stéphane Campinas
c0b7222e2d
handle itemized items inside comments 2018-10-09 00:44:59 +02:00
Stéphane Campinas
8b3788d875
rewrite_string: allow to break on a boundary character that is on edge 2018-10-08 14:48:15 +02:00
Seiichi Uchida
a925bdf092 Add a test for #3031 and update test
No combining for an item-like macro argument.
2018-10-08 13:50:00 +09:00
Nick Cameron
1b2e72726f
Merge pull request #3078 from YaLTeR/fix-closure-indentation
Fix inconsistent overflow behavior in Visual style
2018-10-08 14:38:49 +13:00
Nick Cameron
832a912f79
Merge pull request #3077 from YaLTeR/fix-extra-commas
Get rid of extra commas in Visual struct literal formatting
2018-10-08 14:37:48 +13:00
Nick Cameron
4dc5557625
Merge pull request #3070 from topecongiro/issue-3030
Format a paren expr with double slash comment
2018-10-08 13:05:36 +13:00
Nick Cameron
80d744973f
Merge pull request #3069 from topecongiro/issue-3003
Consider a multi-lined array as a block-like expression
2018-10-08 13:04:45 +13:00
Nick Cameron
d0c6a6d642
Merge pull request #3067 from topecongiro/refactor-toexpr
Add println!-like heuristic to the fail attribute
2018-10-08 12:38:33 +13:00
Ivan Molodetskikh
dee68434e6
Overflow Visual functions even with one argument 2018-10-06 16:32:38 +03:00
Ivan Molodetskikh
6dc9b96651
Add a test for #3049 2018-10-06 16:32:27 +03:00
Ivan Molodetskikh
cbaed838d5
No trailing comma in struct literals (Visual) 2018-10-06 10:59:47 +03:00
Ivan Molodetskikh
cfe20fe585
Add a test for #3066 2018-10-06 10:59:47 +03:00
Stéphane Campinas
4b26723e55
format_strings: take into account newline occurring within a rewritten line 2018-10-02 00:41:56 +02:00
Seiichi Uchida
efe24bd7e7 Add a test for #3030 2018-10-01 00:06:37 +09:00
Seiichi Uchida
4a15875f07 Add a test for #3003
and run cargo fmt.
2018-09-30 23:28:03 +09:00
Seiichi Uchida
6e901c8f37 Format and update test 2018-09-30 08:05:45 +09:00
Nick Cameron
3dc6eed601
Merge pull request #2816 from moxian/enum-discrim
Add option to vertically align enum discriminants.
2018-09-28 21:48:57 +12:00
Seiichi Uchida
86fff9eafa
Merge pull request #3050 from andrehjr/empty-impl-body-with-braces-newline
Trait Implementation - Adds a newline before the last brace on impls without a body if the first brace is also on a newline
2018-09-28 11:10:58 +09:00
Stéphane Campinas
2bcc3a9302 do not format a code block in documentation if it is annotated with ignore or text (#3058) 2018-09-28 11:06:29 +09: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
André Luis Leal Cardoso Junior
2727d41ddb Makes brace behavior consistent with empty bodies for traits and impls
Adds a newline before the last brace on impls without a body if the first brace is also on a newline
2018-09-26 09:44:13 -03:00
Nick Cameron
ac6871f376
Merge pull request #3048 from emilio/merged-comments
lists: Detect block comment by starting from the end.
2018-09-24 14:22:01 +12:00
Nick Cameron
1e60c6118e
Merge pull request #3045 from scampi/issue2917
Prevent right-shifting of block comments with bare lines.
2018-09-24 14:11:46 +12:00
Emilio Cobos Álvarez
66c15e46ba
lists: Detect block comment by starting from the end.
The issue with the current code is that comments are collapsed, so comments like
the one from the test end up in a string like:

```
"// this is a single line comment\n/* block = */"
```

I chose to fix it by detecting whether we're in a block comment starting from
the end instead, and tested a single-line comment ended in `*/` just for sanity,
ensuring line breaks are not removed in that case, which would break the
formatting.

The right fix eventually is probably to lex the comments properly, but this does
the work for now, I guess :)

Fixes #3025
2018-09-22 12:16:38 +02:00
Stéphane Campinas
5fdb6db136
Prevent right-shifting of block comments with bare lines.
Lines that didn't start with a comment sigil were returned unchanged in
comment::rewrite_comment. Then these unchanged lines were indented in
MacroBranch::rewrite.
2018-09-22 00:09:11 +02:00
Diogo Sousa
98a0ef2436 Fix bug in import where two consecutive module separators were possible.
Fixes #3043.
2018-09-21 18:51:19 +01:00
Seiichi Uchida
ec32c961d3 Add a test for #3040 2018-09-21 00:57:46 +09:00
Nick Cameron
cd8549e013
Merge pull request #3036 from topecongiro/issue-2932
Combine chain items only when the item gets orphaned otherwise
2018-09-20 11:36:46 +12:00
Seiichi Uchida
594774b4e5 Update tests 2018-09-19 23:19:24 +09:00
Seiichi Uchida
8021b29405 Add a test for #3006 2018-09-19 22:33:25 +09:00
Nick Cameron
829dbfabe9
Merge pull request #3028 from scampi/issue2973
Fix indent computation of a macro with braces.
2018-09-19 11:31:28 +12:00
Nick Cameron
1739041f03
Merge pull request #3002 from lqd/normalize-doc-attributes
normalize_doc_attributes option: convert doc attributes to comments
2018-09-19 11:05:27 +12:00
Nick Cameron
2267c2cddc
Merge pull request #3001 from scampi/issue2977
propagate errors about failing to rewrite a macro
2018-09-19 10:43:21 +12:00
Seiichi Uchida
661bea71c1
Merge pull request #3013 from YaLTeR/fix-issue-2985
Fix wrong shape for last chain items for indent_style = "Visual"
2018-09-18 20:21:21 +09:00
Nick Cameron
01c14a2058
Merge pull request #3012 from YaLTeR/fix-issue-2496
Fix match arm block flattening
2018-09-18 21:12:12 +12:00
Stéphane Campinas
c3edf6d3a1
Fix indent computation of a macro with braces.
The leading whitespace of a multine string was taken into account when
computing the `min_prefix_space_width`, even if that line couldn't be
trimmed. The consequence is it was always shifting the macro's content
to the right.
2018-09-18 00:01:51 +02:00
Rémy Rakic
0c73b9414b add test ensuring only doc = "" attributes are normalized to comments
The other shapes of doc attributes shouldn't be normalized or modified.
2018-09-13 02:40:24 +02:00
Rémy Rakic
cbc58410d9 add tests interleaving doc attrib comments and regular comments 2018-09-13 02:27:09 +02:00
Rémy Rakic
171e656f64 add non-regression test to existing attributes
when `normalize_doc_attributes` is on, they shouldn't be affected
2018-09-13 01:10:57 +02:00
Rémy Rakic
4af0888648 add non-regression test to existing doc attributes
when `normalize_doc_attributes` is off, they shouldn't be normalized to a doc comment
2018-09-13 01:06:02 +02:00
Rémy Rakic
43f813867c add test with multiple levels of indents 2018-09-13 01:02:11 +02:00
Nick Cameron
e39bd35ae1
Merge pull request #3010 from topecongiro/issue-3009
Refactor the corner case of handling long function
2018-09-12 13:55:41 +12:00
Ivan Molodetskikh
2f03a31e1a
Add a visual fn type alias test 2018-09-11 12:34:21 +03:00
Ivan Molodetskikh
abcdc0fadd
Add a test for #2985 2018-09-11 11:09:31 +03:00
Ivan Molodetskikh
f116baeed7
Add a test for match flattening 2018-09-11 08:54:43 +03:00
Ivan Molodetskikh
bc03234e25
Add a test for #2496 2018-09-11 08:54:43 +03:00
Seiichi Uchida
9674e12a5c Add a test for #3009 2018-09-11 13:30:36 +09:00
Nick Cameron
77824a24ef
Merge pull request #2988 from YaLTeR/fix-issue-2922
Use correct indent in rewrite_bare_fn with Visual style
2018-09-11 15:50:13 +12:00
lqd
4b7130dfa1 normalize_doc_attributes option: convert doc attributes to comments
Convert `#![doc]` and `#[doc]` attributes to `//!` and `///` doc comments.
2018-09-07 21:58:35 +02:00
Stéphane Campinas
6f318e3cef
propagate errors about failing to rewrite a macro 2018-09-07 14:48:52 +02:00
Nick Cameron
f655671e12
Merge pull request #2983 from topecongiro/issue-2642
Handle raw string literals in CharClasses
2018-09-04 19:11:49 +12:00
Nick Cameron
a67208f212
Merge pull request #2986 from topecongiro/issue-2907
Handle chain w/ try operators with spaces
2018-09-03 13:10:50 +12:00
Nick Cameron
5fb9418aec
Merge pull request #2991 from topecongiro/raw-identifier-in-chain
Handle raw identifiers in chain
2018-09-03 13:08:19 +12:00
Seiichi Uchida
08e282877a Handle raw identifiers in chain 2018-09-01 16:18:27 +09:00
Ivan Molodetskikh
430f848c75
Add a test for #2922 2018-08-31 16:25:01 +03:00
Ivan Molodetskikh
098a5391f0
Add a test for #2930 2018-08-31 15:25:08 +03:00
Seiichi Uchida
ba9e159722 Update tests 2018-08-31 18:20:28 +09:00
Seiichi Uchida
1b8f0ff1b6 Add a test for #2907 2018-08-31 18:10:47 +09:00
Ryan Leckey
eec74360dc Accept 2015 and 2018 instead of Edition2015 and Edition2018 for edition option 2018-08-31 00:04:23 -07:00
topecongiro
67480422b9 Handle raw string literal without any sharps 2018-08-31 10:49:39 +09:00
topecongiro
c903119d8d Add a test for #2642 2018-08-31 10:37:22 +09:00
Seiichi Uchida
d8301050a5 Add a test for #2956 2018-08-30 23:38:40 +09:00
crw5996
d832525809 Merge branch 'master' of https://github.com/rust-lang-nursery/rustfmt into fix-use-bug 2018-08-27 23:04:55 -04:00
crw5996
20075306f7 Fixed Issues brought up in PR 2018-08-27 22:59:44 -04:00
crw5996
3585706fa2 Merge branch 'master' of https://github.com/rust-lang-nursery/rustfmt into fix-optional-arg-condensing 2018-08-27 13:44:56 -04:00
Seiichi Uchida
e1069403ca Add a test for #2969 2018-08-27 16:12:11 +09:00
Nick Cameron
97d29ff2e1
Merge pull request #2942 from crw5996/fix-ellipsis-bug
Fix Issue with ellipsis matching in pattern.rs
2018-08-27 09:44:28 +12:00
Seiichi Uchida
e5a41e5682 Add a test for #2953 2018-08-26 13:19:44 +09:00
Zach Lute
ca19c9a35a Fix build with rust nightly by updating try block syntax. (#2965) 2018-08-26 13:02:24 +09:00
Maximilian Roos
10512a59d0 Impl only use (#2951) 2018-08-24 14:39:05 +09:00
chris
4e748a269e Fixed ellipsis bug where rustfmt was creating code that could not be parsed 2018-08-24 00:58:21 -04:00
cad97
04d804c365 Rename CodeMap/FileMap to SourceMap/SourceFile
#2946
2018-08-23 17:10:46 -04:00
Nick Cameron
8573df602a
Merge pull request #2925 from scampi/issue539
discard trailing blank comments
2018-08-23 10:13:56 +12:00
Seiichi Uchida
dfe4eef8fc Remove an invalid attribute from a test
This has become a parser error.
2018-08-19 00:26:56 +09:00
Stéphane Campinas
dd14d304ef
discard trailing blank comments 2018-08-16 19:59:32 +02:00
Stéphane Campinas
f23e6aaaf9
fix the identification of a block comment.
Block comments like below were not properly supported:

    /*
       something here but it doesn't start with a star
     */

because of the line that didn't start with a star.
2018-08-16 19:55:15 +02:00
Seiichi Uchida
71dc033fca Add a test for #2919 2018-08-16 07:49:50 +09:00
Seiichi Uchida
996dbbf960 Add a test for slice patterns 2018-08-12 23:55:34 +09:00
Nick Cameron
66d3924aa8
Merge pull request #2899 from topecongiro/chain-with-comments
Format chains with comment
2018-08-07 15:07:23 +12:00
Nick Cameron
803d000ed3
Merge pull request #2900 from topecongiro/combine-attrs
Combine function-like attributes
2018-08-06 19:37:05 +12:00
Nick Cameron
e4d560b914
Merge pull request #2897 from topecongiro/issue-2896
Ignore comment in wrap_str
2018-08-06 19:36:03 +12:00
Seiichi Uchida
19ebfd122c Update test 2018-08-06 08:10:04 +09:00
Seiichi Uchida
7bccc4473c Add a test for chains with comment 2018-08-05 21:04:06 +09:00
Seiichi Uchida
c19569c5d3 Add a test for #2896 2018-08-05 10:50:24 +09:00
Seiichi Uchida
cf13534150 Add a test for #2884 2018-08-04 09:59:19 +09:00
Seiichi Uchida
8069efbe10 Add a test for #2888 2018-08-03 20:06:29 +09:00
Nick Cameron
9c34986bab Add some tests I forgot about earlier 2018-08-01 10:41:16 +12:00
Nick Cameron
3c20d8a9e6
Merge pull request #2874 from cavedweller/master
Format Async block and async fn
2018-07-31 08:52:07 +12:00
Benjamin Brittain
46b241004d fix nits 2018-07-29 17:20:21 -07:00
Ben Brittain
fedde3790c Add tests for async & async move 2018-07-29 08:55:36 -07:00
Andrew Audibert
f121b1a3a9 Support raw identifiers in struct expressions 2018-07-28 19:40:52 -07:00
Nick Cameron
69ad879d52
Merge pull request #2864 from topecongiro/issue-2863
Modify the rule for reordering impl items
2018-07-27 16:24:46 +12:00
Nick Cameron
814f6339b4
Merge pull request #2862 from topecongiro/issue-2852
Preserve parens in trait bounds
2018-07-27 16:24:11 +12:00
Seiichi Uchida
87c4bd5a94 Add a test for #2863 2018-07-26 21:35:48 +09:00
Seiichi Uchida
b7c443e948 Add and update tests for trait with paren 2018-07-25 18:27:02 +09:00
Nick Cameron
8ff2836eaf
Merge pull request #2861 from topecongiro/issue-2859
Put lifetimes after trait when they gets orphaned
2018-07-25 21:22:25 +12:00
Seiichi Uchida
1b69ed9ae4 Rename test files 2018-07-25 18:16:10 +09:00
Seiichi Uchida
6b8c6f5e0f Add a test for #2859 2018-07-25 08:33:41 +09:00
Seiichi Uchida
d512240206 Add tests for #2830 and #2857 2018-07-25 07:13:51 +09:00
Seiichi Uchida
a2b40bd70f Add a test for associated existential type 2018-07-25 00:42:19 +09:00
Seiichi Uchida
6eb0bf2bb9 Add a simple test for exitential type 2018-07-25 00:29:45 +09:00
Nick Cameron
dcf9f61635 Add tests
Closes #2773
Closes #2786
2018-07-24 15:46:39 +12:00
Nick Cameron
4fa2969c39 fixup tests 2018-07-24 15:46:39 +12:00
Nick Cameron
6899471497 Check for comments after the => in a match arm
Closes #2188
2018-07-20 16:05:18 +12:00
Nick Cameron
90c5792565 Set rustfmt-format_macro_matchers to false by default
cc #2543
2018-07-18 12:09:50 +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
Nick Cameron
b28a0cd6e6 Fix an anomaly with comments and array literals
Closes #2842
2018-07-17 15:40:19 +12:00
Stéphane Campinas
472a2ed0f6
fix rewrite_string when a line feed is present in a sequence of whitespaces, resulting in strange formatting 2018-07-14 19:22:31 +02:00
Nick Cameron
229a55248b address reviewer comments 2018-07-12 22:21:07 +12:00
Nick Cameron
7a76e5b1b4 Add test for #2802 2018-07-12 21:37:28 +12:00
Nick Cameron
486f8fd8e7 Fixup formatting of tests and source 2018-07-12 21:37:28 +12:00
Seiichi Uchida
25f83b14c7 Add a test for async closures 2018-07-09 23:20:30 +09:00
Nick Cameron
d5cb93216b
Merge pull request #2822 from topecongiro/issue-2782
Avoid panicking on deeply nested expressions
2018-07-01 14:38:30 +12:00
topecongiro
a0206f53d2 Add a test for #2782 2018-07-01 10:40:47 +09:00
topecongiro
669a8bcf82 Add a test for #2721 2018-07-01 09:59:45 +09:00
Nick Cameron
888abbb0ec
Merge pull request #2820 from scampi/defaults
[wip] remove some defaults
2018-07-01 10:57:31 +12:00
Stéphane Campinas
0385c2e6bc
reverted some defaults for tests that are fixing a specific issue 2018-06-30 17:04:50 +02:00
topecongiro
008aa88d6e Add tests for #2818 2018-06-30 19:20:47 +09:00
Stéphane Campinas
f8f9457e20
unecessary use of rustfmt-normalize_comments comment 2018-06-27 15:28:33 +02:00
Stéphane Campinas
a420ac2e3c
formatting 2018-06-27 15:28:32 +02:00
Stéphane Campinas
ad27384cc2
removed comment with default: rustfmt-remove_nested_parens 2018-06-27 15:28:32 +02:00
Stéphane Campinas
0a2aa6526e
removed comment with default: rustfmt-reorder_modules 2018-06-27 15:28:32 +02:00
Stéphane Campinas
95d71899f7
removed comment with default: rustfmt-imports_indent 2018-06-27 15:28:32 +02:00
Stéphane Campinas
872ed58ffc
removed comment with default: rustfmt-reorder_imports 2018-06-27 15:28:32 +02:00
Stéphane Campinas
0ee452bd2a
removed comment with default: rustfmt-format_strings 2018-06-27 01:36:02 +02:00
Stéphane Campinas
92aecc37fe
removed comment with default: rustfmt-control_brace_style 2018-06-27 01:36:02 +02:00
Stéphane Campinas
4c65bd1c46
removed comment with default: rustfmt-brace_style 2018-06-27 01:36:02 +02:00
Stéphane Campinas
fe0ac6742e
removed comment with default: rustfmt-max_width 2018-06-27 01:36:01 +02:00
Stéphane Campinas
87f72d4333
removed comment with default: rustfmt-error_on_line_overflow 2018-06-27 01:36:01 +02:00
Stéphane Campinas
5ad7325ada
removed comment with default: rustfmt-normalize_comments 2018-06-27 01:35:57 +02:00
Stéphane Campinas
a4d1469baf
removed comment with default: rustfmt-indent_style 2018-06-27 01:35:53 +02:00
Nick Cameron
3abebf95ce Apply short function call heuristic to attributes
Closes #2620
2018-06-26 15:18:17 +12:00
Nick Cameron
42f03458dd Refactor and fixup attribute formatting
Preserves trailing commas (except in derives where we follow function args).
Correctly uses `#` vs `#!` for derives.
Uses block indent for derives, fixes #2805.
2018-06-26 15:18:17 +12:00
Nick Cameron
be4d37da4b Indent a match guard if the pattern is multiline
Closes #2377
2018-06-26 15:18:17 +12:00
Seiichi Uchida
eb168f608a Add more tests 2018-06-25 23:41:44 +09:00
Seiichi Uchida
3871988dfa Add a test for raw identifiers 2018-06-25 23:36:37 +09:00
Nick Cameron
ca1c13a896
Merge pull request #2804 from Mike-Baker/mb-strip-vert-in-match-arms
Strip leading `|` in match arm patterns
2018-06-25 21:02:24 +12:00
topecongiro
fa1978882b Add a test for #2791
Closes #2791.
2018-06-25 15:27:09 +09:00
Mike Baker
1d4b988414 Strip leading | in match arm patterns
This addresses issue #2621

This commit turns out to be a partial revert of
ea3c01e337

The rationale is that a `|` character preceding a match pattern is not
semantically relevant and therefore should be considered a
style/formatting choice.

A discussion concluded that the best way to emit consistent formatting
here was to strip the leading `|`

This removes the match_with_beginning_vert test because it was asserting
the old behaviour which has been changed, it adds a new test
(issue_2621) which should be a more comprehensive check of the behavior
of `|` in match arms.

Discussion at https://github.com/rust-lang-nursery/fmt-rfcs/issues/119
2018-06-25 00:53:15 +01:00
Nick Cameron
1ead31ae9d
Merge pull request #2795 from jechase/issue-2794
Add test and fix for #2794
2018-06-20 10:35:16 +12:00
Nick Cameron
fb5513564e
Merge pull request #2785 from wada314/issue-2728
Fix #2728.
2018-06-20 10:32:46 +12:00
Josh Chase
ea540651b7 Switch to comments for rustfmt config 2018-06-19 09:30:50 -04:00
Shohei Wada
036244cdce Fix #2728. 2018-06-19 20:51:49 +09:00
Nick Cameron
261238ea51 Change use_small_heuristics to an enum and stabilise
Since it is now an enum, we can be future compatible since we can add variants
for different heuristics.

Closes #1974
2018-06-19 13:28:27 +12:00
Josh Chase
4565d41790 Add test for #2794 2018-06-18 12:51:19 -04:00
Seiichi Uchida
23ca2b670e Add a test for #2630
Closes #2630.
2018-06-13 20:39:47 +09:00
Nick Cameron
34067a1c4c
Merge pull request #2775 from topecongiro/macro-def-with-complex-macro
Change format_snippet to return None when it has failed to format macro call
2018-06-08 08:50:35 +12:00
Seiichi Uchida
19054347ca Fix test failures 2018-06-07 15:20:01 +09:00
Seiichi Uchida
5e59e686c1 Add tests for #2607 and #2770 2018-06-07 12:30:14 +09:00
csmoe
c791a54ff4 repair break_label format 2018-06-07 11:21:52 +08:00
csmoe
5cd76a3de5 update test 2018-06-07 11:15:42 +08:00
Nick Cameron
da30d235a4
Merge pull request #2771 from topecongiro/issue-2746
Fix poor formatting of impls
2018-06-06 14:38:42 +12:00
Nick Cameron
576e9af0ae
Merge pull request #2769 from topecongiro/issue-2765
Put each nested import on its own line
2018-06-06 14:37:25 +12:00