foobara-rubocop-rules 0.0.2

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: aee8cfc9668034a3a62a207febafe42ccdf55358915d6fe681ffd143ab1e4e8d
4
+ data.tar.gz: 1cbaed758bb117a5a9c5a96314491bba43cd5010eebd8ebab94b34836d9c4ff0
5
+ SHA512:
6
+ metadata.gz: d4f3444eca666d805b7160f6ebe98c722afe63810c260934fc7f8ac3334de2ea03b3a56824336328c9e75c5c65dcffbd737c1f2c0cbeebb6d054d64e93dda696
7
+ data.tar.gz: 8ce68396c8e91e87c83d63f845fadb5c1d43944d928021ce75a28279286d45ae90ea804118a88d94f17e625aedc9af77b72eeadba1d2faa83e8d720f66ba2f78
data/.rubocop.yml ADDED
@@ -0,0 +1,6 @@
1
+ AllCops:
2
+ TargetRubyVersion: 3.2
3
+ NewCops: enable
4
+
5
+ inherit_from:
6
+ - ./rules/*
data/LICENSE.txt ADDED
@@ -0,0 +1,10 @@
1
+ foobara-rubocop-rules is dual licensed under the Apache-2.0 license and the MIT license.
2
+
3
+ Apache-2.0 License: LICENSE-APACHE.txt or https://www.apache.org/licenses/LICENSE-2.0.txt
4
+ MIT License: LICENSE-MIT.txt or https://opensource.org/licenses/MIT
5
+
6
+ You may choose the license that best suits your needs.
7
+
8
+ This is equivalent to the following SPDX License Expression: Apache-2.0 OR MIT
9
+
10
+ Copyright (c) 2023 Miles Georgi
data/rules/gemspec.yml ADDED
@@ -0,0 +1,4 @@
1
+ # Would be nice to turn this back on but recent changes try to parse the version number
2
+ # but we load it dynamically from .ruby-version and that breaks rubocop.
3
+ Gemspec/RequiredRubyVersion:
4
+ Enabled: false
data/rules/layout.yml ADDED
@@ -0,0 +1,2 @@
1
+ Layout/LineLength:
2
+ Max: 120
data/rules/lint.yml ADDED
@@ -0,0 +1,16 @@
1
+ Lint/AmbiguousBlockAssociation:
2
+ Exclude:
3
+ - 'spec/**/*'
4
+
5
+ Lint/EmptyClass:
6
+ Enabled: false
7
+
8
+ Lint/Loop:
9
+ Enabled: false
10
+
11
+ Lint/UnusedBlockArgument:
12
+ AutoCorrect: false
13
+
14
+ Lint/UnusedMethodArgument:
15
+ AutoCorrect: false
16
+ AllowUnusedKeywordArguments: true
data/rules/metrics.yml ADDED
@@ -0,0 +1,26 @@
1
+ Metrics/AbcSize:
2
+ Enabled: false
3
+
4
+ Metrics/BlockLength:
5
+ Enabled: false
6
+
7
+ Metrics/BlockNesting:
8
+ Enabled: false
9
+
10
+ Metrics/ClassLength:
11
+ Enabled: false
12
+
13
+ Metrics/CyclomaticComplexity:
14
+ Enabled: false
15
+
16
+ Metrics/MethodLength:
17
+ Enabled: false
18
+
19
+ Metrics/ModuleLength:
20
+ Enabled: false
21
+
22
+ Metrics/ParameterLists:
23
+ CountKeywordArgs: false
24
+
25
+ Metrics/PerceivedComplexity:
26
+ Enabled: false
data/rules/naming.yml ADDED
@@ -0,0 +1,8 @@
1
+ Naming/AccessorMethodName:
2
+ Enabled: false
3
+
4
+ Naming/PredicateName:
5
+ Enabled: false
6
+
7
+ Naming/VariableNumber:
8
+ Enabled: false
data/rules/rake.yml ADDED
@@ -0,0 +1,5 @@
1
+ require:
2
+ - rubocop-rake
3
+
4
+ Rake/Desc:
5
+ Enabled: false
data/rules/rspec.yml ADDED
@@ -0,0 +1,56 @@
1
+ require:
2
+ - rubocop-rspec
3
+
4
+ RSpec/DescribeClass:
5
+ Enabled: false
6
+
7
+ RSpec/ExampleLength:
8
+ Enabled: false
9
+
10
+ RSpec/ExpectInHook:
11
+ Enabled: false
12
+
13
+ # Deprecated and wonky
14
+ RSpec/FilePath:
15
+ Enabled: false
16
+
17
+ RSpec/Focus:
18
+ Enabled: <%= ENV["CI"] == "true" %>
19
+
20
+ RSpec/ImplicitSubject:
21
+ EnforcedStyle: single_statement_only
22
+
23
+ RSpec/IndexedLet:
24
+ Enabled: false
25
+
26
+ RSpec/InstanceVariable:
27
+ Enabled: false
28
+
29
+ RSpec/MultipleExpectations:
30
+ Enabled: false
31
+
32
+ RSpec/MultipleMemoizedHelpers:
33
+ Enabled: false
34
+
35
+ RSpec/NestedGroups:
36
+ Enabled: false
37
+
38
+ RSpec/NoExpectationExample:
39
+ AllowedPatterns:
40
+ - ^is_expected_
41
+
42
+ RSpec/NotToNot:
43
+ EnforcedStyle: to_not
44
+
45
+ # Would be really nice to turn this on if we can exclude namespaces like Foobara so we don´t have to have foobara/
46
+ # prefixing every path.
47
+ RSpec/SpecFilePathFormat:
48
+ Enabled: false
49
+
50
+ # where is something mentioning Rails coming from?? Built into the rspec cops?
51
+ RSpecRails/HaveHttpStatus:
52
+ Enabled: false
53
+
54
+ RSpec/RemoveConst:
55
+ Exclude:
56
+ - 'spec/**/*'
data/rules/style.yml ADDED
@@ -0,0 +1,66 @@
1
+ Style/BlockComments:
2
+ Enabled: false
3
+
4
+ Style/BlockDelimiters:
5
+ Exclude:
6
+ - 'spec/**/*'
7
+
8
+ Style/CaseEquality:
9
+ Enabled: false
10
+
11
+ Style/ClassAndModuleChildren:
12
+ Enabled: false
13
+
14
+ Style/Documentation:
15
+ Enabled: false
16
+
17
+ Style/EmptyMethod:
18
+ EnforcedStyle: expanded
19
+
20
+ Style/FrozenStringLiteralComment:
21
+ SafeAutoCorrect: true
22
+ EnforcedStyle: never
23
+
24
+ Style/GuardClause:
25
+ Enabled: false
26
+
27
+ Style/HashSyntax:
28
+ EnforcedStyle: ruby19
29
+
30
+ Style/IfUnlessModifier:
31
+ Enabled: false
32
+
33
+ Style/Lambda:
34
+ EnforcedStyle: literal
35
+
36
+ Style/MultilineBlockChain:
37
+ Enabled: false
38
+
39
+ Style/Next:
40
+ Enabled: false
41
+
42
+ Style/NumericPredicate:
43
+ Enabled: false
44
+
45
+ Style/OptionalBooleanParameter:
46
+ Enabled: false
47
+
48
+ Style/RedundantFetchBlock:
49
+ Enabled: false
50
+
51
+ Style/RegexpLiteral:
52
+ Enabled: false
53
+
54
+ Style/RescueStandardError:
55
+ EnforcedStyle: implicit
56
+
57
+ Style/SoleNestedConditional:
58
+ Enabled: false
59
+
60
+ Style/StringLiterals:
61
+ Enabled: true
62
+ EnforcedStyle: double_quotes
63
+
64
+ Style/StringLiteralsInInterpolation:
65
+ Enabled: true
66
+ EnforcedStyle: double_quotes
data/version.rb ADDED
@@ -0,0 +1,5 @@
1
+ module Foobara
2
+ module RubocopRules
3
+ VERSION = "0.0.2".freeze
4
+ end
5
+ end
metadata ADDED
@@ -0,0 +1,87 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: foobara-rubocop-rules
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Miles Georgi
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2024-05-31 00:00:00.000000000 Z
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'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rubocop-rspec
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ description:
42
+ email:
43
+ - azimux@gmail.com
44
+ executables: []
45
+ extensions: []
46
+ extra_rdoc_files: []
47
+ files:
48
+ - ".rubocop.yml"
49
+ - LICENSE.txt
50
+ - rules/gemspec.yml
51
+ - rules/layout.yml
52
+ - rules/lint.yml
53
+ - rules/metrics.yml
54
+ - rules/naming.yml
55
+ - rules/rake.yml
56
+ - rules/rspec.yml
57
+ - rules/style.yml
58
+ - version.rb
59
+ homepage: https://github.com/foobara/rubocop-rules
60
+ licenses:
61
+ - Apache-2.0
62
+ - MIT
63
+ metadata:
64
+ homepage_uri: https://github.com/foobara/rubocop-rules
65
+ source_code_uri: https://github.com/foobara/rubocop-rules
66
+ changelog_uri: https://github.com/foobara/rubocop-rules/blob/main/CHANGELOG.md
67
+ rubygems_mfa_required: 'true'
68
+ post_install_message:
69
+ rdoc_options: []
70
+ require_paths:
71
+ - lib
72
+ required_ruby_version: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: '3.2'
77
+ required_rubygems_version: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ requirements: []
83
+ rubygems_version: 3.4.10
84
+ signing_key:
85
+ specification_version: 4
86
+ summary: Common rubocop rules used in various foobara projects.
87
+ test_files: []