rubocop-fjord 0.3.1 → 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/config/rails.yml +0 -3
- data/config/rubocop.yml +0 -5
- data/lib/rubocop/fjord/version.rb +1 -1
- metadata +3 -2
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/config/rails.yml
CHANGED
data/config/rubocop.yml
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
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
|
|
@@ -88,6 +88,7 @@ files:
|
|
|
88
88
|
- ".gitignore"
|
|
89
89
|
- ".rubocop.yml"
|
|
90
90
|
- ".travis.yml"
|
|
91
|
+
- CLAUDE.md
|
|
91
92
|
- CODE_OF_CONDUCT.md
|
|
92
93
|
- Gemfile
|
|
93
94
|
- Gemfile.lock
|
|
@@ -119,7 +120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
119
120
|
- !ruby/object:Gem::Version
|
|
120
121
|
version: '0'
|
|
121
122
|
requirements: []
|
|
122
|
-
rubygems_version: 3.7.
|
|
123
|
+
rubygems_version: 3.7.2
|
|
123
124
|
specification_version: 4
|
|
124
125
|
summary: rubocop rules for fjord, Inc.
|
|
125
126
|
test_files: []
|