rufo 0.16.0 → 0.16.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 52f19e023f290af007e285561a6806deec68912a07640c70221493f73f8f80a8
4
- data.tar.gz: 118543384b66bdad4066b710b40f922c192833809a64e6a1075622fa3c1e80a8
3
+ metadata.gz: a6b55f94b8276a2ca0dc8518aa98949e83f83a95adc25a039385cb6855bcbb1c
4
+ data.tar.gz: 03b7595cccdade48c215c3609726bd8a40a5ac72c66e6f64246e842a63f7729e
5
5
  SHA512:
6
- metadata.gz: f03e8e965486ce6f0920c3a9ef1fc9d3d3574c7fe75f64e04da03023be985d2677c4b0560044422f216857a1e9b87e0155c13d0f390dabb0f4354c7f941f32e1
7
- data.tar.gz: 83ac8d4527b5c72260d56d827c681dded32a38e31763dc1c0b11b17d3549e19d476d0aa07345d13ea9c262a595a6010af39c69ac62fbd98d7f4507381f6ad5dd
6
+ metadata.gz: 6c15b016ff6914844a2da86cf3af9ae257abdd9c421dfc4186d2eea39cfba919a2ac3ec489a1f539c59abd49452a5af511e2bca538adb7c62b346859bab3912b
7
+ data.tar.gz: aadada98b7acf84c40c147210655c54681d49b2d2079c76f6d44c19775676556cbf6545bc0754b4c037ba94478b31259f1236a464f60b15704f1e6ecbb98def7
data/CHANGELOG.md CHANGED
@@ -12,11 +12,21 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
12
12
 
13
13
  ### Added
14
14
 
