Skip to content

Commit

Permalink
Upgrade to Ubuntu 22.04 on Github Actions (#2451)
Browse files Browse the repository at this point in the history
* Upgrade to Ubuntu 22.04 on Github Actions

Also add test matrix for Ruby 3.2 and Rails 7.0

* Upgrade rubocop to v1 for ruby 3+ in order to pass tests
  • Loading branch information
wasifhossain authored Oct 5, 2023
1 parent 9fa9373 commit 2ae640f
Show file tree
Hide file tree
Showing 5 changed files with 460 additions and 4 deletions.
4 changes: 3 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,14 @@ on: [push, pull_request]
jobs:
test:
name: "Testing"
runs-on: ubuntu-18.04
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
include:
# Recent Rubies and Rails
- ruby-version: '3.2'
rails-version: '7.0'
- ruby-version: '3.1'
rails-version: '7.0'
- ruby-version: '3.0'
Expand Down
109 changes: 109 additions & 0 deletions .rubocop_v0.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
AllCops:
TargetRubyVersion: 2.1
Exclude:
- !ruby/regexp /(vendor|bundle|bin|db|tmp)\/.*/
DisplayCopNames: true
DisplayStyleGuide: true
# https://github.com/bbatsov/rubocop/blob/master/manual/caching.md
# https://github.com/bbatsov/rubocop/blob/e8680418b351491e111a18cf5b453fc07a3c5239/config/default.yml#L60-L77
UseCache: true
CacheRootDirectory: tmp

Rails:
Enabled: true

Lint/NestedMethodDefinition:
Enabled: false
Exclude:
- test/action_controller/serialization_test.rb

Style/Alias:
EnforcedStyle: prefer_alias

Style/StringLiterals:
EnforcedStyle: single_quotes

Metrics/AbcSize:
Max: 35 # TODO: Lower to 15

Metrics/ClassLength:
Max: 261 # TODO: Lower to 100
Exclude:
- test/**/*.rb

Metrics/CyclomaticComplexity:
Max: 7 # TODO: Lower to 6

Metrics/LineLength:
Max: 251 # TODO: Lower to 80

Metrics/MethodLength:
Max: 106 # TODO: Lower to 10

Metrics/PerceivedComplexity:
Max: 9 # TODO: Lower to 7

Style/AlignParameters:
EnforcedStyle: with_fixed_indentation

Style/ClassAndModuleChildren:
EnforcedStyle: nested

Style/Documentation:
Enabled: false

Style/MissingElse:
Enabled: true
EnforcedStyle: case

Style/EmptyElse:
EnforcedStyle: empty

Style/FrozenStringLiteralComment:
Enabled: true
EnforcedStyle: always

Style/MultilineOperationIndentation:
EnforcedStyle: indented

Style/BlockDelimiters:
Enabled: true
EnforcedStyle: line_count_based

Style/SignalException:
EnforcedStyle: semantic

Style/TrailingCommaInLiteral:
EnforcedStyleForMultiline: no_comma

Style/ConditionalAssignment:
Enabled: false

Style/DotPosition:
EnforcedStyle: leading

########## test_helper.rb sanity
Style/EndBlock:
Exclude:
- test/test_helper.rb

Style/SpecialGlobalVars:
Exclude:
- test/test_helper.rb

Style/GlobalVars:
Exclude:
- test/test_helper.rb

Style/AndOr:
Exclude:
- test/test_helper.rb
- 'lib/active_model/serializer/lint.rb'

Style/Not:
Exclude:
- test/test_helper.rb

Style/ClassCheck:
Exclude:
- test/test_helper.rb
Loading

0 comments on commit 2ae640f

Please sign in to comment.