mry 0.50.0.0 → 0.51.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 41406d4a5dba6af9b6a3b7c95eb7495f39b1c5ac
4
- data.tar.gz: dfd1df230426618a98e2c5cfe0ecc1a2166ca106
3
+ metadata.gz: 15b17045e3852894486fa3b095d0536a4eeeb446
4
+ data.tar.gz: 1aa5bb16b8377e503de0b91d1b3f521f5b32940d
5
5
  SHA512:
6
- metadata.gz: 8d4ed71a150c9b37e59968354ee6977f0f225221c2f229e9cb153609828494f7159ba7df4108b8392d82ad7fe370ce47f1f109e9f86eeddba8ec87ad16a30585
7
- data.tar.gz: c485f538ab21a9874bed758d1fa7f627866c93d2c6db25ee2dc250c74f295adba7a14bf1692c3504a0fd76b5230b14ca120a1ec2213bd3758e96fb728e620ff3
6
+ metadata.gz: e47372ddb2b2f9c06fe378b56740bbdf191c30c0bda199152534a9675707cc0a336937cea8d8735868cc355c01baeaed7e83c7b3e26f3d2aa838dbe7d1f0bba3
7
+ data.tar.gz: bf21b7bbb54d800d21a4382415eb21601db68015b37df7fabc9229f85f117c6a51c2bbacca59741b7f2b1be27170c385c094fddc4d22a1d2e3bb7f9c75b52514
data/README.md CHANGED
@@ -34,7 +34,38 @@ $ mry .rubocop.yml
34
34
  Update `.rubocop.yml` to version 0.48.0:
35
35
 
36
36
  ```bash
37
- $ mry --target=0.48.0 .rubocop.yml
37
+ $ mry --target=0.51.0 .rubocop.yml
38
+ ```
39
+
40
+ And you can specify current RuboCop version.
41
+ If you specify current RuboCop version, mry adds cops that are added in new version RuboCop to your `.rubocop.yml`.
42
+ By this feature, you can check new features of RuboCop with mry.
43
+
44
+ ```bash
45
+ $ mry --from=0.50.0 --target=0.51.0 .rubocop.yml
46
+ $ cat .rubocop.yml
47
+ ...
48
+
49
+
50
+ # The following cops are added between 0.50.0 and 0.51.0.
51
+ # The configurations are default.
52
+ # If you want to use a cop by default, remove a configuration for the cop from here.
53
+ # If you want to disable a cop, change `Enabled` to false.
54
+
55
+ # Supports --auto-correct
56
+ Gemspec/OrderedDependencies:
57
+ Description: Dependencies in the gemspec should be alphabetically sorted.
58
+ Enabled: true
59
+ Include:
60
+ - "**/*.gemspec"
61
+ TreatCommentsAsGroupSeparators: true
62
+
63
+ # Supports --auto-correct
64
+ Lint/RedundantWithObject:
65
+ Description: Checks for redundant `with_object`.
66
+ Enabled: true
67
+
68
+ ...
38
69
  ```
39
70
 
40
71
  ### Example
data/lib/mry.rb CHANGED
@@ -1,15 +1,13 @@
1
1
  require 'yaml_rewriter'
2
2
  require 'optparse'
3
+ require 'tmpdir'
4
+ require 'pathname'
3
5
 
4
6
  require "mry/version"
5
- require 'mry/rewriter_master'
6
- require 'mry/rewriter_0_50_0'
7
- require 'mry/rewriter_0_49_0'
8
- require 'mry/rewriter_0_47_0'
9
- require 'mry/rewriter_0_46_0'
10
- require 'mry/rewriter_0'
7
+ require 'mry/rewriters'
11
8
  require 'mry/runner'
12
9
  require 'mry/cli'
10
+ require 'mry/added_cops'
13
11
 
14
12
  module Mry
15
13
  end
