datarockets-style 0.9.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile.lock DELETED
@@ -1,84 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- datarockets-style (0.9.0)
5
- rubocop (~> 0.84)
6
- rubocop-rails (~> 2.5.2)
7
- rubocop-rspec (~> 1.39)
8
-
9
- GEM
10
- remote: https://rubygems.org/
11
- specs:
12
- activesupport (5.2.4.3)
13
- concurrent-ruby (~> 1.0, >= 1.0.2)
14
- i18n (>= 0.7, < 2)
15
- minitest (~> 5.1)
16
- tzinfo (~> 1.1)
17
- ast (2.4.0)
18
- byebug (11.1.3)
19
- coderay (1.1.2)
20
- concurrent-ruby (1.1.6)
21
- diff-lcs (1.3)
22
- i18n (1.8.2)
23
- concurrent-ruby (~> 1.0)
24
- method_source (1.0.0)
25
- minitest (5.14.1)
26
- parallel (1.19.1)
27
- parser (2.7.1.3)
28
- ast (~> 2.4.0)
29
- pry (0.13.1)
30
- coderay (~> 1.1)
31
- method_source (~> 1.0)
32
- pry-byebug (3.9.0)
33
- byebug (~> 11.0)
34
- pry (~> 0.13.0)
35
- rack (2.2.2)
36
- rainbow (3.0.0)
37
- rake (13.0.1)
38
- rexml (3.2.4)
39
- rspec (3.9.0)
40
- rspec-core (~> 3.9.0)
41
- rspec-expectations (~> 3.9.0)
42
- rspec-mocks (~> 3.9.0)
43
- rspec-core (3.9.0)
44
- rspec-support (~> 3.9.0)
45
- rspec-expectations (3.9.0)
46
- diff-lcs (>= 1.2.0, < 2.0)
47
- rspec-support (~> 3.9.0)
48
- rspec-mocks (3.9.0)
49
- diff-lcs (>= 1.2.0, < 2.0)
50
- rspec-support (~> 3.9.0)
51
- rspec-support (3.9.0)
52
- rubocop (0.84.0)
53
- parallel (~> 1.10)
54
- parser (>= 2.7.0.1)
55
- rainbow (>= 2.2.2, < 4.0)
56
- rexml
57
- rubocop-ast (>= 0.0.3)
58
- ruby-progressbar (~> 1.7)
59
- unicode-display_width (>= 1.4.0, < 2.0)
60
- rubocop-ast (0.0.3)
61
- parser (>= 2.7.0.1)
62
- rubocop-rails (2.5.2)
63
- activesupport
64
- rack (>= 1.1)
65
- rubocop (>= 0.72.0)
66
- rubocop-rspec (1.39.0)
67
- rubocop (>= 0.68.1)
68
- ruby-progressbar (1.10.1)
69
- thread_safe (0.3.6)
70
- tzinfo (1.2.7)
71
- thread_safe (~> 0.1)
72
- unicode-display_width (1.7.0)
73
-
74
- PLATFORMS
75
- ruby
76
-
77
- DEPENDENCIES
78
- datarockets-style!
79
- pry-byebug
80
- rake (~> 13.0)
81
- rspec (~> 3.7)
82
-
83
- BUNDLED WITH
84
- 2.1.4
@@ -1,14 +0,0 @@
1
- require "rubocop"
2
- require "datarockets/style/formatter/todo_list_formatter"
3
-
4
- require "datarockets/style/version"
5
-
6
- require "datarockets/style/cop/layout/array_alignment_extended"
7
- require "datarockets/style/cop/style/nested_interpolation"
8
-
9
- module Datarockets
10
- # Datarickors sharable config
11
- module Style
12
- # Your code goes here...
13
- end
14
- end
@@ -1,83 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Datarockets
4
- module Style
5
- module Cop
6
- module Layout
7
- # Here we check if the elements of a multi-line array literal are
8
- # aligned.
9
- #
10
- # @example EnforcedStyle: with_first_argument (default)
11
- # # good
12
- #
13
- # array = [1, 2, 3,
14
- # 4, 5, 6]
15
- # array = ['run',
16
- # 'forrest',
17
- # 'run']
18
- #
19
- # # bad
20
- #
21
- # array = [1, 2, 3,
22
- # 4, 5, 6]
23
- # array = ['run',
24
- # 'forrest',
25
- # 'run']
26
- #
27
- # @example EnforcedStyle: with_fixed_indentation
28
- # # good
29
- #
30
- # array = [1, 2, 3,
31
- # 4, 5, 6]
32
- #
33
- # # bad
34
- #
35
- # array = [1, 2, 3,
36
- # 4, 5, 6]
37
- class ArrayAlignmentExtended < RuboCop::Cop::Cop
38
- include RuboCop::Cop::Alignment
39
-
40
- ALIGN_PARAMS_MSG = "Align the elements of an array literal if they span more than one line."
41
-
42
- FIXED_INDENT_MSG = "Use one level of indentation for elements " \
43
- "following the first line of a multi-line array."
44
-
45
- def on_array(node)
46
- return if node.children.size < 2
47
-
48
- check_alignment(node.children, base_column(node, node.children))
49
- end
50
-
51
- def autocorrect(node)
52
- RuboCop::Cop::AlignmentCorrector.correct(processed_source, node, column_delta)
53
- end
54
-
55
- private
56
-
57
- def message(_node)
58
- fixed_indentation? ? FIXED_INDENT_MSG : ALIGN_PARAMS_MSG
59
- end
60
-
61
- def fixed_indentation?
62
- cop_config["EnforcedStyle"] == "with_fixed_indentation"
63
- end
64
-
65
- def base_column(node, args)
66
- fixed_indentation? ? line_indentation(node) : display_column(args.first.source_range)
67
- end
68
-
69
- def line_indentation(node)
70
- lineno = target_method_lineno(node)
71
- line = node.source_range.source_buffer.source_line(lineno)
72
- line_indentation = /\S.*/.match(line).begin(0)
73
- line_indentation + configured_indentation_width
74
- end
75
-
76
- def target_method_lineno(node)
77
- node.loc.line
78
- end
79
- end
80
- end
81
- end
82
- end
83
- end
@@ -1,37 +0,0 @@
1
- module Datarockets
2
- module Style
3
- module Cop
4
- module Style
5
- # This cop checks nested interpolations
6
- #
7
- # @example
8
- #
9
- # # bad
10
- # "Hello, #{user.blank? ? 'guest' : "dear #{user.name}"}"
11
- #
12
- # # good
13
- # user_name = user.blank? ? 'guest' : "dear #{user.name}"
14
- # "Hello, #{user_name}"
15
- class NestedInterpolation < RuboCop::Cop::Cop
16
- include RuboCop::Cop::Interpolation
17
-
18
- MSG = "Redundant nested interpolation.".freeze
19
-
20
- def on_interpolation(node)
21
- node.each_descendant(:dstr) do |descendant_node|
22
- detect_double_interpolation(descendant_node)
23
- end
24
- end
25
-
26
- private
27
-
28
- def detect_double_interpolation(node)
29
- node.each_child_node(:begin) do |begin_node|
30
- add_offense(begin_node)
31
- end
32
- end
33
- end
34
- end
35
- end
36
- end
37
- end
@@ -1,57 +0,0 @@
1
- module Datarockets
2
- module Style
3
- module Formatter
4
- module TodoListFormatter
5
- # Get file of pairs: file path and cop name - and prepare report for ToDo list formatter.
6
- #
7
- # Example of result:
8
- #
9
- # LineLength
10
- # Exclude:
11
- # - "really/bad/file.rb" # 100500
12
- # - "almost/ok.rb" # 1
13
- class ReportSummary
14
- attr_reader :offense_list
15
-
16
- FileGroup = Struct.new(:file, :offenses_count) do
17
- def print(output)
18
- output.puts " - '#{file}' # #{offenses_count}"
19
- end
20
- end
21
-
22
- OffenseGroup = Struct.new(:cop_name, :offenses) do
23
- def file_groups
24
- @_file_groups ||= offenses.group_by(&:file_path).map do |file, offenses|
25
- FileGroup.new(file, offenses.length)
26
- end
27
- end
28
-
29
- def print(output)
30
- output.puts(cop_name + ":")
31
- output.puts(" Exclude:")
32
- file_groups.sort_by(&:file).each do |file_group|
33
- file_group.print(output)
34
- end
35
- output.puts
36
- end
37
- end
38
-
39
- def initialize(offense_list)
40
- @offense_list = offense_list
41
- end
42
-
43
- def call(output)
44
- offense_groups.sort_by(&:cop_name).each { |group| group.print(output) }
45
- end
46
-
47
- private
48
-
49
- def offense_groups
50
- @_offense_groups ||= offense_list.group_by(&:cop_name)
51
- .map { |cop_name, offenses| OffenseGroup.new(cop_name, offenses) }
52
- end
53
- end
54
- end
55
- end
56
- end
57
- end
@@ -1,5 +0,0 @@
1
- module Datarockets
2
- module Style
3
- VERSION = "0.9.0".freeze
4
- end
5
- end