rufo 0.12.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.circleci/config.yml +12 -21
- data/.rubocop.yml +1 -1
- data/CHANGELOG.md +16 -0
- data/bin/verify-sample-code +1 -0
- data/docs/settings.md +2 -2
- data/lib/rufo/erb_formatter.rb +1 -0
- data/lib/rufo/formatter.rb +8 -4
- data/lib/rufo/version.rb +1 -1
- data/rufo.gemspec +2 -1
- metadata +21 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 67f0bac262d71b5c91c9babdc6d975e88d1b7f04e903b8111f7ccf4f56aa2a35
|
4
|
+
data.tar.gz: c437092573d817e16b05bf2ddc6a1b5a084bc8a81a06836b2e84528f65db1dca
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4e14f22cc80b1566449f65c5b5eb7ceaa4b3f7ed9e98c9dbce35161830049d155c7cc83dd6fe5c3e965ebc085b7cda787b18d4a705b71daebdc1571060a7b545
|
7
|
+
data.tar.gz: a49e26fe230db7e7c42d6f0a8cb700dec11caac98dfc6bfdc7eda7a0cfe80c3fb7b5da675acf0fd29da6b70253c893183279fd1b042d1f6e450f66b1e6e29813
|
data/.circleci/config.yml
CHANGED
@@ -58,42 +58,34 @@
|
|
58
58
|
|
59
59
|
version: 2
|
60
60
|
jobs:
|
61
|
-
build-
|
61
|
+
build-3-0-1:
|
62
62
|
<<: *dockerbuild
|
63
63
|
docker:
|
64
|
-
- image: circleci/ruby:
|
64
|
+
- image: circleci/ruby:3.0.1
|
65
65
|
environment:
|
66
66
|
BUNDLE_JOBS: "3"
|
67
67
|
BUNDLE_RETRY: "3"
|
68
68
|
BUNDLE_PATH: /home/circleci/project/vendor/bundle
|
69
|
-
build-2-
|
69
|
+
build-2-7-3:
|
70
70
|
<<: *dockerbuild
|
71
71
|
docker:
|
72
|
-
- image: circleci/ruby:2.
|
72
|
+
- image: circleci/ruby:2.7.3
|
73
73
|
environment:
|
74
74
|
BUNDLE_JOBS: "3"
|
75
75
|
BUNDLE_RETRY: "3"
|
76
76
|
BUNDLE_PATH: /home/circleci/project/vendor/bundle
|
77
|
-
build-2-6-
|
78
|
-
<<: *dockerbuild
|
79
|
-
docker:
|
80
|
-
- image: circleci/ruby:2.6.1
|
81
|
-
environment:
|
82
|
-
BUNDLE_JOBS: "3"
|
83
|
-
BUNDLE_RETRY: "3"
|
84
|
-
BUNDLE_PATH: vendor/bundle
|
85
|
-
build-2-5-3:
|
77
|
+
build-2-6-7:
|
86
78
|
<<: *dockerbuild
|
87
79
|
docker:
|
88
|
-
- image: circleci/ruby:2.
|
80
|
+
- image: circleci/ruby:2.6.7
|
89
81
|
environment:
|
90
82
|
BUNDLE_JOBS: "3"
|
91
83
|
BUNDLE_RETRY: "3"
|
92
|
-
BUNDLE_PATH: vendor/bundle
|
93
|
-
build-2-
|
84
|
+
BUNDLE_PATH: /home/circleci/project/vendor/bundle
|
85
|
+
build-2-6-1:
|
94
86
|
<<: *dockerbuild
|
95
87
|
docker:
|
96
|
-
- image: circleci/ruby:2.
|
88
|
+
- image: circleci/ruby:2.6.1
|
97
89
|
environment:
|
98
90
|
BUNDLE_JOBS: "3"
|
99
91
|
BUNDLE_RETRY: "3"
|
@@ -103,8 +95,7 @@ workflows:
|
|
103
95
|
version: 2
|
104
96
|
test:
|
105
97
|
jobs:
|
106
|
-
- build-
|
107
|
-
- build-2-
|
98
|
+
- build-3-0-1
|
99
|
+
- build-2-7-3
|
100
|
+
- build-2-6-7
|
108
101
|
- build-2-6-1
|
109
|
-
- build-2-5-3
|
110
|
-
- build-2-4-5
|
data/.rubocop.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -12,9 +12,25 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
12
12
|
|
13
13
|
### Added
|
14
14
|
|
15
|
+
## [0.13.0] - 2021-05-07
|
16
|
+
|
17
|
+
### Fixed
|
18
|
+
|
19
|
+
- Properly format comma when a heredoc is passed as a call argument
|
20
|
+
- Correctly interpret case statements with multiple when clauses in ERB files
|
21
|
+
|
22
|
+
### Changed
|
23
|
+
|
24
|
+
- Dropped support for Ruby 2.4 and 2.5 as they are end of life.
|
25
|
+
|
26
|
+
### Added
|
27
|
+
|
28
|
+
- Add Ruby 3.0.1 to test runs on CI.
|
29
|
+
|
15
30
|
## [0.12.0] - 2020-03-08
|
16
31
|
|
17
32
|
### Fixed
|
33
|
+
|
18
34
|
- File.read default encode UTF-8
|
19
35
|
- Handle case where the code is invalid but ripper does not raise an error.
|
20
36
|
- Removed implicit dependency on `rake`.
|
data/bin/verify-sample-code
CHANGED
data/docs/settings.md
CHANGED
@@ -23,7 +23,7 @@ See https://github.com/ruby-formatter/rufo/issues/2 for more context!
|
|
23
23
|
- [parens_in_def](#parens_in_def)
|
24
24
|
- [trailing_commas](#trailing_commas)
|
25
25
|
- [quote_style](#quote_style)
|
26
|
-
- [includes and excludes](#includes
|
26
|
+
- [includes and excludes](#includes-and-excludes)
|
27
27
|
|
28
28
|
### align_case_when
|
29
29
|
|
@@ -284,5 +284,5 @@ Files can be excluded or included in formatting with rufo by specifying glob pat
|
|
284
284
|
For example:
|
285
285
|
```
|
286
286
|
includes [*.txt,*.text]
|
287
|
-
excludes [
|
287
|
+
excludes [**/*.erb]
|
288
288
|
```
|
data/lib/rufo/erb_formatter.rb
CHANGED
@@ -111,6 +111,7 @@ class Rufo::ErbFormatter
|
|
111
111
|
return "begin", nil if Ripper.sexp("begin #{code_str}")
|
112
112
|
return "begin\n", "\nend" if Ripper.sexp("begin\n#{code_str}\nend")
|
113
113
|
return "if a\n", "\nend" if Ripper.sexp("if a\n#{code_str}\nend")
|
114
|
+
return "case a\n", "\nend" if Ripper.sexp("case a\n#{code_str}\nend")
|
114
115
|
raise_syntax_error!(code_str)
|
115
116
|
end
|
116
117
|
|
data/lib/rufo/formatter.rb
CHANGED
@@ -212,7 +212,7 @@ class Rufo::Formatter
|
|
212
212
|
when :@float
|
213
213
|
# Float literal
|
214
214
|
#
|
215
|
-
# [:@
|
215
|
+
# [:@float, "123.45", [1, 0]]
|
216
216
|
consume_token :on_float
|
217
217
|
when :@rational
|
218
218
|
# Rational literal
|
@@ -1126,11 +1126,14 @@ class Rufo::Formatter
|
|
1126
1126
|
|
1127
1127
|
found_comma = comma?
|
1128
1128
|
|
1129
|
+
heredoc_needs_newline = true
|
1130
|
+
|
1129
1131
|
if found_comma
|
1130
1132
|
if needs_trailing_newline
|
1131
1133
|
write "," if trailing_commas && !block_arg
|
1132
1134
|
|
1133
1135
|
next_token
|
1136
|
+
heredoc_needs_newline = !newline?
|
1134
1137
|
indent(next_indent) do
|
1135
1138
|
consume_end_of_line
|
1136
1139
|
end
|
@@ -1142,7 +1145,7 @@ class Rufo::Formatter
|
|
1142
1145
|
end
|
1143
1146
|
|
1144
1147
|
if newline? || comment?
|
1145
|
-
if needs_trailing_newline
|
1148
|
+
if needs_trailing_newline && !@last_was_heredoc
|
1146
1149
|
write "," if trailing_commas && want_trailing_comma
|
1147
1150
|
|
1148
1151
|
indent(next_indent) do
|
@@ -1154,7 +1157,7 @@ class Rufo::Formatter
|
|
1154
1157
|
end
|
1155
1158
|
else
|
1156
1159
|
if needs_trailing_newline && !found_comma
|
1157
|
-
write "," if trailing_commas && want_trailing_comma
|
1160
|
+
write "," if trailing_commas && want_trailing_comma && !@last_was_heredoc
|
1158
1161
|
consume_end_of_line
|
1159
1162
|
write_indent
|
1160
1163
|
end
|
@@ -1169,8 +1172,9 @@ class Rufo::Formatter
|
|
1169
1172
|
call_info << @line
|
1170
1173
|
end
|
1171
1174
|
|
1172
|
-
if @last_was_heredoc
|
1175
|
+
if @last_was_heredoc && heredoc_needs_newline
|
1173
1176
|
write_line
|
1177
|
+
write_indent
|
1174
1178
|
end
|
1175
1179
|
consume_token :on_rparen
|
1176
1180
|
end
|
data/lib/rufo/version.rb
CHANGED
data/rufo.gemspec
CHANGED
@@ -20,12 +20,13 @@ Gem::Specification.new do |spec|
|
|
20
20
|
spec.bindir = "exe"
|
21
21
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
22
22
|
spec.require_paths = ["lib"]
|
23
|
-
spec.required_ruby_version = ">= 2.
|
23
|
+
spec.required_ruby_version = ">= 2.6.0"
|
24
24
|
|
25
25
|
spec.add_development_dependency "bundler", ">= 1.15"
|
26
26
|
spec.add_development_dependency "byebug", "~> 11.0.1"
|
27
27
|
spec.add_development_dependency "guard-rspec", "~> 4.0"
|
28
28
|
spec.add_development_dependency "rake", "~> 13.0"
|
29
|
+
spec.add_development_dependency "rexml", "~> 3.2.5"
|
29
30
|
spec.add_development_dependency "rspec", "~> 3.0"
|
30
31
|
spec.add_development_dependency "rspec_junit_formatter", "~> 0.4.1"
|
31
32
|
spec.add_development_dependency "rubocop", "~> 0.79.0"
|
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.
|
4
|
+
version: 0.13.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ary Borenszweig
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-05-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -66,6 +66,20 @@ dependencies:
|
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '13.0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rexml
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 3.2.5
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 3.2.5
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
84
|
name: rspec
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -180,7 +194,7 @@ homepage: https://github.com/ruby-formatter/rufo
|
|
180
194
|
licenses:
|
181
195
|
- MIT
|
182
196
|
metadata: {}
|
183
|
-
post_install_message:
|
197
|
+
post_install_message:
|
184
198
|
rdoc_options: []
|
185
199
|
require_paths:
|
186
200
|
- lib
|
@@ -188,15 +202,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
188
202
|
requirements:
|
189
203
|
- - ">="
|
190
204
|
- !ruby/object:Gem::Version
|
191
|
-
version: 2.
|
205
|
+
version: 2.6.0
|
192
206
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
193
207
|
requirements:
|
194
208
|
- - ">="
|
195
209
|
- !ruby/object:Gem::Version
|
196
210
|
version: '0'
|
197
211
|
requirements: []
|
198
|
-
rubygems_version: 3.
|
199
|
-
signing_key:
|
212
|
+
rubygems_version: 3.2.17
|
213
|
+
signing_key:
|
200
214
|
specification_version: 4
|
201
215
|
summary: Ruby code formatter
|
202
216
|
test_files: []
|