@@ -0,0 +1,200 @@
1
+ module Mry
2
+ module AddedCops
3
+ Cops = {
4
+ Gem::Version.new('0.51.0') => %w[
5
+ Rails/UnknownEnv
6
+ Style/StderrPuts
7
+ Lint/UnneededRequireStatement
8
+ Lint/RedundantWithObject
9
+ Style/CommentedKeyword
10
+ Lint/RegexpAsCondition
11
+ Style/MixinUsage
12
+ Style/DateTime
13
+ Gemspec/OrderedDependencies
14
+ ],
15
+ Gem::Version.new('0.50.0') => %w[
16
+ Style/RedundantConditional
17
+ Naming/HeredocDelimiterNaming
18
+ Lint/ReturnInVoidContext
19
+ Lint/BooleanSymbol
20
+ Rails/HasManyOrHasOneDependent
21
+ Style/Dir
22
+ Naming/HeredocDelimiterCase
23
+ Lint/RescueWithoutErrorClass
24
+ Performance/UnfreezeString
25
+ Style/OrAssignment
26
+ Style/ReturnNil
27
+ Lint/UriEscapeUnescape
28
+ Performance/UriDefaultParser
29
+ Lint/UriRegexp
30
+ Style/MinMax
31
+ Bundler/InsecureProtocolSource
32
+ Lint/RedundantWithIndex
33
+ Lint/InterpolationCheck
34
+ ],
35
+ Gem::Version.new('0.49.0') => %w[
36
+ Rails/ApplicationJob
37
+ Rails/ApplicationRecord
38
+ Performance/Caller
39
+ Style/FormatStringToken
40
+ Lint/ScriptPermission
41
+ Style/YodaCondition
42
+ Style/MultipleComparison
43
+ Lint/RescueType
44
+ ],
45
+ Gem::Version.new('0.48.0') => %w[
46
+ Performance/DoubleStartEndWith
47
+ Style/EmptyLineAfterMagicComment
48
+ Style/MixinGrouping
49
+ Style/EmptyLinesAroundBeginBody
50
+ Style/EmptyLinesAroundExceptionHandlingKeywords
51
+ Rails/RelativeDateConstant
52
+ Style/IndentHeredoc
53
+ Style/InverseMethods
54
+ Rails/ActiveSupportAliases
55
+ Lint/AmbiguousBlockAssociation
56
+ Rails/Blank
57
+ Rails/Present
58
+ ],
59
+ Gem::Version.new('0.47.0') => %w[
60
+ Lint/MultipleCompare
61
+ Lint/SafeNavigationChain
62
+ Security/MarshalLoad
63
+ Security/YAMLLoad
64
+ Performance/RegexpMatch
65
+ Rails/FilePath
66
+ Rails/SkipsModelValidations
67
+ Style/MethodCallWithArgsParentheses
68
+ Rails/ReversibleMigration
69
+ ],
70
+ Gem::Version.new('0.46.0') => %w[
71
+ Bundler/DuplicatedGem
72
+ Style/EmptyMethod
73
+ Rails/EnumUniqueness
74
+ Bundler/OrderedGems
75
+ ],
76
+ Gem::Version.new('0.45.0') => %w[
77
+ Lint/DuplicateCaseCondition
78
+ Lint/EmptyWhen
79
+ Style/MultilineIfModifier
80
+ Style/SpaceInLambdaLiteral
81
+ Lint/EmptyExpression
82
+ ],
83
+ Gem::Version.new('0.44.0') => %w[
84
+ Rails/HttpPositionalArguments
85
+ Metrics/BlockLength
86
+ Rails/DynamicFindBy
87
+ Rails/DelegateAllowBlank
88
+ Style/MultilineMemoization
89
+ ],
90
+ Gem::Version.new('0.43.0') => %w[
91
+ Style/DocumentationMethod
92
+ Rails/SafeNavigation
93
+ Rails/NotNullColumn
94
+ Style/VariableNumber
95
+ Security/JSONLoad
96
+ Style/SafeNavigation
97
+ Performance/SortWithBlock
98
+ Lint/UnifiedInteger
99
+ ],
100
+ Gem::Version.new('0.42.0') => %w[
101
+ Style/TernaryParentheses
102
+ Style/MethodMissing
103
+ Rails/SaveBang
104
+ Style/NumericPredicate
105
+ ],
106
+ Gem::Version.new('0.41.0') => %w[
107
+ Style/SpaceInsidePercentLiteralDelimiters
108
+ Style/SpaceInsideArrayPercentLiteral
109
+ Style/NumericLiteralPrefix
110
+ Style/ImplicitRuntimeError
111
+ Style/EachForSimpleLoop
112
+ Lint/ShadowedException
113
+ Lint/PercentSymbolArray
114
+ Lint/PercentStringArray
115
+ Lint/InheritException
116
+ Performance/PushSplat
117
+ Rails/RequestReferer
118
+ Rails/OutputSafety
119
+ Rails/Exit
120
+ ],
121
+ }.freeze
122
+
123
+ class RuboCopVersionMismatchError < StandardError
124
+ def initialize(expected:)
125
+ @expected = expected
126
+ end
127
+
128
+ def message
129
+ <<~MES
130
+
131
+ `require 'rubocop'` is failed because mry can't find rubocop v#{@expected}.
132
+ Execute `gem install rubocop -v #{@expected}`.
133
+ Or update rubocop version in your Gemfile, and execute `bundle install` if you use `bundle exec`.
134
+
135
+ MES
136
+ end
137
+ end
138
+
139
+ class << self
140
+ def added_cops_yaml(from:, to:)
141
+ begin
142
+ gem 'rubocop', "= #{to}"
143
+ require 'rubocop'
144
+ rescue Gem::MissingSpecVersionError, Gem::LoadError
145
+ raise RuboCopVersionMismatchError.new(expected: to)
146
+ end
147
+ cops = added_cops(from: from, to: to)
148
+ return if cops.empty?
149
+
150
+ in_tmpdir do
151
+ stdout do
152
+ RuboCop::CLI.new.run(['--show-cops', cops.join(',')])
153
+ end
154
+ end
155
+ end
156
+
157
+ def added_cops(from:, to:)
158
+ range = from..to
159
+ Cops
160
+ .flat_map {|key, cops| range.cover?(key) && from != key ? cops : [] }
161
+ .map {|cop| update_name(cop: cop, to: to) }
162
+ end
163
+
164
+ private
165
+
166
+ def update_name(cop:, to:)
167
+ rewriters, reverse_rewriters = *Rewriters.rewriters(to)
168
+ reverse_rewriters.each do |rew|
169
+ rew.rules.each do |rule|
170
+ cop = rule.replacement(cop, reverse: true) if rule.match?([cop], reverse: true)
171
+ end
172
+ end
173
+ rewriters.each do |rew|
174
+ rew.rules.each do |rule|
175
+ cop = rule.replacement(cop, reverse: false) if rule.match?([cop], reverse: false)
176
+ end
177
+ end
178
+
179
+ cop
180
+ end
181
+
182
+ def stdout(&block)
183
+ stdout_back = $stdout
184
+ $stdout = StringIO.new
185
+ block.call
186
+ $stdout.string
187
+ ensure
188
+ $stdout = stdout_back
189
+ end
190
+
191
+ def in_tmpdir(&block)
192
+ Dir.mktmpdir do |dir|
193
+ Dir.chdir(dir) do
194
+ block.call(Pathname(dir))
195
+ end
196
+ end
197
+ end
198
+ end
199
+ end
200
+ end
data/lib/mry/cli.rb CHANGED
@@ -9,7 +9,7 @@ module Mry
9
9
  puts option.help
