runger_style 5.21.0 → 5.21.1
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/CHANGELOG.md +3 -0
- data/Gemfile.lock +4 -4
- data/bin/githooks/pre-push +1 -0
- data/lib/runger_style/cops/default/multiline_method_arguments_line_breaks.rb +41 -3
- data/lib/runger_style/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: a5818d244e31d35e3826b6cea74e9ea4fe862fe8a0c59933a27016709f5b086b
|
|
4
|
+
data.tar.gz: 2e67636a5ceb7b998bd34ffa7071b5dd259baeed8f2331751b6069504dbe1786
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8368b1ed1b60abd12004d3b95b2a82348cac4675aacd1e8f0cf1a87cc9220ec4e71345c786837190b8a561a0a07898a74906b4bc03c9925138667a13dda85362
|
|
7
|
+
data.tar.gz: 558d2939a86654bf02c87f9011bea619b342a41f1a9e88b27dc7a41f51d9d857448e540e89dd6eecdfc892e979edd1b32217daa591c1cf80faec48d37051d7bf
|
data/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
## Unreleased
|
|
2
2
|
[no unreleased changes yet]
|
|
3
3
|
|
|
4
|
+
## v5.21.1 (2026-09-20)
|
|
5
|
+
- [default] Fix invalid `RungerStyle/MultilineMethodArgumentsLineBreaks` autocorrection for indexed assignments.
|
|
6
|
+
|
|
4
7
|
## v5.21.0 (2026-09-18)
|
|
5
8
|
- [default] Change `Style/EmptyMethod` enforced style to `expanded`.
|
|
6
9
|
|
data/Gemfile.lock
CHANGED
|
@@ -10,7 +10,7 @@ GIT
|
|
|
10
10
|
PATH
|
|
11
11
|
remote: .
|
|
12
12
|
specs:
|
|
13
|
-
runger_style (5.21.
|
|
13
|
+
runger_style (5.21.1)
|
|
14
14
|
prism (>= 0.24.0)
|
|
15
15
|
rubocop (>= 1.72.0)
|
|
16
16
|
|
|
@@ -41,7 +41,7 @@ GEM
|
|
|
41
41
|
erb (6.0.7)
|
|
42
42
|
i18n (1.15.2)
|
|
43
43
|
concurrent-ruby (~> 1.0)
|
|
44
|
-
io-console (0.9.
|
|
44
|
+
io-console (0.9.4)
|
|
45
45
|
irb (1.18.0)
|
|
46
46
|
pp (>= 0.6.0)
|
|
47
47
|
prism (>= 1.3.0)
|
|
@@ -193,7 +193,7 @@ CHECKSUMS
|
|
|
193
193
|
drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373
|
|
194
194
|
erb (6.0.7) sha256=c5ca6dc25b0ef974a44dc8f59fe847577122483b1968a38dec305c60bf91ee92
|
|
195
195
|
i18n (1.15.2) sha256=00f9eb62412fe593b2a65a97daa75300d37abb8f7202ec748e94b6d46a9dd1b5
|
|
196
|
-
io-console (0.9.
|
|
196
|
+
io-console (0.9.4) sha256=a403304f32928ee85e56d457b4612ca43f2703b561a3258844992bd24085fbb1
|
|
197
197
|
irb (1.18.0) sha256=de9454a0703a54704b9811a5ef31a60c86949fbf4013fcf244fabc7c775248e3
|
|
198
198
|
json (3.0.2) sha256=8e6d7e7b11384c21230430cef90b71f14849a34a1f4452796670f7c981bd19df
|
|
199
199
|
language_server-protocol (3.17.0.6) sha256=5ef2c0c138f8267e1bc631d3328347d354f96724b0af22f2c79516120443b7f0
|
|
@@ -235,7 +235,7 @@ CHECKSUMS
|
|
|
235
235
|
ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33
|
|
236
236
|
runger_byebug (11.4.0) sha256=569e22ba2215f57e7f69e145fcb63be401e29fcd312f7936d813e12d0c7bbee6
|
|
237
237
|
runger_release_assistant (4.3.1) sha256=3246c925240739eb12b9e6b9526a77ea00fcf0a0941441ff5ffacefb7e3e4d83
|
|
238
|
-
runger_style (5.21.
|
|
238
|
+
runger_style (5.21.1)
|
|
239
239
|
securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1
|
|
240
240
|
slop (4.10.1) sha256=844322b5ffcf17ed4815fdb173b04a20dd82b4fd93e3744c88c8fafea696d9c7
|
|
241
241
|
tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f
|
data/bin/githooks/pre-push
CHANGED
|
@@ -27,9 +27,11 @@ module RungerStyle # rubocop:disable Style/ClassAndModuleChildren
|
|
|
27
27
|
separator = separator_range(arg1, arg2)
|
|
28
28
|
|
|
29
29
|
add_offense(separator, message: MSG) do |corrector|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
corrector.replace(separator, correction_replacement(node, arg1, arg2))
|
|
31
|
+
|
|
32
|
+
if indexed_assignment_rhs?(node, arg2)
|
|
33
|
+
indent_continuation_lines(corrector, arg2)
|
|
34
|
+
end
|
|
33
35
|
end
|
|
34
36
|
end
|
|
35
37
|
end
|
|
@@ -51,6 +53,42 @@ module RungerStyle # rubocop:disable Style/ClassAndModuleChildren
|
|
|
51
53
|
arg.source_range.source_line[/^\s*/]
|
|
52
54
|
end
|
|
53
55
|
|
|
56
|
+
def correction_replacement(node, arg1, arg2)
|
|
57
|
+
if indexed_assignment_rhs?(node, arg2)
|
|
58
|
+
indexed_assignment_replacement(node, arg1)
|
|
59
|
+
else
|
|
60
|
+
base_indent = base_indentation(arg1)
|
|
61
|
+
",\n#{base_indent}"
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
def indexed_assignment_rhs?(node, arg2)
|
|
66
|
+
node.method_name == :[]= && node.arguments.last.equal?(arg2)
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
def indexed_assignment_replacement(node, arg1)
|
|
70
|
+
assignment =
|
|
71
|
+
range_between(arg1.source_range.end_pos, node.loc.operator.end_pos).source.rstrip
|
|
72
|
+
indentation = ' ' * indentation_width
|
|
73
|
+
|
|
74
|
+
"#{assignment}\n#{base_indentation(arg1)}#{indentation}"
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
def indent_continuation_lines(corrector, arg)
|
|
78
|
+
buffer = arg.source_range.source_buffer
|
|
79
|
+
indentation = ' ' * indentation_width
|
|
80
|
+
|
|
81
|
+
(arg.source_range.line + 1).upto(arg.source_range.last_line) do |line|
|
|
82
|
+
line_start = buffer.line_range(line).begin_pos
|
|
83
|
+
line_start_range = Parser::Source::Range.new(buffer, line_start, line_start)
|
|
84
|
+
corrector.insert_before(line_start_range, indentation)
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
def indentation_width
|
|
89
|
+
config.for_cop('Layout/IndentationWidth')['Width'] || 2
|
|
90
|
+
end
|
|
91
|
+
|
|
54
92
|
def separator_range(arg1, arg2)
|
|
55
93
|
range_between(arg1.source_range.end_pos, arg2.source_range.begin_pos)
|
|
56
94
|
end
|
data/lib/runger_style/version.rb
CHANGED