rubocop 0.32.0 → 0.32.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of rubocop might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2f00678bddd0c2dc00390310b217cec58ec200d5
4
- data.tar.gz: b0b294dae0580562e4ff6225e8f7543777c927fc
3
+ metadata.gz: ce6b65d33cc2aafc8810c0ff7dd711bfd4f1ce3d
4
+ data.tar.gz: 619b13298973e7c421fa8cc804a9a8c8671c508d
5
5
  SHA512:
6
- metadata.gz: 86a0015fe3ff0021b1968662f9212898245754d97bbb02e73dd6f33f338a09c445f749068d1686199a5ec334f61cb5fa584d3271dd9a026926c5efff97677b40
7
- data.tar.gz: 31af47e5133c430f1f63f0ed44a8e45224a2c78314c00ba447c9a2048796b872f5504acde692fd4ef3ba1a3de5cb269dce1c8c67d1570013c12fbcdf0d8267df
6
+ metadata.gz: 00cd718d6abd4ab32394abbb2c0768d27ffcaeecf368ff406c5dac3b73d687dc5ad7610464bba315477620e22d8e6eec0a48f6518e1bb7d43331ef75c38e06c2
7
+ data.tar.gz: f4ec724f81671c10cfc980b2cd99ad39c59f40d41ea3ce8f6267020f01a3f2918b35725a46c0ac84b778e3590d4026a5cfd9fa773c03b69fdaaa297d8dabe86d
data/CHANGELOG.md CHANGED
@@ -2,6 +2,29 @@
2
2
 
3
3
  ## master (unreleased)
4
4
 
