rubocop-lts 3.0.3 → 4.0.0

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: b9fbb35d6382531c4f9bb978cfe819ecfea637cd9ff2a494146fcb3ae4280dfa
4
- data.tar.gz: ce60af263dd80b58ff1b83914801b526358948dcd25ba9a16bdf1bc59539d791
3
+ metadata.gz: 16f9823b09ac500cb5c63b11b72dafc0a8720054ce40262de59afa996a11d0e5
4
+ data.tar.gz: 2607523c8b3833c531f7c1d1939d081bae8f7495e0ce872b4d9c8e1908275dcd
5
5
  SHA512:
6
- metadata.gz: 71a814c28d94e3c42e9dd73c659b2d65678a78645ae0e02832f6b3f2bd22955879d97ef9bd4eafdb56645bacc3a8688d1013d5621967f5d0fdf7407960a5b075
7
- data.tar.gz: db3eb121a9477e5e62fd72767445b246be4b4c161f87f2432a7ea12e27a800f1a7e17bcd34bfdb1357681ab1b9903dfe8e299f5bae6572a6212c3a264ffb1e4a
6
+ metadata.gz: 281d8ba384c6db26bd27a01e76af4b6566d7dbc6b627f42644a7a5ab61a9947da49b6159db4536b06a3b5d6afc2d8a79fffe1fa3d2e7391207178c02ae0f9af0
7
+ data.tar.gz: 88f43bc694336b78704265964d7cbf000121b02eab8cffe0c00a56e6fd1be6e225dabc4916e3eb517cd069c4c1f7b293fed0783e76f04ebf88b12dd67a099e4e
data/CHANGELOG.md CHANGED
@@ -13,41 +13,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
13
13
 
14
14
  ### Removed
15
15
 
16
- ## [3.0.3] - 2022-06-08
16
+ ## [4.0.0] - 2022-05-22
17
17
  ### Added
18
- - Improve, and dry up documentation
19
-
20
- ## [3.0.2] - 2022-05-23
21
- ### Fixed
22
- - Make rubocop config files load ruby specific config from relevant rubocop-ruby*_* gem
23
-
24
- ## [3.0.1] - 2022-05-23
25
- ### Fixed
26
- - Ship rubocop config files in gem
27
- - rubocop-lts.yml
18
+ - Initial even release supporting Ruby >= 2.0
28
19
 
29
20
  ## [3.0.0] - 2022-05-22
30
21
  ### Added
31
22
  - Initial odd release supporting Ruby ~> 2.0
32
23
 
33
- ## [2.0.5] - 2022-06-08
34
- ### Added
35
- - Improve, and dry up documentation
36
-
37
- ## [2.0.4] - 2022-06-08
38
- ### Fixed
39
- - Allow install up to Ruby < 4, which allows running against current Ruby HEAD @ 3.2-dev
40
-
41
- ## [2.0.3] - 2022-05-23
42
- ### Fixed
43
- - Make rubocop config files load ruby specific config from relevant rubocop-ruby*_* gem
44
-
45
- ## [2.0.2] - 2022-05-23
46
- ### Fixed
47
- - Ship rubocop config files in gem
48
- - rubocop-lts.yml
49
- - rubocop-lts1_8.yml
50
-
51
24
  ## [2.0.1] - 2022-05-22
52
25
  ### Fixed
53
26
  - Documentation typos & gemspec URLs
@@ -56,21 +29,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
56
29
  ### Added
57
30
  - Initial even release supporting Ruby >= 1.9
58
31
 
59
- ## [1.0.4] - 2022-06-08
60
- ### Added
61
- - Security Policy @ SECURITY.md
62
- - Improve, and dry up documentation
63
-
64
- ## [1.0.3] - 2022-05-23
65
- ### Fixed
66
- - Make rubocop config files load ruby specific config from relevant rubocop-ruby*_* gem
67
-
68
- ## [1.0.2] - 2022-05-23
69
- ### Fixed
70
- - Ship rubocop config files in gem
71
- - rubocop-lts.yml
72
- - rubocop-lts1_8.yml
73
-
74
32
  ## [1.0.1] - 2022-05-22
75
33
  ### Fixed
76
34
  - Documentation typos & gemspec URLs
@@ -79,19 +37,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
79
37
  ### Added
80
38
  - Initial odd release supporting Ruby ~> 1.9
81
39
 