10
10
  return 1
11
11
  end
12
- Runner.run(argv, @target)
12
+ Runner.run(argv, to: @target, from: @from)
13
13
  return 0
14
14
  end
15
15
 
@@ -18,6 +18,7 @@ module Mry
18
18
 
19
19
  def parse_option(argv)
20
20
  @target = Gem::Version.new('1000000')
21
+ @from = nil
21
22
  option.parse!(argv)
22
23
  end
23
24
 
@@ -32,6 +33,10 @@ module Mry
32
33
  Gem::Version.new(t)
33
34
  end
34
35
  end
36
+
37
+ opt.on('--from=CURRENT_VERSION') do |t|
38
+ @from = Gem::Version.new(t)
39
+ end
35
40
  end
36
41
  end
37
42
  end
@@ -0,0 +1,169 @@
1
+ module Mry
2
+ module Rewriters
3
+ class Rewriter_Master < YAMLRewriter::Rewriter
4
+ end
5
+
6
+ class Rewriter_0_51_0 < YAMLRewriter::Rewriter
7
+ define_rule ['Lint/LiteralInCondition' => 'Lint/LiteralAsCondition']
8
+ end
9
+
10
+ class Rewriter_0_50_0 < YAMLRewriter::Rewriter
11
+ define_rule ['Style/AccessorMethodName' => 'Naming/AccessorMethodName']
12
+ define_rule ['Style/AsciiIdentifiers' => 'Naming/AsciiIdentifiers']
13
+ define_rule ['Style/OpMethod' => 'Naming/BinaryOperatorParameterName']
14
+ define_rule ['Style/ClassAndModuleCamelCase' => 'Naming/ClassAndModuleCamelCase']
15
+ define_rule ['Style/ConstantName' => 'Naming/ConstantName']
16
+ define_rule ['Style/FileName' => 'Naming/FileName']
17
+ define_rule ['Style/MethodName' => 'Naming/MethodName']
18
+ define_rule ['Style/PredicateName' => 'Naming/PredicateName']
19
+ define_rule ['Style/VariableName' => 'Naming/VariableName']
20
+ define_rule ['Style/VariableNumber' => 'Naming/VariableNumber']
21
+ end
22
+
23
+ class Rewriter_0_49_0 < YAMLRewriter::Rewriter
24
+ layout_cops = %w[
25
+ Layout/AccessModifierIndentation
26
+ Layout/AlignArray
27
+ Layout/AlignHash
28
+ Layout/AlignParameters
29
+ Layout/BlockEndNewline
30
+ Layout/CaseIndentation
31
+ Layout/ClosingParenthesisIndentation
32
+ Layout/CommentIndentation
33
+ Layout/DotPosition
34
+ Layout/ElseAlignment
35
+ Layout/EmptyLineAfterMagicComment
36
+ Layout/EmptyLineBetweenDefs
37
+ Layout/EmptyLinesAroundAccessModifier
38
+ Layout/EmptyLinesAroundBeginBody
39
+ Layout/EmptyLinesAroundBlockBody
40
+ Layout/EmptyLinesAroundClassBody
41
+ Layout/EmptyLinesAroundExceptionHandlingKeywords
42
+ Layout/EmptyLinesAroundMethodBody
43
+ Layout/EmptyLinesAroundModuleBody
44
+ Layout/EmptyLines
45
+ Layout/EndOfLine
46
+ Layout/ExtraSpacing
47
+ Layout/FirstArrayElementLineBreak
48
+ Layout/FirstHashElementLineBreak
49
+ Layout/FirstMethodArgumentLineBreak
50
+ Layout/FirstMethodParameterLineBreak
51
+ Layout/FirstParameterIndentation
52
+ Layout/IndentArray
53
+ Layout/IndentAssignment
54
+ Layout/IndentationConsistency
55
+ Layout/IndentationWidth
56
+ Layout/IndentHash
57
+ Layout/IndentHeredoc
58
+ Layout/InitialIndentation
59
+ Layout/LeadingCommentSpace
60
+ Layout/MultilineArrayBraceLayout
61
+ Layout/MultilineAssignmentLayout
62
+ Layout/MultilineBlockLayout
63
+ Layout/MultilineHashBraceLayout
64
+ Layout/MultilineMethodCallBraceLayout
65
+ Layout/MultilineMethodCallIndentation
66
+ Layout/MultilineMethodDefinitionBraceLayout
67
+ Layout/MultilineOperationIndentation
68
+ Layout/RescueEnsureAlignment
69
+ Layout/SpaceAfterColon
70
+ Layout/SpaceAfterComma
71
+ Layout/SpaceAfterMethodName
72
+ Layout/SpaceAfterNot
73
+ Layout/SpaceAfterSemicolon
74
+ Layout/SpaceAroundBlockParameters
75
+ Layout/SpaceAroundEqualsInParameterDefault
76
+ Layout/SpaceAroundKeyword
77
+ Layout/SpaceAroundOperators
78
+ Layout/SpaceBeforeBlockBraces
79
+ Layout/SpaceBeforeComma
80
+ Layout/SpaceBeforeComment
81
+ Layout/SpaceBeforeFirstArg
82
+ Layout/SpaceBeforeSemicolon
83
+ Layout/SpaceInLambdaLiteral
84
+ Layout/SpaceInsideArrayPercentLiteral
85
+ Layout/SpaceInsideBlockBraces
86
+ Layout/SpaceInsideBrackets
87
+ Layout/SpaceInsideHashLiteralBraces
88
+ Layout/SpaceInsideParens
89
+ Layout/SpaceInsidePercentLiteralDelimiters
90
+ Layout/SpaceInsideRangeLiteral
91
+ Layout/SpaceInsideStringInterpolation
92
+ Layout/Tab
93
+ Layout/TrailingBlankLines
94
+ Layout/TrailingWhitespace
95
+ ]
96
+
97
+ layout_cops.each do |cop|
98
+ define_rule [cop.sub('Layout', 'Style') => cop]
99
+ end
100
+ end
101
+
102
+ class Rewriter_0_48_0 < YAMLRewriter::Rewriter
103
+ # 0.48.0 release does not have renaming.
104
+ end
105
+
106
+ class Rewriter_0_47_0 < YAMLRewriter::Rewriter
107
+ define_rule ['Lint/Eval' => 'Security/Eval']
108
+ define_rule ['Style/CaseIndentation', 'IndentWhenRelativeTo' => 'EnforcedStyle']
109
+ define_rule ['Lint/BlockAlignment', 'AlignWith' => 'EnforcedStyleAlignWith']
110
+ define_rule ['Lint/EndAlignment', 'AlignWith' => 'EnforcedStyleAlignWith']
111
+ define_rule ['Lint/DefEndAlignment', 'AlignWith' => 'EnforcedStyleAlignWith']
112
+ define_rule ['Rails/UniqBeforePluck', 'EnforcedMode' => 'EnforcedStyle']
113
+ define_rule ['Style/MethodCallParentheses' => 'Style/MethodCallWithoutArgsParentheses']
114
+ end
115
+
116
+ class Rewriter_0_46_0 < YAMLRewriter::Rewriter
117
+ define_rule ['Performance/SortWithBlock' => 'Performance/CompareWithBlock']
118
+ end
119
+
120
+ class Rewriter_0_45_0 < YAMLRewriter::Rewriter
121
+ # 0.45.0 release does not have renaming.
122
+ end
123
+
124
+ class Rewriter_0_44_0 < YAMLRewriter::Rewriter
125
+ # 0.44.0 release does not have renaming.
126
+ end
127
+
128
+ class Rewriter_0_43_0 < YAMLRewriter::Rewriter
129
+ define_rule ['Lint/UselessArraySplat' => 'Lint/UnneededSplatExpansion']
130
+ end
131
+
132
+ class Rewriter_0_42_0 < YAMLRewriter::Rewriter
133
+ # 0.42.0 release does not have renaming.
134
+ end
135
+
136
+ class Rewriter_0_41_0 < YAMLRewriter::Rewriter
137
+ define_rule ['Style/DeprecatedHashMethods' => 'Style/PreferredHashMethods']
138
+ end
139
+ class Rewriter_0 < YAMLRewriter::Rewriter
140
+ define_rule ['Style/SingleSpaceBeforeFirstArg' => 'Style/SpaceBeforeFirstArg']
141
+ define_rule ['Lint/SpaceBeforeFirstArg' => 'Style/SpaceBeforeFirstArg']
142
+ define_rule ['Style/SpaceAfterControlKeyword' => 'Style/SpaceAroundKeyword']
143
+ define_rule ['Style/SpaceBeforeModifierKeyword' => 'Style/SpaceAroundKeyword']
144
+ define_rule ['Style/SpaceAroundOperators', 'MultiSpaceAllowedForOperators' => 'AllowForAlignment']
145
+ end
146
+
147
+ Rewriters = {
148
+ Gem::Version.new('0.51.0') => Rewriter_0_51_0,
149
+ Gem::Version.new('0.50.0') => Rewriter_0_50_0,
150
+ Gem::Version.new('0.49.0') => Rewriter_0_49_0,
151
+ Gem::Version.new('0.47.0') => Rewriter_0_47_0,
152
+ Gem::Version.new('0.46.0') => Rewriter_0_46_0,
153
+ Gem::Version.new('0.45.0') => Rewriter_0_45_0,
154
+ Gem::Version.new('0.44.0') => Rewriter_0_44_0,
155
+ Gem::Version.new('0.43.0') => Rewriter_0_43_0,
156
+ Gem::Version.new('0.42.0') => Rewriter_0_42_0,
157
+ Gem::Version.new('0.41.0') => Rewriter_0_41_0,
158
+ Gem::Version.new('0') => Rewriter_0,
159
+ }.freeze
160
+
161
+ def self.rewriters(target)
162
+ return [(Rewriters.values + [Rewriter_Master]).reverse, []] if target == :master
163
+
164
+ Rewriters
165
+ .partition{|key, _value| target >= key}
166
+ .map{|rewriters| rewriters.map{|k, v| v}.reverse}
167
+ end
168
+ end
169
+ end
data/lib/mry/runner.rb CHANGED
@@ -1,16 +1,8 @@
1
1
  module Mry
