rubocop-ruby2_2 3.0.1 → 3.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +125 -3
- data/CITATION.cff +20 -0
- data/CODE_OF_CONDUCT.md +79 -29
- data/CONTRIBUTING.md +260 -27
- data/FUNDING.md +70 -0
- data/LICENSE.md +11 -0
- data/README.md +424 -344
- data/RUBOCOP.md +71 -0
- data/SECURITY.md +3 -4
- data/certs/pboling.pem +27 -0
- data/lib/rubocop/ruby2_2/version.rb +2 -1
- data/lib/rubocop/ruby2_2.rb +2 -2
- data/sig/rubocop/ruby2_2/version.rbs +8 -0
- data/sig/rubocop/ruby2_2.rbs +0 -1
- data.tar.gz.sig +0 -0
- metadata +280 -85
- metadata.gz.sig +0 -0
- data/LICENSE.txt +0 -21
- data/rubocop-lts/rails.yml +0 -15
- data/rubocop-lts/rails_rspec.yml +0 -6
- data/rubocop-lts/rspec.yml +0 -15
- data/rubocop-lts/ruby.yml +0 -44
- data/rubocop-lts/ruby_rspec.yml +0 -6
- data/rubocop-lts/rubygem.yml +0 -6
- data/rubocop-lts/rubygem_rspec.yml +0 -4
- data/rubocop-lts/strict/rails.yml +0 -22
- data/rubocop-lts/strict/rspec.yml +0 -14
- data/rubocop-lts/strict/ruby.yml +0 -14
- data/rubocop.yml +0 -15
data/README.md
CHANGED
|
@@ -1,268 +1,124 @@
|
|
|
1
|
-
<
|
|
2
|
-
<a href="https://rubocop.org#gh-light-mode-only" target="_blank" rel="noopener">
|
|
3
|
-
<img height="120px" src="https://github.com/rubocop-lts/rubocop-ruby2_2/raw/main/docs/images/logo/rubocop-light.svg?raw=true" alt="SVG RuboCop Logo, Copyright (c) 2014 Dimiter Petrov, CC BY-NC 4.0, see docs/images/logo/README.txt">
|
|
4
|
-
</a>
|
|
5
|
-
<a href="https://rubocop.org#gh-dark-mode-only" target="_blank" rel="noopener">
|
|
6
|
-
<img height="120px" src="https://github.com/rubocop-lts/rubocop-ruby2_2/raw/main/docs/images/logo/rubocop-dark.svg?raw=true" alt="SVG RuboCop Logo, Copyright (c) 2014 Dimiter Petrov, CC BY-NC 4.0, see docs/images/logo/README.txt">
|
|
7
|
-
</a>
|
|
8
|
-
<a href="https://www.ruby-lang.org/" target="_blank" rel="noopener">
|
|
9
|
-
<img height="120px" src="https://github.com/rubocop-lts/rubocop-ruby2_2/raw/main/docs/images/logo/ruby-logo.svg?raw=true" alt="Yukihiro Matsumoto, Ruby Visual Identity Team, CC BY-SA 2.5, see docs/images/logo/README.txt">
|
|
10
|
-
</a>
|
|
11
|
-
<a href="https://semver.org/#gh-light-mode-only" target="_blank" rel="noopener">
|
|
12
|
-
<img height="120px" src="https://github.com/rubocop-lts/rubocop-ruby2_2/raw/main/docs/images/logo/semver-light.svg?raw=true" alt="SemVer.org Logo by @maxhaz, see docs/images/logo/README.txt">
|
|
13
|
-
</a>
|
|
14
|
-
<a href="https://semver.org/#gh-dark-mode-only" target="_blank" rel="noopener">
|
|
15
|
-
<img height="120px" src="https://github.com/rubocop-lts/rubocop-ruby2_2/raw/main/docs/images/logo/semver-dark.svg?raw=true" alt="SemVer.org Logo by @maxhaz, see docs/images/logo/README.txt">
|
|
16
|
-
</a>
|
|
17
|
-
</p>
|
|
1
|
+
<a href="https://github.com/rubocop-lts"><img alt="rubocop-lts Logo by Aboling0, CC BY-SA 4.0" src="https://logos.galtzo.com/assets/images/rubocop-lts/avatar-128px.svg" width="14%" align="right"/></a>
|
|
18
2
|
|
|
19
3
|
# 🦾 Rubocop::Ruby22
|
|
20
4
|
|
|
21
|
-
|
|
5
|
+
[![Version][👽versioni]][👽version] [![GitHub tag (latest SemVer)][⛳️tag-img]][⛳️tag] [![License: MIT][📄license-img]][📄license] [![Downloads Rank][👽dl-ranki]][👽dl-rank] [![CodeCov Test Coverage][🏀codecovi]][🏀codecov] [![Coveralls Test Coverage][🏀coveralls-img]][🏀coveralls] [![QLTY Test Coverage][🏀qlty-covi]][🏀qlty-cov] [![QLTY Maintainability][🏀qlty-mnti]][🏀qlty-mnt] [![CI Heads][🚎3-hd-wfi]][🚎3-hd-wf] [![CI Runtime Dependencies @ HEAD][🚎12-crh-wfi]][🚎12-crh-wf] [![CI Current][🚎11-c-wfi]][🚎11-c-wf] [![CI Truffle Ruby][🚎9-t-wfi]][🚎9-t-wf] [![CI JRuby][🚎10-j-wfi]][🚎10-j-wf] [![Deps Locked][🚎13-🔒️-wfi]][🚎13-🔒️-wf] [![Deps Unlocked][🚎14-🔓️-wfi]][🚎14-🔓️-wf] [![CI Test Coverage][🚎2-cov-wfi]][🚎2-cov-wf] [![CI Style][🚎5-st-wfi]][🚎5-st-wf] [![Apache SkyWalking Eyes License Compatibility Check][🚎15-🪪-wfi]][🚎15-🪪-wf]
|
|
6
|
+
|
|
7
|
+
`if ci_badges.map(&:color).detect { it != "green"}` ☝️ [let me know][✉️discord-invite], as I may have missed the [discord notification][✉️discord-invite].
|
|
22
8
|
|
|
23
9
|
---
|
|
24
10
|
|
|
25
|
-
|
|
26
|
-
of my own Ruby expertise and source code diving,
|
|
27
|
-
built on the shoulders of the expertise of many others;
|
|
28
|
-
organizing that expertise into per-Ruby-version sets of configurations.
|
|
11
|
+
`if ci_badges.map(&:color).all? { it == "green"}` 👇️ send money so I can do more of this. FLOSS maintenance is now my full-time job.
|
|
29
12
|
|
|
30
|
-
|
|
31
|
-
it remains [_unsafe_ to upgrade RuboCop, or Standard][Why-Build-This],
|
|
32
|
-
in a project that supports EOL Rubies.
|
|
13
|
+
[![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate at ko-fi.com][🖇kofi-img]][🖇kofi]
|
|
33
14
|
|
|
34
|
-
|
|
35
|
-
|
|
15
|
+
<details markdown="1">
|
|
16
|
+
<summary>👣 How will this project approach the September 2025 hostile takeover of RubyGems? 🚑️</summary>
|
|
36
17
|
|
|
37
|
-
|
|
38
|
-
let it manage your linting complexity!
|
|
18
|
+
I've summarized my thoughts in [this blog post](https://dev.to/galtzo/hostile-takeover-of-rubygems-my-thoughts-5hlo).
|
|
39
19
|
|
|
40
|
-
|
|
41
|
-
please support my efforts by making a donation, or becoming a sponsor.
|
|
20
|
+
</details>
|
|
42
21
|
|
|
43
|
-
|
|
22
|
+
## 🌻 Synopsis <a href="https://discord.gg/3qme4XHNKN"><img alt="Galtzo FLOSS Logo by Aboling0, CC BY-SA 4.0" src="https://logos.galtzo.com/assets/images/galtzo-floss/avatar-128px.svg" width="8%" align="right"/></a> <a href="https://ruby-toolbox.com"><img alt="ruby-lang Logo, Yukihiro Matsumoto, Ruby Visual Identity Team, CC BY-SA 2.5" src="https://logos.galtzo.com/assets/images/ruby-lang/avatar-128px.svg" width="8%" align="right"/></a>
|
|
23
|
+
|
|
24
|
+
## 💡 Info you can shake a stick at
|
|
25
|
+
|
|
26
|
+
| Tokens to Remember | [![Gem name][⛳️name-img]][⛳️gem-name] [![Gem namespace][⛳️namespace-img]][⛳️gem-namespace] |
|
|
27
|
+
|-------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|
28
|
+
| Works with JRuby | [![JRuby 10.0 Compat][💎jruby-10.0i]][🚎jruby-10.0-wf] [![JRuby current Compat][💎jruby-c-i]][🚎10-j-wf] [![JRuby HEAD Compat][💎jruby-headi]][🚎3-hd-wf]|
|
|
29
|
+
| Works with Truffle Ruby | [![Truffle Ruby 24.2 Compat][💎truby-24.2i]][🚎truby-24.2-wf] [![Truffle Ruby 25.0 Compat][💎truby-25.0i]][🚎truby-25.0-wf] [![Truffle Ruby 33.0 Compat][💎truby-33.0i]][🚎truby-33.0-wf] [![Truffle Ruby current Compat][💎truby-c-i]][🚎9-t-wf] [![Truffle Ruby HEAD Compat][💎truby-headi]][🚎3-hd-wf]|
|
|
30
|
+
| Works with MRI Ruby 4 | [![Ruby current Compat][💎ruby-c-i]][🚎11-c-wf] [![Ruby HEAD Compat][💎ruby-headi]][🚎3-hd-wf]|
|
|
31
|
+
| Works with MRI Ruby 3 | [![Ruby 3.2 Compat][💎ruby-3.2i]][🚎ruby-3.2-wf] [![Ruby 3.3 Compat][💎ruby-3.3i]][🚎ruby-3.3-wf] [![Ruby 3.4 Compat][💎ruby-3.4i]][🚎ruby-3.4-wf]|
|
|
32
|
+
| Support & Community | [![Join Me on Daily.dev's RubyFriends][✉️ruby-friends-img]][✉️ruby-friends] [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite] [![Get help from me on Upwork][👨🏼🏫expsup-upwork-img]][👨🏼🏫expsup-upwork] [![Get help from me on Codementor][👨🏼🏫expsup-codementor-img]][👨🏼🏫expsup-codementor] |
|
|
33
|
+
| Source | [![Source on GitLab.com][📜src-gl-img]][📜src-gl] [![Source on CodeBerg.org][📜src-cb-img]][📜src-cb] [![Source on Github.com][📜src-gh-img]][📜src-gh] [![The best SHA: dQw4w9WgXcQ!][🧮kloc-img]][🧮kloc] |
|
|
34
|
+
| Documentation | [![Current release on RubyDoc.info][📜docs-cr-rd-img]][🚎yard-current] [![YARD on Galtzo.com][📜docs-head-rd-img]][🚎yard-head] [![Maintainer Blog][🚂maint-blog-img]][🚂maint-blog] [![GitLab Wiki][📜gl-wiki-img]][📜gl-wiki] [![GitHub Wiki][📜gh-wiki-img]][📜gh-wiki] |
|
|
35
|
+
| Compliance | [![License: MIT][📄license-img]][📄license] [![Apache license compatibility: Category A][📄license-compat-img]][📄license-compat] [![📄ilo-declaration-img]][📄ilo-declaration] [![Security Policy][🔐security-img]][🔐security] [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct] [![SemVer 2.0.0][📌semver-img]][📌semver] |
|
|
36
|
+
| Style | [![Enforced Code Style Linter][💎rlts-img]][💎rlts] [![Keep-A-Changelog 1.0.0][📗keep-changelog-img]][📗keep-changelog] [![Gitmoji Commits][📌gitmoji-img]][📌gitmoji] [![Compatibility appraised by: appraisal2][💎appraisal2-img]][💎appraisal2] |
|
|
37
|
+
| Maintainer 🎖️ | [![Follow Me on LinkedIn][💖🖇linkedin-img]][💖🖇linkedin] [![Follow Me on Ruby.Social][💖🐘ruby-mast-img]][💖🐘ruby-mast] [![Follow Me on Bluesky][💖🦋bluesky-img]][💖🦋bluesky] [![Contact Maintainer][🚂maint-contact-img]][🚂maint-contact] [![My technical writing][💖💁🏼♂️devto-img]][💖💁🏼♂️devto] |
|
|
38
|
+
| `...` 💖 | [![Find Me on WellFound:][💖✌️wellfound-img]][💖✌️wellfound] [![Find Me on CrunchBase][💖💲crunchbase-img]][💖💲crunchbase] [![My LinkTree][💖🌳linktree-img]][💖🌳linktree] [![More About Me][💖💁🏼♂️aboutme-img]][💖💁🏼♂️aboutme] [🧊][💖🧊berg] [🐙][💖🐙hub] [🛖][💖🛖hut] [🧪][💖🧪lab] |
|
|
39
|
+
|
|
40
|
+
### Compatibility
|
|
41
|
+
|
|
42
|
+
Compatible with MRI Ruby 3.2.0+, and concordant releases of JRuby, and TruffleRuby.
|
|
43
|
+
CI workflows and Appraisals are generated for MRI Ruby 3.2.0+.
|
|
44
|
+
This test floor is configured by `ruby.test_minimum` in `.kettle-jem.yml` and
|
|
45
|
+
may be higher than the gem's runtime compatibility floor when legacy Rubies are
|
|
46
|
+
not practical for the current toolchain.
|
|
47
|
+
|
|
48
|
+
<a href="https://github.com/kettle-dev"><img alt="kettle-dev Logo by Aboling0, CC BY-SA 4.0" src="https://logos.galtzo.com/assets/images/kettle-dev/avatar-128px.svg" width="14%" align="right"/></a>
|
|
49
|
+
|
|
50
|
+
The _amazing_ test matrix is powered by the kettle-dev stack.
|
|
51
|
+
|
|
52
|
+
<details markdown="1">
|
|
53
|
+
<summary>How kettle-dev manages complexity in tests</summary>
|
|
54
|
+
|
|
55
|
+
| Gem | Source | Role | Daily download rank |
|
|
56
|
+
|-----|--------|------|---------------------|
|
|
57
|
+
| [appraisal2](https://bestgems.org/gems/appraisal2) | [GitHub](https://github.com/appraisal-rb/appraisal2) | multi-dependency Appraisal matrix generation | [](https://bestgems.org/gems/appraisal2) |
|
|
58
|
+
| [appraisal2-rubocop](https://bestgems.org/gems/appraisal2-rubocop) | [GitHub](https://github.com/appraisal-rb/appraisal2-rubocop) | RuboCop Appraisal generator integration | [](https://bestgems.org/gems/appraisal2-rubocop) |
|
|
59
|
+
| [kettle-dev](https://bestgems.org/gems/kettle-dev) | [GitHub](https://github.com/kettle-dev/kettle-dev) | development, release, and CI workflow tooling | [](https://bestgems.org/gems/kettle-dev) |
|
|
60
|
+
| [kettle-jem](https://bestgems.org/gems/kettle-jem) | [GitHub](https://github.com/kettle-dev/kettle-jem) | Appraisals & CI workflow templates | [](https://bestgems.org/gems/kettle-jem) |
|
|
61
|
+
| [kettle-soup-cover](https://bestgems.org/gems/kettle-soup-cover) | [GitHub](https://github.com/kettle-dev/kettle-soup-cover) | SimpleCov coverage policy and reporting | [](https://bestgems.org/gems/kettle-soup-cover) |
|
|
62
|
+
| [kettle-test](https://bestgems.org/gems/kettle-test) | [GitHub](https://github.com/kettle-dev/kettle-test) | standard test runner and coverage harness | [](https://bestgems.org/gems/kettle-test) |
|
|
63
|
+
| [rubocop-lts](https://bestgems.org/gems/rubocop-lts) | [GitHub](https://github.com/rubocop-lts/rubocop-lts) | Ruby-version-aware linting | [](https://bestgems.org/gems/rubocop-lts) |
|
|
64
|
+
| [turbo_tests2](https://bestgems.org/gems/turbo_tests2) | [GitHub](https://github.com/galtzo-floss/turbo_tests2) | parallel test execution | [](https://bestgems.org/gems/turbo_tests2) |
|
|
44
65
|
|
|
45
|
-
|
|
66
|
+
</details>
|
|
46
67
|
|
|
47
|
-
|
|
48
|
-
[![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor]
|
|
68
|
+
### Federated DVCS
|
|
49
69
|
|
|
50
|
-
<
|
|
51
|
-
<
|
|
52
|
-
</span>
|
|
53
|
-
<span class="badge-patreon">
|
|
54
|
-
<a href="https://patreon.com/galtzo" title="Donate to my FLOSS or refugee efforts using Patreon"><img src="https://img.shields.io/badge/patreon-donate-yellow.svg" alt="Patreon donate button" /></a>
|
|
55
|
-
</span>
|
|
70
|
+
<details markdown="1">
|
|
71
|
+
<summary>Find this repo on federated forges (Coming soon!)</summary>
|
|
56
72
|
|
|
57
|
-
|
|
73
|
+
| Federated [DVCS][💎d-in-dvcs] Repository | Status | Issues | PRs | Wiki | CI | Discussions |
|
|
74
|
+
|-------------------------------------------------|-----------------------------------------------------------------------|---------------------------|--------------------------|---------------------------|--------------------------|------------------------------|
|
|
75
|
+
| 🧪 [rubocop-lts/rubocop-ruby2_2 on GitLab][📜src-gl] | The Truth | [💚][🤝gl-issues] | [💚][🤝gl-pulls] | [💚][📜gl-wiki] | 🐭 Tiny Matrix | ➖ |
|
|
76
|
+
| 🧊 [rubocop-lts/rubocop-ruby2_2 on CodeBerg][📜src-cb] | An Ethical Mirror ([Donate][🤝cb-donate]) | [💚][🤝cb-issues] | [💚][🤝cb-pulls] | ➖ | ⭕️ No Matrix | ➖ |
|
|
77
|
+
| 🐙 [rubocop-lts/rubocop-ruby2_2 on GitHub][📜src-gh] | Another Mirror | [💚][🤝gh-issues] | [💚][🤝gh-pulls] | [💚][📜gh-wiki] | 💯 Full Matrix | [💚][gh-discussions] |
|
|
78
|
+
| 🎮️ [Discord Server][✉️discord-invite] | [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite] | [Let's][✉️discord-invite] | [talk][✉️discord-invite] | [about][✉️discord-invite] | [this][✉️discord-invite] | [library!][✉️discord-invite] |
|
|
58
79
|
|
|
59
|
-
|
|
60
|
-
[⛳liberapay]: https://liberapay.com/pboling/donate
|
|
61
|
-
[🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
|
|
62
|
-
[🖇sponsor]: https://github.com/sponsors/pboling
|
|
80
|
+
</details>
|
|
63
81
|
|
|
64
|
-
|
|
82
|
+
[gh-discussions]: https://github.com/rubocop-lts/rubocop-ruby2_2/discussions
|
|
83
|
+
|
|
84
|
+
### Enterprise Support [](https://tidelift.com/subscription/pkg/rubygems-rubocop-ruby2_2?utm_source=rubygems-rubocop-ruby2_2&utm_medium=referral&utm_campaign=readme)
|
|
85
|
+
|
|
86
|
+
Available as part of the Tidelift Subscription.
|
|
87
|
+
|
|
88
|
+
<details markdown="1">
|
|
89
|
+
<summary>Need enterprise-level guarantees?</summary>
|
|
65
90
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
🚀
|
|
82
|
-
💄
|
|
83
|
-
👽
|
|
84
|
-
-->
|
|
85
|
-
|
|
86
|
-
[⛳️lts-vi]: http://img.shields.io/gem/v/rubocop-lts.svg
|
|
87
|
-
[🖇️lts-dti]: https://img.shields.io/gem/dt/rubocop-lts.svg
|
|
88
|
-
[🏘️lts-rti]: https://img.shields.io/gem/rt/rubocop-lts.svg
|
|
89
|
-
[🚎lts-cwf]: https://github.com/rubocop-lts/rubocop-lts/actions/workflows/current.yml
|
|
90
|
-
[🚎lts-cwfi]: https://github.com/rubocop-lts/rubocop-lts/actions/workflows/current.yml/badge.svg
|
|
91
|
-
[🖐lts-hwf]: https://github.com/rubocop-lts/rubocop-lts/actions/workflows/heads.yml
|
|
92
|
-
[🖐lts-hwfi]: https://github.com/rubocop-lts/rubocop-lts/actions/workflows/heads.yml/badge.svg
|
|
93
|
-
[🧮lts-lwf]: https://github.com/rubocop-lts/rubocop-lts/actions/workflows/legacy.yml
|
|
94
|
-
[🧮lts-lwfi]: https://github.com/rubocop-lts/rubocop-lts/actions/workflows/legacy.yml/badge.svg
|
|
95
|
-
[📗lts-io]: https://github.com/rubocop-lts/rubocop-lts/issues
|
|
96
|
-
[📗lts-ioi]: https://img.shields.io/github/issues-raw/rubocop-lts/rubocop-lts
|
|
97
|
-
[🚀lts-ic]: https://github.com/rubocop-lts/rubocop-lts/issues?q=is%3Aissue+is%3Aclosed
|
|
98
|
-
[🚀lts-ici]: https://img.shields.io/github/issues-closed-raw/rubocop-lts/rubocop-lts
|
|
99
|
-
[💄lts-po]: https://github.com/rubocop-lts/rubocop-lts/pulls
|
|
100
|
-
[💄lts-poi]: https://img.shields.io/github/issues-pr/rubocop-lts/rubocop-lts
|
|
101
|
-
[👽lts-pc]: https://github.com/rubocop-lts/rubocop-lts/pulls?q=is%3Apr+is%3Aclosed
|
|
102
|
-
[👽lts-pci]: https://img.shields.io/github/issues-pr-closed/rubocop-lts/rubocop-lts
|
|
103
|
-
[⛳️lts-g]: https://rubygems.org/gems/rubocop-lts
|
|
104
|
-
[⛳️lts-gh]: https://github.com/rubocop-lts/rubocop-lts
|
|
105
|
-
|
|
106
|
-
[⛳️ini-vi]: http://img.shields.io/gem/v/rubocop-ruby2_2.svg
|
|
107
|
-
[🖇️ini-dti]: https://img.shields.io/gem/dt/rubocop-ruby2_2.svg
|
|
108
|
-
[🏘️ini-rti]: https://img.shields.io/gem/rt/rubocop-ruby2_2.svg
|
|
109
|
-
[🚎ini-cwf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/current.yml
|
|
110
|
-
[🚎ini-cwfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/current.yml/badge.svg
|
|
111
|
-
[🖐ini-hwf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/heads.yml
|
|
112
|
-
[🖐ini-hwfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/heads.yml/badge.svg
|
|
113
|
-
[🧮ini-lwf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/legacy.yml
|
|
114
|
-
[🧮ini-lwfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/legacy.yml/badge.svg
|
|
115
|
-
[📗ini-io]: https://github.com/rubocop-lts/rubocop-ruby2_2/issues
|
|
116
|
-
[📗ini-ioi]: https://img.shields.io/github/issues-raw/rubocop-lts/rubocop-ruby2_2
|
|
117
|
-
[🚀ini-ic]: https://github.com/rubocop-lts/rubocop-ruby2_2/issues?q=is%3Aissue+is%3Aclosed
|
|
118
|
-
[🚀ini-ici]: https://img.shields.io/github/issues-closed-raw/rubocop-lts/rubocop-ruby2_2
|
|
119
|
-
[💄ini-po]: https://github.com/rubocop-lts/rubocop-ruby2_2/pulls
|
|
120
|
-
[💄ini-poi]: https://img.shields.io/github/issues-pr/rubocop-lts/rubocop-ruby2_2
|
|
121
|
-
[👽ini-pc]: https://github.com/rubocop-lts/rubocop-ruby2_2/pulls?q=is%3Apr+is%3Aclosed
|
|
122
|
-
[👽ini-pci]: https://img.shields.io/github/issues-pr-closed/rubocop-lts/rubocop-ruby2_2
|
|
123
|
-
[⛳️ini-g]: https://rubygems.org/gems/rubocop-ruby2_2
|
|
124
|
-
[⛳️ini-gh]: https://github.com/rubocop-lts/rubocop-ruby2_2
|
|
125
|
-
|
|
126
|
-
This gem configures many gems for you,
|
|
127
|
-
and configures all of them for a specific version of Ruby:
|
|
128
|
-
|
|
129
|
-
- rubocop
|
|
130
|
-
- rubocop-gradual
|
|
131
|
-
- rubocop-md
|
|
132
|
-
- rubocop-rake
|
|
133
|
-
- rubocop-thread_safety
|
|
134
|
-
- standard
|
|
135
|
-
- standard-performance (incl. rubocop-performance)
|
|
136
|
-
- standard-custom
|
|
137
|
-
- standard-rubocop-lts (ruby version-specific rules)
|
|
138
|
-
|
|
139
|
-
And optionally, if you are using RSpec:
|
|
140
|
-
|
|
141
|
-
- rubocop-lts-rspec (which loads `rubocop-rspec`, `rubocop-rspec-extra`, `rubocop-env`, and `rubocop-factory_bot`)
|
|
142
|
-
|
|
143
|
-
And optionally, if you are building a RubyGem:
|
|
144
|
-
|
|
145
|
-
- rubocop-packaging
|
|
146
|
-
|
|
147
|
-
And optionally, if you are building a Rails app:
|
|
148
|
-
|
|
149
|
-
- standard-rails (incl. rubocop-rails)
|
|
150
|
-
- betterlint
|
|
151
|
-
|
|
152
|
-
Awareness of `rubocop`'s lack of [SemVer][semver] adherence isn't evenly dispersed in the Ruby community.
|
|
153
|
-
|
|
154
|
-
The RuboCop team [has reasons](https://github.com/semver/semver/issues/317)
|
|
155
|
-
for [not following SemVer](https://github.com/rubocop/rubocop/issues/4243).
|
|
156
|
-
|
|
157
|
-
NOTE: They think they are following SemVer,
|
|
158
|
-
but their interpretation differs from mine, and seems to differ from the
|
|
159
|
-
[intent of SemVer's creator][major-versions-not-sacred].
|
|
160
|
-
|
|
161
|
-
<p align="left">
|
|
162
|
-
<a href="https://metaredux.com/posts/2022/04/21/rubocop-turns-10.html" target="_blank" rel="noopener">
|
|
163
|
-
<img width="360px" src="https://github.com/rubocop-lts/rubocop-ruby2_2/raw/main/docs/images/rubocop-not-semver.png?raw=true" alt="Explanation of non-SemVer compliance, @bbatsov">
|
|
164
|
-
</a>
|
|
165
|
-
</p>
|
|
166
|
-
|
|
167
|
-
The purpose of this gem is to constrain the `rubocop` dependency of a project in
|
|
168
|
-
a [SemVer compliant][semver]
|
|
169
|
-
(Semantic Versioning, [Major Versions are Not Sacred][major-versions-not-sacred])
|
|
170
|
-
way that aligns with its desired minimum compatible/supported Ruby version.
|
|
171
|
-
Secondary purpose is to provide default configurations for a bevy of RuboCop-related plugins.
|
|
172
|
-
|
|
173
|
-
## 💎 Ruby Version Support
|
|
174
|
-
|
|
175
|
-
This gem facilitates equivalent of adding a `~> ` version constrained `rubocop`(-ish +more) dependency,
|
|
176
|
-
thus minimizing the risk of a rubocop minor / patch upgrade breaking the build.
|
|
177
|
-
|
|
178
|
-
### What's that you say?
|
|
179
|
-
|
|
180
|
-
This gem will install a suite of tools that will **analyze & lint code** intended to support any version of Ruby >= 2.0.
|
|
181
|
-
|
|
182
|
-
This gem helps insulate projects from RuboCop churn by enshrining many conventions
|
|
183
|
-
that have been shown over years to reduce problems.
|
|
184
|
-
|
|
185
|
-
#### Background
|
|
186
|
-
|
|
187
|
-
Each [spring `rubocop` drops][rubocop-support-matrix] the ability to **install** and **run** `rubocop` on an EOL'd Ruby.
|
|
188
|
-
Eventually `rubocop` will drop the ability to **analyze code** intended to support an EOL'd Ruby,
|
|
189
|
-
as they already have for Ruby 1.9. RuboCop has never run properly on Ruby 1.8.
|
|
190
|
-
This gem, via [standard (Standard Ruby)][standardrb], allows RuboCop to analyze Ruby 2.2 code,
|
|
191
|
-
by turning off certain rules that only apply to later Rubies.
|
|
192
|
-
|
|
193
|
-
When the `rubocop` team makes _any_ of these changes they
|
|
194
|
-
[only bump the minor version][rubocop-versioning] of RuboCop,
|
|
195
|
-
in violation of SemVer ([they disagree][rubocop-release-policy]).
|
|
196
|
-
|
|
197
|
-
In other words, RuboCop intentionally does not bump the major version when they drop
|
|
198
|
-
_analysis_, _runtime_, or _installation_ support for a given version of Ruby.
|
|
199
|
-
|
|
200
|
-
This is a primary _raison d’être_ for this project.
|
|
201
|
-
To get a better understanding of how SemVer is intended to work read this article from the creator of SemVer:
|
|
202
|
-
|
|
203
|
-
- ["Major Version Numbers are Not Sacred"][major-versions-not-sacred]!
|
|
204
|
-
|
|
205
|
-
[rubocop-support-matrix]: https://docs.rubocop.org/rubocop/compatibility.html#support-matrix
|
|
206
|
-
[rubocop-versioning]: https://docs.rubocop.org/rubocop/versioning.html
|
|
207
|
-
[rubocop-release-policy]: https://docs.rubocop.org/rubocop/versioning.html#release-policy
|
|
208
|
-
[major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
|
|
209
|
-
[standardrb]: https://github.com/standardrb/standard
|
|
210
|
-
|
|
211
|
-
### 👪 A Gem Family
|
|
212
|
-
|
|
213
|
-
The `rubocop-lts` family of gems has a version supporting any version of Ruby you need.
|
|
214
|
-
They can be used as development dependencies for libraries or applications.
|
|
215
|
-
|
|
216
|
-
- [`rubocop-lts`][rlts]
|
|
217
|
-
- [`standard-rubocop-lts`][stdrlts]
|
|
218
|
-
- [`rubocop-ruby1_8`][rr18]
|
|
219
|
-
- [`rubocop-ruby1_9`][rr19]
|
|
220
|
-
- [`rubocop-ruby2_0`][rr20]
|
|
221
|
-
- [`rubocop-ruby2_1`][rr21]
|
|
222
|
-
- [`rubocop-ruby2_2`][rr22]
|
|
223
|
-
- [`rubocop-ruby2_3`][rr23]
|
|
224
|
-
- [`rubocop-ruby2_4`][rr24]
|
|
225
|
-
- [`rubocop-ruby2_5`][rr25]
|
|
226
|
-
- [`rubocop-ruby2_6`][rr26]
|
|
227
|
-
- [`rubocop-ruby2_7`][rr27]
|
|
228
|
-
- [`rubocop-ruby3_0`][rr30]
|
|
229
|
-
- [`rubocop-ruby3_1`][rr31]
|
|
230
|
-
- [`rubocop-ruby3_2`][rr32]
|
|
231
|
-
|
|
232
|
-
[rlts]: https://github.com/rubocop-lts/rubocop-lts#-how-to-untie-gorgons-knot
|
|
233
|
-
[stdrlts]: https://github.com/rubocop-lts/standard-rubocop-lts
|
|
234
|
-
[rr18]: https://gitlab.com/rubocop-lts/standard-rubocop-lts
|
|
235
|
-
[rr19]: https://gitlab.com/rubocop-lts/rubocop-ruby1_9
|
|
236
|
-
[rr20]: https://gitlab.com/rubocop-lts/rubocop-ruby2_0
|
|
237
|
-
[rr21]: https://gitlab.com/rubocop-lts/rubocop-ruby2_1
|
|
238
|
-
[rr22]: https://gitlab.com/rubocop-lts/rubocop-ruby2_2
|
|
239
|
-
[rr23]: https://gitlab.com/rubocop-lts/rubocop-ruby2_3
|
|
240
|
-
[rr24]: https://gitlab.com/rubocop-lts/rubocop-ruby2_4
|
|
241
|
-
[rr25]: https://gitlab.com/rubocop-lts/rubocop-ruby2_5
|
|
242
|
-
[rr26]: https://gitlab.com/rubocop-lts/rubocop-ruby2_6
|
|
243
|
-
[rr27]: https://gitlab.com/rubocop-lts/rubocop-ruby2_7
|
|
244
|
-
[rr30]: https://gitlab.com/rubocop-lts/rubocop-ruby3_0
|
|
245
|
-
[rr31]: https://gitlab.com/rubocop-lts/rubocop-ruby3_1
|
|
246
|
-
[rr32]: https://gitlab.com/rubocop-lts/rubocop-ruby3_2
|
|
247
|
-
|
|
248
|
-
## 🗿 Stable
|
|
249
|
-
|
|
250
|
-
All releases of this gem are stable releases.
|
|
251
|
-
We do not release new versions for every release of `rubocop`,
|
|
252
|
-
as this gem is tied to [standard (Standard Ruby)][standardrb].
|
|
253
|
-
A typical release cycle for a gem in the `rubocop-lts` family is roughly every six months,
|
|
254
|
-
though eventually analysis support for an old version of Ruby will be dropped.
|
|
255
|
-
When that happens releases of the `rubocop-lts` gem for that version of Ruby will (mostly) cease.
|
|
91
|
+
The maintainers of this and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source packages you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact packages you use.
|
|
92
|
+
|
|
93
|
+
[![Get help from me on Tidelift][🏙️entsup-tidelift-img]][🏙️entsup-tidelift]
|
|
94
|
+
|
|
95
|
+
- 💡Subscribe for support guarantees covering _all_ your FLOSS dependencies
|
|
96
|
+
- 💡Tidelift is part of [Sonar][🏙️entsup-tidelift-sonar]
|
|
97
|
+
- 💡Tidelift pays maintainers to maintain the software you depend on!<br/>📊`@`Pointy Haired Boss: An [enterprise support][🏙️entsup-tidelift] subscription is "[never gonna let you down][🧮kloc]", and *supports* open source maintainers
|
|
98
|
+
|
|
99
|
+
Alternatively:
|
|
100
|
+
|
|
101
|
+
- [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite]
|
|
102
|
+
- [![Get help from me on Upwork][👨🏼🏫expsup-upwork-img]][👨🏼🏫expsup-upwork]
|
|
103
|
+
- [![Get help from me on Codementor][👨🏼🏫expsup-codementor-img]][👨🏼🏫expsup-codementor]
|
|
104
|
+
|
|
105
|
+
</details>
|
|
256
106
|
|
|
257
107
|
## ✨ Installation
|
|
258
108
|
|
|
259
109
|
Install the gem and add to the application's Gemfile by executing:
|
|
260
110
|
|
|
261
|
-
|
|
111
|
+
```console
|
|
112
|
+
bundle add rubocop-ruby2_2
|
|
113
|
+
```
|
|
262
114
|
|
|
263
115
|
If bundler is not being used to manage dependencies, install the gem by executing:
|
|
264
116
|
|
|
265
|
-
|
|
117
|
+
```console
|
|
118
|
+
gem install rubocop-ruby2_2
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## ⚙️ Configuration
|
|
266
122
|
|
|
267
123
|
## 🔧 Basic Usage
|
|
268
124
|
|
|
@@ -291,153 +147,377 @@ Upgrades to the latest RuboCop can include all kinds of changes, including remov
|
|
|
291
147
|
|
|
292
148
|
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!
|
|
293
149
|
|
|
294
|
-
##
|
|
150
|
+
## 🦷 FLOSS Funding
|
|
295
151
|
|
|
296
|
-
|
|
152
|
+
While rubocop-lts tools are free software and will always be, the project would benefit immensely from some funding.
|
|
153
|
+
Raising a monthly budget of... "dollars" would make the project more sustainable.
|
|
297
154
|
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
# Note: technically the above is the same as the "Basic Usage" below, so if specificity is not your jam:
|
|
302
|
-
# rubocop-ruby2_2: rubocop.yml
|
|
303
|
-
```
|
|
155
|
+
We welcome both individual and corporate sponsors! We also offer a
|
|
156
|
+
wide array of funding channels to account for your preferences.
|
|
157
|
+
Currently, [Open Collective][🖇osc] is our preferred funding platform.
|
|
304
158
|
|
|
305
|
-
|
|
159
|
+
**If you're working in a company that's making significant use of rubocop-lts tools we'd
|
|
160
|
+
appreciate it if you suggest to your company to become a rubocop-lts sponsor.**
|
|
306
161
|
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
162
|
+
You can support the development of rubocop-lts tools via
|
|
163
|
+
[GitHub Sponsors][🖇sponsor],
|
|
164
|
+
[Liberapay][⛳liberapay],
|
|
165
|
+
[PayPal][🖇paypal],
|
|
166
|
+
[Open Collective][🖇osc]
|
|
167
|
+
and [Tidelift][🏙️entsup-tidelift].
|
|
311
168
|
|
|
312
|
-
|
|
169
|
+
| 📍 NOTE |
|
|
170
|
+
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|
171
|
+
| If doing a sponsorship in the form of donation is problematic for your company <br/> from an accounting standpoint, we'd recommend the use of Tidelift, <br/> where you can get a support-like subscription instead. |
|
|
313
172
|
|
|
314
|
-
|
|
315
|
-
inherit_gem:
|
|
316
|
-
rubocop-ruby2_2: rubocop-lts/rails_rspec.yml
|
|
317
|
-
```
|
|
173
|
+
### Open Collective for Individuals
|
|
318
174
|
|
|
319
|
-
|
|
175
|
+
Support us with a monthly donation and help us continue our activities. [[Become a backer](https://opencollective.com/rubocop-lts#backer)]
|
|
320
176
|
|
|
321
|
-
|
|
322
|
-
inherit_gem:
|
|
323
|
-
rubocop-ruby2_2: rubocop-lts/rails.yml
|
|
324
|
-
```
|
|
177
|
+
NOTE: [kettle-readme-backers][kettle-readme-backers] updates this list every day, automatically.
|
|
325
178
|
|
|
326
|
-
|
|
179
|
+
<!-- OPENCOLLECTIVE-INDIVIDUALS:START -->
|
|
180
|
+
No backers yet. Be the first!
|
|
181
|
+
<!-- OPENCOLLECTIVE-INDIVIDUALS:END -->
|
|
327
182
|
|
|
328
|
-
|
|
329
|
-
inherit_gem:
|
|
330
|
-
rubocop-ruby2_2: rubocop-lts/rubygem_rspec.yml
|
|
331
|
-
```
|
|
183
|
+
### Open Collective for Organizations
|
|
332
184
|
|
|
333
|
-
|
|
185
|
+
Become a sponsor and get your logo on our README on GitHub with a link to your site. [[Become a sponsor](https://opencollective.com/rubocop-lts#sponsor)]
|
|
334
186
|
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
187
|
+
NOTE: [kettle-readme-backers][kettle-readme-backers] updates this list every day, automatically.
|
|
188
|
+
|
|
189
|
+
<!-- OPENCOLLECTIVE-ORGANIZATIONS:START -->
|
|
190
|
+
No sponsors yet. Be the first!
|
|
191
|
+
<!-- OPENCOLLECTIVE-ORGANIZATIONS:END -->
|
|
192
|
+
|
|
193
|
+
[kettle-readme-backers]: https://github.com/rubocop-lts/rubocop-ruby2_2/blob/main/bin/kettle-readme-backers
|
|
194
|
+
|
|
195
|
+
### Another way to support open-source
|
|
196
|
+
|
|
197
|
+
I’m driven by a passion to foster a thriving open-source community – a space where people can tackle complex problems, no matter how small. Revitalizing libraries that have fallen into disrepair, and building new libraries focused on solving real-world challenges, are my passions. I was recently affected by layoffs, and the tech jobs market is unwelcoming. I’m reaching out here because your support would significantly aid my efforts to provide for my family, and my farm (11 🐔 chickens, 2 🐶 dogs, 3 🐰 rabbits, 8 🐈 cats).
|
|
198
|
+
|
|
199
|
+
If you work at a company that uses my work, please encourage them to support me as a corporate sponsor. My work on gems you use might show up in `bundle fund`.
|
|
339
200
|
|
|
340
|
-
|
|
201
|
+
I’m developing a new library, [floss_funding][🖇floss-funding-gem], designed to empower open-source developers like myself to get paid for the work we do, in a sustainable way. Please give it a look.
|
|
341
202
|
|
|
342
|
-
|
|
343
|
-
Then, run `rake spec` to run the tests w/ coverage,
|
|
344
|
-
or `bin/rake` to run tests w/ coverage, and linting.
|
|
345
|
-
You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
|
203
|
+
**[Floss-Funding.dev][🖇floss-funding.dev]: 👉️ No network calls. 👉️ No tracking. 👉️ No oversight. 👉️ Minimal crypto hashing. 💡 Easily disabled nags**
|
|
346
204
|
|
|
347
|
-
|
|
205
|
+
[![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate to my FLOSS efforts at ko-fi.com][🖇kofi-img]][🖇kofi]
|
|
206
|
+
|
|
207
|
+
## 🔐 Security
|
|
208
|
+
|
|
209
|
+
See [SECURITY.md][🔐security].
|
|
210
|
+
|
|
211
|
+
## 🤝 Contributing
|
|
212
|
+
|
|
213
|
+
If you need some ideas of where to help, you could work on adding more code coverage,
|
|
214
|
+
or if it is already 💯 (see [below](#code-coverage)) check [issues][🤝gh-issues] or [PRs][🤝gh-pulls],
|
|
215
|
+
or use the gem and think about how it could be better.
|
|
216
|
+
|
|
217
|
+
We [![Keep A Changelog][📗keep-changelog-img]][📗keep-changelog] so if you make changes, remember to update it.
|
|
218
|
+
|
|
219
|
+
See [CONTRIBUTING.md][🤝contributing] for more detailed instructions.
|
|
348
220
|
|
|
349
221
|
### 🚀 Release Instructions
|
|
350
222
|
|
|
351
|
-
See [CONTRIBUTING.md][contributing].
|
|
223
|
+
See [CONTRIBUTING.md][🤝contributing].
|
|
352
224
|
|
|
353
|
-
|
|
225
|
+
### Code Coverage
|
|
354
226
|
|
|
355
|
-
|
|
227
|
+
<details markdown="1">
|
|
228
|
+
<summary>Coverage service badges</summary>
|
|
229
|
+
|
|
230
|
+
[![Coverage Graph][🏀codecov-g]][🏀codecov]
|
|
231
|
+
|
|
232
|
+
[![Coveralls Test Coverage][🏀coveralls-img]][🏀coveralls]
|
|
233
|
+
|
|
234
|
+
[![QLTY Test Coverage][🏀qlty-covi]][🏀qlty-cov]
|
|
235
|
+
|
|
236
|
+
</details>
|
|
237
|
+
|
|
238
|
+
### 🪇 Code of Conduct
|
|
239
|
+
|
|
240
|
+
Everyone interacting with this project's codebases, issue trackers,
|
|
241
|
+
chat rooms and mailing lists agrees to follow the [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct].
|
|
356
242
|
|
|
357
243
|
## 🌈 Contributors
|
|
358
244
|
|
|
359
|
-
[![Contributors]
|
|
245
|
+
[![Contributors][🖐contributors-img]][🖐contributors]
|
|
360
246
|
|
|
361
|
-
Made with [contributors-img]
|
|
247
|
+
Made with [contributors-img][🖐contrib-rocks].
|
|
362
248
|
|
|
363
|
-
|
|
249
|
+
Also see GitLab Contributors: [https://gitlab.com/rubocop-lts/rubocop-ruby2_2/-/graphs/main][🚎contributors-gl]
|
|
364
250
|
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
See [LICENSE.txt][license] for the official [Copyright Notice][copyright-notice-explainer].
|
|
251
|
+
<details markdown="1">
|
|
252
|
+
<summary>⭐️ Star History</summary>
|
|
368
253
|
|
|
369
|
-
<
|
|
370
|
-
|
|
254
|
+
<a href="https://star-history.com/rubocop-lts/rubocop-ruby2_2&Date">
|
|
255
|
+
<picture>
|
|
256
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=rubocop-lts/rubocop-ruby2_2&type=Date&theme=dark" />
|
|
257
|
+
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=rubocop-lts/rubocop-ruby2_2&type=Date" />
|
|
258
|
+
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=rubocop-lts/rubocop-ruby2_2&type=Date" />
|
|
259
|
+
</picture>
|
|
260
|
+
</a>
|
|
371
261
|
|
|
372
|
-
See [docs/images/logo/README.txt][project-logos]
|
|
373
262
|
</details>
|
|
374
263
|
|
|
375
|
-
|
|
376
|
-
|
|
264
|
+
## 📌 Versioning
|
|
265
|
+
|
|
266
|
+
This library follows [![Semantic Versioning 2.0.0][📌semver-img]][📌semver] for its public API where practical.
|
|
267
|
+
For most applications, prefer the [Pessimistic Version Constraint][📌pvc] with two digits of precision.
|
|
268
|
+
|
|
269
|
+
For example:
|
|
270
|
+
|
|
271
|
+
```ruby
|
|
272
|
+
spec.add_dependency("rubocop-ruby2_2", "~> 3.0")
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
<details markdown="1">
|
|
276
|
+
<summary>📌 Is "Platform Support" part of the public API? More details inside.</summary>
|
|
277
|
+
|
|
278
|
+
Dropping support for a platform can be a breaking change for affected users.
|
|
279
|
+
If a release changes supported platforms, it should be called out clearly in the changelog and versioned with that impact in mind.
|
|
280
|
+
|
|
281
|
+
To get a better understanding of how SemVer is intended to work over a project's lifetime,
|
|
282
|
+
read this article from the creator of SemVer:
|
|
283
|
+
|
|
284
|
+
- ["Major Version Numbers are Not Sacred"][📌major-versions-not-sacred]
|
|
377
285
|
|
|
378
|
-
Author: [Yusuf Evli][org-logo-author]
|
|
379
|
-
Source: [Unsplash][org-logo-source]
|
|
380
|
-
License: [Unsplash License][org-logo-license]
|
|
381
286
|
</details>
|
|
382
287
|
|
|
383
|
-
[
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
288
|
+
See [CHANGELOG.md][📌changelog] for a list of releases.
|
|
289
|
+
|
|
290
|
+
## 📄 License
|
|
291
|
+
|
|
292
|
+
The gem is available as open source under the terms of
|
|
293
|
+
the [MIT](MIT.md) [![License: MIT][📄license-img]][📄license-ref].
|
|
387
294
|
|
|
388
295
|
### © Copyright
|
|
389
296
|
|
|
390
|
-
|
|
297
|
+
See [LICENSE.md][📄license] for the official copyright notice.
|
|
391
298
|
|
|
392
|
-
|
|
299
|
+
<details markdown="1">
|
|
300
|
+
<summary>Copyright holders</summary>
|
|
393
301
|
|
|
394
|
-
|
|
302
|
+
- Copyright (c) 2022-2023, 2025-2026 Peter H. Boling
|
|
303
|
+
- Copyright (c) 2025 Annibelle Boling
|
|
395
304
|
|
|
396
|
-
|
|
305
|
+
</details>
|
|
397
306
|
|
|
398
|
-
##
|
|
307
|
+
## 🤑 A request for help
|
|
399
308
|
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
309
|
+
Maintainers have teeth and need to pay their dentists.
|
|
310
|
+
After getting laid off in an RIF in March, and encountering difficulty finding a new one,
|
|
311
|
+
I began spending most of my time building open source tools.
|
|
312
|
+
I'm hoping to be able to pay for my kids' health insurance this month,
|
|
313
|
+
so if you value the work I am doing, I need your support.
|
|
314
|
+
Please consider sponsoring me or the project.
|
|
404
315
|
|
|
405
|
-
|
|
406
|
-
the [Pessimistic Version Constraint][pvc] with two digits of precision.
|
|
316
|
+
To join the community or get help 👇️ Join the Discord.
|
|
407
317
|
|
|
408
|
-
|
|
318
|
+
[![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite]
|
|
409
319
|
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
320
|
+
To say "thanks!" ☝️ Join the Discord or 👇️ send money.
|
|
321
|
+
|
|
322
|
+
[![Sponsor rubocop-lts/rubocop-ruby2_2 on Open Source Collective][🖇osc-all-bottom-img]][🖇osc] 💌 [![Sponsor me on GitHub Sponsors][🖇sponsor-bottom-img]][🖇sponsor] 💌 [![Sponsor me on Liberapay][⛳liberapay-bottom-img]][⛳liberapay] 💌 [![Donate on PayPal][🖇paypal-bottom-img]][🖇paypal]
|
|
323
|
+
|
|
324
|
+
### Please give the project a star ⭐ ♥.
|
|
413
325
|
|
|
414
|
-
[
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
[
|
|
419
|
-
[
|
|
420
|
-
[
|
|
421
|
-
[
|
|
422
|
-
[
|
|
423
|
-
[
|
|
424
|
-
[
|
|
425
|
-
[
|
|
426
|
-
[
|
|
427
|
-
[
|
|
428
|
-
[
|
|
429
|
-
[
|
|
430
|
-
[
|
|
431
|
-
[
|
|
432
|
-
[
|
|
433
|
-
[
|
|
434
|
-
[
|
|
435
|
-
[
|
|
436
|
-
[
|
|
437
|
-
[
|
|
438
|
-
[
|
|
439
|
-
[
|
|
440
|
-
[
|
|
441
|
-
[
|
|
442
|
-
[
|
|
443
|
-
[
|
|
326
|
+
Many parts of this project are actively managed by a [kettle-jem](https://github.com/structuredmerge/structuredmerge-ruby/tree/main/gems/kettle-jem) smart template utilizing [StructuredMerge.org](https://structuredmerge.org) merge contracts.
|
|
327
|
+
|
|
328
|
+
Thanks for RTFM. ☺️
|
|
329
|
+
|
|
330
|
+
[⛳liberapay-img]: https://img.shields.io/liberapay/goal/pboling.svg?logo=liberapay&color=a51611&style=flat
|
|
331
|
+
[⛳liberapay-bottom-img]: https://img.shields.io/liberapay/goal/pboling.svg?style=for-the-badge&logo=liberapay&color=a51611
|
|
332
|
+
[⛳liberapay]: https://liberapay.com/pboling/donate
|
|
333
|
+
[🖇osc-all-img]: https://img.shields.io/opencollective/all/rubocop-lts
|
|
334
|
+
[🖇osc-sponsors-img]: https://img.shields.io/opencollective/sponsors/rubocop-lts
|
|
335
|
+
[🖇osc-backers-img]: https://img.shields.io/opencollective/backers/rubocop-lts
|
|
336
|
+
[🖇osc-backers]: https://opencollective.com/rubocop-lts#backer
|
|
337
|
+
[🖇osc-backers-i]: https://opencollective.com/rubocop-lts/backers/badge.svg?style=flat
|
|
338
|
+
[🖇osc-sponsors]: https://opencollective.com/rubocop-lts#sponsor
|
|
339
|
+
[🖇osc-sponsors-i]: https://opencollective.com/rubocop-lts/sponsors/badge.svg?style=flat
|
|
340
|
+
[🖇osc-all-bottom-img]: https://img.shields.io/opencollective/all/rubocop-lts?style=for-the-badge
|
|
341
|
+
[🖇osc-sponsors-bottom-img]: https://img.shields.io/opencollective/sponsors/rubocop-lts?style=for-the-badge
|
|
342
|
+
[🖇osc-backers-bottom-img]: https://img.shields.io/opencollective/backers/rubocop-lts?style=for-the-badge
|
|
343
|
+
[🖇osc]: https://opencollective.com/rubocop-lts
|
|
344
|
+
[🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
|
|
345
|
+
[🖇sponsor-bottom-img]: https://img.shields.io/badge/Sponsor_Me!-pboling-blue?style=for-the-badge&logo=github
|
|
346
|
+
[🖇sponsor]: https://github.com/sponsors/pboling
|
|
347
|
+
[🖇kofi-img]: https://img.shields.io/badge/ko--fi-%E2%9C%93-a51611.svg?style=flat
|
|
348
|
+
[🖇kofi]: https://ko-fi.com/pboling
|
|
349
|
+
[🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee-%E2%9C%93-a51611.svg?style=flat
|
|
350
|
+
[🖇buyme-img]: https://img.buymeacoffee.com/button-api/?text=Buy%20me%20a%20latte&emoji=&slug=pboling&button_colour=FFDD00&font_colour=000000&font_family=Cookie&outline_colour=000000&coffee_colour=ffffff
|
|
351
|
+
[🖇buyme]: https://www.buymeacoffee.com/pboling
|
|
352
|
+
[🖇paypal-img]: https://img.shields.io/badge/donate-paypal-a51611.svg?style=flat&logo=paypal
|
|
353
|
+
[🖇paypal-bottom-img]: https://img.shields.io/badge/donate-paypal-a51611.svg?style=for-the-badge&logo=paypal&color=0A0A0A
|
|
354
|
+
[🖇paypal]: https://www.paypal.com/paypalme/peterboling
|
|
355
|
+
[🖇floss-funding.dev]: https://floss-funding.dev
|
|
356
|
+
[🖇floss-funding-gem]: https://github.com/galtzo-floss/floss_funding
|
|
357
|
+
[✉️discord-invite]: https://discord.gg/3qme4XHNKN
|
|
358
|
+
[✉️discord-invite-img-ftb]: https://img.shields.io/discord/1373797679469170758?style=for-the-badge&logo=discord
|
|
359
|
+
[✉️ruby-friends-img]: https://img.shields.io/badge/daily.dev-%F0%9F%92%8E_Ruby_Friends-0A0A0A?style=for-the-badge&logo=dailydotdev&logoColor=white
|
|
360
|
+
[✉️ruby-friends]: https://app.daily.dev/squads/rubyfriends
|
|
361
|
+
|
|
362
|
+
[✇bundle-group-pattern]: https://gist.github.com/pboling/4564780
|
|
363
|
+
[⛳️gem-namespace]: https://github.com/rubocop-lts/rubocop-ruby2_2
|
|
364
|
+
[⛳️namespace-img]: https://img.shields.io/badge/namespace-Rubocop::Ruby22-3C2D2D.svg?style=square&logo=ruby&logoColor=white
|
|
365
|
+
[⛳️gem-name]: https://bestgems.org/gems/rubocop-ruby2_2
|
|
366
|
+
[⛳️name-img]: https://img.shields.io/badge/name-rubocop--ruby2__2-3C2D2D.svg?style=square&logo=rubygems&logoColor=red
|
|
367
|
+
[⛳️tag-img]: https://img.shields.io/github/tag/rubocop-lts/rubocop-ruby2_2.svg
|
|
368
|
+
[⛳️tag]: https://github.com/rubocop-lts/rubocop-ruby2_2/releases
|
|
369
|
+
[🚂maint-blog]: http://www.railsbling.com/tags/rubocop-ruby2_2
|
|
370
|
+
[🚂maint-blog-img]: https://img.shields.io/badge/blog-railsbling-0093D0.svg?style=for-the-badge&logo=rubyonrails&logoColor=orange
|
|
371
|
+
[🚂maint-contact]: http://www.railsbling.com/contact
|
|
372
|
+
[🚂maint-contact-img]: https://img.shields.io/badge/Contact-Maintainer-0093D0.svg?style=flat&logo=rubyonrails&logoColor=red
|
|
373
|
+
[💖🖇linkedin]: http://www.linkedin.com/in/peterboling
|
|
374
|
+
[💖🖇linkedin-img]: https://img.shields.io/badge/LinkedIn-Profile-0B66C2?style=flat&logo=newjapanprowrestling
|
|
375
|
+
[💖✌️wellfound]: https://wellfound.com/u/peter-boling
|
|
376
|
+
[💖✌️wellfound-img]: https://img.shields.io/badge/peter--boling-orange?style=flat&logo=wellfound
|
|
377
|
+
[💖💲crunchbase]: https://www.crunchbase.com/person/peter-boling
|
|
378
|
+
[💖💲crunchbase-img]: https://img.shields.io/badge/peter--boling-purple?style=flat&logo=crunchbase
|
|
379
|
+
[💖🐘ruby-mast]: https://ruby.social/@galtzo
|
|
380
|
+
[💖🐘ruby-mast-img]: https://img.shields.io/mastodon/follow/109447111526622197?domain=https://ruby.social&style=flat&logo=mastodon&label=Ruby%20@galtzo
|
|
381
|
+
[💖🦋bluesky]: https://bsky.app/profile/galtzo.com
|
|
382
|
+
[💖🦋bluesky-img]: https://img.shields.io/badge/@galtzo.com-0285FF?style=flat&logo=bluesky&logoColor=white
|
|
383
|
+
[💖🌳linktree]: https://linktr.ee/galtzo
|
|
384
|
+
[💖🌳linktree-img]: https://img.shields.io/badge/galtzo-purple?style=flat&logo=linktree
|
|
385
|
+
[💖💁🏼♂️devto]: https://dev.to/galtzo
|
|
386
|
+
[💖💁🏼♂️devto-img]: https://img.shields.io/badge/dev.to-0A0A0A?style=flat&logo=devdotto&logoColor=white
|
|
387
|
+
[💖💁🏼♂️aboutme]: https://about.me/peter.boling
|
|
388
|
+
[💖💁🏼♂️aboutme-img]: https://img.shields.io/badge/about.me-0A0A0A?style=flat&logo=aboutme&logoColor=white
|
|
389
|
+
[💖🧊berg]: https://codeberg.org/pboling
|
|
390
|
+
[💖🐙hub]: https://github.org/pboling
|
|
391
|
+
[💖🛖hut]: https://sr.ht/~galtzo/
|
|
392
|
+
[💖🧪lab]: https://gitlab.com/pboling
|
|
393
|
+
[👨🏼🏫expsup-upwork]: https://www.upwork.com/freelancers/~014942e9b056abdf86?mp_source=share
|
|
394
|
+
[👨🏼🏫expsup-upwork-img]: https://img.shields.io/badge/UpWork-13544E?style=for-the-badge&logo=Upwork&logoColor=white
|
|
395
|
+
[👨🏼🏫expsup-codementor]: https://www.codementor.io/peterboling?utm_source=github&utm_medium=button&utm_term=peterboling&utm_campaign=github
|
|
396
|
+
[👨🏼🏫expsup-codementor-img]: https://img.shields.io/badge/CodeMentor-Get_Help-1abc9c?style=for-the-badge&logo=CodeMentor&logoColor=white
|
|
397
|
+
[🏙️entsup-tidelift]: https://tidelift.com/subscription/pkg/rubygems-rubocop-ruby2_2?utm_source=rubygems-rubocop-ruby2_2&utm_medium=referral&utm_campaign=readme
|
|
398
|
+
[🏙️entsup-tidelift-img]: https://img.shields.io/badge/Tidelift_and_Sonar-Enterprise_Support-FD3456?style=for-the-badge&logo=sonar&logoColor=white
|
|
399
|
+
[🏙️entsup-tidelift-sonar]: https://blog.tidelift.com/tidelift-joins-sonar
|
|
400
|
+
[💁🏼♂️peterboling]: http://www.peterboling.com
|
|
401
|
+
[🚂railsbling]: http://www.railsbling.com
|
|
402
|
+
[📜src-gl-img]: https://img.shields.io/badge/GitLab-FBA326?style=for-the-badge&logo=Gitlab&logoColor=orange
|
|
403
|
+
[📜src-gl]: https://gitlab.com/rubocop-lts/rubocop-ruby2_2
|
|
404
|
+
[📜src-cb-img]: https://img.shields.io/badge/CodeBerg-4893CC?style=for-the-badge&logo=CodeBerg&logoColor=blue
|
|
405
|
+
[📜src-cb]: https://codeberg.org/rubocop-lts/rubocop-ruby2_2
|
|
406
|
+
[📜src-gh-img]: https://img.shields.io/badge/GitHub-238636?style=for-the-badge&logo=Github&logoColor=green
|
|
407
|
+
[📜src-gh]: https://github.com/rubocop-lts/rubocop-ruby2_2
|
|
408
|
+
[📜docs-cr-rd-img]: https://img.shields.io/badge/RubyDoc-Current_Release-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
|
|
409
|
+
[📜docs-head-rd-img]: https://img.shields.io/badge/YARD_on_Galtzo.com-HEAD-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
|
|
410
|
+
[📜gl-wiki]: https://gitlab.com/rubocop-lts/rubocop-ruby2_2/-/wikis/home
|
|
411
|
+
[📜gh-wiki]: https://github.com/rubocop-lts/rubocop-ruby2_2/wiki
|
|
412
|
+
[📜gl-wiki-img]: https://img.shields.io/badge/wiki-gitlab-943CD2.svg?style=for-the-badge&logo=gitlab&logoColor=white
|
|
413
|
+
[📜gh-wiki-img]: https://img.shields.io/badge/wiki-github-943CD2.svg?style=for-the-badge&logo=github&logoColor=white
|
|
414
|
+
[👽dl-rank]: https://bestgems.org/gems/rubocop-ruby2_2
|
|
415
|
+
[👽dl-ranki]: https://img.shields.io/gem/rd/rubocop-ruby2_2.svg
|
|
416
|
+
[👽version]: https://bestgems.org/gems/rubocop-ruby2_2
|
|
417
|
+
[👽versioni]: https://img.shields.io/gem/v/rubocop-ruby2_2.svg
|
|
418
|
+
[🏀qlty-mnt]: https://qlty.sh/gh/rubocop-lts/projects/rubocop-ruby2_2
|
|
419
|
+
[🏀qlty-mnti]: https://qlty.sh/gh/rubocop-lts/projects/rubocop-ruby2_2/maintainability.svg
|
|
420
|
+
[🏀qlty-cov]: https://qlty.sh/gh/rubocop-lts/projects/rubocop-ruby2_2/metrics/code?sort=coverageRating
|
|
421
|
+
[🏀qlty-covi]: https://qlty.sh/gh/rubocop-lts/projects/rubocop-ruby2_2/coverage.svg
|
|
422
|
+
[🏀codecov]: https://codecov.io/gh/rubocop-lts/rubocop-ruby2_2
|
|
423
|
+
[🏀codecovi]: https://codecov.io/gh/rubocop-lts/rubocop-ruby2_2/graph/badge.svg
|
|
424
|
+
[🏀coveralls]: https://coveralls.io/github/rubocop-lts/rubocop-ruby2_2?branch=main
|
|
425
|
+
[🏀coveralls-img]: https://coveralls.io/repos/github/rubocop-lts/rubocop-ruby2_2/badge.svg?branch=main
|
|
426
|
+
[🚎ruby-3.2-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/ruby-3.2.yml
|
|
427
|
+
[🚎ruby-3.3-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/ruby-3.3.yml
|
|
428
|
+
[🚎ruby-3.4-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/ruby-3.4.yml
|
|
429
|
+
[🚎jruby-10.0-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/jruby-10.0.yml
|
|
430
|
+
[🚎truby-24.2-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/truffleruby-24.2.yml
|
|
431
|
+
[🚎truby-25.0-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/truffleruby-25.0.yml
|
|
432
|
+
[🚎truby-33.0-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/truffleruby-33.0.yml
|
|
433
|
+
[🚎2-cov-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/coverage.yml
|
|
434
|
+
[🚎2-cov-wfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/coverage.yml/badge.svg
|
|
435
|
+
[🚎3-hd-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/heads.yml
|
|
436
|
+
[🚎3-hd-wfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/heads.yml/badge.svg
|
|
437
|
+
[🚎5-st-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/style.yml
|
|
438
|
+
[🚎5-st-wfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/style.yml/badge.svg
|
|
439
|
+
[🚎9-t-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/truffle.yml
|
|
440
|
+
[🚎9-t-wfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/truffle.yml/badge.svg
|
|
441
|
+
[🚎10-j-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/jruby.yml
|
|
442
|
+
[🚎10-j-wfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/jruby.yml/badge.svg
|
|
443
|
+
[🚎11-c-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/current.yml
|
|
444
|
+
[🚎11-c-wfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/current.yml/badge.svg
|
|
445
|
+
[🚎12-crh-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/dep-heads.yml
|
|
446
|
+
[🚎12-crh-wfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/dep-heads.yml/badge.svg
|
|
447
|
+
[🚎13-🔒️-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/locked_deps.yml
|
|
448
|
+
[🚎13-🔒️-wfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/locked_deps.yml/badge.svg
|
|
449
|
+
[🚎14-🔓️-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/unlocked_deps.yml
|
|
450
|
+
[🚎14-🔓️-wfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/unlocked_deps.yml/badge.svg
|
|
451
|
+
[🚎15-🪪-wf]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/license-eye.yml
|
|
452
|
+
[🚎15-🪪-wfi]: https://github.com/rubocop-lts/rubocop-ruby2_2/actions/workflows/license-eye.yml/badge.svg
|
|
453
|
+
[💎ruby-3.2i]: https://img.shields.io/badge/Ruby-3.2-CC342D?style=for-the-badge&logo=ruby&logoColor=white
|
|
454
|
+
[💎ruby-3.3i]: https://img.shields.io/badge/Ruby-3.3-CC342D?style=for-the-badge&logo=ruby&logoColor=white
|
|
455
|
+
[💎ruby-3.4i]: https://img.shields.io/badge/Ruby-3.4-CC342D?style=for-the-badge&logo=ruby&logoColor=white
|
|
456
|
+
[💎ruby-c-i]: https://img.shields.io/badge/Ruby-current-CC342D?style=for-the-badge&logo=ruby&logoColor=green
|
|
457
|
+
[💎ruby-headi]: https://img.shields.io/badge/Ruby-HEAD-CC342D?style=for-the-badge&logo=ruby&logoColor=blue
|
|
458
|
+
[💎truby-24.2i]: https://img.shields.io/badge/Truffle_Ruby-24.2-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
|
|
459
|
+
[💎truby-25.0i]: https://img.shields.io/badge/Truffle_Ruby-25.0-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
|
|
460
|
+
[💎truby-33.0i]: https://img.shields.io/badge/Truffle_Ruby-33.0-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
|
|
461
|
+
[💎truby-c-i]: https://img.shields.io/badge/Truffle_Ruby-current-34BCB1?style=for-the-badge&logo=ruby&logoColor=green
|
|
462
|
+
[💎truby-headi]: https://img.shields.io/badge/Truffle_Ruby-HEAD-34BCB1?style=for-the-badge&logo=ruby&logoColor=blue
|
|
463
|
+
[💎jruby-10.0i]: https://img.shields.io/badge/JRuby-10.0-FBE742?style=for-the-badge&logo=ruby&logoColor=red
|
|
464
|
+
[💎jruby-c-i]: https://img.shields.io/badge/JRuby-current-FBE742?style=for-the-badge&logo=ruby&logoColor=green
|
|
465
|
+
[💎jruby-headi]: https://img.shields.io/badge/JRuby-HEAD-FBE742?style=for-the-badge&logo=ruby&logoColor=blue
|
|
466
|
+
[🤝gh-issues]: https://github.com/rubocop-lts/rubocop-ruby2_2/issues
|
|
467
|
+
[🤝gh-pulls]: https://github.com/rubocop-lts/rubocop-ruby2_2/pulls
|
|
468
|
+
[🤝gl-issues]: https://gitlab.com/rubocop-lts/rubocop-ruby2_2/-/issues
|
|
469
|
+
[🤝gl-pulls]: https://gitlab.com/rubocop-lts/rubocop-ruby2_2/-/merge_requests
|
|
470
|
+
[🤝cb-issues]: https://codeberg.org/rubocop-lts/rubocop-ruby2_2/issues
|
|
471
|
+
[🤝cb-pulls]: https://codeberg.org/rubocop-lts/rubocop-ruby2_2/pulls
|
|
472
|
+
[🤝cb-donate]: https://donate.codeberg.org/
|
|
473
|
+
[🤝contributing]: https://github.com/rubocop-lts/rubocop-ruby2_2/blob/main/CONTRIBUTING.md
|
|
474
|
+
[🏀codecov-g]: https://codecov.io/gh/rubocop-lts/rubocop-ruby2_2/graph/badge.svg
|
|
475
|
+
[🖐contrib-rocks]: https://contrib.rocks
|
|
476
|
+
[🖐contributors]: https://github.com/rubocop-lts/rubocop-ruby2_2/graphs/contributors
|
|
477
|
+
[🖐contributors-img]: https://contrib.rocks/image?repo=rubocop-lts/rubocop-ruby2_2
|
|
478
|
+
[🚎contributors-gl]: https://gitlab.com/rubocop-lts/rubocop-ruby2_2/-/graphs/main
|
|
479
|
+
[🪇conduct]: https://github.com/rubocop-lts/rubocop-ruby2_2/blob/main/CODE_OF_CONDUCT.md
|
|
480
|
+
[🪇conduct-img]: https://img.shields.io/badge/Contributor_Covenant-2.1-259D6C.svg
|
|
481
|
+
[📌pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
|
|
482
|
+
[📌semver]: https://semver.org/spec/v2.0.0.html
|
|
483
|
+
[📌semver-img]: https://img.shields.io/badge/semver-2.0.0-259D6C.svg?style=flat
|
|
484
|
+
[📌semver-breaking]: https://github.com/semver/semver/issues/716#issuecomment-869336139
|
|
485
|
+
[📌major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
|
|
486
|
+
[📌changelog]: https://github.com/rubocop-lts/rubocop-ruby2_2/blob/main/CHANGELOG.md
|
|
487
|
+
[📗keep-changelog]: https://keepachangelog.com/en/1.0.0/
|
|
488
|
+
[📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-34495e.svg?style=flat
|
|
489
|
+
[📌gitmoji]: https://gitmoji.dev
|
|
490
|
+
[📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
|
|
491
|
+
[🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
|
|
492
|
+
[🧮kloc-img]: https://img.shields.io/badge/KLOC-0.029-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
|
|
493
|
+
[🔐security]: https://github.com/rubocop-lts/rubocop-ruby2_2/blob/main/SECURITY.md
|
|
494
|
+
[🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
|
|
495
|
+
[📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
|
|
496
|
+
[📄license]: LICENSE.md
|
|
497
|
+
[📄license-ref]: MIT.md
|
|
498
|
+
[📄license-img]: https://img.shields.io/badge/License-MIT-259D6C.svg
|
|
499
|
+
[📄license-compat]: https://www.apache.org/legal/resolved.html#category-a
|
|
500
|
+
[📄license-compat-img]: https://img.shields.io/badge/Apache_Compatible:_Category_A-%E2%9C%93-259D6C.svg?style=flat&logo=Apache
|
|
501
|
+
|
|
502
|
+
[📄ilo-declaration]: https://www.ilo.org/declaration/lang--en/index.htm
|
|
503
|
+
[📄ilo-declaration-img]: https://img.shields.io/badge/ILO_Fundamental_Principles-✓-259D6C.svg?style=flat
|
|
504
|
+
[🚎yard-current]: http://rubydoc.info/gems/rubocop-ruby2_2
|
|
505
|
+
[🚎yard-head]: https://rubocop-ruby2-2.galtzo.com
|
|
506
|
+
[💎stone_checksums]: https://github.com/galtzo-floss/stone_checksums
|
|
507
|
+
[💎SHA_checksums]: https://gitlab.com/rubocop-lts/rubocop-ruby2_2/-/tree/main/checksums
|
|
508
|
+
[💎rlts]: https://github.com/rubocop-lts/rubocop-lts
|
|
509
|
+
[💎rlts-img]: https://img.shields.io/badge/code_style_&_linting-rubocop--lts-34495e.svg?plastic&logo=ruby&logoColor=white
|
|
510
|
+
[💎appraisal2]: https://github.com/appraisal-rb/appraisal2
|
|
511
|
+
[💎appraisal2-img]: https://img.shields.io/badge/appraised_by-appraisal2-34495e.svg?plastic&logo=ruby&logoColor=white
|
|
512
|
+
[💎d-in-dvcs]: https://railsbling.com/posts/dvcs/put_the_d_in_dvcs/
|
|
513
|
+
|
|
514
|
+
<!-- kettle-jem:metadata:start -->
|
|
515
|
+
| Field | Value |
|
|
516
|
+
|---|---|
|
|
517
|
+
| Package | rubocop-ruby2_2 |
|
|
518
|
+
| Description | 🦾 Configure RuboCop + a bevy of friends to gradually lint Ruby 2.2 code |
|
|
519
|
+
| Homepage | https://github.com/rubocop-lts/rubocop-ruby2_2 |
|
|
520
|
+
| Source | https://github.com/rubocop-lts/rubocop-ruby2_2 |
|
|
521
|
+
| License | `MIT` |
|
|
522
|
+
| Funding | https://github.com/sponsors/pboling, https://ko-fi.com/pboling, https://liberapay.com/pboling/donate, https://opencollective.com/rubocop-lts, https://thanks.dev/u/gh/pboling, https://tidelift.com/funding/github/rubygems/rubocop-ruby2_2, https://www.buymeacoffee.com/pboling |
|
|
523
|
+
<!-- kettle-jem:metadata:end -->
|