82
- [Unreleased]: https://github.com/rubocop-lts/rubocop-lts/compare/v3.0.3...HEAD
83
- [3.0.3]: https://github.com/rubocop-lts/rubocop-lts/compare/v3.0.2...v3.0.3
84
- [3.0.2]: https://github.com/rubocop-lts/rubocop-lts/compare/v3.0.1...v3.0.2
85
- [3.0.1]: https://github.com/rubocop-lts/rubocop-lts/compare/v3.0.0...v3.0.1
86
- [3.0.0]: https://github.com/rubocop-lts/rubocop-lts/compare/v2.0.5...v3.0.0
87
- [2.0.5]: https://github.com/rubocop-lts/rubocop-lts/compare/v2.0.4...v2.0.5
88
- [2.0.4]: https://github.com/rubocop-lts/rubocop-lts/compare/v2.0.3...v2.0.4
89
- [2.0.3]: https://github.com/rubocop-lts/rubocop-lts/compare/v2.0.2...v2.0.3
90
- [2.0.2]: https://github.com/rubocop-lts/rubocop-lts/compare/v2.0.1...v2.0.2
40
+ [Unreleased]: https://github.com/rubocop-lts/rubocop-lts/compare/v3.0.0...HEAD
41
+ [3.0.0]: https://github.com/rubocop-lts/rubocop-lts/compare/v2.0.1...v3.0.0
91
42
  [2.0.1]: https://github.com/rubocop-lts/rubocop-lts/compare/v2.0.0...v2.0.1
92
- [2.0.0]: https://github.com/rubocop-lts/rubocop-lts/compare/v1.0.4...v2.0.0
93
- [1.0.4]: https://github.com/rubocop-lts/rubocop-lts/compare/v1.0.3...v1.0.4
94
- [1.0.3]: https://github.com/rubocop-lts/rubocop-lts/compare/v1.0.2...v1.0.3
95
- [1.0.2]: https://github.com/rubocop-lts/rubocop-lts/compare/v1.0.1...v1.0.2
43
+ [2.0.0]: https://github.com/rubocop-lts/rubocop-lts/compare/v1.0.1...v2.0.0
96
44
  [1.0.1]: https://github.com/rubocop-lts/rubocop-lts/compare/v1.0.0...v1.0.1
97
45
  [1.0.0]: https://github.com/rubocop-lts/rubocop-lts/compare/f0fcf8e7dbb4d884a01c7191e7f26ef8bf3b22af...v1.0.0
data/README.md CHANGED
@@ -16,38 +16,149 @@
16
16
  </a>
17
17
  </p>
18
18
 