2
2
  module Runner
3
- Rewriters = {
4
- Gem::Version.new('0.50.0') => Rewriter_0_50_0,
5
- Gem::Version.new('0.49.0') => Rewriter_0_49_0,
6
- Gem::Version.new('0.47.0') => Rewriter_0_47_0,
7
- Gem::Version.new('0.46.0') => Rewriter_0_46_0,
8
- Gem::Version.new('0') => Rewriter_0,
9
- }.freeze
10
-
11
3
  class << self
12
- def run(files, target)
13
- rewriters, reverse_rewriters = *rewriters(target)
4
+ def run(files, to: , from:)
5
+ rewriters, reverse_rewriters = *Rewriters.rewriters(to)
14
6
 
15
7
  files.each do |file|
16
8
  yaml = File.read(file)
@@ -20,20 +12,26 @@ module Mry
20
12
  rewriters.each do |r|
21
13
  yaml = r.new(yaml).rewrite
22
14
  end
15
+ yaml += added_cops(from: from, to: to) if from
23
16
  File.write(file, yaml)
24
17
  end
25
18
  end
26
19
 
27
-
28
20
  private
29
21
 
30
- # @return [Array<Array<Rewriter>>]
31
- def rewriters(target)
32
- return [(Rewriters.values + [Rewriter_Master]).reverse, []] if target == :master
22
+ def added_cops(from:, to:)
23
+ yaml = AddedCops.added_cops_yaml(from: from, to: to)
24
+
25
+ <<~MESSAGE.rstrip + "\n"
26
+
27
+
28
+ # The following cops are added between #{from} and #{to}.
29
+ # The configurations are default.
30
+ # If you want to use a cop by default, remove a configuration for the cop from here.
31
+ # If you want to disable a cop, change `Enabled` to false.
33
32
 
