Skip to content

Commit

Permalink
Refactor/remove unindent (#278)
Browse files Browse the repository at this point in the history
* Initial work to remove unindent and use squiggly heredocs

* Remove gem

* Fix whitespace issues

* Fix up linting of assertions

* Update rubocop todo file and slight update to rubocop gems

* Add changelog
  • Loading branch information
luke-hill authored Nov 29, 2023
1 parent 42d5030 commit f980f75
Show file tree
Hide file tree
Showing 4 changed files with 187 additions and 161 deletions.
24 changes: 15 additions & 9 deletions .rubocop_todo.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# This configuration was generated by
# `rubocop --auto-gen-config`
# on 2023-11-16 16:44:59 UTC using RuboCop version 1.27.0.
# on 2023-11-29 11:28:59 UTC using RuboCop version 1.28.2.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
Expand All @@ -9,7 +9,8 @@
# TODO: [LH] Initial state -> 53 files inspected, 2221 offenses detected, 1663 offenses auto-correctable
# TODO: [LH] Part 1 iteration -> 53 files inspected, 1990 offenses detected, 1442 offenses auto-correctable
# TODO: [LH] Part 2 iteration -> 53 files inspected, 506 offenses detected, 163 offenses auto-correctable
# TODO: [LH] v13 -> 53 files inspected, 450 offenses detected, 150 offenses auto-correctable
# TODO: [LH] v12 -> 53 files inspected, 450 offenses detected, 150 offenses auto-correctable
# TODO: [LH] v12 -> 53 files inspected, 453 offenses detected, 148 offenses auto-correctable

# Offense count: 1
# This cop supports safe auto-correction (--auto-correct).
Expand Down Expand Up @@ -55,11 +56,10 @@ Layout/FirstArrayElementIndentation:
Exclude:
- 'spec/cucumber/core_spec.rb'

# Offense count: 2
# Offense count: 1
# This cop supports safe auto-correction (--auto-correct).
Layout/HeredocIndentation:
Exclude:
- 'spec/cucumber/core/gherkin/writer_spec.rb'
- 'spec/cucumber/core/test/doc_string_spec.rb'

# Offense count: 2
Expand Down Expand Up @@ -116,7 +116,7 @@ Layout/TrailingWhitespace:
Metrics/AbcSize:
Max: 23

# Offense count: 54
# Offense count: 55
# Configuration parameters: CountComments, CountAsOne, ExcludedMethods, IgnoredMethods.
# IgnoredMethods: refine
Metrics/BlockLength:
Expand Down Expand Up @@ -145,7 +145,13 @@ Naming/RescuedExceptionsVariableName:
- 'lib/cucumber/core/test/action.rb'
- 'lib/cucumber/core/test/around_hook.rb'

# Offense count: 64
# Offense count: 1
# This cop supports safe auto-correction (--auto-correct).
RSpec/BeEq:
Exclude:
- 'spec/cucumber/core/event_bus_spec.rb'

# Offense count: 63
# This cop supports safe auto-correction (--auto-correct).
# Configuration parameters: EnabledMethods.
RSpec/Capybara/FeatureMethods:
Expand Down Expand Up @@ -173,10 +179,10 @@ RSpec/DescribedClass:
Exclude:
- 'spec/cucumber/core/test/doc_string_spec.rb'

# Offense count: 44
# Offense count: 50
# Configuration parameters: CountAsOne.
RSpec/ExampleLength:
Max: 20
Max: 32

# Offense count: 1
# This cop supports safe auto-correction (--auto-correct).
Expand Down Expand Up @@ -403,7 +409,7 @@ Style/SymbolArray:

# Offense count: 2
# This cop supports unsafe auto-correction (--auto-correct-all).
# Configuration parameters: AllowMethodsWithArguments, IgnoredMethods.
# Configuration parameters: AllowMethodsWithArguments, IgnoredMethods, AllowComments.
# IgnoredMethods: respond_to, define_method
Style/SymbolProc:
Exclude:
Expand Down
7 changes: 5 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,16 @@ Please visit [cucumber/CONTRIBUTING.md](https://github.com/cucumber/cucumber/blo
- Now using a 2-tiered changelog to avoid any bugs when using polyglot-release
- More refactoring of the repo by fixing up a bunch of manual rubocop offenses (See PR's for details)
([#259](https://github.com/cucumber/cucumber-ruby-core/pull/259) [#262](https://github.com/cucumber/cucumber-ruby-core/pull/262) [#268](https://github.com/cucumber/cucumber-ruby-core/pull/268) [#274](https://github.com/cucumber/cucumber-ruby-core/pull/274))
- In all `Summary` and `Result` classes, changed the `strict` argument into a keyword argument.
- In all `Summary` and `Result` classes, changed the `strict` argument into a keyword argument
See upgrading notes for [13.0.0.md](upgrading_notes/13.0.0.md#upgrading-to-1300)
([#261](https://github.com/cucumber/cucumber-ruby-core/pull/261))
- Permit usage of gherkin v27

### Fixed
- Restore support for matching a scenario by its Feature, Background, and Rule line numbers. ([#247](https://github.com/cucumber/cucumber-ruby-core/pull/237))
- Restore support for matching a scenario by its Feature, Background, and Rule line numbers ([#247](https://github.com/cucumber/cucumber-ruby-core/pull/247))

### Removed
- Remove legacy `unindent` gem (Now no longer required since Ruby 2.3 and Squiggly heredocs) ([#278](https://github.com/cucumber/cucumber-ruby-core/pull/278))

## [12.0.0] - 2023-09-06
### Changed
Expand Down
7 changes: 3 additions & 4 deletions cucumber-core.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,10 @@ Gem::Specification.new do |s|

s.add_development_dependency 'rake', '~> 13.0', '>= 13.0.6'
s.add_development_dependency 'rspec', '~> 3.11', '>= 3.11.0'
s.add_development_dependency 'rubocop', '1.27'
s.add_development_dependency 'rubocop', '~> 1.28.2'
s.add_development_dependency 'rubocop-rake', '~> 0.6.0'
s.add_development_dependency 'rubocop-rspec', '2.8'
s.add_development_dependency 'rubocop-packaging', '~> 0.5', '>= 0.5.1'
s.add_development_dependency 'unindent', '~> 1.0', '>= 1.0'
s.add_development_dependency 'rubocop-rspec', '~> 2.10.0'
s.add_development_dependency 'rubocop-packaging', '~> 0.5.1'

s.files = Dir['CHANGELOG.md', 'CONTRIBUTING.md', 'README.md', 'LICENSE', 'lib/**/*']
s.rdoc_options = ['--charset=UTF-8']
Expand Down
Loading

0 comments on commit f980f75

Please sign in to comment.