rubocop-ruby2_6 1.1.0 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3b9598521ce0c228a98eaa28b4b1fe71c51a7c05af2175b12b85758f0236a74d
4
- data.tar.gz: bf8d2029e61cafc9e9bfb958f71ffff61a70b8d09faad1a3bdd019aa4dee1175
3
+ metadata.gz: a14f9505c33474169d8d6ea4b91ebffc65a5fccca3c2c939725139b0f93d4087
4
+ data.tar.gz: 24a5683e42aff904e900d4ab2a3803b1bfdd39642a2875222b7cb19b3b465cd5
5
5
  SHA512:
6
- metadata.gz: 2e158567083b708353379361955b690017c1d559e1fb6ffff2fe4bdccd83e7b31628c8a6bcee605ed1190389c2655ff115a1d7bb35cf7bf1bf04b7b26778ae50
7
- data.tar.gz: 05b5ef8580492fbc3057b7ecea473ae82309e5580e47b13e1cbb99f79ec45d48dbf3ee4f8ed627c634304fe9045d0f924a47024b9e5e94c7d2f6f59debdac521
6
+ metadata.gz: bfa4ad1482aa6c2d4927ebed0b3b7900d52edbe11cecbd54f18af1eae92dfd39aa1aaccdde7920443d8fdbf2acf4d54897ef0c4b69b1b0111b7a7080236f1d3c
7
+ data.tar.gz: 6e8876b34b497d68eb79857cdd95191a26d3a88ae892d021f66b5a88723ac23d6db31e05436d5280e8ddb87fc5b5ffab7d4f0f1a9abe457b9df6da88783a7436
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -10,58 +10,93 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
10
10
  ### Fixed
11
11
  ### Removed
12
12
 
13
+ ## [2.0.2] 2023-05-21
14
+ ### Fixed
15
+ - Ship rakelib/**/*.rake tasks
16
+
17
+ ## [2.0.1] 2023-05-19
18
+ ### Fixed
19
+ - Fix rake_tasks hook on Railtie
20
+
21
+ ## [2.0.0] 2023-05-17 [YANKED]
22
+ ### Added
23
+ - Configs for:
24
+ - rubocop
25
+ - rubocop-gradual
26
+ - rubocop-md
27
+ - rubocop-rake
28
+ - rubocop-shopify
29
+ - rubocop-thread_safety
30
+ - standard
31
+ - standard-performance
32
+ - standard-custom
33
+ - standard-rubocop-lts
34
+ - And optionally, if you are using RSpec:
35
+ - rubocop-rspec
36
+ - And optionally, if you are building a RubyGem:
37
+ - rubocop-packaging
38
+ - And optionally, if you are building a Rails app:
39
+ - betterlint
40
+ - standard-rails
41
+ - version_gem
42
+ ### Removed
43
+ - Support for Ruby <= 2.6. Minimum Ruby Version is now 2.7
44
+
13
45
  ## [1.1.0] 2023-02-01
14
46
  ### Added
15
- * More Linting Rules
16
- * Improved Rakefile for YARD docs
17
- * Updated Ruby Version Support in Readme
18
- * Improved development and versioning policy documentation
19
- * Documentation of Three Guarantees:
20
- * `rubocop-ruby2_6` (this gem) will install a version of `rubocop` which will
21
- **install** on (1), **run** on (2), and **analyze code** (3) intended to support any version of Ruby >= 2.6.
47
+ - More Linting Rules
48
+ - Improved Rakefile for YARD docs
49
+ - Updated Ruby Version Support in Readme
50
+ - Improved development and versioning policy documentation
51
+ - Documentation of Three Guarantees:
52
+ * `rubocop-ruby2_6` (this gem) will install a version of `rubocop` which will
53
+ **install** on (1), **run** on (2), and **analyze code** (3) intended to support any version of Ruby >= 2.6.
22
54
  ### Changed
23
- * Upgraded to RuboCop v1.44.1
24
- * Compatible with rubocop-packaging ~> 0.5.2
25
- * Rubocop => RuboCop typo repair in documentation
26
- * Minimum code coverage == 100%
55
+ - Upgraded to RuboCop v1.44.1
56
+ - Compatible with rubocop-packaging ~> 0.5.2
57
+ - Rubocop => RuboCop typo repair in documentation
58
+ - Minimum code coverage == 100%
27
59
 
28
60
  ## [1.0.7] 2022-06-08
29
61
  ### Changed
30
- * Update to rubocop 1.30.1
31
- * Removed test_files from gemspec
32
- * Add binstubs for bundle, rake, rspec, and rubocop
62
+ - Update to rubocop 1.30.1
63
+ - Removed test_files from gemspec
64
+ - Add binstubs for bundle, rake, rspec, and rubocop
33
65
 
34
66
  ## [1.0.6] 2022-06-05
35
67
  ### Changed
36
- * Update to rubocop 1.30.0
68
+ - Update to rubocop 1.30.0
37
69
 
38
70
  ## [1.0.5] 2022-05-23
39
71
  ### Changed
40
- * Update to rubocop 1.29.1
72
+ - Update to rubocop 1.29.1
41
73
 
42
74
  ## [1.0.4] 2022-05-23
43
75
  ### Added
44
- * Rubocop => RuboCop typo repair
45
- * Ruby Version Support Matrix
46
- * Improved documentation
76
+ - Rubocop => RuboCop typo repair
77
+ - Ruby Version Support Matrix
78
+ - Improved documentation
47
79
 
48
80
  ## [1.0.3] 2022-05-03
49
81
  ### Fixed
50
- * Added missing rubocop.yml for inherit_gem directive
82
+ - Added missing rubocop.yml for inherit_gem directive
51
83
 
52
84
  ## [1.0.2] 2022-05-02
53
85
  ### Added
54
- * Documentation
86
+ - Documentation
55
87
 
56
88
  ## [1.0.1] 2022-05-01
57
89
  ### Fixed
58
- * Ruby version requirement fixed to 2.6
90
+ - Ruby version requirement fixed to 2.6
59
91
 
60
92
  ## [1.0.0] yanked
61
93
  ### Added
62
- * Initial release (yanked)
94
+ - Initial release (yanked)
63
95
 
64
- [Unreleased]: https://github.com/rubocop-lts/rubocop-ruby2_6/compare/v1.1.0...HEAD
96
+ [Unreleased]: https://github.com/rubocop-lts/rubocop-ruby2_6/compare/v2.0.2...HEAD
97
+ [2.0.2]: https://github.com/rubocop-lts/rubocop-ruby2_6/compare/v2.0.1...v2.0.2
98
+ [2.0.1]: https://github.com/rubocop-lts/rubocop-ruby2_6/compare/v2.0.0...v2.0.1
99
+ [2.0.0]: https://github.com/rubocop-lts/rubocop-ruby2_6/compare/v1.1.0...v2.0.0
65
100
  [1.1.0]: https://github.com/rubocop-lts/rubocop-ruby2_6/compare/v1.0.7...v1.1.0
66
101
  [1.0.7]: https://github.com/rubocop-lts/rubocop-ruby2_6/compare/v1.0.6...v1.0.7
67
102
  [1.0.6]: https://github.com/rubocop-lts/rubocop-ruby2_6/compare/v1.0.5...v1.0.6
data/CONTRIBUTING.md CHANGED
@@ -13,12 +13,13 @@ To release a new version:
13
13
 
14
14
  1. Run `bin/setup && bin/rake` as a tests, coverage, & linting sanity check.
15
15
  2. update the version number in `version.rb`
16
- 3. run `bundle exec rake build:checksum`
17
- 4. move the built gem to project root
18
- 5. run `bin/checksum` to create the missing SHA256 checksum
19
- 6. move the built gem back to `pkg/`
20
- 7. commit the changes
21
- 8. run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org][rubygems].
16
+ 3. Run `bin/setup && bin/rake` again as a secondary check, and to update `Gemfile.lock`.
17
+ 4. run `bundle exec rake build:checksum`
18
+ 5. move the built gem to project root
19
+ 6. run `bin/checksum` to create the missing SHA256 checksum
20
+ 7. move the built gem back to `pkg/`
21
+ 8. commit the changes
22
+ 9. run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org][rubygems].
22
23
 
23
24
  NOTE: You will need to have a public key in `certs/`, and list your cert in the
24
25
  `gemspec`, in order to sign the new release.
@@ -26,13 +27,12 @@ See: [RubyGems Security Guide][rubygems-security-guide]
26
27
 
27
28
  ## Contributors
28
29
 
29
- [![Contributors][🖐contributors-img]][🖐contributors]
30
+ See: [https://gitlab.com/rubocop-lts/rubocop-ruby2_6/-/graphs/main][🖐contributors]
30
31
 
31
32
  [comment]: <> (Following links are used by README, CONTRIBUTING, Homepage)
32
33
 
33
- [conduct]: https://gitlab.com/rubocop-lts/rubocop-ruby2_6/-/blob/main/CODE_OF_CONDUCT.md
34
+ [🤝conduct]: https://gitlab.com/rubocop-lts/rubocop-ruby2_6/-/blob/main/CODE_OF_CONDUCT.md
34
35
  [🖐contributors]: https://gitlab.com/rubocop-lts/rubocop-ruby2_6/-/graphs/main
35
- [🖐contributors-img]: https://img.shields.io/github/contributors-anon/rubocop-lts/rubocop-ruby2_6
36
36
  [🚎src-main]: https://gitlab.com/rubocop-lts/rubocop-ruby2_6/-/tree/main
37
37
  [🏘chat]: https://gitter.im/rubocop-lts/community
38
38
  [rubygems-security-guide]: https://guides.rubygems.org/security/#building-gems
data/LICENSE.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2022 Peter Boling
3
+ Copyright (c) 2022 - 2023 Peter H. Boling of https://railsbling.com
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -18,12 +18,12 @@
18
18
 
19
19
  ---
20
20
 
21
- NOTE: You might be interested in [`rubocop-lts`](https://github.com/rubocop-lts/rubocop-lts#-how-to-untie-gorgons-knot) which sits as a higher level than this gem, and can keep pace with whatever version of Ruby you happen to be on.
21
+ NOTE: You might be interested in [`rubocop-lts`][rlts] which sits as a higher level than this gem, and can keep pace with whatever version of Ruby you happen to be on.
22
22
 
23
- | Gem Name | Version | Downloads | CI | Activity |
24
- |------------------------------|-------------------------------------|----------------------------------------------------------------------|----------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------|
25
- | [`rubocop-lts`][⛳️lts-gh] | [![Gem Version][⛳️lts-vi]][⛳️lts-g] | [![Total DL][🖇️lts-dti]][⛳️lts-g] [![DL Rank][🏘️lts-rti]][⛳️lts-g] | [![Current][🚎lts-cwfi]][🚎lts-cwf] | [![Open Issues][📗lts-ioi]][📗lts-io] [![Closed Issues][🚀lts-ici]][🚀lts-ic] [![Open PRs][💄lts-poi]][💄lts-po] [![Closed PRs][👽lts-pci]][👽lts-pc] |
26
- | [`rubocop-ruby2_6`][⛳️26-gh] | [![Gem Version][⛳️26-vi]][⛳️26-g] | [![Total DL][🖇️26-dti]][⛳️26-g] [![DL Rank][🏘️26-rti]][⛳️26-g] | [![Current][🚎26-cwfi]][🚎26-cwf] [![Heads][🖐26-hwfi]][🖐26-hwf] [![Legacy][🧮26-lwfi]][🧮26-lwf] | [![Open Issues][📗26-ioi]][📗26-io] [![Closed Issues][🚀26-ici]][🚀26-ic] [![Open PRs][💄26-poi]][💄26-po] [![Closed PRs][👽26-pci]][👽26-pc] |
23
+ | Gem Name | Version | Downloads | CI | Activity |
24
+ |-------------------------------|-------------------------------------|----------------------------------------------------------------------|-----------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------|
25
+ | [`rubocop-lts`][⛳️lts-gh] | [![Gem Version][⛳️lts-vi]][⛳️lts-g] | [![Total DL][🖇️lts-dti]][⛳️lts-g] [![DL Rank][🏘️lts-rti]][⛳️lts-g] | [![Current][🚎lts-cwfi]][🚎lts-cwf] | [![Open Issues][📗lts-ioi]][📗lts-io] [![Closed Issues][🚀lts-ici]][🚀lts-ic] [![Open PRs][💄lts-poi]][💄lts-po] [![Closed PRs][👽lts-pci]][👽lts-pc] |
26
+ | [`rubocop-ruby2_6`][⛳️ini-gh] | [![Gem Version][⛳️ini-vi]][⛳️ini-g] | [![Total DL][🖇️ini-dti]][⛳️ini-g] [![DL Rank][🏘️ini-rti]][⛳️ini-g] | [![Current][🚎ini-cwfi]][🚎ini-cwf] [![Heads][🖐ini-hwfi]][🖐ini-hwf] | [![Open Issues][📗ini-ioi]][📗ini-io] [![Closed Issues][🚀ini-ici]][🚀ini-ic] [![Open PRs][💄ini-poi]][💄ini-po] [![Closed PRs][👽ini-pci]][👽ini-pc] |
27
27
 
28
28
  <!-- columnar badge #s for Project Health table:
29
29
  ⛳️
@@ -58,31 +58,55 @@ NOTE: You might be interested in [`rubocop-lts`](https://github.com/rubocop-lts/
58
58
  [⛳️lts-g]: https://rubygems.org/gems/rubocop-lts
59
59
  [⛳️lts-gh]: https://github.com/rubocop-lts/rubocop-lts
60
60
 
61
- [⛳️26-vi]: http://img.shields.io/gem/v/rubocop-ruby2_6.svg
62
- [🖇️26-dti]: https://img.shields.io/gem/dt/rubocop-ruby2_6.svg
63
- [🏘️26-rti]: https://img.shields.io/gem/rt/rubocop-ruby2_6.svg
64
- [🚎26-cwf]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions/workflows/current.yml
65
- [🚎26-cwfi]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions/workflows/current.yml/badge.svg
66
- [🖐26-hwf]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions/workflows/heads.yml
67
- [🖐26-hwfi]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions/workflows/heads.yml/badge.svg
68
- [🧮26-lwf]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions/workflows/legacy.yml
69
- [🧮26-lwfi]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions/workflows/legacy.yml/badge.svg
70
- [📗26-io]: https://github.com/rubocop-lts/rubocop-ruby2_6/issues
71
- [📗26-ioi]: https://img.shields.io/github/issues-raw/rubocop-lts/rubocop-ruby2_6
72
- [🚀26-ic]: https://github.com/rubocop-lts/rubocop-ruby2_6/issues?q=is%3Aissue+is%3Aclosed
73
- [🚀26-ici]: https://img.shields.io/github/issues-closed-raw/rubocop-lts/rubocop-ruby2_6
74
- [💄26-po]: https://github.com/rubocop-lts/rubocop-ruby2_6/pulls
75
- [💄26-poi]: https://img.shields.io/github/issues-pr/rubocop-lts/rubocop-ruby2_6
76
- [👽26-pc]: https://github.com/rubocop-lts/rubocop-ruby2_6/pulls?q=is%3Apr+is%3Aclosed
77
- [👽26-pci]: https://img.shields.io/github/issues-pr-closed/rubocop-lts/rubocop-ruby2_6
78
- [⛳️26-g]: https://rubygems.org/gems/rubocop-ruby2_6
79
- [⛳️26-gh]: https://github.com/rubocop-lts/rubocop-ruby2_6
80
-
81
- # Rubocop::Ruby26
61
+ [⛳️ini-vi]: http://img.shields.io/gem/v/rubocop-ruby2_6.svg
62
+ [🖇️ini-dti]: https://img.shields.io/gem/dt/rubocop-ruby2_6.svg
63
+ [🏘️ini-rti]: https://img.shields.io/gem/rt/rubocop-ruby2_6.svg
64
+ [🚎ini-cwf]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions/workflows/current.yml
65
+ [🚎ini-cwfi]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions/workflows/current.yml/badge.svg
66
+ [🖐ini-hwf]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions/workflows/heads.yml
67
+ [🖐ini-hwfi]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions/workflows/heads.yml/badge.svg
68
+ [🧮ini-lwf]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions/workflows/legacy.yml
69
+ [🧮ini-lwfi]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions/workflows/legacy.yml/badge.svg
70
+ [📗ini-io]: https://github.com/rubocop-lts/rubocop-ruby2_6/issues
71
+ [📗ini-ioi]: https://img.shields.io/github/issues-raw/rubocop-lts/rubocop-ruby2_6
72
+ [🚀ini-ic]: https://github.com/rubocop-lts/rubocop-ruby2_6/issues?q=is%3Aissue+is%3Aclosed
73
+ [🚀ini-ici]: https://img.shields.io/github/issues-closed-raw/rubocop-lts/rubocop-ruby2_6
74
+ [💄ini-po]: https://github.com/rubocop-lts/rubocop-ruby2_6/pulls
75
+ [💄ini-poi]: https://img.shields.io/github/issues-pr/rubocop-lts/rubocop-ruby2_6
76
+ [👽ini-pc]: https://github.com/rubocop-lts/rubocop-ruby2_6/pulls?q=is%3Apr+is%3Aclosed
77
+ [👽ini-pci]: https://img.shields.io/github/issues-pr-closed/rubocop-lts/rubocop-ruby2_6
78
+ [⛳️ini-g]: https://rubygems.org/gems/rubocop-ruby2_6
79
+ [⛳️ini-gh]: https://github.com/rubocop-lts/rubocop-ruby2_6
80
+
81
+ # 🦾 Rubocop::Ruby26
82
82
 
83
83
  See the intro [blog post](https://dev.to/pboling/rubocop-ruby-matrix-gems-nj)!
84
84
 
85
- This gem requires no other gems. It depends on `rubocop`, but does not `require 'rubocop'`.
85
+ This gem configures many gems for you:
86
+
87
+ - rubocop
88
+ - rubocop-gradual
89
+ - rubocop-md
90
+ - rubocop-rake
91
+ - rubocop-shopify
92
+ - rubocop-thread_safety
93
+ - standard
94
+ - standard-performance (incl. rubocop-performance)
95
+ - standard-custom
96
+ - standard-rubocop-lts (ruby version-specific rules)
97
+
98
+ And optionally, if you are using RSpec:
99
+
100
+ - rubocop-rspec
101
+
102
+ And optionally, if you are building a RubyGem:
103
+
104
+ - rubocop-packaging
105
+
106
+ And optionally, if you are building a Rails app:
107
+
108
+ - standard-rails (incl. rubocop-rails)
109
+ - betterlint
86
110
 
87
111
  Awareness of `rubocop`'s lack of [SemVer][semver] adherence isn't evenly dispersed in the Ruby community.
88
112
 
@@ -93,8 +117,6 @@ NOTE: They think they are following SemVer,
93
117
  but their interpretation differs from mine, and seems to differ from the
94
118
  [intent of SemVer's creator][major-versions-not-sacred].
95
119
 
96
- If you need to run `rubocop` from command line in an older version of Ruby, you've come to the right place.
97
-
98
120
  <p align="left">
99
121
  <a href="https://metaredux.com/posts/2022/04/21/rubocop-turns-10.html" target="_blank" rel="noopener">
100
122
  <img width="360px" src="https://github.com/rubocop-lts/rubocop-ruby2_6/raw/main/docs/images/rubocop-not-semver.png?raw=true" alt="Explanation of non-SemVer compliance, @bbatsov">
@@ -104,45 +126,56 @@ If you need to run `rubocop` from command line in an older version of Ruby, you'
104
126
  The purpose of this gem is to constrain the `rubocop` dependency of a project in
105
127
  a [SemVer compliant][semver]
106
128
  (Semantic Versioning, [Major Versions are Not Sacred][major-versions-not-sacred])
107
- way that aligns with the the desired minimum compatible/supported Ruby version.
129
+ way that aligns with its desired minimum compatible/supported Ruby version.
130
+ Secondary purpose is to provide default configurations for a bevy of RuboCop-related plugins.
108
131
 
109
- ## Ruby Version Support
132
+ ## 💎 Ruby Version Support
110
133
 
111
- Adding this gem will facilitate the best practice of adding a `~> ` version constrained `rubocop` dependency, while
112
- minimizing the risk of a rubocop minor / patch upgrade breaking the build. See the
113
- official [compatibility matrix][rubocop-support-matrix] for `rubocop`.
134
+ This gem facilitates equivalent of adding a `~> ` version constrained `rubocop`(-ish +more) dependency,
135
+ thus minimizing the risk of a rubocop minor / patch upgrade breaking the build.
114
136
 
115
- ### Three Guarantees
137
+ ### What's that you say?
116
138
 
117
- This gem will install a version of `rubocop` which will
118
- **install** on (1), **run** on (2), and **analyze code** (3) intended to support any version of Ruby >= 2.7.
139
+ This gem will install a suite of tools that will **analyze & lint code** intended to support any version of Ruby >= 2.0.
140
+
141
+ This gem helps insulate projects from RuboCop churn by enshrining many conventions
142
+ that have been shown over years to reduce problems.
143
+
144
+ #### Background
119
145
 
120
- Any change to any of those three abilities would require a major version bump.
121
146
  Each [spring `rubocop` drops][rubocop-support-matrix] the ability to **install** and **run** `rubocop` on an EOL'd Ruby.
122
147
  Eventually `rubocop` will drop the ability to **analyze code** intended to support an EOL'd Ruby,
123
- as they already have for Ruby 1.8 and 1.9.
148
+ as they already have for Ruby 1.9. RuboCop has never run properly on Ruby 1.8.
149
+ This gem, via [standard (Standard Ruby)][standardrb], allows RuboCop to analyze Ruby 2.6 code,
150
+ by turning off certain rules that only apply to later Rubies.
151
+
124
152
  When the `rubocop` team makes _any_ of these changes they
125
153
  [only bump the minor version][rubocop-versioning] of RuboCop,
126
154
  in violation of SemVer ([they disagree][rubocop-release-policy]).
155
+
127
156
  In other words, RuboCop intentionally does not bump the major version when they drop
128
157
  _analysis_, _runtime_, or _installation_ support for a given version of Ruby.
158
+
129
159
  This is a primary _raison d’être_ for this project.
130
160
  To get a better understanding of how SemVer is intended to work read this article from the creator of SemVer:
131
161
 
132
- - ["Major Version Numbers are Not Sacred"][major-versions-not-sacred]
162
+ - ["Major Version Numbers are Not Sacred"][major-versions-not-sacred]!
133
163
 
134
164
  [rubocop-support-matrix]: https://docs.rubocop.org/rubocop/compatibility.html#support-matrix
135
165
  [rubocop-versioning]: https://docs.rubocop.org/rubocop/versioning.html
136
166
  [rubocop-release-policy]: https://docs.rubocop.org/rubocop/versioning.html#release-policy
137
167
  [major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
168
+ [standardrb]: https://github.com/standardrb/standard
138
169
 
139
- ### A Gem Family
170
+ ### 👪 A Gem Family
140
171
 
141
- The `rubocop-lts` series of gems has a version supporting any version of Ruby you need.
172
+ The `rubocop-lts` family of gems has a version supporting any version of Ruby you need.
142
173
  They can be used as development dependencies for libraries or applications.
143
174
 
175
+ - [`rubocop-lts`][rlts]
176
+ - [`standard-rubocop-lts`][stdrlts]
177
+ - [`rubocop-ruby1_8`][rr18]
144
178
  - [`rubocop-ruby1_9`][rr19]
145
- - [Still supporting Ruby 1.8?][what1_8]
146
179
  - [`rubocop-ruby2_0`][rr20]
147
180
  - [`rubocop-ruby2_1`][rr21]
148
181
  - [`rubocop-ruby2_2`][rr22]
@@ -153,7 +186,11 @@ They can be used as development dependencies for libraries or applications.
153
186
  - [`rubocop-ruby2_7`][rr27]
154
187
  - [`rubocop-ruby3_0`][rr30]
155
188
  - [`rubocop-ruby3_1`][rr31]
189
+ - [`rubocop-ruby3_2`][rr32]
156
190
 
191
+ [rlts]: https://github.com/rubocop-lts/rubocop-lts#-how-to-untie-gorgons-knot
192
+ [stdrlts]: https://github.com/rubocop-lts/standard-rubocop-lts
193
+ [rr18]: https://gitlab.com/rubocop-lts/standard-rubocop-lts
157
194
  [rr19]: https://gitlab.com/rubocop-lts/rubocop-ruby1_9
158
195
  [rr20]: https://gitlab.com/rubocop-lts/rubocop-ruby2_0
159
196
  [rr21]: https://gitlab.com/rubocop-lts/rubocop-ruby2_1
@@ -165,19 +202,17 @@ They can be used as development dependencies for libraries or applications.
165
202
  [rr27]: https://gitlab.com/rubocop-lts/rubocop-ruby2_7
166
203
  [rr30]: https://gitlab.com/rubocop-lts/rubocop-ruby3_0
167
204
  [rr31]: https://gitlab.com/rubocop-lts/rubocop-ruby3_1
168
- [what1_8]: https://gitlab.com/rubocop-lts/rubocop-ruby1_9#what-about-ruby-18
169
- [rubocop-matrix]: https://github.com/rubocop/rubocop/blob/master/docs/modules/ROOT/pages/compatibility.adoc#support-matrix
205
+ [rr32]: https://gitlab.com/rubocop-lts/rubocop-ruby3_2
170
206
 
171
207
  ## 🗿 Stable
172
208
 
173
209
  All releases of this gem are stable releases.
174
- We do not release new versions for every release of `rubocop`.
210
+ We do not release new versions for every release of `rubocop`,
211
+ as this gem is tied to [standard (Standard Ruby)][standardrb].
175
212
  A typical release cycle for a gem in the `rubocop-lts` family is roughly every six months,
176
- though eventually analysis support for an old version of Ruby will be dropped .
213
+ though eventually analysis support for an old version of Ruby will be dropped.
177
214
  When that happens releases of the `rubocop-lts` gem for that version of Ruby will (mostly) cease.
178
215
 
179
- The first version is `1.0.1` (1.0.0 was yanked due to accidentally requiring Ruby 3.1, failing the whole purpose of this project 🥳).
180
-
181
216
  ## ✨ Installation
182
217
 
183
218
  Install the gem and add to the application's Gemfile by executing:
@@ -188,46 +223,89 @@ If bundler is not being used to manage dependencies, install the gem by executin
188
223
 
189
224
  $ gem install rubocop-ruby2_6
190
225
 
191
- ## 🔧 Usage
192
-
193
- The following is optional. We'll discuss why you might want to do this after you see what it does.
226
+ ## 🔧 Basic Usage
194
227
 
195
- Add to the top of your project's `.rubocop.yml` configuration file:
228
+ If you are using Rails, building a Rubygem, or not using RSpec, see ["Advanced Usage"](#advanced-usage).
229
+ Otherwise, if you using this in plain Ruby _and_ RSpec, you can add to the top of your project's `.rubocop.yml` configuration file:
196
230
 
197
231
  ```yaml
198
232
  inherit_gem:
199
233
  rubocop-ruby2_6: rubocop.yml
200
234
  ```
201
235
 
202
- This has the same effect as you declaring the following in your `.rubocop.yml`:
236
+ Among _many_ other settings, this has the effect of declaring the following:
203
237
 
204
238
  ```yaml
205
239
  AllCops:
206
- # remove if already present in your `.rubocop.yml` to gain the full benefit of this gem!
207
- TargetRubyVersion: 2.6
208
240
  NewCops: enable
209
241
  ```
210
242
 
211
- Let's talk about these settings.
243
+ Let's talk about these settings. (TODO: Document some of the other settings!)
212
244
 
213
- ### TargetRubyVersion
245
+ ### ⚙️ `NewCops: enable`
214
246
 
215
- Allowing this gem to manage the target ruby version means you can switch to a different gem within the family when you upgrade to the next version of Ruby, and have nothing else to change. A single line in the `Gemfile`, and you are done.
247
+ Upgrades to the latest RuboCop can include all kinds of changes, including removing support for the version of Ruby your project uses, or adding a cop that may not work with some of your syntax (e.g. [some use cases of 'module_function`](https://github.com/rubocop/rubocop/issues/5953#issuecomment-805921993)). Accepting new cops arriving in a new version of RuboCop can feel risky, especially when it doesn't follow SemVer.
216
248
 
217
- ### NewCops: enable
249
+ But this gem shoehorns RuboCop into SemVer, under the watchful eye of [standard (Standard Ruby)][standardrb]... so `NewCops` is now safe(r)! If you use a dependency greening tool like GitHub's `dependabot`, or the excellent alternatives [depfu](https://depfu.com/), and [`renovate`](https://www.whitesourcesoftware.com/free-developer-tools/renovate/), then you can see the effect of a minor / major version bump in your CI Build!
218
250
 
219
- You may not use this setting in your project yet. Upgrades to the latest RuboCop can include all kinds of changes, including removing support for the version of Ruby your project uses, or adding a cop that may not work with some of your syntax (e.g. [some use cases of 'module_function`](https://github.com/rubocop/rubocop/issues/5953#issuecomment-805921993)). Accepting new cops arriving in a new version of RuboCop can feel risky, especially when it doesn't follow SemVer.
251
+ ## Advanced Usage
220
252
 
221
- But this gem shoehorns rubocop into SemVer... so `NewCops` is now safe(r)! If you use a dependency greening tool like GitHub's `dependabot`, or the excellent alternatives [depfu](https://depfu.com/), and [`renovate`](https://www.whitesourcesoftware.com/free-developer-tools/renovate/), then you can see the effect of a minor / major version bumpin your CI Build!
253
+ ### Linting Ruby + RSpec
254
+
255
+ ```yaml
256
+ inherit_gem:
257
+ rubocop-ruby2_6: rubocop-lts/ruby_rspec.yml
258
+ # Note: technically the above is the same as the "Basic Usage" below, so if specificity is not your jam:
259
+ # rubocop-ruby2_6: rubocop.yml
260
+ ```
261
+
262
+ ### Linting Ruby w/o RSpec
263
+
264
+ ```yaml
265
+ inherit_gem:
266
+ rubocop-ruby2_6: rubocop-lts/ruby.yml
267
+ ```
268
+
269
+ ### Linting Rails + RSpec
270
+
271
+ ```yaml
272
+ inherit_gem:
273
+ rubocop-ruby2_6: rubocop-lts/rails_rspec.yml
274
+ ```
222
275
 
223
- ## Development
276
+ #### Linting Rails w/o RSpec
277
+
278
+ ```yaml
279
+ inherit_gem:
280
+ rubocop-ruby2_6: rubocop-lts/rails.yml
281
+ ```
282
+
283
+ #### Linting a RubyGem + RSpec
284
+
285
+ ```yaml
286
+ inherit_gem:
287
+ rubocop-ruby2_6: rubocop-lts/rubygem_rspec.yml
288
+ ```
289
+
290
+ #### Linting a RubyGem w/o RSpec
291
+
292
+ ```yaml
293
+ inherit_gem:
294
+ rubocop-ruby2_6: rubocop-lts/rubygem.yml
295
+ ```
296
+
297
+ ## 💻 Development
224
298
 
225
299
  After checking out the repo, run `bin/setup` to install dependencies.
226
300
  Then, run `rake spec` to run the tests w/ coverage,
227
301
  or `bin/rake` to run tests w/ coverage, and linting.
228
302
  You can also run `bin/console` for an interactive prompt that will allow you to experiment.
229
303
 
230
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).
304
+ To install this gem onto your local machine, run `bundle exec rake install`.
305
+
306
+ ### 🚀 Release Instructions
307
+
308
+ See [CONTRIBUTING.md][contributing].
231
309
 
232
310
  ## ⚡️ Contributing
233
311
 
@@ -242,8 +320,8 @@ Made with [contributors-img](https://contrib.rocks).
242
320
  ## 📄 License
243
321
 
244
322
  The gem is available as open source under the terms of
245
- the [MIT License][license] [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)][license-ref].
246
- See [LICENSE][license] for the official [Copyright Notice][copyright-notice-explainer].
323
+ the [MIT License][license] [![License: MIT][license-img]][license-ref].
324
+ See [LICENSE.txt][license] for the official [Copyright Notice][copyright-notice-explainer].
247
325
 
248
326
  <details>
249
327
  <summary>Project Logos (rubocop-ruby2_6)</summary>
@@ -252,7 +330,7 @@ See [docs/images/logo/README.txt][project-logos]
252
330
  </details>
253
331
 
254
332
  <details>
255
- <summary>Organization Logo (rubocop-semver)</summary>
333
+ <summary>Organization Logo (rubocop-lts)</summary>
256
334
 
257
335
  Author: [Yusuf Evli][org-logo-author]
258
336
  Source: [Unsplash][org-logo-source]
@@ -268,11 +346,11 @@ License: [Unsplash License][org-logo-license]
268
346
 
269
347
  * Copyright (c) 2022 - 2023 [Peter H. Boling][peterboling] of [Rails Bling][railsbling]
270
348
 
271
- [copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
272
-
273
349
  ## 🤝 Code of Conduct
274
350
 
275
- Everyone interacting in the Rubocop::Ruby26 project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/rubocop-lts/rubocop-ruby2_6/blob/main/CODE_OF_CONDUCT.md).
351
+ Everyone interacting in this project's codebases, issue trackers, [chat rooms][🏘chat] and mailing lists is expected to follow the [code of conduct][🤝conduct].
352
+
353
+ [🤝conduct]: https://gitlab.com/rubocop-lts/rubocop-ruby2_6/-/blob/main/CODE_OF_CONDUCT.md
276
354
 
277
355
  ## 📌 Versioning
278
356
 
@@ -287,65 +365,36 @@ the [Pessimistic Version Constraint][pvc] with two digits of precision.
287
365
  For example:
288
366
 
289
367
  ```ruby
290
- spec.add_dependency "rubocop-ruby2_6", "~> 1.1"
368
+ spec.add_dependency "rubocop-ruby2_6", "~> 2.0"
291
369
  ```
292
370
 
371
+ [aboutme]: https://about.me/peter.boling
372
+ [actions]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions
373
+ [angelme]: https://angel.co/peter-boling
374
+ [blogpage]: http://www.railsbling.com/tags/rubocop-ruby2_6/
375
+ [codecov_coverage]: https://codecov.io/gh/rubocop-lts/rubocop-ruby2_6
376
+ [code_triage]: https://www.codetriage.com/rubocop-lts/rubocop-ruby2_6
377
+ [🏘chat]: https://gitter.im/rubocop-lts/community
378
+ [climate_coverage]: https://codeclimate.com/github/rubocop-lts/rubocop-ruby2_6/test_coverage
379
+ [climate_maintainability]: https://codeclimate.com/github/rubocop-lts/rubocop-ruby2_6/maintainability
293
380
  [copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
294
-
295
- [gh_discussions]: https://github.com/rubocop-lts/rubocop-ruby2_6/discussions
296
-
297
381
  [conduct]: https://github.com/rubocop-lts/rubocop-ruby2_6/blob/main/CODE_OF_CONDUCT.md
298
-
299
382
  [contributing]: https://github.com/rubocop-lts/rubocop-ruby2_6/blob/main/CONTRIBUTING.md
300
-
301
- [security]: https://github.com/rubocop-lts/rubocop-ruby2_6/blob/main/SECURITY.md
302
-
303
- [license]: https://github.com/rubocop-lts/rubocop-ruby2_6/blob/main/LICENSE.txt
304
-
383
+ [devto]: https://dev.to/galtzo
384
+ [documentation]: https://rubydoc.info/github/rubocop-lts/rubocop-ruby2_6/main
385
+ [followme]: https://img.shields.io/twitter/follow/galtzo.svg?style=social&label=Follow
386
+ [gh_discussions]: https://github.com/rubocop-lts/rubocop-ruby2_6/discussions
387
+ [gh_sponsors]: https://github.com/sponsors/pboling
388
+ [issues]: https://github.com/rubocop-lts/rubocop-ruby2_6/issues
389
+ [liberapay_donate]: https://liberapay.com/pboling/donate
390
+ [license]: LICENSE.txt
305
391
  [license-ref]: https://opensource.org/licenses/MIT
306
-
307
- [semver]: http://semver.org/
308
-
392
+ [license-img]: https://img.shields.io/badge/License-MIT-green.svg
393
+ [peterboling]: http://www.peterboling.com
309
394
  [pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
310
-
311
395
  [railsbling]: http://www.railsbling.com
312
-
313
- [peterboling]: http://www.peterboling.com
314
-
315
- [aboutme]: https://about.me/peter.boling
316
-
317
- [angelme]: https://angel.co/peter-boling
318
-
319
- [coderme]:http://coderwall.com/pboling
320
-
321
- [followme-img]: https://img.shields.io/twitter/follow/galtzo.svg?style=social&label=Follow
322
-
323
- [tweetme]: http://twitter.com/galtzo
324
-
325
- [documentation]: https://rubydoc.info/github/rubocop-lts/rubocop-ruby2_6/main
326
-
327
- [source]: https://github.com/rubocop-lts/rubocop-ruby2_6/
328
-
329
- [actions]: https://github.com/rubocop-lts/rubocop-ruby2_6/actions
330
-
331
- [issues]: https://github.com/rubocop-lts/rubocop-ruby2_6/issues
332
-
333
- [climate_maintainability]: https://codeclimate.com/github/rubocop-lts/rubocop-ruby2_6/maintainability
334
-
335
- [climate_coverage]: https://codeclimate.com/github/rubocop-lts/rubocop-ruby2_6/test_coverage
336
-
337
- [codecov_coverage]: https://codecov.io/gh/rubocop-lts/rubocop-ruby2_6
338
-
339
- [code_triage]: https://www.codetriage.com/rubocop-lts/rubocop-ruby2_6
340
-
341
- [blogpage]: http://www.railsbling.com/tags/rubocop-ruby2_6/
342
-
343
396
  [rubygems]: https://rubygems.org/gems/rubocop-ruby2_6
344
-
345
- [chat]: https://gitter.im/rubocop-lts/rubocop-ruby2_6?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
346
-
347
- [maintenancee_policy]: https://guides.rubyonrails.org/maintenance_policy.html#security-issues
348
-
349
- [liberapay_donate]: https://liberapay.com/pboling/donate
350
-
351
- [gh_sponsors]: https://github.com/sponsors/pboling
397
+ [security]: https://github.com/rubocop-lts/rubocop-ruby2_6/blob/main/SECURITY.md
398
+ [semver]: http://semver.org/
399
+ [source]: https://github.com/rubocop-lts/rubocop-ruby2_6/
400
+ [tweetme]: http://twitter.com/galtzo
data/SECURITY.md CHANGED
@@ -4,7 +4,8 @@
4
4
 
5
5
  | Version | Supported |
6
6
  |---------|-----------|
7
- | 1.x | ✅ |
7
+ | 2.x | ✅ |
8
+ | 1.x | ❌ |
8
9
 
9
10
  ## Reporting a Vulnerability
10
11
 
@@ -0,0 +1,14 @@
1
+ module Rubocop
2
+ module Ruby26
3
+ class Railtie < Rails::Railtie
4
+ railtie_name :rubocop_ruby2_6
5
+
6
+ if Rails.env.test? || Rails.env.development?
7
+ rake_tasks do
8
+ path = File.expand_path(__dir__)
9
+ Dir.glob("#{path}/rakelib/**/*.rake").each { |f| load f }
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,11 @@
1
+ begin
2
+ require "rubocop/gradual/rake_task"
3
+
4
+ RuboCop::Gradual::RakeTask.new(:rubocop_gradual)
5
+ desc "alias rubocop task to rubocop_gradual"
6
+ task rubocop: :rubocop_gradual
7
+ rescue LoadError
8
+ task :rubocop_gradual do
9
+ warn "NOTE: rubocop-gradual isn't installed, or is disabled for #{RUBY_VERSION} in the current environment"
10
+ end
11
+ end
@@ -0,0 +1,4 @@
1
+ # Load from a "rakelib" directory is automatic!
2
+ # Adding our custom directory of tasks as a rakelib directory makes them available.
3
+ rakelib = "lib/rubocop/ruby2_6/rakelib"
4
+ Rake.add_rakelib(rakelib)
@@ -2,6 +2,8 @@
2
2
 
3
3
  module Rubocop
4
4
  module Ruby26
5
- VERSION = "1.1.0"
5
+ module Version
6
+ VERSION = "2.0.2"
7
+ end
6
8
  end
7
9
  end
@@ -1,9 +1,23 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # external libs
4
+ require "version_gem"
5
+
6
+ # this gem
3
7
  require_relative "ruby2_6/version"
8
+ # :nocov:
9
+ require_relative "ruby2_6/railtie" if defined?(Rails::Railtie)
10
+ # :nocov:
4
11
 
5
12
  module Rubocop
6
13
  # Namespace of this library
7
14
  module Ruby26
15
+ module_function def install_tasks
16
+ load "rubocop/ruby2_6/tasks.rake"
17
+ end
8
18
  end
9
19
  end
20
+
21
+ Rubocop::Ruby26::Version.class_eval do
22
+ extend VersionGem::Basic
23
+ end
@@ -0,0 +1,11 @@
1
+ # Customizations/Deviations from Standard/Shopify for RuboCop-LTS Rails Coding Standards
2
+ inherit_from:
3
+ - ruby.yml
4
+ - strict/rails.yml
5
+
6
+ require:
7
+ - rubocop-rails
8
+ - standard-rails
9
+ - betterlint
10
+
11
+ # Rails specific customizations
@@ -0,0 +1,6 @@
1
+ # Customizations/Deviations from Standard/Shopify for RuboCop-LTS Rails w/ RSpec Coding Standards
2
+ inherit_from:
3
+ - rails.yml
4
+ - rspec.yml
5
+
6
+ # Rails/RSpec specific customizations
@@ -0,0 +1,9 @@
1
+ require:
2
+ # I setup RSpec on every project. Do you?
3
+ - rubocop-rspec
4
+
5
+ inherit_gem:
6
+ rspec-block_is_expected: rubocop.yml
7
+
8
+ inherit_from:
9
+ - strict/rspec.yml
@@ -0,0 +1,43 @@
1
+ # Customizations/Deviations from Standard/Shopify for Ruby Coding Standards
2
+
3
+ # We want Exclude directives from different
4
+ # config files to get merged, not overwritten
5
+ inherit_mode:
6
+ merge:
7
+ - Exclude
8
+
9
+ require:
10
+ # Loads the Standard Ruby suite of gems, and configures for rubocop-lts:
11
+ - standard-rubocop-lts
12
+ # The goal here is convention over configuration...
13
+ # In light of that, we are well past having convened on Markdown for README docs and such.
14
+ - rubocop-md
15
+ # Rubygems have Rakefile as a convention, and if they don't, why not?
16
+ - rubocop-rake
17
+ # In the vast majority of cases, we will want to be warned about thread unsafe code.
18
+ # In those cases where we intentionally have thread unsafe code,
19
+ # a rubocop:disable is the least of our concerns. :D
20
+ - rubocop-thread_safety
21
+ # RuboCop Gradual can be used in "Require mode", which is a way to replace rubocop with rubocop-gradual:
22
+ - rubocop/gradual/patch
23
+
24
+ inherit_gem:
25
+ standard-rubocop-lts: config/ruby-2.6.yml
26
+ # shopify rules will override standard's rules.
27
+ rubocop-shopify: rubocop.yml
28
+
29
+ inherit_from:
30
+ - strict/ruby.yml
31
+
32
+ AllCops:
33
+ # When the Ruby community, via RuboCop, adopts a new standard
34
+ # (with additional filtering by standard.rb and rubocop-shopify) it is good enough for us!
35
+ NewCops: enable
36
+
37
+ # Metrics cops are disabled in Standard by default
38
+ Metrics:
39
+ Enabled: true
40
+
41
+ # Ruby specific customizations
42
+ Layout/LineLength:
43
+ Max: 120
@@ -0,0 +1,6 @@
1
+ # Customizations/Deviations from Standard/Shopify for RuboCop-LTS Ruby w/ RSpec Coding Standards
2
+ inherit_from:
3
+ - ruby.yml
4
+ - rspec.yml
5
+
6
+ # Ruby/RSpec specific customizations
@@ -0,0 +1,6 @@
1
+ # Customizations/Deviations from Standard/Shopify for RubyGem Coding Standards
2
+ inherit_from:
3
+ - ruby.yml
4
+
5
+ require:
6
+ - rubocop-packaging
@@ -0,0 +1,4 @@
1
+ # Customizations/Deviations from Standard/Shopify for RubyGem w/ RSpec Coding Standards
2
+ inherit_from:
3
+ - rubygem.yml
4
+ - rspec.yml
@@ -0,0 +1,22 @@
1
+ # These Cops Must Always Be Enabled!
2
+ # These Cops check for things that are *literally* bugs,
3
+ # and no code should ever be released that fails these cops.
4
+ #
5
+ # The Exclude: [] is crucial here:
6
+ # even if our .rubocop_todo.yml contained exclusions for strict cops, we nullify them here,
7
+ # thus, re-activating these cops for all the files.
8
+ #
9
+ # These settings must be loaded after any files of "TODOs" that instruct RuboCop to ignore errors.
10
+ # Fortunately this project doesn't rely on TODOs, instead relying on a rubocop_gradual lockfile.
11
+ #
12
+ Rails/Output: # Don't leave puts-debugging
13
+ Enabled: true
14
+ Exclude: []
15
+
16
+ Rails/FindEach: # each could severely affect the performance, use find_each
17
+ Enabled: true
18
+ Exclude: []
19
+
20
+ Rails/UniqBeforePluck: # uniq.pluck and not pluck.uniq
21
+ Enabled: true
22
+ Exclude: []
@@ -0,0 +1,14 @@
1
+ # These Cops Must Always Be Enabled!
2
+ # These Cops check for things that are *literally* bugs,
3
+ # and no code should ever be released that fails these cops.
4
+ #
5
+ # The Exclude: [] is crucial here:
6
+ # even if our .rubocop_todo.yml contained exclusions for strict cops, we nullify them here,
7
+ # thus, re-activating these cops for all the files.
8
+ #
9
+ # These settings must be loaded after any files of "TODOs" that instruct RuboCop to ignore errors.
10
+ # Fortunately this project doesn't rely on TODOs, instead relying on a rubocop_gradual lockfile.
11
+ #
12
+ RSpec/Focus: # run ALL tests on CI
13
+ Enabled: true
14
+ Exclude: []
@@ -0,0 +1,14 @@
1
+ # These Cops Must Always Be Enabled!
2
+ # These Cops check for things that are *literally* bugs,
3
+ # and no code should ever be released that fails these cops.
4
+ #
5
+ # The Exclude: [] is crucial here:
6
+ # even if our .rubocop_todo.yml contained exclusions for strict cops, we nullify them here,
7
+ # thus, re-activating these cops for all the files.
8
+ #
9
+ # These settings must be loaded after any files of "TODOs" that instruct RuboCop to ignore errors.
10
+ # Fortunately this project doesn't rely on TODOs, instead relying on a rubocop_gradual lockfile.
11
+ #
12
+ Lint/Debugger: # don't leave binding.pry
13
+ Enabled: true
14
+ Exclude: []
data/rubocop.yml CHANGED
@@ -1,3 +1,15 @@
1
- AllCops:
2
- TargetRubyVersion: 2.6
3
- NewCops: enable
1
+ # Change the file you inherit if you:
2
+ # * use Rails,
3
+ # * are creating a RubyGem, or
4
+ # * don't use RSpec
5
+ # As follows:
6
+ # inherit_gem:
7
+ # # Pick one:
8
+ # # rubocop-ruby2_6: rubocop-lts/rails_rspec.yml # or rubocop-lts/rails.yml w/o rspec
9
+ # # rubocop-ruby2_6: rubocop-lts/ruby_rspec.yml # or rubocop-lts/ruby.yml w/o rspec
10
+ # # rubocop-ruby2_6: rubocop-lts/rubygem_rspec.yml # or rubocop-lts/rubygem.yml w/o rspec
11
+ # # Convention over configuration, hence loading this file just only Ruby and RSpec defaults:
12
+ # rubocop-ruby2_6: rubocop.yml # for the ruby + rspec
13
+
14
+ inherit_from:
15
+ - rubocop-lts/ruby_rspec.yml
@@ -1,6 +1,8 @@
1
1
  module Rubocop
2
2
  module Ruby26
3
- VERSION: String
4
- # See the writing guide of rbs: https://github.com/ruby/rbs#guides
3
+ module Version
4
+ VERSION: String
5
+ # See the writing guide of rbs: https://github.com/ruby/rbs#guides
6
+ end
5
7
  end
6
8
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubocop-ruby2_6
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 2.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Boling
@@ -36,65 +36,175 @@ cert_chain:
36
36
  gwGrEXGQGDZ0NIgBcmvMOqlXjkGQwQvugKycJ024z89+fz2332vdZIKTrSxJrXGk
37
37
  4/bR9A==
38
38
  -----END CERTIFICATE-----
39
- date: 2023-02-01 00:00:00.000000000 Z
39
+ date: 2023-05-21 00:00:00.000000000 Z
40
40
  dependencies:
41
41
  - !ruby/object:Gem::Dependency
42
- name: rubocop
42
+ name: rubocop-gradual
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.44.1
47
+ version: '0.3'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.44.1
54
+ version: '0.3'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rake
56
+ name: rubocop-md
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '13.0'
61
+ version: '1.2'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '1.2'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rubocop-rake
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '0.6'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '0.6'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rubocop-shopify
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '2.13'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '2.13'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rubocop-thread_safety
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '0.5'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '0.5'
111
+ - !ruby/object:Gem::Dependency
112
+ name: standard-rubocop-lts
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: 1.0.1
118
+ - - "<"
119
+ - !ruby/object:Gem::Version
120
+ version: '2'
121
+ type: :runtime
122
+ prerelease: false
123
+ version_requirements: !ruby/object:Gem::Requirement
124
+ requirements:
125
+ - - ">="
126
+ - !ruby/object:Gem::Version
127
+ version: 1.0.1
128
+ - - "<"
129
+ - !ruby/object:Gem::Version
130
+ version: '2'
131
+ - !ruby/object:Gem::Dependency
132
+ name: version_gem
133
+ requirement: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - ">="
136
+ - !ruby/object:Gem::Version
137
+ version: 1.1.2
138
+ - - "<"
139
+ - !ruby/object:Gem::Version
140
+ version: '3'
141
+ type: :runtime
142
+ prerelease: false
143
+ version_requirements: !ruby/object:Gem::Requirement
144
+ requirements:
145
+ - - ">="
146
+ - !ruby/object:Gem::Version
147
+ version: 1.1.2
148
+ - - "<"
149
+ - !ruby/object:Gem::Version
150
+ version: '3'
151
+ - !ruby/object:Gem::Dependency
152
+ name: rubocop-packaging
153
+ requirement: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - "~>"
156
+ - !ruby/object:Gem::Version
157
+ version: '0.5'
158
+ type: :development
159
+ prerelease: false
160
+ version_requirements: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - "~>"
163
+ - !ruby/object:Gem::Version
164
+ version: '0.5'
165
+ - !ruby/object:Gem::Dependency
166
+ name: rubocop-rspec
167
+ requirement: !ruby/object:Gem::Requirement
168
+ requirements:
169
+ - - "~>"
170
+ - !ruby/object:Gem::Version
171
+ version: '2.22'
62
172
  type: :development
63
173
  prerelease: false
64
174
  version_requirements: !ruby/object:Gem::Requirement
65
175
  requirements:
66
176
  - - "~>"
67
177
  - !ruby/object:Gem::Version
68
- version: '13.0'
178
+ version: '2.22'
69
179
  - !ruby/object:Gem::Dependency
70
- name: rspec
180
+ name: standard-rails
71
181
  requirement: !ruby/object:Gem::Requirement
72
182
  requirements:
73
183
  - - "~>"
74
184
  - !ruby/object:Gem::Version
75
- version: '3.12'
185
+ version: '0.1'
76
186
  type: :development
77
187
  prerelease: false
78
188
  version_requirements: !ruby/object:Gem::Requirement
79
189
  requirements:
80
190
  - - "~>"
81
191
  - !ruby/object:Gem::Version
82
- version: '3.12'
192
+ version: '0.1'
83
193
  - !ruby/object:Gem::Dependency
84
- name: yard
194
+ name: betterlint
85
195
  requirement: !ruby/object:Gem::Requirement
86
196
  requirements:
87
197
  - - "~>"
88
198
  - !ruby/object:Gem::Version
89
- version: '0.9'
199
+ version: '1.4'
90
200
  type: :development
91
201
  prerelease: false
92
202
  version_requirements: !ruby/object:Gem::Requirement
93
203
  requirements:
94
204
  - - "~>"
95
205
  - !ruby/object:Gem::Version
96
- version: '0.9'
97
- description: Links dependency on minimum Ruby version to maximum RuboCop version
206
+ version: '1.4'
207
+ description: Configure RuboCop + a bevy of friends to gradually lint Ruby 2.6 code
98
208
  email:
99
209
  - peter.boling@gmail.com
100
210
  executables: []
@@ -108,7 +218,20 @@ files:
108
218
  - README.md
109
219
  - SECURITY.md
110
220
  - lib/rubocop/ruby2_6.rb
221
+ - lib/rubocop/ruby2_6/railtie.rb
222
+ - lib/rubocop/ruby2_6/rakelib/rubocop_gradual.rake
223
+ - lib/rubocop/ruby2_6/tasks.rake
111
224
  - lib/rubocop/ruby2_6/version.rb
225
+ - rubocop-lts/rails.yml
226
+ - rubocop-lts/rails_rspec.yml
227
+ - rubocop-lts/rspec.yml
228
+ - rubocop-lts/ruby.yml
229
+ - rubocop-lts/ruby_rspec.yml
230
+ - rubocop-lts/rubygem.yml
231
+ - rubocop-lts/rubygem_rspec.yml
232
+ - rubocop-lts/strict/rails.yml
233
+ - rubocop-lts/strict/rspec.yml
234
+ - rubocop-lts/strict/ruby.yml
112
235
  - rubocop.yml
113
236
  - sig/rubocop/ruby2_6.rbs
114
237
  homepage: https://github.com/rubocop-lts/rubocop-ruby2_6
@@ -116,10 +239,10 @@ licenses:
116
239
  - MIT
117
240
  metadata:
118
241
  homepage_uri: https://github.com/rubocop-lts/rubocop-ruby2_6
119
- source_code_uri: https://github.com/rubocop-lts/rubocop-ruby2_6/tree/v1.1.0
120
- changelog_uri: https://github.com/rubocop-lts/rubocop-ruby2_6/blob/v1.1.0/CHANGELOG.md
242
+ source_code_uri: https://github.com/rubocop-lts/rubocop-ruby2_6/tree/v2.0.2
243
+ changelog_uri: https://github.com/rubocop-lts/rubocop-ruby2_6/blob/v2.0.2/CHANGELOG.md
121
244
  bug_tracker_uri: https://github.com/rubocop-lts/rubocop-ruby2_6/issues
122
- documentation_uri: https://www.rubydoc.info/gems/rubocop-ruby2_6/1.1.0
245
+ documentation_uri: https://www.rubydoc.info/gems/rubocop-ruby2_6/2.0.2
123
246
  funding_uri: https://liberapay.com/pboling
124
247
  wiki_uri: https://github.com/rubocop-lts/rubocop-ruby2_6/wiki
125
248
  rubygems_mfa_required: 'true'
@@ -131,15 +254,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
131
254
  requirements:
132
255
  - - ">="
133
256
  - !ruby/object:Gem::Version
134
- version: 2.6.0
257
+ version: '2.7'
135
258
  required_rubygems_version: !ruby/object:Gem::Requirement
136
259
  requirements:
137
260
  - - ">="
138
261
  - !ruby/object:Gem::Version
139
262
  version: '0'
140
263
  requirements: []
141
- rubygems_version: 3.4.4
264
+ rubygems_version: 3.4.13
142
265
  signing_key:
143
266
  specification_version: 4
144
- summary: Semantically Versioned RuboCop Dependency
267
+ summary: 'Rules for Rubies: Rubocop + Standard + Betterlint + Shopify + Gradual'
145
268
  test_files: []
metadata.gz.sig CHANGED
Binary file