34
- Rewriters
35
- .partition{|key, _value| target >= key}
36
- .map{|rewriters| rewriters.map{|k, v| v}.reverse}
33
+ #{yaml}
34
+ MESSAGE
37
35
  end
38
36
  end
39
37
  end
data/lib/mry/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Mry
2
- VERSION = "0.50.0.0"
2
+ VERSION = "0.51.0.0"
3
3
  end
data/mry.gemspec CHANGED
@@ -23,11 +23,13 @@ Gem::Specification.new do |spec|
23
23
 
24
24
  spec.required_ruby_version = '>= 2.3.0'
25
25
 
26
+ spec.add_runtime_dependency 'rubocop', '>= 0.41.0'
27
+
26
28
  spec.add_development_dependency "bundler", "~> 1.14"
27
29
  spec.add_development_dependency "rake", "~> 10.0"
28
30
  spec.add_development_dependency 'minitest', '~> 5'
29
31
  spec.add_development_dependency "minitest-power_assert", "~> 0.2.0"
30
32
  spec.add_development_dependency "pry"
31
- spec.add_development_dependency 'rubocop', '0.48.1'
32
- spec.add_development_dependency 'meowcop'
33
+ spec.add_development_dependency 'rubocop', '0.51.0'
34
+ spec.add_development_dependency 'meowcop', '1.12.1'
33
35
  end
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mry
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.50.0.0
4
+ version: 0.51.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Masataka Kuwabara
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-10-01 00:00:00.000000000 Z
11
+ date: 2017-10-19 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rubocop
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 0.41.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 0.41.0
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: bundler
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -86,28 +100,28 @@ dependencies:
86
100
  requirements:
87
101
  - - '='
88
102
  - !ruby/object:Gem::Version
89
- version: 0.48.1
103
+ version: 0.51.0
90
104
  type: :development
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
108
  - - '='
95
109
  - !ruby/object:Gem::Version
96
- version: 0.48.1
110
+ version: 0.51.0
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: meowcop
99
113
  requirement: !ruby/object:Gem::Requirement
100
114
  requirements:
101
- - - ">="
115
+ - - '='
102
116
  - !ruby/object:Gem::Version
103
- version: '0'
117
+ version: 1.12.1
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
- - - ">="
122
+ - - '='
109
123
  - !ruby/object:Gem::Version
110
- version: '0'
124
+ version: 1.12.1
111
125
  description: Mry Migrates .Rubocop.Yml
112
126
  email:
113
127
  - kuwabara@pocke.me
@@ -128,13 +142,9 @@ files:
128
142
  - bin/setup
129
143
  - exe/mry
130
144
  - lib/mry.rb
145
+ - lib/mry/added_cops.rb
131
146
  - lib/mry/cli.rb
132
- - lib/mry/rewriter_0.rb
133
- - lib/mry/rewriter_0_46_0.rb
134
- - lib/mry/rewriter_0_47_0.rb
135
- - lib/mry/rewriter_0_49_0.rb
136
- - lib/mry/rewriter_0_50_0.rb
137
- - lib/mry/rewriter_master.rb
147
+ - lib/mry/rewriters.rb
138
148
  - lib/mry/runner.rb