5
+ ## 0.32.1 (24/06/2015)
6
+
7
+ ### New features
8
+
9
+ * `Debugger` cop now checks catches methods called with arguments. ([@crazydog115][])
10
+
11
+ ### Bugs fixed
12
+
13
+ * Make it possible to disable `Lint/UnneededDisable`. ([@jonas054][])
14
+ * [#1958](https://github.com/bbatsov/rubocop/issues/1958): Show name of `Lint/UnneededDisable` when `-D/--display-cop-names` is given. ([@jonas054][])
15
+ * Do not show `Style/NonNilCheck` offenses as corrected when the source code is not modified. ([@rrosenblum][])
16
+ * Fix auto-correct in `Style/RedundantReturn` when `return` has no arguments. ([@lumeet][])
17
+ * [#1955](https://github.com/bbatsov/rubocop/issues/1955): Fix false positive for `Style/TrailingComma` cop. ([@mattjmcnaughton][])
18
+ * [#1928](https://github.com/bbatsov/rubocop/issues/1928): Avoid auto-correcting two alignment offenses in the same area at the same time. ([@jonas054][])
19
+ * [#1964](https://github.com/bbatsov/rubocop/issues/1964): Fix `RedundantBegin` auto-correct issue with comments by doing a smaller correction. ([@jonas054][])
20
+ * [#1978](https://github.com/bbatsov/rubocop/pull/1978): Don't count disabled offences if fail-level is autocorrect. ([@sch1zo][])
21
+ * [#1986](https://github.com/bbatsov/rubocop/pull/1986): Fix Date false positives on variables. ([@palkan][])
22
+
23
+ ### Changes
24
+
25
+ * [#1708](https://github.com/bbatsov/rubocop/issues/1708): Improve message for `FirstParameterIndentation`. ([@tejasbubane][])
26
+ * [#1959](https://github.com/bbatsov/rubocop/issues/1959): Allow `Lint/UnneededDisable` to be inline disabled. ([@rrosenblum][])
27
+
5
28
  ## 0.32.0 (06/06/2015)
6
29
 
7
30
  ### New features
@@ -1443,3 +1466,4 @@
1443
1466
  [@panthomakos]: https://github.com/panthomakos
1444
1467
  [@matugm]: https://github.com/matugm
1445
1468
  [@m1foley]: https://github.com/m1foley
1469
+ [@tejasbubane]: https://github.com/tejasbubane
@@ -4,6 +4,7 @@ module RuboCop
4
4
  # This class parses the special `rubocop:disable` comments in a source
5
5
  # and provides a way to check if each cop is enabled at arbitrary line.
6
6
  class CommentConfig
7
+ UNNEEDED_DISABLE = 'Lint/UnneededDisable'
7
8
  COMMENT_DIRECTIVE_REGEXP = Regexp.new(
8
9
  '\A# rubocop : ((?:dis|en)able)\b ((?:[\w/]+,? )+)'.gsub(' ', '\s*')
9
10
  )
@@ -73,7 +74,9 @@ module RuboCop
73
74
  end
74
75
 
75
76
  def all_cop_names
76
- @all_cop_names ||= Cop::Cop.all.map(&:cop_name)
77
+ @all_cop_names ||= Cop::Cop.all.map(&:cop_name).reject do |cop_name|
78
+ cop_name == UNNEEDED_DISABLE
79
+ end
77
80
  end
78
81
 
79
82
  def comment_only_line?(line_number)
@@ -62,7 +62,9 @@ module RuboCop
62
62
  ]
63
63
 
64
64
  def on_send(node)
65
- return unless DEBUGGER_NODES.include?(node)
65
+ receiver, method_name, *_args = *node
66
+ node_without_args = self.class.s(:send, receiver, method_name)
67
+ return unless DEBUGGER_NODES.include? node_without_args
66
68
  add_offense(node,
67
69
  :expression,
68
70
  format(MSG, node.loc.expression.source))
@@ -15,16 +15,21 @@ module RuboCop
15
15
  class UnneededDisable < Cop
16
16
  COP_NAME = 'Lint/UnneededDisable'
17
17
 
18
- def check(file, offenses, cop_disabled_line_ranges, comments)
18
+ def check(offenses, cop_disabled_line_ranges, comments)
19
19
  unneeded_cops = {}
20
+ disabled_ranges = cop_disabled_line_ranges[COP_NAME] || [0..0]
20
21
 
21
- cop_disabled_line_ranges[file].each do |cop, line_ranges|
22
+ cop_disabled_line_ranges.each do |cop, line_ranges|
22
23
  cop_offenses = offenses.select { |o| o.cop_name == cop }
23
24
  line_ranges.each do |line_range|
24
- comment =
25
- comments[file].find { |c| c.loc.line == line_range.begin }
25
+ comment = comments.find { |c| c.loc.line == line_range.begin }
26
26
  unneeded_cop = find_unneeded(comment, offenses, cop, cop_offenses,
27
27
  line_range)
28
+
29
+ unless all_disabled?(comment)
30
+ next if ignore_offense?(disabled_ranges, line_range)
31
+ end
32
+
28
33
  if unneeded_cop
29
34
  unneeded_cops[comment.loc.expression] ||= Set.new
30
35
  unneeded_cops[comment.loc.expression].add(unneeded_cop)
@@ -32,21 +37,35 @@ module RuboCop
32
37
  end
33
38
  end
34
39
 
35
- unneeded_cops.each do |range, cops|
36
- add_offense(range, range,
37
- "Unnecessary disabling of #{cops.sort.join(', ')}.")
38
- end
40
+ add_offenses(unneeded_cops)
39
41
  end
40
42
 
41
43
  private
42
44
 
43
45
  def find_unneeded(comment, offenses, cop, cop_offenses, line_range)
44
- if comment.loc.expression.source =~ /rubocop:disable\s+all\b/
46
+ if all_disabled?(comment)
45
47
  'all cops' if offenses.none? { |o| line_range.include?(o.line) }
46
48
  elsif cop_offenses.none? { |o| line_range.include?(o.line) }
47
49
  cop
48
50
  end
49
51
  end
52
+
53
+ def all_disabled?(comment)
54
+ comment.loc.expression.source =~ /rubocop:disable\s+all\b/
55
+ end
56
+
57
+ def ignore_offense?(disabled_ranges, line_range)
58
+ disabled_ranges.any? do |range|
59
+ range.include?(line_range.min) && range.include?(line_range.max)
60
+ end
61
+ end
62
+
63
+ def add_offenses(unneeded_cops)
64
+ unneeded_cops.each do |range, cops|
65
+ add_offense(range, range,
66
+ "Unnecessary disabling of #{cops.sort.join(', ')}.")
67
+ end
68
+ end
50
69
  end
51
70
  end
52
71
  end
@@ -16,7 +16,19 @@ module RuboCop
16
16
  items.each do |current|
17
17
  if current.loc.line > prev_line && start_of_line?(current.loc)
18
18
  @column_delta = base_column - current.loc.column
19
- add_offense(current, :expression) if @column_delta != 0
19
+ if @column_delta != 0
20
+ expr = current.loc.expression
21
+ if offenses.any? { |o| within?(expr, o.location) }
22
+ # If this offense is within a line range that is already being
23
+ # realigned by autocorrect, we report the offense without
24
+ # autocorrecting it. Two rewrites in the same area by the same
25
+ # cop can not be handled. The next iteration will find the
26
+ # offense again and correct it.
27
+ add_offense(nil, expr)
28
+ else
29
+ add_offense(current, :expression)
30
+ end
31
+ end
20
32
  end
21
33
  prev_line = current.loc.line
22
34
  end
@@ -27,6 +39,8 @@ module RuboCop
27
39
  end
28
40
 
29
41
  def autocorrect(arg)
42
+ return unless arg
43
+
30
44
  heredoc_ranges = heredoc_ranges(arg)
31
45
  expr = arg.respond_to?(:loc) ? arg.loc.expression : arg
32
46
 
@@ -54,8 +54,8 @@ module RuboCop
54
54
  end
55
55
 
56
56
  def on_send(node)
57
- method_name = extract_method(node)
58
- return unless bad_methods.include?(method_name)
57
+ receiver, method_name, *_args = *node
58
+ return unless receiver && bad_methods.include?(method_name)
59
59
 
60
60
  add_offense(node, :selector,
61
61
  format(MSG_SEND,
@@ -44,9 +44,9 @@ module RuboCop
44
44
  base = if text !~ /\n/ && special_inner_call_indentation?(send_node)
45
45
  "`#{text}`"
46
46
  elsif text.lines.reverse_each.first =~ /^\s*#/
47
- 'the previous line (not counting the comment)'
47
+ 'the start of the previous line (not counting the comment)'
48
48
  else
49
- 'the previous line'
49
+ 'the start of the previous line'
50
50
  end
51
51
  format('Indent the first parameter one step more than %s.', base)
52
52
  end
@@ -84,15 +84,19 @@ module RuboCop
84
84
  end
85
85
 
86
86
  def autocorrect_comparison(node)
87
+ expr = node.loc.expression.source
88
+
89
+ new_code =
90
+ if include_semantic_changes?
91
+ expr.sub(/\s*!=\s*nil/, '')
92
+ else
93
+ expr.sub(/^(\S*)\s*!=\s*nil/, '!\1.nil?')
94
+ end
95
+
96
+ return if expr == new_code
97
+
87
98
  lambda do |corrector|
88
- expr = node.loc.expression
89
- new_code =
90
- if include_semantic_changes?
91
- expr.source.sub(/\s*!=\s*nil/, '')
92
- else
93
- expr.source.sub(/^(\S*)\s*!=\s*nil/, '!\1.nil?')
94
- end
95
- corrector.replace(expr, new_code)
99
+ corrector.replace(node.loc.expression, new_code)
96
100
  end
97
101
  end
98
102
 
@@ -37,19 +37,8 @@ module RuboCop
37
37
 
38
38
  def autocorrect(node)
39
39
  lambda do |corrector|
40
- child = node.children.first
41
-
42
- begin_indent = node.loc.column
43
- child_indent = child.loc.column
44
-
45
- indent_diff = child_indent - begin_indent
46
-
47
- corrector.replace(
48
- range_with_surrounding_space(node.loc.expression),
49
- range_with_surrounding_space(
50
- child.loc.expression
51
- ).source.gsub(/^[ \t]{#{indent_diff}}/, '')
52
- )
40
+ corrector.remove(node.loc.begin)
41
+ corrector.remove(node.loc.end)
53
42
  end
54
43
  end
55
44
  end
@@ -29,6 +29,11 @@ module RuboCop
29
29
 
30
30
  def autocorrect(node)
31
31
  lambda do |corrector|
32
+ unless arguments?(node.children)
33
+ corrector.replace(node.loc.expression, 'nil')
34
+ next
35
+ end
36
+
32
37
  if node.children.size > 1
33
38
  kids = node.children.map { |child| child.loc.expression }
34
39
  corrector.insert_before(kids.first, '[')
@@ -39,6 +44,13 @@ module RuboCop
39
44
  end
40
45
  end
41
46
 
47
+ def arguments?(args)
48
+ return false if args.empty?
49
+ return true if args.size > 1
50
+
51
+ !args.first.begin_type? || !args.first.children.empty?
52
+ end
53
+
42
54
  def on_method_def(_node, _method_name, _args, body)
43
55
  return unless body
44
56
 
@@ -71,6 +71,7 @@ module RuboCop
71
71
  # rubocop:disable Metrics/MethodLength
72
72
  def check(node, items, kind, begin_pos, end_pos)
73
73
  sb = items.first.loc.expression.source_buffer
74
+
74
75
  after_last_item = Parser::Source::Range.new(sb, begin_pos, end_pos)
75
76
 
76
77
  return if heredoc?(after_last_item.source)
@@ -123,6 +124,12 @@ module RuboCop
123
124
  else
124
125
  node.children
125
126
  end
127
+
128
+ # Without this check, Foo.new({}) is considered multiline, which
129
+ # it should not be. Essentially, if there are no elements, the
130
+ # expression can not be multiline.
131
+ return if elements.empty?
132
+
126
133
  items = elements.map { |e| e.loc.expression }
127
134
  if style == :consistent_comma
128
135
  items.each_cons(2).any? { |a, b| !on_same_line?(a, b) }
@@ -30,24 +30,26 @@ module RuboCop
30
30
  end
31
31
 
32
32
  def file_started(file, options)
33
- @cop_disabled_line_ranges ||= {}
34
- @cop_disabled_line_ranges[file] = options[:cop_disabled_line_ranges]
35
- @comments ||= {}
36
- @comments[file] = options[:comments]
37
- @excepted_cops = options[:excepted_cops] || []
38
- @only_cops = options[:only_cops] || []
33
+ @cop_disabled_line_ranges = options[:cop_disabled_line_ranges]
34
+ @comments = options[:comments]
35
+ @options = options[:cli_options]
36
+ @config_store = options[:config_store]
39
37
  each { |f| f.file_started(file, options) }
40
38
  end
41
39
 
42
40
  def file_finished(file, offenses)
43
- if @cop_disabled_line_ranges[file].any? &&
41
+ if @cop_disabled_line_ranges.any? &&
44
42
  # Don't check unneeded disable if --only or --except option is
45
43
  # given, because these options override configuration.
46
- @excepted_cops.empty? && @only_cops.empty?
47
- cop = Cop::Lint::UnneededDisable.new
48
- cop.check(file, offenses, @cop_disabled_line_ranges, @comments)
49
- offenses += cop.offenses
44
+ (@options[:except] || []).empty? && (@options[:only] || []).empty?
45
+ config = @config_store.for(file)
46
+ if config['Lint/UnneededDisable']['Enabled']
47
+ cop = Cop::Lint::UnneededDisable.new(config, @options)
48
+ cop.check(offenses, @cop_disabled_line_ranges, @comments)
49
+ offenses += cop.offenses
50
+ end
50
51
  end
52
+
51
53
  offenses = offenses.sort.reject(&:disabled?)
52
54
  each { |f| f.file_finished(file, offenses) }
53
55
  end
@@ -69,8 +69,8 @@ module RuboCop
69
69
  file_info = {
70
70
  cop_disabled_line_ranges: processed_source.disabled_line_ranges,
71
71
  comments: processed_source.comments,
72
- only_cops: @options[:only],
73
- excepted_cops: @options[:except]
72
+ cli_options: @options,
73
+ config_store: @config_store
74
74
  }
75
75
 
76
76
  formatter_set.file_started(file, file_info)
@@ -196,10 +196,10 @@ module RuboCop
196
196
 
197
197
  def considered_failure?(offense)
198
198
  # For :autocorrect level, any offense - corrected or not - is a failure.
199
- return true if @options[:fail_level] == :autocorrect
200
-
201
199
  return false if offense.disabled?
202
200
 
201
+ return true if @options[:fail_level] == :autocorrect
202
+
203
203
  !offense.corrected? && offense.severity >= minimum_severity_to_fail
204
204
  end
205
205
 
@@ -3,7 +3,7 @@
3
3
  module RuboCop
4
4
  # This module holds the RuboCop version information.
5
5
  module Version
6
- STRING = '0.32.0'
6
+ STRING = '0.32.1'
7
7
 
8
8
  MSG = '%s (using Parser %s, running on %s %s %s)'
9
9
 
@@ -0,0 +1,122 @@
1
+ ### New features
2
+
3
+ * `Debugger` cop now checks catches methods called with arguments. ([@crazydog115][])
4
+
5
+ ### Bugs fixed
6
+
7
+ * Make it possible to disable `Lint/UnneededDisable`. ([@jonas054][])
8
+ * [#1958](https://github.com/bbatsov/rubocop/issues/1958): Show name of `Lint/UnneededDisable` when `-D/--display-cop-names` is given. ([@jonas054][])
9
+ * Do not show `Style/NonNilCheck` offenses as corrected when the source code is not modified. ([@rrosenblum][])
10
+ * Fix auto-correct in `Style/RedundantReturn` when `return` has no arguments. ([@lumeet][])
11
+ * [#1955](https://github.com/bbatsov/rubocop/issues/1955): Fix false positive for `Style/TrailingComma` cop. ([@mattjmcnaughton][])
12
+ * [#1928](https://github.com/bbatsov/rubocop/issues/1928): Avoid auto-correcting two alignment offenses in the same area at the same time. ([@jonas054][])
13
+ * [#1964](https://github.com/bbatsov/rubocop/issues/1964): Fix `RedundantBegin` auto-correct issue with comments by doing a smaller correction. ([@jonas054][])
14
+ * [#1978](https://github.com/bbatsov/rubocop/pull/1978): Don't count disabled offences if fail-level is autocorrect. ([@sch1zo][])
15
+ * [#1986](https://github.com/bbatsov/rubocop/pull/1986): Fix Date false positives on variables. ([@palkan][])
16
+
17
+ ### Changes
18
+
19
+ * [#1708](https://github.com/bbatsov/rubocop/issues/1708): Improve message for `FirstParameterIndentation`. ([@tejasbubane][])
20
+ * [#1959](https://github.com/bbatsov/rubocop/issues/1959): Allow `Lint/UnneededDisable` to be inline disabled. ([@rrosenblum][])
21
+
22
+ [@bbatsov]: https://github.com/bbatsov
23
+ [@jonas054]: https://github.com/jonas054
24
+ [@yujinakayama]: https://github.com/yujinakayama
25
+ [@dblock]: https://github.com/dblock
26
+ [@nevir]: https://github.com/nevir
27
+ [@daviddavis]: https://github.com/daviddavis
28
+ [@sds]: https://github.com/sds
29
+ [@fancyremarker]: https://github.com/fancyremarker
30
+ [@sinisterchipmunk]: https://github.com/sinisterchipmunk
31
+ [@vonTronje]: https://github.com/vonTronje
32
+ [@agrimm]: https://github.com/agrimm
33
+ [@pmenglund]: https://github.com/pmenglund
34
+ [@chulkilee]: https://github.com/chulkilee
35
+ [@codez]: https://github.com/codez
36
+ [@emou]: https://github.com/emou
37
+ [@skanev]: http://github.com/skanev
38
+ [@claco]: http://github.com/claco
39
+ [@rifraf]: http://github.com/rifraf
40
+ [@scottmatthewman]: https://github.com/scottmatthewman
41
+ [@ma2gedev]: http://github.com/ma2gedev
42
+ [@jeremyolliver]: https://github.com/jeremyolliver
43
+ [@hannestyden]: https://github.com/hannestyden
44
+ [@geniou]: https://github.com/geniou
45
+ [@jkogara]: https://github.com/jkogara
46
+ [@tmorris-fiksu]: https://github.com/tmorris-fiksu
47
+ [@mockdeep]: https://github.com/mockdeep
48
+ [@hiroponz]: https://github.com/hiroponz
49
+ [@tamird]: https://github.com/tamird
50
+ [@fshowalter]: https://github.com/fshowalter
51
+ [@cschramm]: https://github.com/cschramm
52
+ [@bquorning]: https://github.com/bquorning
53
+ [@bcobb]: https://github.com/bcobb
54
+ [@irrationalfab]: https://github.com/irrationalfab
55
+ [@tommeier]: https://github.com/tommeier
56
+ [@sfeldon]: https://github.com/sfeldon
57
+ [@biinari]: https://github.com/biinari
58
+ [@barunio]: https://github.com/barunio
59
+ [@molawson]: https://github.com/molawson
60
+ [@wndhydrnt]: https://github.com/wndhydrnt
61
+ [@ggilder]: https://github.com/ggilder
62
+ [@salbertson]: https://github.com/salbertson
63
+ [@camilleldn]: https://github.com/camilleldn
64
+ [@mcls]: https://github.com/mcls
65
+ [@yous]: https://github.com/yous
66
+ [@vrthra]: https://github.com/vrthra
67
+ [@SkuliOskarsson]: https://github.com/SkuliOskarsson
68
+ [@jspanjers]: https://github.com/jspanjers
69
+ [@sch1zo]: https://github.com/sch1zo
70
+ [@smangelsdorf]: https://github.com/smangelsdorf
71
+ [@mvz]: https://github.com/mvz
72
+ [@jfelchner]: https://github.com/jfelchner
73
+ [@janraasch]: https://github.com/janraasch
74
+ [@jcarbo]: https://github.com/jcarbo
75
+ [@oneamtu]: https://github.com/oneamtu
76
+ [@toy]: https://github.com/toy
77
+ [@Koronen]: https://github.com/Koronen
78
+ [@blainesch]: https://github.com/blainesch
79
+ [@marxarelli]: https://github.com/marxarelli
80
+ [@katieschilling]: https://github.com/katieschilling
81
+ [@kakutani]: https://github.com/kakutani
82
+ [@rrosenblum]: https://github.com/rrosenblum
83
+ [@mattjmcnaughton]: https://github.com/mattjmcnaughton
84
+ [@huerlisi]: https://github.com/huerlisi
85
+ [@volkert]: https://github.com/volkert
86
+ [@lumeet]: https://github.com/lumeet
87
+ [@mmozuras]: https://github.com/mmozuras
88
+ [@d4rk5eed]: https://github.com/d4rk5eed
89
+ [@cshaffer]: https://github.com/cshaffer
90
+ [@eitoball]: https://github.com/eitoball
91
+ [@iainbeeston]: https://github.com/iainbeeston
92
+ [@pimterry]: https://github.com/pimterry
93
+ [@palkan]: https://github.com/palkan
94
+ [@jdoconnor]: https://github.com/jdoconnor
95
+ [@meganemura]: https://github.com/meganemura
96
+ [@zvkemp]: https://github.com/zvkemp
97
+ [@vassilevsky]: https://github.com/vassilevsky
98
+ [@gerry3]: https://github.com/gerry3
99
+ [@ypresto]: https://github.com/ypresto
100
+ [@clowder]: https://github.com/clowder
101
+ [@mudge]: https://github.com/mudge
102
+ [@mzp]: https://github.com/mzp
103
+ [@bankair]: https://github.com/bankair
104
+ [@crimsonknave]: https://github.com/crimsonknave
105
+ [@renuo]: https://github.com/renuo
106
+ [@sdeframond]: https://github.com/sdeframond
107
+ [@til]: https://github.com/til
108
+ [@carhartl]: https://github.com/carhartl
109
+ [@dylandavidson]: https://github.com/dylandavidson
110
+ [@tmr08c]: https://github.com/tmr08c
111
+ [@hbd225]: https://github.com/hbd225
112
+ [@l8nite]: https://github.com/l8nite
113
+ [@sumeet]: https://github.com/sumeet
114
+ [@ojab]: https://github.com/ojab
115
+ [@chastell]: https://github.com/chastell
116
+ [@glasnt]: https://github.com/glasnt
117
+ [@crazydog115]: https://github.com/crazydog115
118
+ [@RGBD]: https://github.com/RGBD
119
+ [@panthomakos]: https://github.com/panthomakos
120
+ [@matugm]: https://github.com/matugm
121
+ [@m1foley]: https://github.com/m1foley
122
+ [@tejasbubane]: https://github.com/tejasbubane
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubocop
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.32.0
4
+ version: 0.32.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bozhidar Batsov
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2015-06-06 00:00:00.000000000 Z
13
+ date: 2015-06-24 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rainbow
@@ -514,6 +514,7 @@ files:
514
514
  - relnotes/v0.30.1.md
515
515
  - relnotes/v0.31.0.md
516
516
  - relnotes/v0.32.0.md
517
+ - relnotes/v0.32.1.md
517
518
  - rubocop.gemspec
518
519
  homepage: http://github.com/bbatsov/rubocop
519
520
  licenses: