Commit Graph

1525 Commits

Author SHA1 Message Date
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
Seiichi Uchida
d96d853b5c Fix up tests for empty impls 2018-06-06 10:56:07 +09:00
Seiichi Uchida
356a0c4b58 Add a test for #2746 2018-06-06 10:55:56 +09:00
Seiichi Uchida
35fee77d39 Add a test for #2765 2018-06-05 19:58:28 +09:00
Seiichi Uchida
0204dcbd98 Update tests 2018-06-05 19:58:21 +09:00
Seiichi Uchida
e4125ff96a Add a test for #2759 2018-06-05 15:56:51 +09:00
Nick Cameron
d9149fb52e
Merge pull request #2741 from csmoe/where_brace
Remove newline in empty impl
2018-06-05 18:04:22 +12:00
Seiichi Uchida
b9631d1209 Add a test for #2761 2018-06-05 13:42:58 +09:00
csmoe
8874c95a00 recover suppressed comma 2018-06-04 19:10:09 +08:00
csmoe
d46852b3f7 fix tests 2018-05-31 18:34:06 +08:00
Seiichi Uchida
11835ce5ce Add tests for #2749 2018-05-30 08:44:57 +09:00
Nick Cameron
1d5da1011f
Merge pull request #2733 from topecongiro/issue-2727
Trim unnecessary whitespaces between a macro call and a semicolon
2018-05-28 10:12:23 +12:00
topecongiro
6dd7d5ba1c Add a test for #2727 2018-05-24 00:13:56 +09:00
topecongiro
0977bca5ed Add a test for #2691 2018-05-23 23:29:18 +09:00
topecongiro
d0980655b3 Add tests for #2704. 2018-05-23 07:22:30 +09:00
csmoe
64768cf932 fix label prefix 2018-05-21 22:37:55 +08:00
csmoe
150765d755 format label break 2018-05-21 13:30:07 +08:00
Thomas Lively
5d56adb10c Fix position of auto in auto trait declaration 2018-05-18 17:25:33 -04: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
Nick Cameron
de950c2973 Skip on rustfmt::skip as well as rustfmt_skip 2018-05-14 16:13:21 +12:00
Nick Cameron
7eb8bdbbd2 Format attributes with paths 2018-05-14 16:04:15 +12:00
Nick Cameron
5dba81bbbf
Merge pull request #2687 from Marwes/issue_2641
fix: Don't insert an extra brace in macros with native newlines
2018-05-09 13:18:27 +12:00
Markus Westerlind
4c9ef93df7 fix: Don't insert an extra brace in macros with native newlines
Due to `format_snippet` formatting the input with \r\n the subtraction
would wouldn't give a length that removed the }

Fixes #2641
2018-05-08 20:34:44 +02:00
topecongiro
680c65dc97 Update tests to use the absolute position for small parent heuristic 2018-05-08 06:23:14 +09:00
Nick Cameron
f46f4b5f66
Merge pull request #2675 from flodiebold/non-modrs-mods
Fix handling of modules in non_modrs_mods style
2018-05-07 11:23:14 +12:00
Nick Cameron
bd7ae5e89b
Merge pull request #2682 from topecongiro/issue-2670
Do not duplicate attributes on use items
2018-05-07 11:21:02 +12:00
Florian Diebold
e65aa302d3 Turn the nonmodrs-mods test into a standard idempotence test
We need to skip children on foo.rs, since the parser will not find bar from that
file, but with that, the test works fine.
2018-05-06 13:08:43 +02:00
topecongiro
f81b94c7c1 Add a test for duplicated attributes on use items 2018-05-06 17:00:51 +09:00
topecongiro
84e5634a1b Update tests 2018-05-06 15:14:47 +09:00
topecongiro
087e2a7986 Add tests for simple binary expressions 2018-05-06 15:14:30 +09:00
topecongiro
f885039e6c Do not overflow a long item
Take the first line's width of a single item into account when
trying to overflow something.