139
149
  - lib/mry/version.rb
140
150
  - lib/yaml_rewriter.rb
@@ -1,10 +0,0 @@
1
- module Mry
2
- class Rewriter_0 < YAMLRewriter::Rewriter
3
- define_rule ['Style/SingleSpaceBeforeFirstArg' => 'Style/SpaceBeforeFirstArg']
4
- define_rule ['Lint/SpaceBeforeFirstArg' => 'Style/SpaceBeforeFirstArg']
5
- define_rule ['Style/SpaceAfterControlKeyword' => 'Style/SpaceAroundKeyword']
6
- define_rule ['Style/SpaceBeforeModifierKeyword' => 'Style/SpaceAroundKeyword']
7
- define_rule ['Style/DeprecatedHashMethods' => 'Style/PreferredHashMethods']
8
- define_rule ['Style/SpaceAroundOperators', 'MultiSpaceAllowedForOperators' => 'AllowForAlignment']
9
- end
10
- end
@@ -1,5 +0,0 @@
1
- module Mry
2
- class Rewriter_0_46_0 < YAMLRewriter::Rewriter
3
- define_rule ['Performance/SortWithBlock' => 'Performance/CompareWithBlock']
4
- end
5
- end
@@ -1,11 +0,0 @@
1
- module Mry
2
- class Rewriter_0_47_0 < YAMLRewriter::Rewriter
3
- define_rule ['Lint/Eval' => 'Security/Eval']
4
- define_rule ['Style/CaseIndentation', 'IndentWhenRelativeTo' => 'EnforcedStyle']
5
- define_rule ['Lint/BlockAlignment', 'AlignWith' => 'EnforcedStyleAlignWith']
6
- define_rule ['Lint/EndAlignment', 'AlignWith' => 'EnforcedStyleAlignWith']
7
- define_rule ['Lint/DefEndAlignment', 'AlignWith' => 'EnforcedStyleAlignWith']
8
- define_rule ['Rails/UniqBeforePluck', 'EnforcedMode' => 'EnforcedStyle']
9
- define_rule ['Style/MethodCallParentheses' => 'Style/MethodCallWithoutArgsParentheses']
10
- end
11
- end
@@ -1,80 +0,0 @@
1
- module Mry
2
- class Rewriter_0_49_0 < YAMLRewriter::Rewriter
3
- layout_cops = %w[
4
- Layout/AccessModifierIndentation
5
- Layout/AlignArray
6
- Layout/AlignHash
7
- Layout/AlignParameters
8
- Layout/BlockEndNewline
9
- Layout/CaseIndentation
10
- Layout/ClosingParenthesisIndentation
11
- Layout/CommentIndentation
12
- Layout/DotPosition
13
- Layout/ElseAlignment
14
- Layout/EmptyLineAfterMagicComment
15
- Layout/EmptyLineBetweenDefs
16
- Layout/EmptyLinesAroundAccessModifier
17
- Layout/EmptyLinesAroundBeginBody
18
- Layout/EmptyLinesAroundBlockBody
19
- Layout/EmptyLinesAroundClassBody
20
- Layout/EmptyLinesAroundExceptionHandlingKeywords
21
- Layout/EmptyLinesAroundMethodBody
22
- Layout/EmptyLinesAroundModuleBody
23
- Layout/EmptyLines
24
- Layout/EndOfLine
25
- Layout/ExtraSpacing
26
- Layout/FirstArrayElementLineBreak
27
- Layout/FirstHashElementLineBreak
28
- Layout/FirstMethodArgumentLineBreak
29
- Layout/FirstMethodParameterLineBreak
30
- Layout/FirstParameterIndentation
31
- Layout/IndentArray
32
- Layout/IndentAssignment
33
- Layout/IndentationConsistency
34
- Layout/IndentationWidth
35
- Layout/IndentHash
36
- Layout/IndentHeredoc
37
- Layout/InitialIndentation
38
- Layout/LeadingCommentSpace
39
- Layout/MultilineArrayBraceLayout
40
- Layout/MultilineAssignmentLayout
41
- Layout/MultilineBlockLayout
42
- Layout/MultilineHashBraceLayout
43
- Layout/MultilineMethodCallBraceLayout
44
- Layout/MultilineMethodCallIndentation
45
- Layout/MultilineMethodDefinitionBraceLayout
46
- Layout/MultilineOperationIndentation
47
- Layout/RescueEnsureAlignment
48
- Layout/SpaceAfterColon
49
- Layout/SpaceAfterComma
50
- Layout/SpaceAfterMethodName
51
- Layout/SpaceAfterNot
52
- Layout/SpaceAfterSemicolon
53
- Layout/SpaceAroundBlockParameters
54
- Layout/SpaceAroundEqualsInParameterDefault
55
- Layout/SpaceAroundKeyword
56
- Layout/SpaceAroundOperators
57
- Layout/SpaceBeforeBlockBraces
58
- Layout/SpaceBeforeComma
59
- Layout/SpaceBeforeComment
60
- Layout/SpaceBeforeFirstArg
61
- Layout/SpaceBeforeSemicolon
62
- Layout/SpaceInLambdaLiteral
63
- Layout/SpaceInsideArrayPercentLiteral
64
- Layout/SpaceInsideBlockBraces
65
- Layout/SpaceInsideBrackets
66
- Layout/SpaceInsideHashLiteralBraces
67
- Layout/SpaceInsideParens
68
- Layout/SpaceInsidePercentLiteralDelimiters
69
- Layout/SpaceInsideRangeLiteral
70
- Layout/SpaceInsideStringInterpolation
71
- Layout/Tab
72
- Layout/TrailingBlankLines
73
- Layout/TrailingWhitespace
74
- ]
75
-
76
- layout_cops.each do |cop|
77
- define_rule [cop.sub('Layout', 'Style') => cop]
78
- end
79
- end
80
- end
@@ -1,14 +0,0 @@
1
- module Mry
2
- class Rewriter_0_50_0 < YAMLRewriter::Rewriter
3
- define_rule ['Style/AccessorMethodName' => 'Naming/AccessorMethodName']
4
- define_rule ['Style/AsciiIdentifiers' => 'Naming/AsciiIdentifiers']
5
- define_rule ['Style/OpMethod' => 'Naming/BinaryOperatorParameterName']
6
- define_rule ['Style/ClassAndModuleCamelCase' => 'Naming/ClassAndModuleCamelCase']
7
- define_rule ['Style/ConstantName' => 'Naming/ConstantName']
8
- define_rule ['Style/FileName' => 'Naming/FileName']
9
- define_rule ['Style/MethodName' => 'Naming/MethodName']
10
- define_rule ['Style/PredicateName' => 'Naming/PredicateName']
11
- define_rule ['Style/VariableName' => 'Naming/VariableName']
12
- define_rule ['Style/VariableNumber' => 'Naming/VariableNumber']
13
- end
14
- end
@@ -1,4 +0,0 @@
1
- module Mry
2
- class Rewriter_Master < YAMLRewriter::Rewriter
3
- end
4
- end