Skip to content

Latest commit

 

History

History
387 lines (216 loc) · 7.97 KB

CHANGELOG.md

File metadata and controls

387 lines (216 loc) · 7.97 KB

All notable changes to this project will be documented in this file.

This project adheres to Semantic Versioning.

Unreleased

Breaking changes

Compatible changes

13.0.0 - 2024-05-27

Compatible changes

Breaking changes

  • Upgrade to rubocop-rspec 2.25.0 (was 2.13.2)
  • Disable nested cops introduced by dependencies (e.g. Rspec/Capybara). Since the config for the respective gem should be considered the single source of truth

12.1.0 - 2024-01-07

Compatible changes

  • Add default configuration for rubocop-capybara and rubocop-factory_bot

12.0.0 - 2024-01-17

Compatible changes

  • Supports Ruby 3.3 and Rails 7.1.

Breaking changes

  • Upgrade to rubocop 1.60.0 (was 1.39.0)
  • Upgrade to rubocop-rails 2.23.1 (was 2.19.0)
  • Drop support for Ruby 2.6 (following change from rubocop 1.51.0)

11.2.0 - 2023-10-18

Compatible changes

  • Enable Lint/Debugger (#42)

11.1.0 - 2023-04-26

Compatible changes

  • Disable RSpec/Capybara/SpecificFinders (#41)

11.0.0 - 2023-04-12

Breaking changes

  • Upgrade rubocop-rails from version 2.17.2 to 2.19.0.

10.0.0 - 2022-11-09

Breaking changes

  • Upgrade rubocop from version 1.25.1 to 1.39.0.
  • Upgrade rubocop-rails from version 2.11.3 to 2.17.2.
  • Upgrade rubocop-rspec from version 2.4.0 to 2.13.2.
  • Drop Support for Ruby < 2.6

9.1.0 - 2022-04-22

Compatible changes

  • Disable Naming/BlockForwarding (#37)
  • Change Style/HashSyntax from EnforcedShorthandSyntax always to either (#36)

9.0.1 - 2022-03-09

Compatible changes

  • Activate Rubygems MFA

9.0.0 - 2022-02-09

Breaking changes

  • Changed Rails/RequestReferer from EnforcedStyle referer to referrer

Compatible changes

8.0.0 - 2022-01-25

Breaking changes

  • Upgrade rubocop from version 1.18.4 to 1.25.1 (adds support for Ruby 3.1).

7.2.0 - 2021-12-07

Compatible changes

  • Disable Rails/LinkToBlank

7.1.0 - 2021-11-29

Compatible changes

  • Disable RSpec/ExpectChange

7.0.0 - 2021-09-16

Breaking changes

  • Dropped support for Ruby < 2.5.0.
  • Upgrade rubocop from version 1.9.1 to 1.18.4.
  • Upgrade rubocop-rails from version 2.9.1 to 2.11.3.
  • Upgrade rubocop-rspec from version 2.2.0 to 2.4.0.

6.2.0 - 2021-06-20

Compatible changes

  • Use the format simple output, and not progress.

  • Also output stdout if stderr is present. Otherwise warnings like whitequark/parser will block the actual offenses message to be skipped. Originally we thought the only stderr message will be a failure of rubocop itself, so there would be never a stdout, too.

    Before:

    1) rubocop has no offenses
      Failure/Error: example.run
    
      warning: parser/current is loading parser/ruby26, which recognizes
      warning: 2.6.7-compliant syntax, but you are running 2.6.5.
      warning: please see https://github.com/whitequark/parser#compatibility-with-ruby-mri.
      # ./spec/support/with_power.rb:11:in `block (2 levels) in <top (required)>'
      # ./spec/support/vcr.rb:16:in `block (2 levels) in <top (required)>'
      # ./spec/support/database_cleaner.rb:21:in `block (2 levels) in <top (required)>'
    

    After:

    1) rubocop has no offenses
      Failure/Error: example.run
    
      warning: parser/current is loading parser/ruby26, which recognizes
      warning: 2.6.7-compliant syntax, but you are running 2.6.5.
      warning: please see https://github.com/whitequark/parser#compatibility-with-ruby-mri.
    
      == app/user/search.rb ==
      C:  5:  3: [Correctable] Layout/IndentationWidth: Use 2 (not 5) spaces for indentation.
    
      1016 files inspected, 1 offense detected, 1 offense auto-correctable
      # ./spec/support/with_power.rb:11:in `block (2 levels) in <main>'
      # ./spec/support/vcr.rb:16:in `block (2 levels) in <main>'
      # ./spec/support/database_cleaner.rb:21:in `block (2 levels) in <main>'
    

6.1.0 - 2021-04-30

Compatible changes

  • Disable Style/AccessorGrouping

6.0.0 - 2021-02-25

Breaking changes

  • Upgrade rubocop from version 0.81.0 to 1.9.1
    • Re-enable Layout/RescueEnsureAlignment as the bug seems to be fixed in 1.9.1
    • Add most of the new cops from 1.9.1
  • Upgrade rubocop-rails from version 2.5.1 to 2.9.1
  • Upgrade rubocop-rspec from version 2.2.0 to 1.40.0

5.4.0 - 2020-08-05

Breaking changes

Compatible changes

  • Disable RSpec/SubjectStub

5.3.0 - 2020-07-10

Breaking changes

Compatible changes

  • Disable RSpec/NamedSubject

5.2.0 - 2020-07-06

Breaking changes

Compatible changes

  • Disable RSpec/LetSetup

5.1.0 - 2020-06-29

Breaking changes

Compatible changes

  • Add rubocop-rspec

    You can add it to a project like this:

    inherit_gem:
      makandra-rubocop:
        - config/default.yml
        - config/ext/rspec.yml
  • Disable the Style/ClassCheck cop (#22)

5.0.0 - 2020-04-07

Breaking changes

  • Upgrade rubocop
  • Upgrade rubocop-rails

Migration notes:

In case you are using a project with Ruby < 2.5 you need to add these lines to your .rubocop.yml:

Style/HashTransformKeys:
  Enable: false # Disabled until Ruby 2.5 upgrade

Style/HashTransformValues:
  Enable: false # Disabled until Ruby 2.5 upgrade

4.4.0 - 2020-04-06

Breaking changes

Compatible changes

  • Disable Lint/EmptyWhen (#18)
  • Disable Naming/RescuedExceptionsVariableName (#19)

4.3.0 - 2020-02-13

Compatible changes

  • Temporary disable Layout/RescueEnsureAlignment again, rubocop/rubocop#6771 seems not to have fixed the issue in our 4.0.0 release.

4.2.0 - 2020-01-02

Compatible changes

  • Disable Rails/HelperInstanceVariable
  • Disable Rails/HasManyOrHasOneDependent

4.1.0 - 2019-12-06

Compatible changes

  • Disable Rails/UnknownEnv cop

4.0.0 - 2019-12-06

Breaking changes

  • Upgrade to Rubocop 0.76.0
  • Drop support for Ruby < 2.3.0

Rubopcop 0.72.0 extracts all its Rails helpers to a new gem. This results in two split config files in the makandra-rubocop gem:

  • config/default.yml (contains now only Ruby cops)
  • config/ext/rails.yml (contains all Rails cops)

Enabling the Rails cops was and is optional in makandra-rubocop. In case you want to use the Ruby cops only, please use the following config as before:

inherit_gem:
  makandra-rubocop:
    - config/default.yml

In case you want to use the Ruby and the Rails cops:

1. Remove the following config (if present) from your .rubocop.yml:

Rails:
  Enabled: true

2. Change the beginning of your .rubocop.yml:

inherit_gem:
  makandra-rubocop:
    - config/default.yml
    - config/ext/rails.yml

Compatible changes

  • Use Rspec.describe instead of describe in the shared spec to support projects, that have the RSpec monkey patch disabled

3.2.1 - 2019-11-14

Compatible changes

  • Update bundler to version 2 (only for development)

3.2.0 - 2019-07-29

Compatible changes

  • Exclude files in tmp and public/system.

3.1.0 - 2019-02-29

Compatible changes

  • Disable Layout/SpaceAfterColon (#6)
  • Disable Layout/RescueEnsureAlignment (#7)

3.0.0 - 2019-02-28

Breaking changes

  • Upgrade Rubocop from 0.62.0 to 0.65.0

Compatible changes

  • Disable Style/MultilineBlockChain for spec/**/*
  • Disable Layout/ClosingParenthesisIndentation

2.0.0 - 2019-01-31

Breaking changes

  • We updated the Cop Layout/SpaceInsideHashLiteralBraces. Braces used for hash literals now should have surrounding space:
    # bad
    h = {a: 1, b: 2}
    
    # good
    h = { a: 1, b: 2 }
    
    Run bundle exec rubocop --auto-correct to upgrade your project.

1.0.0 - 2019-01-15

Compatible changes

  • First release of our default rule set. See README on how to integrate with your project.
  • Rubocop 0.62.0