19
- # RuboCop LTS
20
-
21
- ## PROJECT DOCUMENTATION
22
-
23
- |🌱 [Why Build This?][Why-Build-This]
24
- |🌱 [Convention > Configuration][Convention-Over-Configuration]
25
- --⊕🌱 [Even Releases][Even-Major-Release]
26
- --⊕🌱 [Odd Releases][Odd-Major-Release]
27
- |🌱 [How to Upgrade Ruby (1.8 to 3.2)!][How-To-Upgrade-Ruby]
28
- |👩‍💻 [Org Health](https://github.com/rubocop-lts/.github/blob/main/profile/README.md#👩‍💻-project-health])
29
- --⊕👩‍💻 [Project Health](#👩‍💻-project-health)
30
- |🌳 [This Branch](#🌳-this-branch)
31
- |✨ [Installation](#✨-installation)
32
- |🔧 [Usage](https://github.com/rubocop-lts/.github/blob/main/profile/README.md#🔧-usage)
33
- |🏗️ [Development](https://github.com/rubocop-lts/.github/blob/main/profile/README.md#🏗️-development)
34
- --⊕⚡️ [Contributing](https://github.com/rubocop-lts/.github/blob/main/profile/README.md#⚡️-contributing)
35
- --⊕🌈 [Contributors](https://github.com/rubocop-lts/.github/blob/main/profile/README.md#🌈-contributors)
36
- |📄 [License](https://github.com/rubocop-lts/.github/blob/main/profile/README.md#📄-license)
37
- |⊕© [Copyright](https://github.com/rubocop-lts/.github/blob/main/profile/README.md#©-copyright)
38
- |🤝 [Code of Conduct](https://github.com/rubocop-lts/.github/blob/main/profile/README.md#🤝-code-of-conduct)
39
- |📌 [Versioning](https://github.com/rubocop-lts/.github/blob/main/profile/README.md#📌-versioning)
40
-
41
- [Why-Build-This]: https://github.com/rubocop-lts/.github/blob/main/profile/WHY_BUILD_THIS.md
42
- [Convention-Over-Configuration]: https://github.com/rubocop-lts/.github/blob/main/profile/CONV_OVER_CONF.md
43
- [Even-Major-Release]: https://github.com/rubocop-lts/.github/blob/main/profile/CONV_OVER_CONF.md#even-major-release
44
- [Odd-Major-Release]: https://github.com/rubocop-lts/.github/blob/main/profile/CONV_OVER_CONF.md#odd-major-release
45
- [How-To-Upgrade-Ruby]: https://github.com/rubocop-lts/.github/blob/main/profile/HOW_TO_UPGRADE_RUBY.md
46
-
47
- ## 🌳 This Branch
19
+ # Rubocop LTS
20
+
21
+ ## 🙋‍♀️ How often has RuboCop broken your build?
22
+
23
+ This is both good (literally its job) _and_ bad (when it's for the wrong reasons).
24
+
25
+ It's supposed to break the build when it finds violations.
26
+ It should not break the build due to incompatibility with your environment. RuboCop
27
+ doesn't [follow SemVer](https://dev.to/pboling/rubocop-ruby-matrix-gems-nj), and occasionally it will unexpectedly break things.
28
+
29
+ ## 🗿 Stable
30
+
31
+ All releases are stable releases. The major version you need depends on the supported version(s) of Ruby for your project.
32
+
33
+ Projects that support a single version of Ruby (like many closed-source applications) will use the [Odd releases][even-release].
34
+
35
+ Projects that support multiple versions of Ruby simultaneously (like many open-source applications and libraries) will use the [Even releases][even-release].
48
36
 
49
37
  <!-- FIND VERSION -->
50
- **This README is for the odd release of `rubocop-lts` supporting Ruby ~> 2.0.0.**
38
+ **This README is for the even release of `rubocop-lts` supporting Ruby >= 2.0.0.**
39
+
40
+ [odd-release]: https://github.com/rubocop-lts/rubocop-lts#odd-major-release
41
+ [even-release]: https://github.com/rubocop-lts/rubocop-lts#even-major-release
42
+
43
+ ## Version Conventions
44
+
45
+ ### Odd Major Release
46
+
47
+ Versions like:
48
+ ```ruby
49
+ "1.0.0"
50
+ "3.0.0"
51
+ "5.0.0"
52
+ # ... etc
53
+ ```
54
+ Locked to a single minor version of Ruby, e.g. version 15.0 has a `required_ruby_version` of `['>= 2.6.0', '< 2.7']`, which will install only on `2.6.x` versions of Ruby.
55
+
56
+ #### Implementation
57
+
58
+ Intended for applications and libraries that only lint against a single Ruby version.
59
+
60
+ Odd versions should be attached to a project's trunk (e.g. the main branch), for long-term stability (ahem, _lts_, anyone?) of the style rules.
61
+
62
+ | Your Ruby | Your Gemfile | Your Gemfile.lock | Your .rubocop.yml |
63
+ |-----------------------------------|--------------------------------|-------------------|------------------------------------------------|
64
+ | `1.9.x` (`['>= 1.9.0', '< 2']`) | `gem "rubocop-lts", "~> 1.0"` | `rubocop-ruby1_9` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
65
+ | `2.0.x` (`['>= 2.0.0', '< 2.1']`) | `gem "rubocop-lts", "~> 3.0"` | `rubocop-ruby2_0` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
66
+ | `2.1.x` (`['>= 2.1.0', '< 2.2']`) | `gem "rubocop-lts", "~> 5.0"` | `rubocop-ruby2_1` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
67
+ | `2.2.x` (`['>= 2.2.0', '< 2.3']`) | `gem "rubocop-lts", "~> 7.0"` | `rubocop-ruby2_2` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
68
+ | `2.3.x` (`['>= 2.3.0', '< 2.4']`) | `gem "rubocop-lts", "~> 9.0"` | `rubocop-ruby2_3` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
69
+ | `2.4.x` (`['>= 2.4.0', '< 2.5']`) | `gem "rubocop-lts", "~> 11.0"` | `rubocop-ruby2_4` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
70
+ | `2.5.x` (`['>= 2.5.0', '< 2.6']`) | `gem "rubocop-lts", "~> 13.0"` | `rubocop-ruby2_5` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
71
+ | `2.6.x` (`['>= 2.6.0', '< 2.7']`) | `gem "rubocop-lts", "~> 15.0"` | `rubocop-ruby2_6` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
72
+ | `2.7.x` (`['>= 2.7.0', '< 3.0']`) | `gem "rubocop-lts", "~> 17.0"` | `rubocop-ruby2_7` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
73
+ | `3.0.x` (`['>= 3.0.0', '< 3.1']`) | `gem "rubocop-lts", "~> 19.0"` | `rubocop-ruby3_0` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
74
+ | `3.1.x` (`['>= 3.1.0', '< 3.2']`) | `gem "rubocop-lts", "~> 21.0"` | `rubocop-ruby3_1` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
75
+ | `3.2.x` / ruby-head | `gem "rubocop-lts", "~> 23.0"` | `rubocop-ruby3_2` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
76
+
77
+ ### Even Major Release
78
+
79
+ Versions like:
80
+ ```ruby
81
+ "2.0.0"
82
+ "4.0.0"
83
+ "6.0.0"
84
+ # ... etc
85
+ ```
86
+ Locked to the forward range of Rubies on which the gem can be installed (though rubocop may not execute on all),
87
+ e.g. version 16.0 has a `required_ruby_version` of `['>= 2.6.0', '< 3.2']` will install on any released version
88
+ of ruby from `2.6` on.
89
+
90
+ #### Implementation
91
+
92
+ Intended for applications and libraries that lint against a range of Ruby versions.
93
+
94
+ Even versions will help projects upgrade to newer Rubies while keeping the same underlying version of Rubocop version, so change can be introduced one step at a time.
95
+
96
+ | Minimum Ruby | Your Gemfile | Your Gemfile.lock | Your .rubocop.yml |
97
+ |-----------------------------------|--------------------------------|-------------------|------------------------------------------------|
98
+ | `1.9.x` (`['>= 1.9.0', '< 3.2']`) | `gem "rubocop-lts", "~> 2.0"` | `rubocop-ruby1_9` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
99
+ | `2.0.x` (`['>= 2.0.0', '< 3.2']`) | `gem "rubocop-lts", "~> 4.0"` | `rubocop-ruby2_0` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
100
+ | `2.1.x` (`['>= 2.1.0', '< 3.2']`) | `gem "rubocop-lts", "~> 6.0"` | `rubocop-ruby2_1` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
101
+ | `2.2.x` (`['>= 2.2.0', '< 3.2']`) | `gem "rubocop-lts", "~> 8.0"` | `rubocop-ruby2_2` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
102
+ | `2.3.x` (`['>= 2.3.0', '< 3.2']`) | `gem "rubocop-lts", "~> 10.0"` | `rubocop-ruby2_3` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
103
+ | `2.4.x` (`['>= 2.4.0', '< 3.2']`) | `gem "rubocop-lts", "~> 12.0"` | `rubocop-ruby2_4` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
104
+ | `2.5.x` (`['>= 2.5.0', '< 3.2']`) | `gem "rubocop-lts", "~> 14.0"` | `rubocop-ruby2_5` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
105
+ | `2.6.x` (`['>= 2.6.0', '< 3.2']`) | `gem "rubocop-lts", "~> 16.0"` | `rubocop-ruby2_6` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
106
+ | `2.7.x` (`['>= 2.7.0', '< 3.2']`) | `gem "rubocop-lts", "~> 18.0"` | `rubocop-ruby2_7` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
107
+ | `3.0.x` (`['>= 3.0.0', '< 3.2']`) | `gem "rubocop-lts", "~> 20.0"` | `rubocop-ruby3_0` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
108
+ | `3.1.x` (`['>= 3.1.0', '< 3.2']`) | `gem "rubocop-lts", "~> 22.0"` | `rubocop-ruby3_1` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
109
+ | `3.2.x` / ruby-head | `gem "rubocop-lts", "~> 24.0"` | `rubocop-ruby3_2` | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
110
+
111
+ ### All together now!
112
+
113
+ Upgrading a single step from odd to even will allow upgrading Ruby.
114
+
115
+ Upgrading a single step from even to odd will keep the same version of Ruby, and instead upgrade to the next RuboCop milestone.
116
+
117
+ Each major version will have a tracking branch named accordingly, [for development](https://github.com/rubocop-lts/rubocop-lts#git-branch-names).
118
+
119
+ ### 🪢 How To Untie Gorgon's Knot
120
+
121
+ > NOTE: The ruby specific versions, e.g. `rubocop-ruby2_7`, can be used if you won't be upgrading ruby. Keep scrolling down for links to each of them.
122
+
123
+ How to upgrade a project from yesterday, to today.
124
+
125
+ 1. Have good code coverage.
126
+ 2. Upgrade one step at a time.
127
+ 3. Re-run `bundle exec rubocop -a` in between each step.
128
+ 4. Re-run `bundle exec rubocop --auto-gen-config` in between each step.
129
+ 5. Commit and push to CI in between each step.
130
+
131
+ | Your Ruby | Your Gemfile | required_ruby_version | Your Gemfile.lock | Your .rubocop.yml |
132
+ |---------------|--------------------------------------|-------------------------|------------------------------|------------------------------------------------|
133
+ | `1.9.x` | `gem "rubocop-lts", "~> 1.0"` | `['>= 1.9.0', '< 2']` | [`rubocop-ruby1_9`][⛳️19-gh] | `inherit_gem:\n rubocop-lts: rubocop-lts.yml` |
134
+ | ⬆️ to `2.0.x` | ⬆️ to `gem "rubocop-lts", "~> 2.0"` | `['>= 1.9.0', '< 3.2']` | no change | no change |
135
+ | no change | ⬆️ to `gem "rubocop-lts", "~> 3.0"` | `['>= 2.0.0', '< 2.1']` | [`rubocop-ruby2_0`][⛳️20-gh] | no change |
136
+ | ⬆️ to `2.1.x` | ⬆️ to `gem "rubocop-lts", "~> 4.0"` | `['>= 2.0.0', '< 3.2']` | no change | no change |
137
+ | no change | ⬆️ to `gem "rubocop-lts", "~> 5.0"` | `['>= 2.1.0', '< 2.2']` | [`rubocop-ruby2_1`][⛳️21-gh] | no change |
138
+ | ⬆️ to `2.2.x` | ⬆️ to `gem "rubocop-lts", "~> 6.0"` | `['>= 2.1.0', '< 3.2']` | no change | no change |
139
+ | no change | ⬆️ to `gem "rubocop-lts", "~> 7.0"` | `['>= 2.2.0', '< 2.3']` | [`rubocop-ruby2_2`][⛳️22-gh] | no change |
140
+ | ⬆️ to `2.3.x` | ⬆️ to `gem "rubocop-lts", "~> 8.0"` | `['>= 2.2.0', '< 3.2']` | no change | no change |
141
+ | no change | ⬆️ to `gem "rubocop-lts", "~> 9.0"` | `['>= 2.3.0', '< 2.4']` | [`rubocop-ruby2_3`][⛳️23-gh] | no change |
142
+ | ⬆️ to `2.4.x` | ⬆️ to `gem "rubocop-lts", "~> 10.0"` | `['>= 2.3.0', '< 3.2']` | no change | no change |
143
+ | no change | ⬆️ to `gem "rubocop-lts", "~> 11.0"` | `['>= 2.4.0', '< 2.5']` | [`rubocop-ruby2_4`][⛳️24-gh] | no change |
144
+ | ⬆️ to `2.5.x` | ⬆️ to `gem "rubocop-lts", "~> 12.0"` | `['>= 2.4.0', '< 3.2']` | no change | no change |
145
+ | no change | ⬆️ to `gem "rubocop-lts", "~> 13.0"` | `['>= 2.5.0', '< 2.6']` | [`rubocop-ruby2_5`][⛳️25-gh] | no change |
146
+ | ⬆️ to `2.6.x` | ⬆️ to `gem "rubocop-lts", "~> 14.0"` | `['>= 2.5.0', '< 3.2']` | no change | no change |
147
+ | no change | ⬆️ to `gem "rubocop-lts", "~> 15.0"` | `['>= 2.6.0', '< 2.7']` | [`rubocop-ruby2_6`][⛳️26-gh] | no change |
148
+ | ⬆️ to `2.7.x` | ⬆️ to `gem "rubocop-lts", "~> 16.0"` | `['>= 2.6.0', '< 3.2']` | no change | no change |
149
+ | no change | ⬆️ to `gem "rubocop-lts", "~> 17.0"` | `['>= 2.7.0', '< 3.0']` | [`rubocop-ruby2_7`][⛳️27-gh] | no change |
150
+ | ⬆️ to `3.0.x` | ⬆️ to `gem "rubocop-lts", "~> 18.0"` | `['>= 2.7.0', '< 3.2']` | no change | no change |
151
+ | no change | ⬆️ to `gem "rubocop-lts", "~> 19.0"` | `['>= 3.0.0', '< 3.1']` | [`rubocop-ruby3_0`][⛳️30-gh] | no change |
152
+ | ⬆️ to `3.1.x` | ⬆️ to `gem "rubocop-lts", "~> 20.0"` | `['>= 3.0.0', '< 3.2']` | no change | no change |
153
+ | no change | ⬆️ to `gem "rubocop-lts", "~> 21.0"` | `['>= 3.1.0', '< 3.2']` | [`rubocop-ruby3_1`][⛳️31-gh] | no change |
154
+ | ⬆️ to `3.2.x` | ⬆️ to `gem "rubocop-lts", "~> 22.0"` | `['>= 3.1.0', '< 3.2']` | no change | no change |
155
+ | no change | ⬆️ to `gem "rubocop-lts", "~> 23.0"` | `['>= 3.2.0', '< 3.3']` | [`rubocop-ruby3_2`][⛳️32-gh] | no change |
156
+ | ⬆️ to `3.3.x` | ⬆️ to `gem "rubocop-lts", "~> 24.0"` | `['>= 3.2.0', '< 3.3']` | no change | no change |
157
+
158
+ > NOTE: `required_ruby_version` means the gem will install on a version of Ruby within the range.
159
+ > Versions of this gem intended for ancient Rubies may not execute on more modern Rubies, _despite installing_.
160
+ > As such you might consider limiting linting to only a single version of Ruby, the oldest one supported.
161
+ > Speaking of old rubies... 👇
51
162
 
52
163
  ### 📼 Supporting Ruby 1.8
53
164
 
@@ -91,13 +202,137 @@ Add this line to your application's Gemfile:
91
202
 
92
203
  <!-- FIND VERSION -->
93
204
  ```ruby
94
- gem 'rubocop-lts', '~> 3.0', require: false
205
+ gem 'rubocop-lts', '~> 4.0', require: false
95
206
  ```
96
207
 
97
208
  And then execute:
98
209
 
99
210
  $ bundle
100
211
 
212
+ ## 🔧 Usage
213
+
214
+ The following is optional. We'll discuss why you might want to do this after you see what it does.
215
+
216
+ Add to the top of your project's `.rubocop.yml` configuration file:
217
+
218
+ ```yaml
219
+ inherit_gem:
220
+ - rubocop-lts.yml
221
+ ```
222
+
223
+ ## Development
224
+
225
+ After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
226
+
227
+ 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).
228
+
229
+ ### Git Branch Names
230
+
231
+ #### Naming Scheme
232
+
233
+ ```ruby
234
+ "r{{ ruby major }}_{{ ruby minor }}-{{ parity }}-v{{ gem-version }}"
235
+ ```
236
+
237
+ ##### Parity
238
+
239
+ Even versions use the token `even` in the branch name.
240
+ Odd versions use the token `odd` in the branch name.
241
+
242
+ #### Version - Branch Matrix
243
+
244
+ | Ruby Version | Parity | Gem Version | Branch Name | Purpose |
245
+ |-----------------|--------|-------------|-----------------|-----------------------------------|
246
+ | 1.9 | odd | 1.x | `r1_9-odd-v1` | LTS, trunk, single-ruby-linting |
247
+ | 1.9 | even | 2.x | `r1_9-even-v2` | Upgrade, feat, multi-ruby-linting |
248
+ | 2.0 | odd | 3.x | `r2_0-odd-v3` | LTS, trunk, single-ruby-linting |
249
+ | 2.0 | even | 4.x | `r2_0-even-v4` | Upgrade, feat, multi-ruby-linting |
250
+ | 2.1 | odd | 5.x | `r2_1-odd-v5` | LTS, trunk, single-ruby-linting |
251
+ | 2.1 | even | 6.x | `r2_1-even-v6` | Upgrade, feat, multi-ruby-linting |
252
+ | 2.2 | odd | 7.x | `r2_2-odd-v7` | LTS, trunk, single-ruby-linting |
253
+ | 2.2 | even | 8.x | `r2_2-even-v8` | Upgrade, feat, multi-ruby-linting |
254
+ | 2.3 | odd | 9.x | `r2_3-odd-v9` | LTS, trunk, single-ruby-linting |
255
+ | 2.3 | even | 10.x | `r2_3-even-v10` | Upgrade, feat, multi-ruby-linting |
256
+ | 2.4 | odd | 11.x | `r2_4-odd-v11` | LTS, trunk, single-ruby-linting |
257
+ | 2.4 | even | 12.x | `r2_4-even-v12` | Upgrade, feat, multi-ruby-linting |
258
+ | 2.5 | odd | 13.x | `r2_5-odd-v13` | LTS, trunk, single-ruby-linting |
259
+ | 2.5 | even | 14.x | `r2_5-even-v14` | Upgrade, feat, multi-ruby-linting |
260
+ | 2.6 | odd | 15.x | `r2_6-odd-v15` | LTS, trunk, single-ruby-linting |
261
+ | 2.6 | even | 16.x | `r2_6-even-v16` | Upgrade, feat, multi-ruby-linting |
262
+ | 2.7 | odd | 17.x | `r2_7-odd-v17` | LTS, trunk, single-ruby-linting |
263
+ | 2.7 | even | 18.x | `r2_7-even-v18` | Upgrade, feat, multi-ruby-linting |
264
+ | 3.0 | odd | 19.x | `r3_0-odd-v19` | LTS, trunk, single-ruby-linting |
265
+ | 3.0 | even | 20.x | `r3_0-even-v20` | Upgrade, feat, multi-ruby-linting |
266
+ | 3.1 | odd | 21.x | `r3_1-odd-v21` | LTS, trunk, single-ruby-linting |
267
+ | 3.1 | even | 22.x | `r3_1-even-v22` | Upgrade, feat, multi-ruby-linting |
268
+ | 3.2 / ruby-head | odd | 23.x | `r3_2-odd-v23` | LTS, trunk, single-ruby-linting |
269
+ | 3.2 / ruby-head | even | 24.x | `r3_2-even-v24` | Upgrade, feat, multi-ruby-linting |
270
+
271
+ > NOTE: For more on how Ruby 1.8 support works, see [above][lts1_8]
272
+
273
+ [lts1_8]: https://github.com/rubocop-lts/rubocop-lts#supporting-ruby-18
274
+
275
+ ## ⚡️ Contributing
276
+
277
+ See [CONTRIBUTING.md][contributing]
278
+
279
+ ## 🌈 Contributors
280
+
281
+ [![Contributors](https://contrib.rocks/image?repo=rubocop-lts/rubocop-lts)]("https://github.com/rubocop-lts/rubocop-lts/graphs/contributors")
282
+
283
+ Made with [contributors-img](https://contrib.rocks).
284
+
285
+ ## 📄 License
286
+
287
+ The gem is available as open source under the terms of
288
+ the [MIT License][license] [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)][license-ref].
289
+ See [LICENSE][license] for the official [Copyright Notice][copyright-notice-explainer].
290
+
291
+ <details>
292
+ <summary>Project Logos (rubocop-lts)</summary>
293
+
294
+ See [docs/images/logo/README.txt][project-logos]
295
+ </details>
296
+
297
+ <details>
298
+ <summary>Organization Logo (rubocop-semver)</summary>
299
+
300
+ Author: [Yusuf Evli][org-logo-author]
301
+ Source: [Unsplash][org-logo-source]
302
+ License: [Unsplash License][org-logo-license]
303
+ </details>
304
+
305
+ [project-logos]: https://github.com/rubocop-lts/rubocop-lts/blob/main/docs/images/logo/README.txt
306
+ [org-logo-author]: https://unsplash.com/@yusufevli
307
+ [org-logo-source]: https://unsplash.com/photos/yaSLNLtKRIU
308
+ [org-logo-license]: https://unsplash.com/license
309
+
310
+ ### © Copyright
311
+
312
+ * Copyright (c) 2022 [Peter H. Boling][peterboling] of [Rails Bling][railsbling]
313
+
314
+ ## 🤝 Code of Conduct
315
+
316
+ Everyone interacting in Rubocop LTS codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/rubocop-lts/rubocop-lts/blob/main/CODE_OF_CONDUCT.md).
317
+
318
+ ## 📌 Versioning
319
+
320
+ This library aims to adhere to [Semantic Versioning 2.0.0][semver]. Violations of this scheme should be reported as
321
+ bugs. Specifically, if a minor or patch version is released that breaks backward compatibility, a new version should be
322
+ immediately released that restores compatibility. Breaking changes to the public API will only be introduced with new
323
+ major versions.
324
+
325
+ As a result of this policy, you can (and should) specify a dependency on this gem using
326
+ the [Pessimistic Version Constraint][pvc] with two digits of precision.
327
+
328
+ For example:
329
+
330
+ <!-- FIND VERSION -->
331
+ ```ruby
332
+ spec.add_dependency "rubocop-lts", "~> 4.0"
333
+ ```
334
+
335
+
101
336
  <!-- columnar badge #s for Project Health table:
102
337
  ⛳️
103
338
  🖇
data/SECURITY.md CHANGED
@@ -15,17 +15,6 @@
15
15
  | 9.x | :white_check_mark: |
16
16
  | 10.x | :white_check_mark: |
17
17
  | 11.x | :white_check_mark: |
18
- | 12.x | :white_check_mark: |
19
- | 13.x | :white_check_mark: |
20
- | 14.x | :white_check_mark: |
21
- | 15.x | :white_check_mark: |
22
- | 16.x | :white_check_mark: |
23
- | 17.x | :white_check_mark: |
24
- | 18.x | :white_check_mark: |
25
- | 19.x | :white_check_mark: |
26
- | 20.x | :white_check_mark: |
27
- | 21.x | :white_check_mark: |
28
- | 22.x | :white_check_mark: |
29
18
 
30
19
  ## Reporting a Vulnerability
31
20
 
@@ -1,7 +1,8 @@
1
+ # encoding: utf-8
1
2
  # frozen_string_literal: true
2
3
 
3
4
  module Rubocop
4
5
  module Lts
5
- VERSION = "3.0.3".freeze
6
+ VERSION = "4.0.0".freeze
6
7
  end
7
8
  end
data/lib/rubocop/lts.rb CHANGED
@@ -1,3 +1,4 @@
1
+ # encoding: utf-8
1
2
  # frozen_string_literal: true
2
3
 
3
4
  require_relative "lts/version"
@@ -0,0 +1,14 @@
1
+ # encoding: utf-8
2
+ # frozen_string_literal: true
3
+
4
+ RSpec.configure do |config|
5
+ # Enable flags like --only-failures and --next-failure
6
+ config.example_status_persistence_file_path = ".rspec_status"
7
+
8
+ # Disable RSpec exposing methods globally on `Module` and `main`
9
+ config.disable_monkey_patching!
10
+
11
+ config.expect_with :rspec do |c|
12
+ c.syntax = :expect
13
+ end
14
+ end
@@ -0,0 +1,8 @@
1
+ # encoding: utf-8
2
+ # frozen_string_literal: true
3
+
4
+ RSpec.describe Rubocop::Lts do
5
+ it "has a version number" do
6
+ expect(Rubocop::Lts::VERSION).not_to be nil
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ # encoding: utf-8
2
+ # frozen_string_literal: true
3
+
4
+ # This gem
5
+ require "rubocop/ruby2_0"
6
+
7
+ # RSpec Configs
8
+ require "config/rspec/rspec_core"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubocop-lts
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.3
4
+ version: 4.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Boling
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-06-08 00:00:00.000000000 Z
11
+ date: 2022-05-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubocop-ruby2_0
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.0.5
19
+ version: 1.0.4
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 1.0.5
26
+ version: 1.0.4
27
27
  description: Rubocop LTS - Chaos Reduction In a Bottle
28
28
  email:
29
29
  - peter.boling@gmail.com
@@ -39,20 +39,22 @@ files:
39
39
  - SECURITY.md
40
40
  - lib/rubocop/lts.rb
41
41
  - lib/rubocop/lts/version.rb
42
- - rubocop-lts.yml
43
42
  - sig/rubocop/lts.rbs
43
+ - spec/config/rspec/rspec_core.rb
44
+ - spec/rubocop/lts_spec.rb
45
+ - spec/spec_helper.rb
44
46
  homepage: https://github.com/rubocop-lts/rubocop-lts
45
47
  licenses:
46
48
  - MIT
47
49
  metadata:
48
50
  homepage_uri: https://github.com/rubocop-lts/rubocop-lts
49
- source_code_uri: https://github.com/rubocop-lts/rubocop-lts/tree/v3.0.3
50
- changelog_uri: https://github.com/rubocop-lts/rubocop-lts/blob/v3.0.3/CHANGELOG.md
51
+ source_code_uri: https://github.com/rubocop-lts/rubocop-lts/tree/v4.0.0
52
+ changelog_uri: https://github.com/rubocop-lts/rubocop-lts/blob/v4.0.0/CHANGELOG.md
51
53
  bug_tracker_uri: https://github.com/rubocop-lts/rubocop-lts/issues
52
- documentation_uri: https://www.rubydoc.info/gems/rubocop-lts/3.0.3
54
+ documentation_uri: https://www.rubydoc.info/gems/rubocop-lts/4.0.0
53
55
  wiki_uri: https://github.com/rubocop-lts/rubocop-lts/wiki
54
56
  rubygems_mfa_required: 'true'
55
- post_install_message:
57
+ post_install_message:
56
58
  rdoc_options: []
57
59
  require_paths:
58
60
  - lib
@@ -63,15 +65,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
63
65
  version: 2.0.0
64
66
  - - "<"
65
67
  - !ruby/object:Gem::Version
66
- version: '2.1'
68
+ version: '3.2'
67
69
  required_rubygems_version: !ruby/object:Gem::Requirement
68
70
  requirements:
69
71
  - - ">="
70
72
  - !ruby/object:Gem::Version
71
73
  version: '0'
72
74
  requirements: []
73
- rubygems_version: 3.3.15
74
- signing_key:
75
+ rubygems_version: 3.3.14
76
+ signing_key:
75
77
  specification_version: 4
76
78
  summary: Rubocop LTS - Semantically Versioned
77
- test_files: []
79
+ test_files:
80
+ - spec/spec_helper.rb
81
+ - spec/config/rspec/rspec_core.rb
82
+ - spec/rubocop/lts_spec.rb
data/rubocop-lts.yml DELETED
@@ -1,11 +0,0 @@
1
- inherit_gem:
2
- rubocop-ruby2_0: rubocop.yml
3
-
4
- # Removed as of 0.80.0
5
- # braces setting is for compatibility with Ruby 2.7+
6
- # See:
7
- # * https://github.com/rubocop/rubocop/issues/7641
8
- # * https://github.com/rubocop/rubocop/pull/7643
9
- Style/BracesAroundHashParameters:
10
- Enabled: true
11
- EnforcedStyle: context_dependent