Skip to content

style: add rubocop 1.9 cops#8567

Merged
jekyllbot merged 4 commits intomasterfrom
style/rubocop-1.9
Feb 1, 2021
Merged

style: add rubocop 1.9 cops#8567
jekyllbot merged 4 commits intomasterfrom
style/rubocop-1.9

Conversation

@DirtyF
Copy link
Copy Markdown
Member

@DirtyF DirtyF commented Feb 1, 2021

This is a 💅 style format chore

Works with rubocop 1.9.1

Fix #8566

@DirtyF DirtyF added the style label Feb 1, 2021
@DirtyF DirtyF requested a review from ashmaroli February 1, 2021 08:18
Co-authored-by: Ashwin Maroli <ashmaroli@users.noreply.github.com>
@DirtyF
Copy link
Copy Markdown
Member Author

DirtyF commented Feb 1, 2021

@jekyll: merge +dev

@jekyllbot jekyllbot merged commit fe64d98 into master Feb 1, 2021
@jekyllbot jekyllbot deleted the style/rubocop-1.9 branch February 1, 2021 10:55
jekyllbot added a commit that referenced this pull request Feb 1, 2021
github-actions bot pushed a commit that referenced this pull request Feb 1, 2021
Frank Taillandier: style: add rubocop 1.9 cops (#8567)

Merge pull request 8567
github-actions bot pushed a commit to chauncey-garrett/jekyll that referenced this pull request Feb 1, 2021
jekyllbot: Update history to reflect merge of jekyll#8567 [ci skip]
github-actions bot pushed a commit to X-EcutiOnner/jekyll that referenced this pull request Feb 1, 2021
jekyllbot: Update history to reflect merge of jekyll#8567 [ci skip]
github-actions bot pushed a commit to patilswapnilv/jekyll that referenced this pull request Feb 1, 2021
jekyllbot: Update history to reflect merge of jekyll#8567 [ci skip]
github-actions bot pushed a commit to tigefa4u/jekyll that referenced this pull request Feb 1, 2021
jekyllbot: Update history to reflect merge of jekyll#8567 [ci skip]
kmk3 added a commit to kmk3/jekyll that referenced this pull request Apr 23, 2021
Rubocop 1.13 was released today (2021-04-20) and it has dropped support
for Ruby 2.4[1][2].  This causes rubocop to die on the spot when
trying to run it:

    $ bundle exec rubocop --version
    1.13.0
    $ bundle exec rubocop
    Error: RuboCop found unsupported Ruby version 2.4 in `TargetRubyVersion` parameter (in .rubocop.yml). 2.4-compatible analysis was dropped after version 1.12.
    Supported versions: 2.5, 2.6, 2.7, 3.0

And thus the "style_check" ci job is currently broken[3].

Rubocop 1.10 and 1.11 don't work either because of a rename:

    $ bundle exec rubocop
    Error: unrecognized cop Style/StringChars found in .rubocop.yml
    Did you mean `Style/StringMethods`?

The latter and arguably the former are breaking changes on minor
versions, which means that rubocop does not follow semantic
versioning[4][5].  Additionally, the gem was already pinned on a minor
version on commit fe64d98 ("style: add rubocop 1.9 cops (jekyll#8567)"), but
commit c9c9dc7 ("chore(deps): rubocop 1.10") pinned it only on the
major version (see also issue jekyll#8583)[6].  This back-and-forth happened
more than once:

* 2016-10-18: nil         to "~> 0.44.1" on commit cc19728 ("Restrict Rubocop version")
* 2017-01-14: "~> 0.44.1" to "~> 0.46"   on commit 4432482 ("bump Rubocop to latest version")
* 2017-03-28: "~> 0.47"   to "~> 0.47.1" on commit 86703f1 ("Use Rubocop v0.47.1 till we're ready for v0.48")
* 2020-10-21: "~> 0.93.0" to "~> 1.0"    on commit 1ae2a1d ("Bump RuboCop to v1.x")
* 2021-01-31: "~> 1.0"    to "~> 1.8.1"  on commit d460fae ("Pin rubocop version (jekyll#8564)")
* 2021-02-19: "~> 1.9.1"  to "~> 1.10"   on commit c9c9dc7 ("chore(deps): rubocop 1.10")

The above can be checked with one of the following commands:

    $ tig '-G"rubocop"' -- Gemfile
    # or
    $ git log -p '-G"rubocop"' -- Gemfile

So pin rubocop back on a minor version: the 1.12 series.

Example of another project doing something similar (found on [2]):
Shopify/job-iteration[7].

Fixes jekyll#8649.

[1] https://github.com/rubocop/rubocop/releases/tag/v1.13.0
[2] rubocop/rubocop#9648
[3] jekyll#8649
[4] https://semver.org/
[5] rubocop/rubocop#4243
[6] https://guides.rubygems.org/patterns/#declaring-dependencies
[7] Shopify/job-iteration#79
@jekyll jekyll locked and limited conversation to collaborators Mar 22, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update dependency constraint to allow for rubocop v1.9.0

3 participants