rubocop-fjord 0.3.0 → 0.4.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 +4 -4
- data/CLAUDE.md +61 -0
- data/Gemfile.lock +36 -23
- data/config/rails.yml +1 -4
- data/config/rubocop.yml +2 -6
- data/lib/rubocop/fjord/version.rb +1 -1
- data/rubocop-fjord.gemspec +1 -1
- metadata +6 -9
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 52d63571d796cb672b19a6ba7fab1df8fa3acf9824442fb974cea3ca5601780c
|
|
4
|
+
data.tar.gz: 6ccc96d1d5f8158cc355d6f6012856cec60fe83a1a0d8a64e8c66090cbaafc11
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f677fc80f48d22d9cb2811a1a454e5a4d5e9640e7d69cf0c539ddde9e418ee8f60f3886900c2bd9e78668d31c72a91d3088243254c6d961bc88ce2114376f8cd
|
|
7
|
+
data.tar.gz: 0f100bdafe68886bafc7d58f0c8c8f7508c076744bde963cc98e6c39a0a7b47928223a9b0d8701721aa8af70201e6103fc1b097880d3e6af08cf0de9beb4290e
|
data/CLAUDE.md
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# CLAUDE.md
|
|
2
|
+
|
|
3
|
+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
+
|
|
5
|
+
## Project Overview
|
|
6
|
+
|
|
7
|
+
rubocop-fjord is a RuboCop configuration gem that provides standardized Ruby and Rails linting rules for Fjord, Inc. It packages two primary configuration files that are inherited by consuming projects.
|
|
8
|
+
|
|
9
|
+
## Architecture
|
|
10
|
+
|
|
11
|
+
This is a configuration-as-code gem with minimal Ruby code:
|
|
12
|
+
|
|
13
|
+
- **Configuration Files**: The core value is in `config/rubocop.yml` (base Ruby rules) and `config/rails.yml` (Rails-specific rules and exclusions)
|
|
14
|
+
- **Module Structure**: Simple module definition in `lib/rubocop/fjord.rb` with version in `lib/rubocop/fjord/version.rb`
|
|
15
|
+
- **Consumption Pattern**: Projects inherit these configurations via `inherit_gem:` in their `.rubocop.yml`
|
|
16
|
+
|
|
17
|
+
### Key Configuration Decisions
|
|
18
|
+
|
|
19
|
+
The base configuration (`config/rubocop.yml`):
|
|
20
|
+
- Requires `rubocop-performance` plugin
|
|
21
|
+
- Targets Ruby 3.2+, disables new cops by default
|
|
22
|
+
- Relaxes line length to 160 characters
|
|
23
|
+
- Disables documentation requirements and several metrics cops
|
|
24
|
+
- Excludes performance cops from tests
|
|
25
|
+
|
|
26
|
+
The Rails configuration (`config/rails.yml`):
|
|
27
|
+
- Requires `rubocop-rails` plugin
|
|
28
|
+
- Excludes common Rails directories (views, config, migrations, vendor, node_modules, etc.)
|
|
29
|
+
- Uses pattern `db/*schema.rb` to match both `schema.rb` and Rails 8's `schema_cache.rb`
|
|
30
|
+
|
|
31
|
+
## Development Commands
|
|
32
|
+
|
|
33
|
+
### Setup
|
|
34
|
+
```bash
|
|
35
|
+
bin/setup # Install dependencies
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### Testing
|
|
39
|
+
```bash
|
|
40
|
+
rake test # Run all tests
|
|
41
|
+
bundle exec rake test # Explicit bundler invocation
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### Gem Management
|
|
45
|
+
```bash
|
|
46
|
+
bundle exec rake install # Install gem locally for testing
|
|
47
|
+
bundle exec rake release # Tag, build, and push to RubyGems (bumps version)
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### Version Updates
|
|
51
|
+
|
|
52
|
+
1. Update version in `lib/rubocop/fjord/version.rb`
|
|
53
|
+
2. Run `bundle exec rake release` to tag and publish
|
|
54
|
+
|
|
55
|
+
## Testing Configuration Changes
|
|
56
|
+
|
|
57
|
+
To test configuration changes in a consuming project:
|
|
58
|
+
1. Make changes to `config/rubocop.yml` or `config/rails.yml`
|
|
59
|
+
2. Run `bundle exec rake install` to install locally
|
|
60
|
+
3. In consuming project, run `bundle update rubocop-fjord` (with local gem source)
|
|
61
|
+
4. Run `rubocop` to verify behavior
|
data/Gemfile.lock
CHANGED
|
@@ -1,47 +1,60 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
rubocop-fjord (0.1
|
|
4
|
+
rubocop-fjord (0.3.1)
|
|
5
5
|
rubocop (>= 1.0)
|
|
6
6
|
rubocop-performance
|
|
7
7
|
|
|
8
8
|
GEM
|
|
9
9
|
remote: https://rubygems.org/
|
|
10
10
|
specs:
|
|
11
|
-
ast (2.4.
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
ast (2.4.3)
|
|
12
|
+
json (2.13.1)
|
|
13
|
+
language_server-protocol (3.17.0.5)
|
|
14
|
+
lint_roller (1.1.0)
|
|
15
|
+
minitest (5.25.5)
|
|
16
|
+
parallel (1.27.0)
|
|
17
|
+
parser (3.3.9.0)
|
|
15
18
|
ast (~> 2.4.1)
|
|
16
|
-
|
|
19
|
+
racc
|
|
20
|
+
prism (1.4.0)
|
|
21
|
+
racc (1.8.1)
|
|
22
|
+
rainbow (3.1.1)
|
|
17
23
|
rake (10.5.0)
|
|
18
|
-
regexp_parser (2.
|
|
19
|
-
|
|
20
|
-
|
|
24
|
+
regexp_parser (2.10.0)
|
|
25
|
+
rubocop (1.79.0)
|
|
26
|
+
json (~> 2.3)
|
|
27
|
+
language_server-protocol (~> 3.17.0.2)
|
|
28
|
+
lint_roller (~> 1.1.0)
|
|
21
29
|
parallel (~> 1.10)
|
|
22
|
-
parser (>= 3.
|
|
30
|
+
parser (>= 3.3.0.2)
|
|
23
31
|
rainbow (>= 2.2.2, < 4.0)
|
|
24
|
-
regexp_parser (>=
|
|
25
|
-
|
|
26
|
-
rubocop-ast (>= 1.8.0, < 2.0)
|
|
32
|
+
regexp_parser (>= 2.9.3, < 3.0)
|
|
33
|
+
rubocop-ast (>= 1.46.0, < 2.0)
|
|
27
34
|
ruby-progressbar (~> 1.7)
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
35
|
+
tsort (>= 0.2.0)
|
|
36
|
+
unicode-display_width (>= 2.4.0, < 4.0)
|
|
37
|
+
rubocop-ast (1.46.0)
|
|
38
|
+
parser (>= 3.3.7.2)
|
|
39
|
+
prism (~> 1.4)
|
|
40
|
+
rubocop-performance (1.25.0)
|
|
41
|
+
lint_roller (~> 1.1)
|
|
42
|
+
rubocop (>= 1.75.0, < 2.0)
|
|
43
|
+
rubocop-ast (>= 1.38.0, < 2.0)
|
|
44
|
+
ruby-progressbar (1.13.0)
|
|
45
|
+
tsort (0.2.0)
|
|
46
|
+
unicode-display_width (3.1.4)
|
|
47
|
+
unicode-emoji (~> 4.0, >= 4.0.4)
|
|
48
|
+
unicode-emoji (4.0.4)
|
|
36
49
|
|
|
37
50
|
PLATFORMS
|
|
38
51
|
ruby
|
|
39
52
|
|
|
40
53
|
DEPENDENCIES
|
|
41
|
-
bundler (~>
|
|
54
|
+
bundler (~> 2.0)
|
|
42
55
|
minitest (~> 5.0)
|
|
43
56
|
rake (~> 10.0)
|
|
44
57
|
rubocop-fjord!
|
|
45
58
|
|
|
46
59
|
BUNDLED WITH
|
|
47
|
-
|
|
60
|
+
2.6.5
|
data/config/rails.yml
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
require:
|
|
2
|
-
- rubocop-rails
|
|
3
|
-
|
|
4
1
|
AllCops:
|
|
5
2
|
Exclude:
|
|
6
3
|
- '**/templates/**/*'
|
|
@@ -10,7 +7,7 @@ AllCops:
|
|
|
10
7
|
- 'config.ru'
|
|
11
8
|
- 'node_modules/**/*'
|
|
12
9
|
- 'db/migrate/*'
|
|
13
|
-
- 'db
|
|
10
|
+
- 'db/*schema.rb'
|
|
14
11
|
- 'storage/**/*'
|
|
15
12
|
- 'tmp/**/*'
|
|
16
13
|
- 'bin/**/*'
|
data/config/rubocop.yml
CHANGED
data/rubocop-fjord.gemspec
CHANGED
|
@@ -28,7 +28,7 @@ Gem::Specification.new do |spec|
|
|
|
28
28
|
spec.add_dependency 'rubocop', '>= 1.0'
|
|
29
29
|
spec.add_dependency 'rubocop-performance'
|
|
30
30
|
|
|
31
|
-
spec.add_development_dependency 'bundler', '~>
|
|
31
|
+
spec.add_development_dependency 'bundler', '~> 2.0'
|
|
32
32
|
spec.add_development_dependency 'minitest', '~> 5.0'
|
|
33
33
|
spec.add_development_dependency 'rake', '~> 10.0'
|
|
34
34
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rubocop-fjord
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.4.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Masaki Komagata
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: exe
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: rubocop
|
|
@@ -44,14 +43,14 @@ dependencies:
|
|
|
44
43
|
requirements:
|
|
45
44
|
- - "~>"
|
|
46
45
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '
|
|
46
|
+
version: '2.0'
|
|
48
47
|
type: :development
|
|
49
48
|
prerelease: false
|
|
50
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
50
|
requirements:
|
|
52
51
|
- - "~>"
|
|
53
52
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '
|
|
53
|
+
version: '2.0'
|
|
55
54
|
- !ruby/object:Gem::Dependency
|
|
56
55
|
name: minitest
|
|
57
56
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -80,7 +79,6 @@ dependencies:
|
|
|
80
79
|
- - "~>"
|
|
81
80
|
- !ruby/object:Gem::Version
|
|
82
81
|
version: '10.0'
|
|
83
|
-
description:
|
|
84
82
|
email:
|
|
85
83
|
- komagata@gmail.com
|
|
86
84
|
executables: []
|
|
@@ -90,6 +88,7 @@ files:
|
|
|
90
88
|
- ".gitignore"
|
|
91
89
|
- ".rubocop.yml"
|
|
92
90
|
- ".travis.yml"
|
|
91
|
+
- CLAUDE.md
|
|
93
92
|
- CODE_OF_CONDUCT.md
|
|
94
93
|
- Gemfile
|
|
95
94
|
- Gemfile.lock
|
|
@@ -107,7 +106,6 @@ homepage: https://github.com/fjordllc/rubocop-fjord
|
|
|
107
106
|
licenses:
|
|
108
107
|
- MIT
|
|
109
108
|
metadata: {}
|
|
110
|
-
post_install_message:
|
|
111
109
|
rdoc_options: []
|
|
112
110
|
require_paths:
|
|
113
111
|
- lib
|
|
@@ -122,8 +120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
122
120
|
- !ruby/object:Gem::Version
|
|
123
121
|
version: '0'
|
|
124
122
|
requirements: []
|
|
125
|
-
rubygems_version: 3.
|
|
126
|
-
signing_key:
|
|
123
|
+
rubygems_version: 3.7.2
|
|
127
124
|
specification_version: 4
|
|
128
125
|
summary: rubocop rules for fjord, Inc.
|
|
129
126
|
test_files: []
|