publishing_platform_rubocop 0.1.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 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: []