publishing_platform_rubocop 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: f27137d2bfe4b25d99f0ac251051e50b8c8a7e4c5f0d362cd81384d1074b3070
4
+ data.tar.gz: b3ad74d780bd5cf98ee1a2e32f397df408978ab334a44bfd832beb77560533dd
5
+ SHA512:
6
+ metadata.gz: e3175569084735053a97c4f0282f1e15eac69f8a877ea0d2f7e0ed38571e23bd3665a3369947eae5ae068fd8f0b6d0bb5e7b4c262012ae1301f6cda4f267b962
7
+ data.tar.gz: dfde7d47e3d316bfc0747e33fa761035cc0ecf6b5eb1938ca17ef1d27a11a81436f8e31d827330982cfea3d31d7345c154c0a00e2233515deea357bdbb395c25
data/README.md ADDED
@@ -0,0 +1,2 @@
1
+ # Publishing Platform RuboCop
2
+ RuboCop style rules for publishing platform Ruby projects
@@ -0,0 +1,6 @@
1
+ # Within GOV.UK we use Capybara test method syntax of feature,
2
+ # scenario. We don't want this outside of feature or system specs though.
3
+ RSpec/Capybara/FeatureMethods:
4
+ Exclude:
5
+ - 'spec/features/**/*.rb'
6
+ - 'spec/system/**/*.rb'
@@ -0,0 +1,27 @@
1
+ AllCops:
2
+ NewCops: disable
3
+ SuggestExtensions: false
4
+ Exclude:
5
+ - 'bin/**'
6
+ - 'config.ru'
7
+ - 'tmp/**/*'
8
+ - 'db/schema.rb'
9
+ - 'db/migrate/201*'
10
+ - 'vendor/**/*'
11
+ - 'node_modules/**/*'
12
+
13
+ DisplayCopNames:
14
+ Enabled: true
15
+
16
+ ExtraDetails:
17
+ Enabled: true
18
+
19
+ DisplayStyleGuide:
20
+ Enabled: true
21
+
22
+ inherit_from:
23
+ - layout.yml
24
+ - metrics.yml
25
+ - naming.yml
26
+ - style.yml
27
+ - rake.yml
data/config/layout.yml ADDED
@@ -0,0 +1,78 @@
1
+ # https://github.com/alphagov/govuk-lint/pull/7
2
+ # "There are occasions where following this rule forces you to make the
3
+ # code less readable. This is particularly the case for tests where method
4
+ # names form the test descriptions. Keeping test descriptions under a
5
+ # certain length can force them to become cryptic."
6
+ Layout/LineLength:
7
+ Enabled: false
8
+
9
+ # We have two styles of method call in our apps:
10
+ #
11
+ # SomeClass.first_method_call_on_same_line
12
+ # .other_method_call
13
+ #
14
+ # a_particularly_long_first_method_call
15
+ # .subsequent_method_call
16
+ #
17
+ # Any setting of this Cop would cause odd alignment
18
+ # for one of these styles. Since there isn't a Cop to
19
+ # set a preferred style, we should disable this one.
20
+ Layout/MultilineMethodCallIndentation:
21
+ Enabled: false
22
+
23
+ # Part of the orignal GDS styleguide
24
+ # "Outdent private etc"
25
+ # https://github.com/alphagov/styleguides/blob/6395a10d41c3938f4c147cda443fd83f854c3e7a/ruby.md#classes
26
+ Layout/AccessModifierIndentation:
27
+ Enabled: true
28
+ EnforcedStyle: outdent
29
+
30
+ # Our predominant style of writing multiline arrays is:
31
+ #
32
+ # my_array = [
33
+ # element_1,
34
+ # element_2,
35
+ # ]
36
+ #
37
+ # even_in_a_method_call([
38
+ # element_1,
39
+ # element_2,
40
+ # ])
41
+ Layout/FirstArrayElementIndentation:
42
+ EnforcedStyle: consistent
43
+
44
+ # Our predominant style of writing multiline hashes is:
45
+ #
46
+ # my_hash = {
47
+ # key_1: value_1,
48
+ # key_2: value_2,
49
+ # }
50
+ #
51
+ # even_in_a_method_call({
52
+ # key_1: value_1,
53
+ # key_2: value_2,
54
+ # })
55
+ Layout/FirstHashElementIndentation:
56
+ EnforcedStyle: consistent
57
+
58
+ # Our predominant style of writing multiline operations is
59
+ # to indent the subsequent lines. This helps to prevent
60
+ # misreading the next line as a new/separate statement.
61
+ #
62
+ # Introduced in: 9b2a744ab119d7797aaf423abcec914360f4208e
63
+ Layout/MultilineOperationIndentation:
64
+ EnforcedStyle: indented
65
+
66
+ # We should be consistent: if some items of an array are
67
+ # on multiple lines, then all items should be. This works
68
+ # better with the indentation Cops, produces clearer diffs,
69
+ # and avoids wasting time tweaking an arbitrary layout.
70
+ Layout/MultilineArrayLineBreaks:
71
+ Enabled: true
72
+
73
+ # We should be consistent: if some items of a hash are
74
+ # on multiple lines, then all items should be. This works
75
+ # better with the indentation Cops, produces clearer diffs,
76
+ # and avoids wasting time tweaking an arbitrary layout.
77
+ Layout/MultilineHashKeyLineBreaks:
78
+ Enabled: true
@@ -0,0 +1,73 @@
1
+ # Analog of: 736b3d295f88b9ba6676fc168b823535582388c2
2
+ #
3
+ # We should avoid cops that are based on heuristics, since
4
+ # it's not clear what action to take to fix an issue.
5
+ #
6
+ # For this Cop, there are also several kinds of file that
7
+ # have long blocks by convention (tests, config, rake tasks,
8
+ # gemspecs), to the point where its value is dubious.
9
+ Metrics/BlockLength:
10
+ Enabled: false
11
+
12
+ # Introduced in: 736b3d295f88b9ba6676fc168b823535582388c2
13
+ # "Disable opinionated cops"
14
+ #
15
+ # We should avoid cops that are based on heuristics, since
16
+ # it's not clear what action to take to fix an issue.
17
+ Metrics/AbcSize:
18
+ Enabled: false
19
+
20
+ # Introduced in: 736b3d295f88b9ba6676fc168b823535582388c2
21
+ # "Disable opinionated cops"
22
+ #
23
+ # We should avoid cops that are based on heuristics, since
24
+ # it's not clear what action to take to fix an issue.
25
+ Metrics/ClassLength:
26
+ Enabled: false
27
+
28
+ # Introduced in: 736b3d295f88b9ba6676fc168b823535582388c2
29
+ # "Disable opinionated cops"
30
+ #
31
+ # We should avoid cops that are based on heuristics, since
32
+ # it's not clear what action to take to fix an issue.
33
+ Metrics/ModuleLength:
34
+ Enabled: false
35
+
36
+ # Introduced in: 736b3d295f88b9ba6676fc168b823535582388c2
37
+ # "Disable opinionated cops"
38
+ #
39
+ # We should avoid cops that are based on heuristics, since
40
+ # it's not clear what action to take to fix an issue.
41
+ Metrics/PerceivedComplexity:
42
+ Enabled: false
43
+
44
+ # Introduced in: c69a7eb3af955d6c4c0cf0c3cec8e9f330c74429
45
+ #
46
+ # We should avoid cops that are based on heuristics, since
47
+ # it's not clear what action to take to fix an issue.
48
+ Metrics/BlockNesting:
49
+ Enabled: false
50
+
51
+ # Analog of: 736b3d295f88b9ba6676fc168b823535582388c2
52
+ # "Disable opinionated cops"
53
+ #
54
+ # We should avoid cops that are based on heuristics, since
55
+ # it's not clear what action to take to fix an issue.
56
+ Metrics/CyclomaticComplexity:
57
+ Enabled: false
58
+
59
+ # Analog of: 736b3d295f88b9ba6676fc168b823535582388c2
60
+ # "Disable opinionated cops"
61
+ #
62
+ # We should avoid cops that are based on heuristics, since
63
+ # it's not clear what action to take to fix an issue.
64
+ Metrics/MethodLength:
65
+ Enabled: false
66
+
67
+ # Analog of: 736b3d295f88b9ba6676fc168b823535582388c2
68
+ # "Disable opinionated cops"
69
+ #
70
+ # We should avoid cops that are based on heuristics, since
71
+ # it's not clear what action to take to fix an issue.
72
+ Metrics/ParameterLists:
73
+ Enabled: false
data/config/naming.yml ADDED
@@ -0,0 +1,28 @@
1
+ # Conflicts with the original GDS styleguide
2
+ #
3
+ # While this may conflict with the original GDS styleguide, there
4
+ # are times where we wish to call a method that "sets" something.
5
+ #
6
+ # def set_political_and_government(edition)
7
+ #
8
+ # The original styleguide only accounts for a specific kind of "set"
9
+ # operation, where the argument is the value being assigned.
10
+ #
11
+ # Introduced in: c69a7eb3af955d6c4c0cf0c3cec8e9f330c74429
12
+ # https://github.com/alphagov/styleguides/blob/6395a10d41c3938f4c147cda443fd83f854c3e7a/ruby.md#naming
13
+ Naming/AccessorMethodName:
14
+ Enabled: false
15
+
16
+ # We should be free to decide on interfaces that make sense to us.
17
+ # At the time of writing, this Cop is not auto-correctable, and
18
+ # would generate a prohibitively high number of issues across our
19
+ # repos, which would require manual intervention.
20
+ Naming/PredicateName:
21
+ Enabled: false
22
+
23
+ # This rule can cause readability issues when applied (for example
24
+ # `born_on_or_before_6_april_1935` becomes `born_on_or_before_6april1935`)
25
+ # and would require lots of amends to apply either `normalcase`
26
+ # or `snake_case` to projects. It is not auto-correctable.
27
+ Naming/VariableNumber:
28
+ Enabled: false
data/config/rails.yml ADDED
@@ -0,0 +1,94 @@
1
+ ##################### Rails ##################################
2
+
3
+ # By default Rails is switched off so this can be used by non-Rails apps,
4
+ # this can be enabled in a local .rubocop.yml file
5
+
6
+ require: rubocop-rails
7
+
8
+ AllCops:
9
+ Exclude:
10
+ - 'db/schema.rb'
11
+ - 'db/migrate/201*'
12
+
13
+ Rails:
14
+ Enabled: true
15
+
16
+ # We have custom find_by methods in several repos, which
17
+ # we're not going to rename. This Cop also raises false
18
+ # positives for find_by methods that are unrelated to model
19
+ # classes, as well as for repos using Mongoid. The value
20
+ # of the consistency this brings is limited, since we mostly
21
+ # use find_by(key: value) anyway.
22
+ #
23
+ # https://github.com/rubocop-hq/rubocop/issues/3758
24
+ Rails/DynamicFindBy:
25
+ Enabled: false
26
+
27
+ # We commonly print output in Ruby code that has been
28
+ # extracted from a Rake task in 'lib/'.
29
+ Rails/Output:
30
+ Exclude:
31
+ - 'lib/**/*.rb'
32
+
33
+ # It's unclear what remedial action to take for the total
34
+ # set of methods this Cop has issues with. For example, we
35
+ # use 'update_all' in many of our repos, for which there is
36
+ # no efficient alternative. Instead, we should only enable
37
+ # this Cop for methods that have a clear alternative.
38
+ Rails/SkipsModelValidations:
39
+ ForbiddenMethods:
40
+ - update_attribute
41
+
42
+ # While using has_many/through does have some advantages,
43
+ # it also requires a significant amount of boilerplate code:
44
+ #
45
+ # - An additional 'has_many :join_table' statement
46
+ # - An additional class for the join table (model)
47
+ #
48
+ # This Cop/rule appears to have been written with the
49
+ # assumption that all join tables have inherent meaning,
50
+ # we want to represent, which is not the case; sometimes
51
+ # relationships are just # many-to-many, and that's it.
52
+ Rails/HasAndBelongsToMany:
53
+ Enabled: false
54
+
55
+ # While using 'inverse_of' can reduce DB queries, we have
56
+ # not found this to be a problem in practice. The advantage
57
+ # of turning this on would be that we make the inverse
58
+ # behaviour explicit everywhere ActiveRecord can't apply it
59
+ # automatically, but this is rarely a surprise for developers.
60
+ # We also don't want to add 'inverse_of: false' everywhere;
61
+ # at the time of writing, there is no auto-correct for this.
62
+ Rails/InverseOf:
63
+ Enabled: false
64
+
65
+ # This is incompatible with the more robust use of foreign
66
+ # key constraints, which provide the same behaviour.
67
+ #
68
+ # Example: https://github.com/alphagov/content-publisher/blob/f26d9b551842fdf2084159b5b7f1bb078da56936/db/schema.rb#L396
69
+ Rails/HasManyOrHasOneDependent:
70
+ Enabled: false
71
+
72
+ # We commonly want to render HTML without escaping it, which
73
+ # is what 'html_safe' is for. In many cases, the content we
74
+ # render has already been sanitised (e.g. through Govspeak),
75
+ # or is otherwise trusted e.g. from a content item. We trust
76
+ # that developers will use 'html_safe' responsibly, and prefer
77
+ # the default, escaped output otherwise. At the time of writing,
78
+ # this Cop is disabled in a lot of repos, indicating it offers
79
+ # little value to many developers.
80
+ Rails/OutputSafety:
81
+ Enabled: false
82
+
83
+ # We seldom check the return value of 'update' to see if
84
+ # the operation was successful. Since we assume success, we
85
+ # should raise an exception if this is not the case.
86
+ Rails/SaveBang:
87
+ Enabled: true
88
+
89
+ # We should avoid unnecessary ambiguity between 'Time.current'
90
+ # and 'Time.zone.now', where 'Time.current' behaves differently
91
+ # depending on application config. We should always be explicit
92
+ # about whether we mean 'Time[.zone].now'.
93
+ Rails/TimeZone:
94
+ EnforcedStyle: "strict"
data/config/rake.yml ADDED
@@ -0,0 +1 @@
1
+ require: rubocop-rake
data/config/rspec.yml ADDED
@@ -0,0 +1,53 @@
1
+ require: rubocop-rspec
2
+
3
+ inherit_from:
4
+ - capybara.yml
5
+
6
+ # Analog of: 736b3d295f88b9ba6676fc168b823535582388c2
7
+ #
8
+ # We should avoid cops that are based on heuristics, since
9
+ # it's not clear what action to take to fix an issue.
10
+ RSpec/ExampleLength:
11
+ Enabled: false
12
+
13
+ # We should avoid cops that are based on heuristics, since
14
+ # it's not clear what action to take to fix an issue.
15
+ RSpec/MultipleMemoizedHelpers:
16
+ Enabled: false
17
+
18
+ # We have common cases, such as rake tasks, where we do not
19
+ # use a class to the describe the test.
20
+ RSpec/DescribeClass:
21
+ Enabled: false
22
+
23
+ # We accept multiple expectations (within reason), preferring
24
+ # them to running mulitple similar tests.
25
+ RSpec/MultipleExpectations:
26
+ Enabled: false
27
+
28
+ # Part of the GOV.UK feature style involves instance variables.
29
+ RSpec/InstanceVariable:
30
+ Exclude:
31
+ - 'spec/features/**/*.rb'
32
+ - 'spec/system/**/*.rb'
33
+
34
+ # In GOV.UK we quite often test that a class received a method.
35
+ RSpec/MessageSpies:
36
+ Enabled: false
37
+
38
+ # Analog of: 736b3d295f88b9ba6676fc168b823535582388c2
39
+ #
40
+ # We should avoid cops that are based on heuristics, since
41
+ # it's not clear what action to take to fix an issue.
42
+ RSpec/NestedGroups:
43
+ Enabled: false
44
+
45
+ # Nested contexts make more sense with "and" or "but", since
46
+ # they are a refinement of an outer context.
47
+ RSpec/ContextWording:
48
+ Prefixes:
49
+ - when
50
+ - with
51
+ - without
52
+ - and
53
+ - but
data/config/style.yml ADDED
@@ -0,0 +1,162 @@
1
+ # https://github.com/alphagov/govuk-lint/pull/36
2
+ # "When we have sequence of if/unless statements,
3
+ # some with multiple lines within the if statement
4
+ # block and some with a single line, forcing the single
5
+ # line statements to re-written makes it a harder
6
+ # to follow the branching logic."
7
+ Style/IfUnlessModifier:
8
+ Enabled: false
9
+
10
+ # Part of the orignal GDS styleguide
11
+ # "Never chain do...end"
12
+ # https://github.com/alphagov/styleguides/blob/6395a10d41c3938f4c147cda443fd83f854c3e7a/ruby.md#syntax
13
+ Style/MethodCalledOnDoEndBlock:
14
+ Enabled: true
15
+
16
+ # Part of the orignal GDS styleguide
17
+ # "Add a trailing comma to multi-line array [...]
18
+ # for clearer diffs with less line noise."
19
+ # https://github.com/alphagov/styleguides/blob/6395a10d41c3938f4c147cda443fd83f854c3e7a/ruby.md#collections
20
+ Style/TrailingCommaInArrayLiteral:
21
+ EnforcedStyleForMultiline: comma
22
+
23
+ # Part of the orignal GDS styleguide
24
+ # "Add a trailing comma to multi-line hash definitions [...]
25
+ # for clearer diffs with less line noise."
26
+ # https://github.com/alphagov/styleguides/blob/6395a10d41c3938f4c147cda443fd83f854c3e7a/ruby.md#collections
27
+ Style/TrailingCommaInHashLiteral:
28
+ EnforcedStyleForMultiline: comma
29
+
30
+ # Part of the orignal GDS styleguide
31
+ # "When long lists of method arguments require
32
+ # breaking over multiple lines, break each successive
33
+ # argument on a new line, including the first argument
34
+ # and closing paren. The final argument should include
35
+ # a trailing comma."
36
+ # https://github.com/alphagov/styleguides/blob/6395a10d41c3938f4c147cda443fd83f854c3e7a/ruby.md#general
37
+ Style/TrailingCommaInArguments:
38
+ EnforcedStyleForMultiline: comma
39
+
40
+ # Part of the orignal GDS styleguide
41
+ # "Prefer %w to the literal array syntax when you need
42
+ # an array of strings."
43
+ # https://github.com/alphagov/styleguides/blob/6395a10d41c3938f4c147cda443fd83f854c3e7a/ruby.md#collections
44
+ Style/WordArray:
45
+ MinSize: 0
46
+
47
+ # "Try not to mix up single-quoted and double-quoted
48
+ # strings within a file: it can make the code harder to read.
49
+ # Definitely don't mix up single-quoted and double-quoted
50
+ # strings within a method. If in doubt, use double-quoted strings,
51
+ # because you’ll probably need to use interpolation somewhere.
52
+ Style/StringLiterals:
53
+ EnforcedStyle: double_quotes
54
+
55
+ # Introduced in: 5ca6b7d20fd62a6ce890868abdeca12837e436d7
56
+ # "The wording of the description is hard to understand - it's not
57
+ # immediately obvious what you have to do, and doesn't really say why
58
+ # this is a good thing.
59
+ #
60
+ # It's not auto-fixable, which means it takes a lot of time to get the
61
+ # syntax right for every occurrence of `%.2f` for example (taken from
62
+ # `smart-answers`) for not very much benefit."
63
+ Style/FormatStringToken:
64
+ Enabled: false
65
+
66
+ # Using the default style leads to buggy auto-correct in several
67
+ # repos that have their own 'format' method defined. While it's not
68
+ # ideal to override a standard/Kernel method, it's also not practical
69
+ # to change a term that's so deeply embedded within our domain.
70
+ #
71
+ # Related PR: https://github.com/alphagov/specialist-publisher/pull/1640
72
+ # Related PR: https://github.com/alphagov/publisher/pull/1268
73
+ Style/FormatString:
74
+ EnforcedStyle: sprintf
75
+
76
+ # This is a contentious issue, since 'alias_method' works in
77
+ # all circumstances, whereas 'alias' only works lexically. As
78
+ # with single vs. double quotes, it seems pointless to expend
79
+ # effort deciding between them. Our predominant style is to use
80
+ # 'alias_method', which always works.
81
+ Style/Alias:
82
+ EnforcedStyle: prefer_alias_method
83
+
84
+ # This prevents weird characters in comments, such as stylistic
85
+ # quote characters and strange whitespace. We should only allow
86
+ # special characters when they are essential for a comment. It's
87
+ # a waste of effort to go and find the special sequence when an
88
+ # alternative exists e.g. '×' can be replaced with '*' in maths.
89
+ Style/AsciiComments:
90
+ AllowedChars: ['£']
91
+
92
+ # We should only use braces in multiline blocks in a # chained
93
+ # method call. This is consistent with the RSpec 'expect' syntax.
94
+ #
95
+ # expect {
96
+ # a_long_and_complex_method_call
97
+ # }.to raise_error(SomeError)
98
+ #
99
+ Style/BlockDelimiters:
100
+ EnforcedStyle: braces_for_chaining
101
+
102
+ # We have no concensus on this. Using the nested style is the
103
+ # default for generated Rails app (see 'config/application.rb').
104
+ # Using the compact style can help to reduce boilerplate within
105
+ # modules. At the time of writing, the auto-correct for this Cop
106
+ # is unsafe for moving to either style.
107
+ Style/ClassAndModuleChildren:
108
+ Enabled: false
109
+
110
+ # Introduced in: c69a7eb3af955d6c4c0cf0c3cec8e9f330c74429
111
+ # Documenting every class is a lot of effort and we don't
112
+ # expect to get any value from this. Another risk of adding
113
+ # more documentation is the potential for confusion if that
114
+ # documentation gets out-of-sync with the class/module.
115
+ Style/Documentation:
116
+ Enabled: false
117
+
118
+ # Introduced in: c69a7eb3af955d6c4c0cf0c3cec8e9f330c74429
119
+ # This can lead to excessively long lines. Consistent with
120
+ # disabling "Layout/LineLength".
121
+ #
122
+ # "There are occasions where following this rule forces you to make the
123
+ # code less readable."
124
+ Style/GuardClause:
125
+ Enabled: false
126
+
127
+ # Analog of: 736b3d295f88b9ba6676fc168b823535582388c2
128
+ # "Disable opinionated cops"
129
+ #
130
+ # We should avoid cops that are based on heuristics, since
131
+ # it's not clear what action to take to fix an issue.
132
+ Style/RegexpLiteral:
133
+ Enabled: false
134
+
135
+ # Using safe navigation is less explicit than making a clear
136
+ # check for truthiness, as evidenced by its own safelist for
137
+ # certain methods. Safe navigation is also less visible and
138
+ # pollutes otherwise readable method calls.
139
+ Style/SafeNavigation:
140
+ Enabled: false
141
+
142
+ # Introduced in: b171d652d3e434b74ddc621df3b5be24c49bc7e8
143
+ # This cop was added in preperation for a Ruby feature
144
+ # that is no longer likely to become part of the language.
145
+ # https://github.com/rubocop-hq/rubocop/issues/7197
146
+ Style/FrozenStringLiteralComment:
147
+ Enabled: false
148
+
149
+ # We should only use DateTime when it's necessary to account
150
+ # for ancient calendar changes. Otherwise, the arbitrary use
151
+ # of this class in place of Date or Time is confusing.
152
+ #
153
+ # https://rubystyle.guide/#no-datetime
154
+ Style/DateTime:
155
+ Enabled: true
156
+
157
+ # This rule conflicts with Style/BlockDelimiters.
158
+ # Style/MultilineBlockChain says use do...end instead of {...} for multi-line blocks,
159
+ # but Style/BlockDelimiters says use {...} instead of do...end when chaining.
160
+ # The latter should take priority over the former, because it leads to more readable code.
161
+ Style/MultilineBlockChain:
162
+ Enabled: false
metadata ADDED
@@ -0,0 +1,136 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: publishing_platform_rubocop
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Publishing Platform
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2024-05-09 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '13'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '13'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rubocop
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '='
32
+ - !ruby/object:Gem::Version
33
+ version: 1.63.4
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '='
39
+ - !ruby/object:Gem::Version
40
+ version: 1.63.4
41
+ - !ruby/object:Gem::Dependency
42
+ name: rubocop-ast
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '='
46
+ - !ruby/object:Gem::Version
47
+ version: 1.31.3
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '='
53
+ - !ruby/object:Gem::Version
54
+ version: 1.31.3
55
+ - !ruby/object:Gem::Dependency
56
+ name: rubocop-rails
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '='
60
+ - !ruby/object:Gem::Version
61
+ version: 2.24.1
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '='
67
+ - !ruby/object:Gem::Version
68
+ version: 2.24.1
69
+ - !ruby/object:Gem::Dependency
70
+ name: rubocop-rake
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '='
74
+ - !ruby/object:Gem::Version
75
+ version: 0.6.0
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '='
81
+ - !ruby/object:Gem::Version
82
+ version: 0.6.0
83
+ - !ruby/object:Gem::Dependency
84
+ name: rubocop-rspec
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '='
88
+ - !ruby/object:Gem::Version
89
+ version: 2.29.2
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '='
95
+ - !ruby/object:Gem::Version
96
+ version: 2.29.2
97
+ description: Shared RuboCop rules for publishing platform Ruby projects.
98
+ email:
99
+ executables: []
100
+ extensions: []
101
+ extra_rdoc_files: []
102
+ files:
103
+ - README.md
104
+ - config/capybara.yml
105
+ - config/default.yml
106
+ - config/layout.yml
107
+ - config/metrics.yml
108
+ - config/naming.yml
109
+ - config/rails.yml
110
+ - config/rake.yml
111
+ - config/rspec.yml
112
+ - config/style.yml
113
+ homepage:
114
+ licenses:
115
+ - MIT
116
+ metadata: {}
117
+ post_install_message:
118
+ rdoc_options: []
119
+ require_paths:
120
+ - lib
121
+ required_ruby_version: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ version: '3.0'
126
+ required_rubygems_version: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ version: '0'
131
+ requirements: []
132
+ rubygems_version: 3.3.7
133
+ signing_key:
134
+ specification_version: 4
135
+ summary: RuboCop Publishing Platform
136
+ test_files: []