kuyio-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: 158403ab37c1803e0d2edf63441793c53890e548fa963bd3ce1e7d78ad44258e
4
+ data.tar.gz: 02f37ee20cf1c5e8cdf308fbb64fb0428803c8feb35f89d356d2f557fc3a023c
5
+ SHA512:
6
+ metadata.gz: 1b30fb7c60e560f00e5bba67b59fca7c5e5ebd7b6fc26395c1c48e557375026a79de0dafa4b56dfdf3f06613721b8363787a5146e84381813ac44f10b6321294
7
+ data.tar.gz: af9406274ea5265fa34fca89be60a23e9416a7b9bfb3e65fa22bee2252e851832bc1b1ae5039bb42f7ee375ed41bf7a0410154db00dd33eb24f2cbf10dde2284
data/.gitignore ADDED
@@ -0,0 +1,13 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/
10
+ .DS_Store
11
+
12
+ # rspec failure tracking
13
+ .rspec_status
data/.rubocop.yml ADDED
@@ -0,0 +1 @@
1
+ inherit_from: default.yml
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify dependencies in kuyio-rubocop.gemspec
4
+ gemspec
data/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 KUY.io Inc.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,37 @@
1
+ # kuyio-rubocop
2
+
3
+ KUY.io shared rubocop configuration.
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ ```ruby
10
+ group :test, :development do
11
+ gem 'kuyio-rubocop', github: 'kuyio/kuyio-rubocop'
12
+ end
13
+ ```
14
+
15
+ And then run:
16
+
17
+ ```bash
18
+ $ bundle install
19
+ ```
20
+
21
+ ## Usage
22
+
23
+ Create a `.rubocop.yml` with the following directives:
24
+
25
+ ```yaml
26
+ inherit_gem:
27
+ kuyio-rubocop:
28
+ - default.yml
29
+ ```
30
+
31
+ Now, run:
32
+
33
+ ```bash
34
+ $ bundle exec rubocop
35
+ ```
36
+
37
+ You do not need to include rubocop directly in your application's dependencies. This gem will include a specific version of `rubocop` and `rubocop-rspec` that is shared across all projects.
data/RELEASING.md ADDED
@@ -0,0 +1,16 @@
1
+ # Releasing
2
+
3
+ 1. Update version.rb file accordingly.
4
+ 1. Tag the release: `git tag vVERSION`
5
+ 1. Push changes: `git push --tags`
6
+ 1. Update the release notes on GitHub.com
7
+ 1. Build and publish:
8
+
9
+ ```bash
10
+ bundle exec rake build
11
+ gem push pkg/kuyio-rubocop-X.XX.XX.gem
12
+ ```
13
+
14
+ - Announce the new release,
15
+ making sure to say "thank you" to the contributors
16
+ who helped shape this version!
data/Rakefile ADDED
@@ -0,0 +1 @@
1
+ require 'bundler/gem_tasks'
data/default.yml ADDED
@@ -0,0 +1,167 @@
1
+ require:
2
+ - rubocop-rspec
3
+ - rubocop-performance
4
+ - rubocop-rails
5
+
6
+ AllCops:
7
+ TargetRubyVersion: 2.7
8
+ Include:
9
+ - Rakefile
10
+ - lib/**/*.rake
11
+ Exclude:
12
+ - 'vendor/**/*'
13
+ - '*.gemspec'
14
+
15
+ Bundler/OrderedGems:
16
+ Enabled: false
17
+
18
+ Layout/ArgumentAlignment:
19
+ EnforcedStyle: with_fixed_indentation
20
+
21
+ Layout/ParameterAlignment:
22
+ EnforcedStyle: with_fixed_indentation
23
+
24
+ Layout/CaseIndentation:
25
+ EnforcedStyle: end
26
+
27
+ Layout/EndAlignment:
28
+ EnforcedStyleAlignWith: variable
29
+
30
+ Layout/FirstArrayElementIndentation:
31
+ EnforcedStyle: consistent
32
+
33
+ Layout/MultilineMethodCallIndentation:
34
+ EnforcedStyle: indented
35
+
36
+ Layout/MultilineOperationIndentation:
37
+ EnforcedStyle: indented
38
+
39
+ Layout/SpaceInsideHashLiteralBraces:
40
+ EnforcedStyle: no_space
41
+
42
+ Layout/LineLength:
43
+ Max: 100
44
+
45
+ # This seems to break some require lines somehow:
46
+ Layout/EmptyLinesAroundArguments:
47
+ Enabled: false
48
+
49
+ Lint/RescueException:
50
+ Exclude:
51
+ - 'lib/tasks/*.rake'
52
+
53
+ Metrics/AbcSize:
54
+ Enabled: false
55
+
56
+ Metrics/ClassLength:
57
+ Enabled: false
58
+
59
+ Metrics/CyclomaticComplexity:
60
+ Enabled: false
61
+
62
+ Metrics/PerceivedComplexity:
63
+ Enabled: false
64
+
65
+ Metrics/MethodLength:
66
+ Enabled: false
67
+
68
+ Metrics/ModuleLength:
69
+ Enabled: false
70
+
71
+ Metrics/ParameterLists:
72
+ Enabled: false
73
+
74
+ Metrics/BlockLength:
75
+ Enabled: false
76
+
77
+ Naming/FileName:
78
+ Exclude: ['Gemfile', 'Guardfile']
79
+
80
+ Naming/MethodParameterName:
81
+ Enabled: false
82
+
83
+ Style/AccessModifierDeclarations:
84
+ EnforcedStyle: inline
85
+
86
+ Style/BlockDelimiters:
87
+ Exclude:
88
+ - 'spec/**/*_spec.rb'
89
+
90
+ Style/Documentation:
91
+ Enabled: false
92
+
93
+ Style/DoubleNegation:
94
+ Enabled: false
95
+
96
+ Style/FrozenStringLiteralComment:
97
+ Enabled: false
98
+
99
+ Style/IfUnlessModifier:
100
+ Enabled: false
101
+
102
+ Style/FormatStringToken:
103
+ EnforcedStyle: template
104
+
105
+ # Disable Style/NumericLiterals so numbers don't need underscores
106
+ Style/NumericLiterals:
107
+ Enabled: false
108
+
109
+ Style/NumericPredicate:
110
+ EnforcedStyle: comparison
111
+
112
+ Style/RedundantBegin:
113
+ Enabled: false
114
+
115
+ Style/RegexpLiteral:
116
+ EnforcedStyle: slashes
117
+ AllowInnerSlashes: true
118
+ Exclude:
119
+ - 'Guardfile'
120
+
121
+ Style/SymbolArray:
122
+ Enabled: false
123
+
124
+ Style/TrailingCommaInArguments:
125
+ EnforcedStyleForMultiline: consistent_comma
126
+
127
+ Style/TrailingCommaInArrayLiteral:
128
+ EnforcedStyleForMultiline: consistent_comma
129
+
130
+ Style/TrailingCommaInHashLiteral:
131
+ EnforcedStyleForMultiline: consistent_comma
132
+
133
+ RSpec/AnyInstance:
134
+ Enabled: false
135
+
136
+ RSpec/Be:
137
+ Enabled: false
138
+
139
+ RSpec/DescribedClass:
140
+ EnforcedStyle: explicit
141
+
142
+ RSpec/ExampleLength:
143
+ Enabled: false
144
+
145
+ RSpec/HookArgument:
146
+ EnforcedStyle: each
147
+
148
+ RSpec/MultipleExpectations:
149
+ Enabled: false
150
+
151
+ RSpec/ImplicitExpect:
152
+ EnforcedStyle: should
153
+
154
+ RSpec/ImplicitSubject:
155
+ Enabled: false
156
+
157
+ RSpec/MessageSpies:
158
+ EnforcedStyle: receive
159
+
160
+ RSpec/NestedGroups:
161
+ Enabled: false
162
+
163
+ RSpec/NotToNot:
164
+ EnforcedStyle: to_not
165
+
166
+ RSpec/VerifiedDoubles:
167
+ Enabled: false
@@ -0,0 +1,42 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path("../lib", __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require "kuyio/rubocop/version"
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "kuyio-rubocop"
8
+ spec.version = Kuyio::Rubocop::VERSION
9
+ spec.authors = ["KUY.io Inc."]
10
+ spec.email = ["dev@kuy.io"]
11
+
12
+ spec.summary = 'KUY.io shared rubocop configuration.'
13
+ spec.homepage = 'https://github.com/kuyio/kuyio-rubocop'
14
+
15
+ # Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
16
+ # to allow pushing to a single host or delete this section to allow pushing to any host.
17
+ if spec.respond_to?(:metadata)
18
+ spec.metadata['allowed_push_host'] = 'https://rubygems.org'
19
+ else
20
+ raise "RubyGems 2.0 or newer is required to protect against " \
21
+ "public gem pushes."
22
+ end
23
+
24
+ spec.files = `git ls-files -z`.split("\x0").reject do |f|
25
+ f.match(%r{^(test|spec|features)/})
26
+ end
27
+ spec.bindir = "exe"
28
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
29
+ spec.require_paths = ["lib"]
30
+
31
+ # Define Rubocop as gem dependencies so all projects
32
+ # importing this gem can run bundle exec rubocop out
33
+ # of the box without having to maintain rubocop gem
34
+ # dependencies themselves.
35
+ spec.add_dependency "rubocop", "~> 1.4"
36
+ spec.add_dependency "rubocop-rspec", "~> 2.19"
37
+ spec.add_dependency "rubocop-rails", "~> 2.18"
38
+ spec.add_dependency "rubocop-performance", "~> 1.16"
39
+ spec.add_dependency "brakeman", "~> 5.4"
40
+ spec.add_development_dependency "bundler", "~> 2.3"
41
+ spec.add_development_dependency "rake", "~> 13.0"
42
+ end
@@ -0,0 +1,5 @@
1
+ module Kuyio
2
+ module Rubocop
3
+ VERSION = '0.1.0'.freeze
4
+ end
5
+ end
@@ -0,0 +1,7 @@
1
+ require 'kuyio/rubocop/version'
2
+
3
+ module Kuyio
4
+ module Rubocop
5
+ # Nothing to see here.
6
+ end
7
+ end
metadata ADDED
@@ -0,0 +1,152 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: kuyio-rubocop
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - KUY.io Inc.
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2023-03-08 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: '1.4'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.4'
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: '2.19'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '2.19'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rubocop-rails
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '2.18'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '2.18'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rubocop-performance
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '1.16'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '1.16'
69
+ - !ruby/object:Gem::Dependency
70
+ name: brakeman
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '5.4'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '5.4'
83
+ - !ruby/object:Gem::Dependency
84
+ name: bundler
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '2.3'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '2.3'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rake
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '13.0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '13.0'
111
+ description:
112
+ email:
113
+ - dev@kuy.io
114
+ executables: []
115
+ extensions: []
116
+ extra_rdoc_files: []
117
+ files:
118
+ - ".gitignore"
119
+ - ".rubocop.yml"
120
+ - Gemfile
121
+ - LICENSE
122
+ - README.md
123
+ - RELEASING.md
124
+ - Rakefile
125
+ - default.yml
126
+ - kuyio-rubocop.gemspec
127
+ - lib/kuyio/rubocop.rb
128
+ - lib/kuyio/rubocop/version.rb
129
+ homepage: https://github.com/kuyio/kuyio-rubocop
130
+ licenses: []
131
+ metadata:
132
+ allowed_push_host: https://rubygems.org
133
+ post_install_message:
134
+ rdoc_options: []
135
+ require_paths:
136
+ - lib
137
+ required_ruby_version: !ruby/object:Gem::Requirement
138
+ requirements:
139
+ - - ">="
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ required_rubygems_version: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
147
+ requirements: []
148
+ rubygems_version: 3.4.1
149
+ signing_key:
150
+ specification_version: 4
151
+ summary: KUY.io shared rubocop configuration.
152
+ test_files: []