rufo 0.18.0 → 0.18.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/.github/workflows/ci.yml +4 -4
- data/CHANGELOG.md +15 -1
- data/Gemfile +11 -0
- data/README.md +1 -1
- data/bin/verify-sample-code +12 -2
- data/lib/rufo/formatter.rb +91 -71
- data/lib/rufo/version.rb +1 -1
- data/rufo.gemspec +0 -11
- metadata +4 -144
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f4dd74a9e383128ba24cedbdfc7f008332f3a540ab89f9a5ab33be306413269a
|
4
|
+
data.tar.gz: f725c8a39471a92251294a041a9ae63dcefab5f55614b4ed3215cf11bfb29c4e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a59736abaa4d40516afea2e130c835da5683ac17fbe34f540f64c61ad7a4051c3ba02c05b846b90d97438c6bb0909922261463b3d62003931fde81140ab74295
|
7
|
+
data.tar.gz: 73bb9af67241c6552de2a3a6610d406c5566c50a5e473b753fbd18741d589a9009f6f2578754220456098f92cc91f4f457a29f3c95e51c89b16c8f5f671312b3
|
data/.github/workflows/ci.yml
CHANGED
@@ -13,10 +13,10 @@ jobs:
|
|
13
13
|
runs-on: ubuntu-latest
|
14
14
|
strategy:
|
15
15
|
matrix:
|
16
|
-
ruby_version: ['3.3', '3.2', '3.1', '3.0']
|
16
|
+
ruby_version: ['3.4', '3.3', '3.2', '3.1', '3.0']
|
17
17
|
|
18
18
|
steps:
|
19
|
-
- uses: actions/checkout@
|
19
|
+
- uses: actions/checkout@v4
|
20
20
|
|
21
21
|
- name: Setup Ruby
|
22
22
|
uses: ruby/setup-ruby@v1
|
@@ -36,7 +36,7 @@ jobs:
|
|
36
36
|
--format progress
|
37
37
|
|
38
38
|
- name: Upload code coverage
|
39
|
-
uses: codecov/codecov-action@
|
39
|
+
uses: codecov/codecov-action@v4
|
40
40
|
with:
|
41
41
|
files: ./coverage/coverage.xml
|
42
42
|
|
@@ -53,7 +53,7 @@ jobs:
|
|
53
53
|
bin/verify-sample-code
|
54
54
|
|
55
55
|
- name: Save test results
|
56
|
-
uses: actions/upload-artifact@
|
56
|
+
uses: actions/upload-artifact@v4
|
57
57
|
if: always()
|
58
58
|
with:
|
59
59
|
name: coverage-ruby-${{ matrix.ruby_version }}
|
data/CHANGELOG.md
CHANGED
@@ -12,10 +12,24 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
12
12
|
|
13
13
|
### Added
|
14
14
|
|
15
|
+
## [0.18.1] - 2025-02-22
|
16
|
+
|
17
|
+
### Fixed
|
18
|
+
- Fix error when formatting pattern matching syntax. ([#325](https://github.com/ruby-formatter/rufo/pull/325))
|
19
|
+
- Fix bug for toplevel Array literal and Hash literal indentation. ([#327](https://github.com/ruby-formatter/rufo/pull/327))
|
20
|
+
- Fix bug for inline pattern matching to case expression. ([#338](https://github.com/ruby-formatter/rufo/pull/338))
|
21
|
+
- Fix bug for heredoc indentation. ([#342](https://github.com/ruby-formatter/rufo/pull/342))
|
22
|
+
- Fix bug for passing anonymous block arg. ([#332](https://github.com/ruby-formatter/rufo/issues/332))
|
23
|
+
|
24
|
+
### Changed
|
25
|
+
|
26
|
+
### Added
|
27
|
+
- Add Ruby 3.4 to test runs on CI. ([#337](https://github.com/ruby-formatter/rufo/pull/337))
|
28
|
+
|
15
29
|
## [0.18.0] - 2024-05-30
|
16
30
|
|
17
31
|
### Fixed
|
18
|
-
- Fix error when formatting ERB ([#
|
32
|
+
- Fix error when formatting ERB ([#323](https://github.com/ruby-formatter/rufo/pull/323))
|
19
33
|
|
20
34
|
### Changed
|
21
35
|
- Dropped support for Ruby 2.7 as it is end of life.
|
data/Gemfile
CHANGED
@@ -2,3 +2,14 @@ source "https://rubygems.org"
|
|
2
2
|
|
3
3
|
# Specify your gem's dependencies in rufo.gemspec
|
4
4
|
gemspec
|
5
|
+
|
6
|
+
# Development dependencies
|
7
|
+
gem "bundler", ">= 1.15"
|
8
|
+
gem "debug", ">= 1.0.0"
|
9
|
+
gem "guard-rspec", "~> 4.0"
|
10
|
+
gem "rake", "~> 13.0"
|
11
|
+
gem "rspec", "~> 3.0"
|
12
|
+
gem "rspec_junit_formatter", "~> 0.6.0"
|
13
|
+
gem "rubocop", "~> 1.69.2"
|
14
|
+
gem "simplecov", "~> 0.22.0"
|
15
|
+
gem "simplecov-cobertura", "~> 2.1"
|
data/README.md
CHANGED
@@ -12,7 +12,7 @@ Unlike the best known Ruby formatter [RuboCop](https://github.com/bbatsov/ruboco
|
|
12
12
|
|
13
13
|
RuboCop does much more than just format code though, so feel free to run them both!
|
14
14
|
|
15
|
-
Rufo supports all Ruby versions >=
|
15
|
+
Rufo supports all Ruby versions >= 3.0.0.
|
16
16
|
|
17
17
|
## Installation
|
18
18
|
|
data/bin/verify-sample-code
CHANGED
@@ -1,8 +1,18 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
# frozen_string_literal: true
|
3
3
|
repos = {
|
4
|
-
"rspec/rspec-
|
5
|
-
|
4
|
+
"rspec/rspec-core" => {
|
5
|
+
"--exclude-pattern" => [
|
6
|
+
"spec/rspec/core/world_spec.rb",
|
7
|
+
"spec/rspec/core/formatters/exception_presenter_spec.rb",
|
8
|
+
"spec/rspec/core/formatters/snippet_extractor_spec.rb",
|
9
|
+
"spec/rspec/core/metadata_spec.rb",
|
10
|
+
"spec/rspec/core/formatters/html_formatter_spec.rb",
|
11
|
+
"spec/rspec/core/formatters/progress_formatter_spec.rb",
|
12
|
+
"spec/rspec/core/formatters_spec.rb",
|
13
|
+
"spec/rspec/core/formatters/documentation_formatter_spec.rb",
|
14
|
+
].join(","),
|
15
|
+
},
|
6
16
|
}
|
7
17
|
|
8
18
|
def run_command(cmd, allowed_statuses: [0])
|
data/lib/rufo/formatter.rb
CHANGED
@@ -252,23 +252,22 @@ class Rufo::Formatter
|
|
252
252
|
next_token
|
253
253
|
else
|
254
254
|
# For heredocs with tilde we sometimes need to align the contents
|
255
|
-
if heredoc && tilde
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
255
|
+
if heredoc && tilde
|
256
|
+
while (current_token_kind == :on_ignored_sp) ||
|
257
|
+
(current_token_kind == :on_tstring_content)
|
258
|
+
if @last_was_newline && current_token_value != "\n"
|
259
|
+
write_indent(next_indent)
|
260
|
+
@last_was_newline = false
|
261
|
+
end
|
262
|
+
if current_token_kind == :on_ignored_sp
|
263
|
+
skip_ignored_space
|
264
|
+
else
|
265
|
+
consume_token current_token_kind
|
266
|
+
end
|
265
267
|
end
|
266
268
|
else
|
267
269
|
while (current_token_kind == :on_ignored_sp) ||
|
268
|
-
(current_token_kind == :on_tstring_content)
|
269
|
-
(current_token_kind == :on_embexpr_beg)
|
270
|
-
check current_token_kind
|
271
|
-
break if current_token_kind == :on_embexpr_beg
|
270
|
+
(current_token_kind == :on_tstring_content)
|
272
271
|
consume_token current_token_kind
|
273
272
|
end
|
274
273
|
end
|
@@ -1084,7 +1083,7 @@ class Rufo::Formatter
|
|
1084
1083
|
# Check if there's a block arg and if the call ends with hash key/values
|
1085
1084
|
if args_node[0] == :args_add_block
|
1086
1085
|
_, args, block_arg = args_node
|
1087
|
-
want_trailing_comma =
|
1086
|
+
want_trailing_comma = block_arg_type(block_arg) == :no_arg
|
1088
1087
|
if args.is_a?(Array) && (last_arg = args.last) && last_arg.is_a?(Array) &&
|
1089
1088
|
last_arg[0].is_a?(Symbol) && last_arg[0] != :bare_assoc_hash
|
1090
1089
|
want_trailing_comma = false
|
@@ -1476,11 +1475,7 @@ class Rufo::Formatter
|
|
1476
1475
|
visit_comma_separated_list args
|
1477
1476
|
end
|
1478
1477
|
|
1479
|
-
|
1480
|
-
# - named => node
|
1481
|
-
# - anonymous => nil
|
1482
|
-
# - no arg => false
|
1483
|
-
if block_arg || block_arg.nil?
|
1478
|
+
if block_arg_type(block_arg) != :no_arg
|
1484
1479
|
skip_space_or_newline
|
1485
1480
|
|
1486
1481
|
if comma?
|
@@ -2209,14 +2204,14 @@ class Rufo::Formatter
|
|
2209
2204
|
|
2210
2205
|
_, elements = node
|
2211
2206
|
|
2212
|
-
|
2207
|
+
base_column = @column
|
2213
2208
|
|
2214
2209
|
check :on_lbracket
|
2215
2210
|
write "["
|
2216
2211
|
next_token
|
2217
2212
|
|
2218
2213
|
if elements
|
2219
|
-
visit_literal_elements to_ary(elements), inside_array: true, token_column:
|
2214
|
+
visit_literal_elements to_ary(elements), inside_array: true, token_column: base_column
|
2220
2215
|
else
|
2221
2216
|
skip_space_or_newline
|
2222
2217
|
end
|
@@ -2326,7 +2321,7 @@ class Rufo::Formatter
|
|
2326
2321
|
def visit_hash(node)
|
2327
2322
|
# [:hash, elements]
|
2328
2323
|
_, elements = node
|
2329
|
-
|
2324
|
+
base_column = @column
|
2330
2325
|
|
2331
2326
|
closing_brace_token, _ = find_closing_brace_token
|
2332
2327
|
need_space = need_space_for_hash?(node, node[1], closing_brace_token)
|
@@ -2340,7 +2335,7 @@ class Rufo::Formatter
|
|
2340
2335
|
if elements
|
2341
2336
|
# [:assoclist_from_args, elements]
|
2342
2337
|
push_hash(node) do
|
2343
|
-
visit_literal_elements(elements[1], inside_hash: true, token_column:
|
2338
|
+
visit_literal_elements(elements[1], inside_hash: true, token_column: base_column)
|
2344
2339
|
end
|
2345
2340
|
char_after_brace = @output[brace_position + 1]
|
2346
2341
|
# Check that need_space is set correctly.
|
@@ -2713,7 +2708,7 @@ class Rufo::Formatter
|
|
2713
2708
|
base_column = @column
|
2714
2709
|
base_line = @line
|
2715
2710
|
needs_final_space = (inside_hash || inside_array) && space?
|
2716
|
-
|
2711
|
+
skip_space
|
2717
2712
|
|
2718
2713
|
if inside_hash
|
2719
2714
|
needs_final_space = false
|
@@ -2925,11 +2920,19 @@ class Rufo::Formatter
|
|
2925
2920
|
|
2926
2921
|
# If node is inline pattern matching, case_expression will be false
|
2927
2922
|
case_expression = keyword?("case")
|
2923
|
+
already_visit_cond = false
|
2928
2924
|
if case_expression
|
2929
|
-
|
2925
|
+
if cond && cond[0] == :case
|
2926
|
+
visit cond
|
2927
|
+
# In this case, the `case` token is for the `cond`, but not for `node`
|
2928
|
+
case_expression = false
|
2929
|
+
already_visit_cond = true
|
2930
|
+
else
|
2931
|
+
consume_keyword "case"
|
2932
|
+
end
|
2930
2933
|
end
|
2931
2934
|
|
2932
|
-
if cond
|
2935
|
+
if cond && !already_visit_cond
|
2933
2936
|
consume_space
|
2934
2937
|
visit cond
|
2935
2938
|
end
|
@@ -3084,46 +3087,75 @@ class Rufo::Formatter
|
|
3084
3087
|
_, const_ref, pre_rest, rest, post_rest = node
|
3085
3088
|
|
3086
3089
|
if const_ref
|
3087
|
-
|
3090
|
+
visit const_ref
|
3088
3091
|
end
|
3089
3092
|
|
3093
|
+
left_paren_token, right_paren_token = if current_token_kind == :on_lparen
|
3094
|
+
%i[on_lparen on_rparen]
|
3095
|
+
elsif current_token_kind == :on_lbracket
|
3096
|
+
%i[on_lbracket on_rbracket]
|
3097
|
+
else
|
3098
|
+
[]
|
3099
|
+
end
|
3100
|
+
|
3090
3101
|
# pattern is [*]
|
3091
3102
|
if !pre_rest && !post_rest && rest == [:var_field, nil]
|
3092
|
-
|
3103
|
+
if left_paren_token
|
3104
|
+
consume_token left_paren_token
|
3105
|
+
end
|
3106
|
+
|
3093
3107
|
skip_space_or_newline
|
3094
3108
|
consume_op "*"
|
3095
3109
|
skip_space_or_newline
|
3096
|
-
|
3110
|
+
|
3111
|
+
if right_paren_token
|
3112
|
+
consume_token right_paren_token
|
3113
|
+
end
|
3097
3114
|
return
|
3098
3115
|
end
|
3099
3116
|
|
3100
3117
|
token_column = current_token_column
|
3101
3118
|
|
3102
|
-
|
3103
|
-
|
3104
|
-
consume_token :on_lbracket
|
3119
|
+
if left_paren_token
|
3120
|
+
consume_token left_paren_token
|
3105
3121
|
skip_space
|
3106
3122
|
end
|
3107
3123
|
|
3108
|
-
|
3124
|
+
newline = newline?
|
3125
|
+
wrote_comma = false
|
3109
3126
|
if pre_rest
|
3110
|
-
|
3111
|
-
|
3112
|
-
end
|
3127
|
+
visit_comma_separated_list pre_rest
|
3128
|
+
skip_space
|
3113
3129
|
|
3114
|
-
|
3115
|
-
|
3116
|
-
if write_comma
|
3130
|
+
if comma?
|
3131
|
+
check :on_comma
|
3117
3132
|
write ","
|
3118
|
-
|
3119
|
-
|
3133
|
+
next_token
|
3134
|
+
skip_space
|
3135
|
+
wrote_comma = true
|
3136
|
+
end
|
3137
|
+
if newline
|
3120
3138
|
skip_space_or_newline
|
3139
|
+
write_line
|
3140
|
+
write_indent
|
3121
3141
|
end
|
3142
|
+
end
|
3122
3143
|
|
3123
|
-
|
3124
|
-
if
|
3125
|
-
|
3144
|
+
if rest
|
3145
|
+
if wrote_comma
|
3146
|
+
consume_space
|
3126
3147
|
end
|
3148
|
+
|
3149
|
+
# pattern like `[a,]` will make `rest` as `[:var_field, nil]`
|
3150
|
+
if (var_name_node = rest[1]) || current_token_value == "*"
|
3151
|
+
consume_op "*"
|
3152
|
+
if var_name_node
|
3153
|
+
visit rest
|
3154
|
+
end
|
3155
|
+
end
|
3156
|
+
elsif wrote_comma && !newline?
|
3157
|
+
# In Ruby 3.3, rest is nil when the code is like `[a,]`. Insert a space after comma at here.
|
3158
|
+
consume_space
|
3127
3159
|
end
|
3128
3160
|
|
3129
3161
|
if post_rest
|
@@ -3133,36 +3165,13 @@ class Rufo::Formatter
|
|
3133
3165
|
consume_space
|
3134
3166
|
next_token
|
3135
3167
|
|
3136
|
-
visit_literal_elements post_rest, inside_array: true, token_column: token_column, keep_final_newline: !
|
3137
|
-
end
|
3138
|
-
|
3139
|
-
skip_space
|
3140
|
-
if has_bracket
|
3141
|
-
consume_token :on_rbracket
|
3142
|
-
end
|
3143
|
-
end
|
3144
|
-
|
3145
|
-
def visit_constant_pattern(node)
|
3146
|
-
# [:aryptn, const_ref, args]
|
3147
|
-
_, const_ref, args = node
|
3148
|
-
|
3149
|
-
visit const_ref
|
3150
|
-
|
3151
|
-
parens = current_token_kind == :on_lparen
|
3152
|
-
if parens
|
3153
|
-
consume_token :on_lparen
|
3154
|
-
else
|
3155
|
-
consume_token :on_lbracket
|
3168
|
+
visit_literal_elements post_rest, inside_array: true, token_column: token_column, keep_final_newline: !left_paren_token
|
3156
3169
|
end
|
3157
3170
|
|
3158
3171
|
skip_space
|
3159
|
-
visit_comma_separated_list args
|
3160
3172
|
|
3161
|
-
|
3162
|
-
|
3163
|
-
consume_token :on_rparen
|
3164
|
-
else
|
3165
|
-
consume_token :on_rbracket
|
3173
|
+
if right_paren_token
|
3174
|
+
consume_token right_paren_token
|
3166
3175
|
end
|
3167
3176
|
end
|
3168
3177
|
|
@@ -4194,4 +4203,15 @@ class Rufo::Formatter
|
|
4194
4203
|
node[2][0]
|
4195
4204
|
end
|
4196
4205
|
end
|
4206
|
+
|
4207
|
+
def block_arg_type(node)
|
4208
|
+
case node
|
4209
|
+
when nil
|
4210
|
+
:anonymous
|
4211
|
+
when false
|
4212
|
+
:no_arg
|
4213
|
+
else
|
4214
|
+
node
|
4215
|
+
end
|
4216
|
+
end
|
4197
4217
|
end
|
data/lib/rufo/version.rb
CHANGED
data/rufo.gemspec
CHANGED
@@ -22,15 +22,4 @@ Gem::Specification.new do |spec|
|
|
22
22
|
spec.require_paths = ["lib"]
|
23
23
|
spec.required_ruby_version = ">= 3.0.0"
|
24
24
|
spec.metadata["rubygems_mfa_required"] = "true"
|
25
|
-
|
26
|
-
spec.add_development_dependency "bundler", ">= 1.15"
|
27
|
-
spec.add_development_dependency "byebug", "~> 11.1.3"
|
28
|
-
spec.add_development_dependency "guard-rspec", "~> 4.0"
|
29
|
-
spec.add_development_dependency "rake", "~> 13.0"
|
30
|
-
spec.add_development_dependency "rexml", "~> 3.2.5"
|
31
|
-
spec.add_development_dependency "rspec", "~> 3.0"
|
32
|
-
spec.add_development_dependency "rspec_junit_formatter", "~> 0.6.0"
|
33
|
-
spec.add_development_dependency "rubocop", "~> 1.44.1"
|
34
|
-
spec.add_development_dependency "simplecov", "~> 0.22.0"
|
35
|
-
spec.add_development_dependency "simplecov-cobertura", "~> 2.1"
|
36
25
|
end
|
metadata
CHANGED
@@ -1,155 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rufo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.18.
|
4
|
+
version: 0.18.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:
|
12
|
-
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: bundler
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - ">="
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '1.15'
|
20
|
-
type: :development
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - ">="
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '1.15'
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: byebug
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - "~>"
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: 11.1.3
|
34
|
-
type: :development
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - "~>"
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: 11.1.3
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: guard-rspec
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - "~>"
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '4.0'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - "~>"
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '4.0'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: rake
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - "~>"
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '13.0'
|
62
|
-
type: :development
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - "~>"
|
67
|
-
- !ruby/object:Gem::Version
|
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
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: rspec
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - "~>"
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '3.0'
|
90
|
-
type: :development
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - "~>"
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '3.0'
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: rspec_junit_formatter
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - "~>"
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: 0.6.0
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - "~>"
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: 0.6.0
|
111
|
-
- !ruby/object:Gem::Dependency
|
112
|
-
name: rubocop
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
114
|
-
requirements:
|
115
|
-
- - "~>"
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: 1.44.1
|
118
|
-
type: :development
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
requirements:
|
122
|
-
- - "~>"
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: 1.44.1
|
125
|
-
- !ruby/object:Gem::Dependency
|
126
|
-
name: simplecov
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
128
|
-
requirements:
|
129
|
-
- - "~>"
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
version: 0.22.0
|
132
|
-
type: :development
|
133
|
-
prerelease: false
|
134
|
-
version_requirements: !ruby/object:Gem::Requirement
|
135
|
-
requirements:
|
136
|
-
- - "~>"
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: 0.22.0
|
139
|
-
- !ruby/object:Gem::Dependency
|
140
|
-
name: simplecov-cobertura
|
141
|
-
requirement: !ruby/object:Gem::Requirement
|
142
|
-
requirements:
|
143
|
-
- - "~>"
|
144
|
-
- !ruby/object:Gem::Version
|
145
|
-
version: '2.1'
|
146
|
-
type: :development
|
147
|
-
prerelease: false
|
148
|
-
version_requirements: !ruby/object:Gem::Requirement
|
149
|
-
requirements:
|
150
|
-
- - "~>"
|
151
|
-
- !ruby/object:Gem::Version
|
152
|
-
version: '2.1'
|
11
|
+
date: 2025-02-22 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
153
13
|
description: Fast and unobtrusive Ruby code formatter
|
154
14
|
email:
|
155
15
|
- asterite@gmail.com
|
@@ -210,7 +70,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
210
70
|
- !ruby/object:Gem::Version
|
211
71
|
version: '0'
|
212
72
|
requirements: []
|
213
|
-
rubygems_version: 3.5.
|
73
|
+
rubygems_version: 3.5.22
|
214
74
|
signing_key:
|
215
75
|
specification_version: 4
|
216
76
|
summary: Ruby code formatter
|