Closes #2676.
2018-05-06 12:12:16 +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
7c246344f8 remove nested parens option 2018-05-05 23:13:49 +08:00
Nick Cameron
4a57e79469
Merge pull request #2667 from tspiteri/width-heuristics
Do not scale WidthHeuristics when max_width less than 100
2018-05-04 11:46:28 +12:00
csmoe
8c8676cd30 fix merge_mix 2018-05-03 10:26:53 +08:00
Trevor Spiteri
48df8f8dc0 Add test for width heuristics 2018-05-02 11:38:23 +02:00
Trevor Spiteri
31ce8ee185 Add test for issue 2644 2018-05-02 10:38:02 +02:00
Nick Cameron
36c49d703a
Merge pull request #2666 from topecongiro/issue-2634
Avoid flip-flopping impl items when reordering them
2018-05-02 10:28:46 +12:00
topecongiro
faa5a10d20 Add a test for #2634 2018-04-30 16:22:28 +09:00
topecongiro
61a401ae51 Use correct one line width for list attribute
Closes #2647.
2018-04-30 15:49:32 +09:00
Nick Cameron
9f3f48c85c Fix broken test 2018-04-30 13:21:17 +12:00
Nick Cameron
e554d8617d
Merge branch 'master' into imports_indent 2018-04-30 11:50:53 +12:00
Nick Cameron
ffaa6fcb0c
Merge pull request #2661 from topecongiro/issue-2645
Preserve comments between attribute and use item
2018-04-30 11:10:48 +12:00
Nick Cameron
af5976cf1e
Merge pull request #2659 from topecongiro/issue-2652
Do not add a trailing comma on array inside macro
2018-04-30 11:07:33 +12:00
csmoe
ce5efaf16f update tests 2018-04-29 21:03:49 +08:00
topecongiro
23cdfdef38 Add tests for #2645 2018-04-28 16:03:26 +09:00
topecongiro
121f5e4e42 Add an test for #2652 2018-04-28 15:09:36 +09:00
topecongiro
3432807ac2 Temporarily fix tests
cc #2655.
2018-04-28 14:07:10 +09:00
topecongiro
89d8eabba5 Add tests for #2594 2018-04-28 13:23:50 +09:00
Roman Stoliar
92b14f0778 added test for #2637 2018-04-23 01:31:21 +03:00
Shotaro Yamada
61d29eb70c Add spaces between consecutive .. ..= 2018-04-16 17:33:22 +09:00
Nick Cameron
45c66c75aa Fix tests 2018-04-12 17:05:34 +12:00
Nick Cameron
55dd8f1df0
Merge pull request #2603 from topecongiro/merge-nested-imports
Merge imports
2018-04-12 16:40:06 +12:00
Seiichi Uchida
e58e97783e Preserve trailing comma on macro call when using mixed layout 2018-04-12 09:54:00 +09:00
Nick Cameron
1c17dbbf74 rebasing 2018-04-11 10:46:49 +12:00
Nick Cameron
aa4419019a Update tests 2018-04-11 10:46:49 +12:00
Nick Cameron
911395a451 Squash the various 'reorder imports' option into one
cc #2185
2018-04-11 10:46:49 +12:00
Seiichi Uchida
805987b4b1 Add tests for merge_imports config option 2018-04-10 12:36:57 +09:00
Nick Cameron
4b2160e1b2
Merge pull request #2599 from topecongiro/issue-2596
Use multiple lines for imports list which exceeds max width
2018-04-06 11:12:53 +12:00
Nick Cameron
a3fba04141
Merge pull request #2593 from topecongiro/issue-2455
Add reorder_impl_items config option
2018-04-06 11:12:11 +12:00
Nick Cameron
b7ba6f70b1
Merge pull request #2576 from topecongiro/merge-imports
Use normalized form to format use items
2018-04-05 17:39:22 +12:00
Seiichi Uchida
8f615af44e Add a test for #2569 2018-04-05 13:23:48 +09:00
Seiichi Uchida
a43ac40a78 Add tests for #2588 2018-04-05 12:52:43 +09:00
Seiichi Uchida
94f5a05a6a Add reorder_impl_items config option 2018-04-05 12:49:16 +09:00
Ryan Leung
2c7e737a06 add tests for macro!(/* comment */) (#2592)
* add tests
2018-04-04 11:02:01 +09:00
Shotaro Yamada
e2d801f11e Do not turn spaces in the beginning of the file into a newline (#2583) 2018-04-01 23:09:53 +09:00
Ivan Sorokin
e6423cf4b1 Add test #2574 (#2577) 2018-04-01 00:54:44 +09:00
Seiichi Uchida
13964b739e Update tests
1. snake_case < CamelCase < UPPER_SNAKE_CASE
2. Use vertical layout for list with nested imports.
2018-03-31 13:16:36 +09:00
Seiichi Uchida
3de184fb0e
Merge pull request #2572 from codeworm96/remove_unreachable
Remove unreachable! from macros.rs
2018-03-29 09:16:38 +09:00
codeworm96
38107192f1 Add test for #2558
When run against invalid macro definitions, rustfmt should leave
them unchanged rather than panic.
2018-03-28 23:50:21 +08:00
Nick Cameron
72b715bad4
Merge pull request #2571 from topecongiro/issue-2569
Avoid panicking on macro call with a single comma
2018-03-28 17:02:49 +02:00
Nick Cameron
1644b174a7
Merge pull request #2557 from topecongiro/vertical-layout-complex-attrs
Use vertical layout for complex attributes
2018-03-28 17:01:16 +02:00
Nick Cameron
8dd08ddd92
Merge pull request #2562 from topecongiro/issue-2196
Combine simple heuristics for function calls and array
2018-03-28 16:49:25 +02:00
Seiichi Uchida
a49e00b4d7 Avoid panicking on macro call with a single comma
`parse_item` from libsyntax may return `None`, so we need to discard
the result in that case.
2018-03-28 18:14:51 +09:00
Seiichi Uchida
e5b403c944 Update tests 2018-03-28 17:42:24 +09:00
rleungx
bf3bf8c235 allow underscore 2018-03-28 00:31:44 +08:00
Seiichi Uchida
48424ea765 Update tests and cargo fmt 2018-03-26 07:38:39 +09:00
topecongiro
c77708ff9a Use vertical layout for complex attributes 2018-03-25 15:17:41 +09:00
Seiichi Uchida
1e1d9d4afe Do not add the beginning vert to the match arm
Pass the span after the match's condition expression.
Closes #2554.
2018-03-23 19:59:38 +09:00
Nick Cameron
2fbdedbf2f
Merge pull request #2549 from topecongiro/macro-def-spaces-around-colon
Add config option to control spaces around colon in macro def
2018-03-23 10:51:47 +13:00
topecongiro
ccec777f92 Cargo fmt and update tests 2018-03-22 16:09:21 +09:00
topecongiro
d7c7991ed1 Update a test 2018-03-22 16:01:41 +09:00
Alan Du
d402cd20a8 Close #2551 2018-03-22 00:57:22 -04:00
Nick Cameron
0bc0241d2a
Merge pull request #2548 from topecongiro/match-mod
Do not collapse block around expr with condition on match arm
2018-03-22 15:40:36 +13:00
Seiichi Uchida
5b9b7d5b9f Do not collapse block around expr with condition on match arm
Closes #2376.
2018-03-21 22:21:08 +09:00
Nick Cameron
3a138a24a3 Return grouping extern crate to true by default 2018-03-20 09:54:00 +13:00
Nick Cameron
0cf80dcce7 Better handle comments and newlines around erased imports 2018-03-20 09:27:31 +13:00
Nick Cameron
fa75ef4663 fixup tests 2018-03-20 09:27:31 +13:00
Nick Cameron
50c95a074a cargo fmt 2018-03-20 09:27:31 +13:00
Nick Cameron
a76d9b529a format code and tests 2018-03-20 09:27:31 +13:00
Seiichi Uchida
adc257f4b3 Put a space before colon that appears after a meta variable
Closes #2534.
2018-03-19 08:27:53 +09:00
Seiichi Uchida
f8109f8e9c Put spaces around braces 2018-03-19 08:23:53 +09:00
Seiichi Uchida
0fd174d5f1 Handle binary operators and lifetimes 2018-03-19 08:23:53 +09:00
Seiichi Uchida
3f7b59ca2b Break before meta variables when using multiple lines 2018-03-19 08:23:53 +09:00
Seiichi Uchida
c9701d8e18 Update tests 2018-03-19 08:23:53 +09:00
Seiichi Uchida
9cc038897e Add a test for #2538 2018-03-17 14:58:56 +09:00
Nick Cameron
c416246494
Merge pull request #2509 from topecongiro/issue-2493
Overflow the last rhs of a binary expression
2018-03-16 07:30:30 +13:00
Matthew McAllister
c5168405b0 Format attributes on block expressions 2018-03-14 01:16:19 +09:00
Seiichi Uchida
182b46e0ed Simplify join_bounds() 2018-03-12 07:57:03 +09:00
Seiichi Uchida
ccd134ed75 Add a test for #2497
Closes #2497.
2018-03-12 07:54:12 +09:00
Seiichi Uchida
7917d6f94a Update tests
This is an unintentional side effect of this PR. Nonetheless the diff looks
harmless to me, and it is only relevant when `indent_style = Visual`.
So I think this is ok.
2018-03-12 07:54:12 +09:00
Seiichi Uchida
c7d7091772 Update tests for traits with long bounds
The colon should be next to the ident instead of on the next line.
2018-03-12 07:48:31 +09:00
Seiichi Uchida
f1d29ff580 Update tests for braces on trait
Test that the opening brace of trait with long name or bounds with multiple
lines will be put on the next line.
2018-03-12 07:48:31 +09:00
Nick Cameron
bcaeab7a5e
Merge pull request #2527 from topecongiro/issue-2526
Check whether '\\'' is char literal or lifetime
2018-03-12 11:25:40 +13:00
Nick Cameron
af5d3cc87b
Merge pull request #2524 from topecongiro/issue-2523
Do not unindent code block in comments with unformattable macro
2018-03-12 11:21:09 +13:00
Seiichi Uchida
9905c569ba Add a test for #2526 2018-03-10 01:19:26 +09:00
topecongiro
c3e76bc02c Add a test for #2523 2018-03-09 17:09:56 +09:00
Seiichi Uchida
e9f5382757 Add a test for #2510
Closes #2510.
2018-03-09 14:07:43 +09:00
Seiichi Uchida
88a3c60f63 Update tests 2018-03-09 14:07:43 +09:00
Nick Cameron
dc2f1429e7
Merge pull request #2521 from topecongiro/issue-2520
Fix bugs when rewriting doc comments with code block
2018-03-09 15:18:53 +13:00
Nick Cameron
58fb47a8ca
Merge pull request #2519 from topecongiro/nested-parens
Remove nested parens
2018-03-09 15:16:30 +13:00
Seiichi Uchida
484469899b Keep code block without correct backticks enclosing 2018-03-09 09:46:43 +09:00
Seiichi Uchida
67fa394e4e Restrict the width of doc comments with comment_width
See the diff in tests/target/enum.rs for an example.
2018-03-09 09:34:13 +09:00
Seiichi Uchida
0acc0a2989 Add a test for #2520 2018-03-09 09:28:49 +09:00
Seiichi Uchida
9502de14be Update tests 2018-03-08 20:25:41 +09:00
Seiichi Uchida
06f5d55dde Add a test for removing nested parens 2018-03-08 20:25:06 +09:00
Seiichi Uchida
10e37fd42e Update tests 2018-03-08 19:08:56 +09:00
Seiichi Uchida
b2d3daccfa Add a test for #2491 2018-03-08 19:08:32 +09:00
moe
a2f861730e fix adds a trailing comma to struct-like macro (#2490)
* fix adds a trailing comma to struct-like macro
2018-03-08 18:05:39 +09:00
Seiichi Uchida
0e660e4c76 Add a test for #2493 2018-03-08 17:16:42 +09:00
Nick Cameron
06d509c25c
Merge pull request #2512 from topecongiro/rustc-ap-syntax
Update rustc-ap-syntax
2018-03-08 17:13:05 +13:00
Shotaro Yamada
b3fa50db73 Use nested_shape for indenting types of lazy_static 2018-03-07 10:51:28 +09:00
Seiichi Uchida
0393037d6e Add tests for #2398 2018-03-06 19:42:55 +09:00
Seiichi Uchida
3fc8bb19a6 Add tests for #2511 2018-03-06 19:42:38 +09:00
kngwyu
f8f5d5c68c add tests for 2506 2018-03-05 17:35:58 +09:00
Seiichi Uchida
cea5a92a6c Add a test for #2482 2018-03-02 21:53:13 +09:00
Nick Cameron
4f522794ae Tidy up and pass tests 2018-03-02 15:07:13 +13:00
topecongiro
4af2aa3a9e Create rustfmt_core crate 2018-02-07 22:48:05 +09:00
topecongiro
5e0c6f9716 Avoid orphan in chain with punctuation 2018-02-06 09:36:29 +09:00
Seiichi Uchida
d85e1db178
Merge pull request #2393 from RReverser/macro_rules
Format stable macro_rules
2018-02-05 09:56:26 +09:00
topecongiro
18ba02ea70 Add a test for #2208
Closes #2208.
2018-02-05 08:38:53 +09:00
Nick Cameron
c4314df1ab
Merge pull request #2412 from topecongiro/issue-2399
Do not reorder items with '#[macro_use]'
2018-02-05 11:28:58 +13:00
Ingvar Stepanyan
6377c52233 Fix comment handling in macros 2018-02-04 11:54:03 +00:00
Ingvar Stepanyan
fef3e03d3e Add repetition example 2018-02-04 11:53:10 +00:00
Ingvar Stepanyan
9423cdba82 Omit newline for empty macro branches 2018-02-04 11:53:10 +00:00
Ingvar Stepanyan
5bd036fcac Optimise common => {{ macro pattern 2018-02-04 11:53:10 +00:00
Ingvar Stepanyan
9fca9073d9 Revert comments 2018-02-04 11:53:10 +00:00
Ingvar Stepanyan
1b9fd01343 Support compact macros 2.0 representation 2018-02-04 11:53:10 +00:00
Ingvar Stepanyan
9318b4d2cf Update some macro tests 2018-02-04 11:53:10 +00:00
Ingvar Stepanyan
c750442e04 Add macro_rules tests 2018-02-04 11:53:09 +00:00
Seiichi Uchida
f815858420 Use correct offset when unindenting code block
When using hard tabs, we should only remove '\t'.
2018-02-04 17:21:10 +09:00
Seiichi Uchida
9273a72420 Add tests for reorder_extern_crates 2018-02-04 12:07:51 +09:00
Seiichi Uchida
61b23a4293 Skip rewriting macro def with repeat 2018-02-04 08:52:50 +09:00
Nick Cameron
b7f01769f9
Merge branch 'master' into init-shorthand 2018-02-01 15:20:01 +13:00
Nick Cameron
918e79bb5a
Merge pull request #2380 from topecongiro/reorder-mods
[RFC] Reorder modules alphabetically
2018-02-01 15:18:34 +13:00
csmoe
28bb16a5a0 add a support for immovable generators 2018-01-30 22:14:33 +08:00
Seiichi Uchida
c9c346a89f Add 'use_field_init_shorthand' config option 2018-01-29 22:15:20 +09:00
Seiichi Uchida
56c6d73d82 Reorder modules
Add `reorder_modules` config option.

Two things we must keep in mind when reordering modules:
1. We should not reorder modules with attributes, as doing so could
   potentially break the code (e.g. `#[macro_use]`).
2. We should not reorder inline modules e.g. `mod foo { /* .. */ }`.
   We should only reorder module declarations e.g. `mod foo;`.

Some open questions:
1. Should we bring modules with `pub` in front of those without `pub`
   so that they stand out from others?
2. Instead of keeping modules with attributes in the same place,
   can we bring them in front of others? Is this safe?
2018-01-29 21:59:15 +09:00
Nick Cameron
4633786848
Merge pull request #2396 from topecongiro/issue-2389
Put attributes and enum variants on different lines
2018-01-29 10:36:26 +11:00
Seiichi Uchida
c60d865b98 Put attributes and enum variants on different lines 2018-01-26 16:20:00 +09:00
Seiichi Uchida
154bf8e1af Cargo fmt 2018-01-22 13:05:18 +09:00
Seiichi Uchida
fff59fe8d9 Add a test for field initialization shorthand 2018-01-22 13:03:48 +09:00
David Alber
69f27673df Extending spaces_around_ranges to ranges in match arm patterns 2018-01-21 16:50:17 -08:00
Seiichi Uchida
298f29a57d Do not panic when special macros have less args than expected 2018-01-18 00:50:16 +09:00
Nick Cameron
74a957e80f
Merge pull request #2357 from topecongiro/issue-2342
Put attributes and struct fields on different line by default
2018-01-12 17:32:55 +13:00
Nick Cameron
b356fc06f7
Merge pull request #2352 from topecongiro/issue-2337
Break after colon if static item does not fit in a single line
2018-01-12 17:31:12 +13:00
Nick Cameron
09e44b22f2
Merge pull request #2351 from topecongiro/issue-2256
Use correct BytePos when recovering comments on removed import
2018-01-12 17:30:27 +13:00
Seiichi Uchida
6e05ca87b0 Add a test for #2343 and update tests 2018-01-11 16:53:13 +09:00
Seiichi Uchida
279acda4c4 Remove same_line_attributes config option 2018-01-11 16:52:28 +09:00