15
+ ## [0.16.1] - 2023-05-04
16
+
17
+ ### Fixed
18
+ - Fix Bug: raises error while formatting pattern matching syntax ([#304](https://github.com/ruby-formatter/rufo/issues/304))
19
+ - Fix Bug: avoid inserting a unnecessary comma to end of heredoc which in array with method call ([#303](https://github.com/ruby-formatter/rufo/pull/303))
20
+
21
+ ### Changed
22
+
23
+ ### Added
24
+
15
25
  ## [0.16.0] - 2023-04-02
16
26
 
17
27
  ### Fixed
18
28
 
19
- - Formats ERB files with configuration (issue [275](https://github.com/ruby-formatter/rufo/issues/275))
29
+ - Formats ERB files with configuration ([#275](https://github.com/ruby-formatter/rufo/issues/275))
20
30
 
21
31
  ### Changed
22
32
 
@@ -58,8 +68,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
58
68
 
59
69
  ### Added
60
70
 
61
- - Support for partial argument forwarding. (issue [268](https://github.com/ruby-formatter/rufo/issues/268))
62
- - Support for endless method. (issue [271](https://github.com/ruby-formatter/rufo/issues/271))
71
+ - Support for partial argument forwarding. ([#268](https://github.com/ruby-formatter/rufo/issues/268))
72
+ - Support for endless method. ([#271](https://github.com/ruby-formatter/rufo/issues/271))
63
73
  - Add Ruby 3.2.0 to test runs on CI.
64
74
 
65
75
  ## [0.13.0] - 2021-05-07
@@ -84,7 +94,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
84
94
  - File.read default encode UTF-8
85
95
  - Handle case where the code is invalid but ripper does not raise an error.
86
96
  - Removed implicit dependency on `rake`.
87
- - Error when semicolon and then used in a case statement #230.
97
+ - Error when semicolon and then used in a case statement [#230](https://github.com/ruby-formatter/rufo/issues/230).
88
98
 
89
99
  ### Changed
90
100
 
@@ -175,22 +185,22 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
175
185
  ## [0.7.0] - 2019-04-28
176
186
 
177
187
  ### Fixed
178
- - Argument align with splat (issue [123](https://github.com/ruby-formatter/rufo/issues/123))
188
+ - Argument align with splat ([#123](https://github.com/ruby-formatter/rufo/issues/123))
179
189
 
180
190
  ### Changed
181
191
 
182
192
  ### Added
183
- - Support jbuilder files (issue [173](https://github.com/ruby-formatter/rufo/issues/173))
193
+ - Support jbuilder files ([#173](https://github.com/ruby-formatter/rufo/issues/173))
184
194
 
185
195
  ## [0.6.1] - 2019-04-27
186
196
 
187
197
  ### Fixed
188
- - Fix bug: symbol literal like `:"foo"` in ruby 2.6.3 (issue [168](https://github.com/ruby-formatter/rufo/issues/168))
198
+ - Fix bug: symbol literal like `:"foo"` in ruby 2.6.3 ([#168](https://github.com/ruby-formatter/rufo/issues/168))
189
199
 
190
200
  ## [0.6.0] - 2019-03-04
191
201
 
192
202
  ### Fixed
193
- - Fix odd indentation of nested one liner "if" statements (issue [128](https://github.com/ruby-formatter/rufo/issues/128))
203
+ - Fix odd indentation of nested one liner "if" statements ([#128](https://github.com/ruby-formatter/rufo/issues/128))
194
204
 
195
205
  ### Added
196
206
  - Ignore `vendor` directories from files to be checked. This allows rufo to be run without any arguments against a directory both locally and on common CI tools without needing any configuration.
@@ -204,7 +214,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
204
214
 
205
215
  ### Fixed
206
216
 
207
- - Fix bug: Rufo crashes on nested empty hash literal (issue [152](https://github.com/ruby-formatter/rufo/issues/152))
217
+ - Fix bug: Rufo crashes on nested empty hash literal ([#152](https://github.com/ruby-formatter/rufo/issues/152))
208
218
  - Handle case where rufo would change formatting if run multiple times for hashes in some cases.
209
219
 
210
220
  ## [0.5.0] - 2019-02-09
@@ -222,7 +232,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
222
232
  ## [0.4.2] - 2019-01-22
223
233
 
224
234
  ### Fixed
225
- - Fix bug: Rufo indents squiggly HEREDOC incorrectly causing bad formating (issue [136](https://github.com/ruby-formatter/rufo/issues/136))
235
+ - Fix bug: Rufo indents squiggly HEREDOC incorrectly causing bad formating ([#136](https://github.com/ruby-formatter/rufo/issues/136))
226
236
 
227
237
  ### Added
228
238
 
@@ -231,14 +241,14 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
231
241
  ## [0.4.1] - 2018-10-27
232
242
 
233
243
  ### Fixed
234
- - Fix bug for double colon operator in method definition (issue [#120](https://github.com/ruby-formatter/rufo/issues/120))
244
+ - Fix bug for double colon operator in method definition ([#120](https://github.com/ruby-formatter/rufo/issues/120))
235
245
 
236
246
  ## [0.4.0] - 2018-08-09
237
247
 
238
248
  ### Fixed
239
- - Fix Bug: Rufo breaks HEREDOC syntax. (issue [#88](https://github.com/ruby-formatter/rufo/issues/88)). This fixes heredoc within parens formatting causing bad formatting and subsequent syntax error.
240
- - Fix Bug: formatter.rb:3700:in `block in adjust_other_alignments': undefined method `[]' for nil:NilClass (NoMethodError) (issue [#87](https://github.com/ruby-formatter/rufo/issues/87)). Check alignment target exists.
241
- - Fix Bug: Rufo keeps switching formatting on same file every time it runs (issue [#86](https://github.com/ruby-formatter/rufo/issues/86)). Avoids re-indenting nested literal indents.
249
+ - Fix Bug: Rufo breaks HEREDOC syntax. ([#88](https://github.com/ruby-formatter/rufo/issues/88)). This fixes heredoc within parens formatting causing bad formatting and subsequent syntax error.
250
+ - Fix Bug: formatter.rb:3700:in `block in adjust_other_alignments': undefined method `[]' for nil:NilClass (NoMethodError) ([#87](https://github.com/ruby-formatter/rufo/issues/87)). Check alignment target exists.
251
+ - Fix Bug: Rufo keeps switching formatting on same file every time it runs ([#86](https://github.com/ruby-formatter/rufo/issues/86)). Avoids re-indenting nested literal indents.
242
252
 
243
253
  ### Added
244
254
  - Allow for simpler else_body node to suit new Ripper style in 2.6.0
@@ -250,7 +260,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
250
260
  ## [0.3.1] - 2018-04-12
251
261
 
252
262
  ### Fixed
253
- - Fix `quote_style` config not being respected (issue [#95](https://github.com/ruby-formatter/rufo/issues/95)).
263
+ - Fix `quote_style` config not being respected ([#95](https://github.com/ruby-formatter/rufo/issues/95)).
254
264
 
255
265
  ## [0.3.0] - 2018-03-24
256
266
 
@@ -259,9 +269,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
259
269
  - Normalize string quotes according to quote_style, which defaults to :double.
260
270
 
261
271
  ### Fixed
262
- - Fix printing of extraneous trailing semicolons from inline classes, modules, methods (issue [#59](https://github.com/ruby-formatter/rufo/issues/59))
263
- - Fix unhandled white space between array getter/setters `x[0] [0]` (issue [#62](https://github.com/ruby-formatter/rufo/issues/62))
264
- - Fix comma printing for heredocs when inside a hash (issue [#61](https://github.com/ruby-formatter/rufo/issues/61))
272
+ - Fix printing of extraneous trailing semicolons from inline classes, modules, methods ([#59](https://github.com/ruby-formatter/rufo/issues/59))
273
+ - Fix unhandled white space between array getter/setters `x[0] [0]` ([#62](https://github.com/ruby-formatter/rufo/issues/62))
274
+ - Fix comma printing for heredocs when inside a hash ([#61](https://github.com/ruby-formatter/rufo/issues/61))
265
275
  - Fix array literals against changes to Ruby 2.5.0
266
276
 
267
277
  ## [0.2.0] - 2017-11-13
@@ -302,8 +312,8 @@ The following configuration options have been **removed**, and replaced with non
302
312
 
303
313
  ### Fixed
304
314
  - Fix crash in Ruby <= 2.3.4, <= 2.4.1 in the presence of certain squiggly doc (`<<~`) with multiple embedded expressions. The real fix here is to upgrade Ruby to >= 2.3.5 / >= 2.4.2
305
- - Fix dedent bug and bad formatting caused by comments within chained calls (issue [#49](https://github.com/ruby-formatter/rufo/issues/49))
306
- - Fix formatting bug for `for i, in [[1, 2]] ; x ; end` (issue [#45](https://github.com/ruby-formatter/rufo/issues/45))
315
+ - Fix dedent bug and bad formatting caused by comments within chained calls ([#49](https://github.com/ruby-formatter/rufo/issues/49))
316
+ - Fix formatting bug for `for i, in [[1, 2]] ; x ; end` ([#45](https://github.com/ruby-formatter/rufo/issues/45))
307
317
 
308
318
  ## [0.1.0] - 2017-10-08
309
319
  Beginning of logging changes!
@@ -600,8 +600,8 @@ class Rufo::Formatter
600
600
  needs_comma = !comma? && trailing_commas
601
601
 
602
602
  if inside_literal_elements_list && needs_comma
603
- write ","
604
603
  @last_was_heredoc = true
604
+ @end_of_heredoc_position = @output.length
605
605
  end
606
606
 
607
607
  @output << captured_output
@@ -2847,7 +2847,13 @@ class Rufo::Formatter
2847
2847
  @literal_elements_level = nil
2848
2848
 
2849
2849
  if needs_trailing_comma
2850
- write "," unless wrote_comma || !trailing_commas || @last_was_heredoc
2850
+ if !wrote_comma && trailing_commas
2851
+ if @last_was_heredoc
2852
+ @output.insert(@end_of_heredoc_position, ",")
2853
+ else
2854
+ write ","
2855
+ end
2856
+ end
2851
2857
 
2852
2858
  consume_end_of_line(first_space: first_space)
2853
2859
  write_indent
@@ -3014,7 +3020,18 @@ class Rufo::Formatter
3014
3020
  when :when
3015
3021
  visit_comma_separated_list conds_or_pattern
3016
3022
  when :in
3023
+ parens = current_token_kind == :on_lparen
3024
+ if parens
3025
+ consume_token :on_lparen
3026
+ skip_space_or_newline
3027
+ end
3028
+
3017
3029
  visit conds_or_pattern
3030
+
3031
+ if parens
3032
+ skip_space_or_newline
3033
+ consume_token :on_rparen
3034
+ end
3018
3035
  end
3019
3036
  skip_space
3020
3037
  end
data/lib/rufo/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Rufo
4
- VERSION = "0.16.0"
4
+ VERSION = "0.16.1"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rufo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.0
4
+ version: 0.16.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ary Borenszweig
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-04-02 00:00:00.000000000 Z
11
+ date: 2023-05-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -171,7 +171,6 @@ files:
171
171
  - README.md
172
172
  - Rakefile
173
173
  - bin/console
174
- - bin/runtest
175
174
  - bin/setup
176
175
  - bin/verify-sample-code
177
176
  - docs/developing-rufo.md
@@ -211,7 +210,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
211
210
  - !ruby/object:Gem::Version
212
211
  version: '0'
213
212
  requirements: []
214
- rubygems_version: 3.4.1
213
+ rubygems_version: 3.4.10
215
214
  signing_key:
216
215
  specification_version: 4
217
216
  summary: Ruby code formatter
data/bin/runtest DELETED
@@ -1,10 +0,0 @@
1
- #!/bin/sh
2
-
3
- for ver in "2.7.6" "3.0.4" "3.1.3" "3.2.0"; do
4
- rbenv local "$ver"
5
- (bundle check || bundle) && rake
6
- if [ $? != 0 ]; then
7
- echo "failed on $ver"
8
- exit 1
9
- fi
10
- done