Skip to content

chore: Add RuboCop linting to development workflow#3

Merged
CJGlitter merged 1 commit into
mainfrom
chore/add-linting
Feb 2, 2026
Merged

chore: Add RuboCop linting to development workflow#3
CJGlitter merged 1 commit into
mainfrom
chore/add-linting

Conversation

@CJGlitter

Copy link
Copy Markdown
Owner

Summary

  • Added RuboCop for code quality enforcement
  • Integrated linting into CI pipeline
  • Updated documentation with linting commands

Changes

  • Added rubocop ~> 1.60 gem to development dependencies
  • Created .rubocop.yml configuration (Ruby 3.0+, double quotes, frozen string literals)
  • Updated Rakefile to run both specs and rubocop by default
  • Added separate lint job to GitHub Actions CI
  • Updated README.md and CLAUDE.md with linting commands

Backwards Compatibility

  • Disabled Style/OptionalBooleanParameter cop to maintain existing API
  • All 9 existing tests pass
  • Zero linting offenses detected

Test Plan

  • bundle exec rspec - All tests pass
  • bundle exec rubocop - No offenses
  • bundle exec rake - Runs both tests and linting successfully
  • ⏳ CI pipeline will validate across Ruby 3.0-3.4

Added RuboCop for code quality enforcement with auto-fix capabilities and CI integration.

Technical changes:
- Added rubocop ~> 1.60 gem to development dependencies
- Created .rubocop.yml configuration targeting Ruby 3.0+
- Configured double-quote preference and frozen string literal enforcement
- Disabled Style/OptionalBooleanParameter to maintain API backwards compatibility
- Updated Rakefile to run both specs and rubocop in default task
- Added separate lint job to GitHub Actions CI workflow
- Updated README.md and CLAUDE.md with linting commands

Benefits:
- Enforces consistent Ruby style across codebase
- Catches potential code quality issues early
- CI fails on linting violations, ensuring clean PRs
- All existing tests pass with zero linting offenses
- Maintains full backwards compatibility with public API

All 9 existing tests pass. Codebase has 0 linting offenses.
@CJGlitter CJGlitter merged commit 18427f4 into main Feb 2, 2026
6 checks passed
@CJGlitter CJGlitter deleted the chore/add-linting branch February 2, 2026 06:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant