standard-rubocop-lts 1.0.10 → 2.0.0
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 +19 -0
- data/CODE_OF_CONDUCT.md +80 -29
- data/CONTRIBUTING.md +91 -28
- data/README.md +281 -111
- data/SECURITY.md +2 -1
- data/config/internal/bin-bundle.yml +37 -0
- data/config/internal/ruby-1.9.yml +4 -0
- data/config/internal/ruby-2.0.yml +6 -0
- data/config/internal/ruby-3.4.yml +4 -0
- data/config/internal/ruby-3.5.yml +6 -0
- data/config/ruby-1.8.yml +6 -4
- data/config/ruby-1.9.yml +6 -4
- data/config/ruby-2.0.yml +6 -4
- data/config/ruby-2.1.yml +6 -4
- data/config/ruby-2.2.yml +6 -4
- data/config/ruby-2.3.yml +6 -4
- data/config/ruby-2.4.yml +6 -4
- data/config/ruby-2.5.yml +6 -4
- data/config/ruby-2.6.yml +6 -4
- data/config/ruby-2.7.yml +7 -4
- data/config/ruby-3.0.yml +7 -4
- data/config/ruby-3.1.yml +7 -4
- data/config/ruby-3.2.yml +7 -4
- data/config/ruby-3.3.yml +8 -9
- data/config/ruby-3.4.yml +31 -0
- data/config/ruby-3.5.yml +32 -0
- data/lib/standard/rubocop/lts/version.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +91 -137
- metadata.gz.sig +0 -0
data/README.md
CHANGED
@@ -18,8 +18,35 @@
|
|
18
18
|
|
19
19
|
# 🦾 Standard::Rubocop::Lts
|
20
20
|
|
21
|
-
|
22
|
-
|
21
|
+
[![Version][👽versioni]][👽version]
|
22
|
+
[![License: MIT][📄license-img]][📄license-ref]
|
23
|
+
[![Downloads Rank][👽dl-ranki]][👽dl-rank]
|
24
|
+
[![Open Source Helpers][👽oss-helpi]][👽oss-help]
|
25
|
+
[![Depfu][🔑depfui♻️]][🔑depfu]
|
26
|
+
[![CodeCov Test Coverage][🔑codecovi♻️]][🔑codecov]
|
27
|
+
[![Coveralls Test Coverage][🔑coveralls-img]][🔑coveralls]
|
28
|
+
[![CodeClimate Test Coverage][🔑cc-covi♻️]][🔑cc-cov]
|
29
|
+
[![Maintainability][🔑cc-mnti♻️]][🔑cc-mnt]
|
30
|
+
[![CI Heads][🚎3-hd-wfi]][🚎3-hd-wf]
|
31
|
+
[![CI Current][🚎11-c-wfi]][🚎11-c-wf]
|
32
|
+
[![CI Supported][🚎6-s-wfi]][🚎6-s-wf]
|
33
|
+
[![CI Test Coverage][🚎2-cov-wfi]][🚎2-cov-wf]
|
34
|
+
[![CI Style][🚎5-st-wfi]][🚎5-st-wf]
|
35
|
+
[![CI Dog Food][🚎8-df-wfi]][🚎8-df-wf]
|
36
|
+
|
37
|
+
---
|
38
|
+
|
39
|
+
[![Liberapay Patrons][⛳liberapay-img]][⛳liberapay]
|
40
|
+
[![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor]
|
41
|
+
[![Buy me a coffee][🖇buyme-small-img]][🖇buyme]
|
42
|
+
[![Donate on Polar][🖇polar-img]][🖇polar]
|
43
|
+
[![Donate to my FLOSS or refugee efforts at ko-fi.com][🖇kofi-img]][🖇kofi]
|
44
|
+
[![Donate to my FLOSS or refugee efforts using Patreon][🖇patreon-img]][🖇patreon]
|
45
|
+
|
46
|
+
Extended [standard (Standard Ruby)][standardrb] config shims for any and every version of Ruby,
|
47
|
+
back to Ruby version 1.8.
|
48
|
+
Enables Ruby projects to more confidently support even the most finely-aged Rubies.
|
49
|
+
Part of the `rubocop-lts` [gem family](#-a-gem-family).
|
23
50
|
|
24
51
|
Use the rules standard gives you, and then add more,
|
25
52
|
to increase your code's compatibility across multiple versions of Ruby.
|
@@ -30,7 +57,7 @@ Only reach as far back as you need to go!
|
|
30
57
|
|
31
58
|
---
|
32
59
|
|
33
|
-
The **RuboCop LTS** family of gems is the distillation of
|
60
|
+
The **RuboCop LTS** family of gems is the distillation of more than 20 years
|
34
61
|
of my own Ruby expertise and source code diving,
|
35
62
|
built on the shoulders of the expertise of many others;
|
36
63
|
organizing that expertise into per-Ruby-version sets of configurations.
|
@@ -50,57 +77,19 @@ please support my efforts by making a donation, or becoming a sponsor.
|
|
50
77
|
|
51
78
|
[Why-Build-This]: https://rubocop-lts.gitlab.io/about/#why-build-this-
|
52
79
|
|
53
|
-
<div id="badges">
|
54
|
-
|
55
|
-
[![Liberapay Patrons][⛳liberapay-img]][⛳liberapay]
|
56
|
-
[![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor]
|
57
|
-
|
58
|
-
<span class="badge-buymeacoffee">
|
59
|
-
<a href="https://ko-fi.com/O5O86SNP4" target='_blank' title="Donate to my FLOSS or refugee efforts at ko-fi.com"><img src="https://img.shields.io/badge/buy%20me%20coffee-donate-yellow.svg" alt="Buy me coffee donation button" /></a>
|
60
|
-
</span>
|
61
|
-
<span class="badge-patreon">
|
62
|
-
<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>
|
63
|
-
</span>
|
64
|
-
|
65
|
-
</div>
|
66
|
-
|
67
|
-
[⛳liberapay-img]: https://img.shields.io/liberapay/patrons/pboling.svg?logo=liberapay
|
68
|
-
[⛳liberapay]: https://liberapay.com/pboling/donate
|
69
|
-
[🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
|
70
|
-
[🖇sponsor]: https://github.com/sponsors/pboling
|
71
|
-
|
72
80
|
---
|
73
81
|
|
74
82
|
NOTE: You might be interested in [`rubocop-lts`][rlts] which sits as a higher level than, and depends on, this gem.
|
75
83
|
It will enable your Ruby style rules to keep pace with whatever version of Ruby your project happens to be on!
|
76
84
|
|
77
|
-
| Gem Name
|
78
|
-
|
79
|
-
| [`rubocop-lts`][⛳️lts-gh]
|
80
|
-
| [`standard-rubocop-lts`][⛳️ini-gh] | [![Gem Version][⛳️ini-vi]][⛳️ini-g] | [![Total DL][🖇️ini-dti]][⛳️ini-g] [![DL Rank][🏘️ini-rti]][⛳️ini-g] | [![
|
81
|
-
|
82
|
-
<!-- columnar badge #s for Project Health table:
|
83
|
-
⛳️
|
84
|
-
🖇
|
85
|
-
🏘
|
86
|
-
🚎
|
87
|
-
🖐
|
88
|
-
🧮
|
89
|
-
📗
|
90
|
-
🚀
|
91
|
-
💄
|
92
|
-
👽
|
93
|
-
-->
|
85
|
+
| Gem Name | Version | Downloads | Activity |
|
86
|
+
|------------------------------------|-------------------------------------|----------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------|
|
87
|
+
| [`rubocop-lts`][⛳️lts-gh] | [![Gem Version][⛳️lts-vi]][⛳️lts-g] | [![Total DL][🖇️lts-dti]][⛳️lts-g] [![DL Rank][🏘️lts-rti]][⛳️lts-g] | [![Open Issues][📗lts-ioi]][📗lts-io] [![Closed Issues][🚀lts-ici]][🚀lts-ic] [![Open PRs][💄lts-poi]][💄lts-po] [![Closed PRs][👽lts-pci]][👽lts-pc] |
|
88
|
+
| [`standard-rubocop-lts`][⛳️ini-gh] | [![Gem Version][⛳️ini-vi]][⛳️ini-g] | [![Total DL][🖇️ini-dti]][⛳️ini-g] [![DL Rank][🏘️ini-rti]][⛳️ini-g] | [![Open Issues][📗ini-ioi]][📗ini-io] [![Closed Issues][🚀ini-ici]][🚀ini-ic] [![Open PRs][💄ini-poi]][💄ini-po] [![Closed PRs][👽ini-pci]][👽ini-pc] |
|
94
89
|
|
95
90
|
[⛳️lts-vi]: http://img.shields.io/gem/v/rubocop-lts.svg
|
96
91
|
[🖇️lts-dti]: https://img.shields.io/gem/dt/rubocop-lts.svg
|
97
92
|
[🏘️lts-rti]: https://img.shields.io/gem/rt/rubocop-lts.svg
|
98
|
-
[🚎lts-cwf]: https://github.com/rubocop-lts/rubocop-lts/actions/workflows/current.yml
|
99
|
-
[🚎lts-cwfi]: https://github.com/rubocop-lts/rubocop-lts/actions/workflows/current.yml/badge.svg
|
100
|
-
[🖐lts-hwf]: https://github.com/rubocop-lts/rubocop-lts/actions/workflows/heads.yml
|
101
|
-
[🖐lts-hwfi]: https://github.com/rubocop-lts/rubocop-lts/actions/workflows/heads.yml/badge.svg
|
102
|
-
[🧮lts-lwf]: https://github.com/rubocop-lts/rubocop-lts/actions/workflows/legacy.yml
|
103
|
-
[🧮lts-lwfi]: https://github.com/rubocop-lts/rubocop-lts/actions/workflows/legacy.yml/badge.svg
|
104
93
|
[📗lts-io]: https://github.com/rubocop-lts/rubocop-lts/issues
|
105
94
|
[📗lts-ioi]: https://img.shields.io/github/issues-raw/rubocop-lts/rubocop-lts
|
106
95
|
[🚀lts-ic]: https://github.com/rubocop-lts/rubocop-lts/issues?q=is%3Aissue+is%3Aclosed
|
@@ -119,8 +108,6 @@ It will enable your Ruby style rules to keep pace with whatever version of Ruby
|
|
119
108
|
[🚎ini-cwfi]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/current.yml/badge.svg
|
120
109
|
[🖐ini-hwf]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/heads.yml
|
121
110
|
[🖐ini-hwfi]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/heads.yml/badge.svg
|
122
|
-
[🧮ini-lwf]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/legacy.yml
|
123
|
-
[🧮ini-lwfi]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/legacy.yml/badge.svg
|
124
111
|
[📗ini-io]: https://github.com/rubocop-lts/standard-rubocop-lts/issues
|
125
112
|
[📗ini-ioi]: https://img.shields.io/github/issues-raw/rubocop-lts/standard-rubocop-lts
|
126
113
|
[🚀ini-ic]: https://github.com/rubocop-lts/standard-rubocop-lts/issues?q=is%3Aissue+is%3Aclosed
|
@@ -138,6 +125,7 @@ The `rubocop-lts` family of gems has a version supporting any version of Ruby yo
|
|
138
125
|
They can be used as development dependencies for libraries or applications.
|
139
126
|
|
140
127
|
- [`rubocop-lts`][rlts]
|
128
|
+
- [`rubocop-lts-rspec`][rlts-rspec]
|
141
129
|
- [`standard-rubocop-lts`][stdrlts]
|
142
130
|
- [`rubocop-ruby1_8`][rr18]
|
143
131
|
- [`rubocop-ruby1_9`][rr19]
|
@@ -152,8 +140,11 @@ They can be used as development dependencies for libraries or applications.
|
|
152
140
|
- [`rubocop-ruby3_0`][rr30]
|
153
141
|
- [`rubocop-ruby3_1`][rr31]
|
154
142
|
- [`rubocop-ruby3_2`][rr32]
|
143
|
+
- [`rubocop-ruby3_3`][rr33]
|
144
|
+
- [`rubocop-ruby3_4`][rr34]
|
155
145
|
|
156
146
|
[rlts]: https://rubocop-lts.gitlab.io/#installation-
|
147
|
+
[rlts-rspec]: https://gitlab.com/rubocop-lts/rubocop-lts-rspec
|
157
148
|
[stdrlts]: https://gitlab.com/rubocop-lts/standard-rubocop-lts
|
158
149
|
[rr18]: https://gitlab.com/rubocop-lts/rubocop-ruby1_8
|
159
150
|
[rr19]: https://gitlab.com/rubocop-lts/rubocop-ruby1_9
|
@@ -168,6 +159,8 @@ They can be used as development dependencies for libraries or applications.
|
|
168
159
|
[rr30]: https://gitlab.com/rubocop-lts/rubocop-ruby3_0
|
169
160
|
[rr31]: https://gitlab.com/rubocop-lts/rubocop-ruby3_1
|
170
161
|
[rr32]: https://gitlab.com/rubocop-lts/rubocop-ruby3_2
|
162
|
+
[rr33]: https://gitlab.com/rubocop-lts/rubocop-ruby3_3
|
163
|
+
[rr34]: https://gitlab.com/rubocop-lts/rubocop-ruby3_4
|
171
164
|
|
172
165
|
## 🗿 Stable
|
173
166
|
|
@@ -178,6 +171,19 @@ A typical release cycle for a gem in the `rubocop-lts` family is roughly every s
|
|
178
171
|
though eventually analysis support for an old version of Ruby will be dropped.
|
179
172
|
When that happens releases of the `rubocop-lts` gem for that version of Ruby will (mostly) cease.
|
180
173
|
|
174
|
+
## Info you can shake a stick at
|
175
|
+
|
176
|
+
| Tokens to Remember | [![Gem name][⛳️name-img]][⛳️gem-name] [![Gem namespace][⛳️namespace-img]][⛳️gem-namespace] |
|
177
|
+
|--------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
178
|
+
| Works with MRI Ruby 3.2+ | [![Ruby 3.2 Compat][💎ruby-3.2i]][🚎6-s-wf] [![Ruby 3.3 Compat][💎ruby-3.3i]][🚎6-s-wf] [![Ruby 3.4 Compat][💎ruby-c-i]][🚎11-c-wf] [![Ruby HEAD Compat][💎ruby-headi]][🚎3-hd-wf] |
|
179
|
+
| Source | [![Source on GitLab.com][📜src-gl-img]][📜src-gl] [![Source on Github.com][📜src-gh-img]][📜src-gh] [![The best SHA: dQw4w9WgXcQ!][🧮kloc-img]][🧮kloc] |
|
180
|
+
| Documentation | [![Current release on RubyDoc.info][📜docs-cr-rd-img]][🚎yard-current] [![HEAD on RubyDoc.info][📜docs-head-rd-img]][🚎yard-head] [![BDFL Blog][🚂bdfl-blog-img]][🚂bdfl-blog] [![Wiki][📜wiki-img]][📜wiki] |
|
181
|
+
| Compliance | [![License: MIT][📄license-img]][📄license-ref] [![📄ilo-declaration-img]][📄ilo-declaration] [![Security Policy][🔐security-img]][🔐security] [![CodeQL][🖐codeQL-img]][🖐codeQL] [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct] [![SemVer 2.0.0][📌semver-img]][📌semver] [![Keep-A-Changelog 1.0.0][📗keep-changelog-img]][📗keep-changelog] |
|
182
|
+
| Expert 1:1 Support | [![Get help from me on Upwork][👨🏼🏫expsup-upwork-img]][👨🏼🏫expsup-upwork] `or` [![Get help from me on Codementor][👨🏼🏫expsup-codementor-img]][👨🏼🏫expsup-codementor] |
|
183
|
+
| Enterprise Support | [![Get help from me on Tidelift][🏙️entsup-tidelift-img]][🏙️entsup-tidelift]<br/>💡Subscribe for support guarantees covering _all_ FLOSS dependencies!<br/>💡Tidelift is part of [Sonar][🏙️entsup-tidelift-sonar]!<br/>💡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! |
|
184
|
+
| Comrade BDFL 🎖️ | [![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 BDFL][🚂bdfl-contact-img]][🚂bdfl-contact] [![My technical writing][💖💁🏼♂️devto-img]][💖💁🏼♂️devto] |
|
185
|
+
| `...` 💖 | [![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] |
|
186
|
+
|
181
187
|
## ✨ Installation
|
182
188
|
|
183
189
|
In case you missed it above - you may be better off _not_ depending on this gem _directly_.
|
@@ -212,7 +218,7 @@ Among other settings specific to your chosen minimum version of ruby,
|
|
212
218
|
the above _effectively_ results in the following config (& more):
|
213
219
|
|
214
220
|
```yaml
|
215
|
-
# We want Exclude and Include directives from different
|
221
|
+
# We want the Exclude and Include directives from different
|
216
222
|
# config files to get merged, not overwritten
|
217
223
|
inherit_mode:
|
218
224
|
merge:
|
@@ -275,8 +281,8 @@ Performance/IoReadlines:
|
|
275
281
|
# NOTE: Picking the right version of rubocop-lts automatically aligns:
|
276
282
|
# - gemspec's required_ruby_version
|
277
283
|
# - RuboCop's TargetRubyVersion
|
278
|
-
# e.g.
|
279
|
-
gem "rubocop-lts", "~>
|
284
|
+
# e.g. v24 for Ruby >= 3.2.0
|
285
|
+
gem "rubocop-lts", "~> 24.0", require: false
|
280
286
|
```
|
281
287
|
|
282
288
|
## 💻 Development
|
@@ -290,36 +296,107 @@ To install this gem onto your local machine, run `bundle exec rake install`.
|
|
290
296
|
|
291
297
|
### 🚀 Release Instructions
|
292
298
|
|
293
|
-
See [CONTRIBUTING.md][contributing].
|
299
|
+
See [CONTRIBUTING.md][🤝contributing].
|
300
|
+
|
301
|
+
## 🔐 Security
|
302
|
+
|
303
|
+
See [SECURITY.md][🔐security].
|
304
|
+
|
305
|
+
## 🤝 Contributing
|
306
|
+
|
307
|
+
If you need some ideas of where to help, you could work on adding more code coverage,
|
308
|
+
or if it is already 💯 (see [below](#code-coverage)) check TODOs (see [below](#todos)),
|
309
|
+
or check [issues][🤝issues], or [PRs][🤝pulls],
|
310
|
+
or use the gem and think about how it could be better.
|
311
|
+
|
312
|
+
We [![Keep A Changelog][📗keep-changelog-img]][📗keep-changelog] so if you make changes, remember to update it.
|
313
|
+
|
314
|
+
See [CONTRIBUTING.md][🤝contributing] for more detailed instructions.
|
294
315
|
|
295
|
-
|
316
|
+
### Code Coverage
|
296
317
|
|
297
|
-
|
318
|
+
[![Coverage Graph][🔑codecov-g♻️]][🔑codecov]
|
319
|
+
|
320
|
+
### 🪇 Code of Conduct
|
321
|
+
|
322
|
+
Everyone interacting in this project's codebases, issue trackers,
|
323
|
+
chat rooms and mailing lists is expected to follow the [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct].
|
298
324
|
|
299
325
|
## 🌈 Contributors
|
300
326
|
|
301
|
-
[![Contributors]
|
327
|
+
[![Contributors][🖐contributors-img]][🖐contributors]
|
328
|
+
|
329
|
+
Made with [contributors-img][🖐contrib-rocks].
|
330
|
+
|
331
|
+
Also see GitLab Contributors: [https://gitlab.com/rubocop-lts/standard-rubocop-lts/-/graphs/main][🚎contributors-gl]
|
332
|
+
|
333
|
+
## ⭐️ Star History
|
334
|
+
|
335
|
+
<a href="https://star-history.com/#rubocop-lts/standard-rubocop-lts&Date">
|
336
|
+
<picture>
|
337
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=rubocop-lts/standard-rubocop-lts&type=Date&theme=dark" />
|
338
|
+
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=rubocop-lts/standard-rubocop-lts&type=Date" />
|
339
|
+
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=rubocop-lts/standard-rubocop-lts&type=Date" />
|
340
|
+
</picture>
|
341
|
+
</a>
|
342
|
+
|
343
|
+
## 📌 Versioning
|
302
344
|
|
303
|
-
|
345
|
+
This Library adheres to [![Semantic Versioning 2.0.0][📌semver-img]][📌semver].
|
346
|
+
Violations of this scheme should be reported as bugs.
|
347
|
+
Specifically, if a minor or patch version is released that breaks backward compatibility,
|
348
|
+
a new version should be immediately released that restores compatibility.
|
349
|
+
Breaking changes to the public API will only be introduced with new major versions.
|
350
|
+
|
351
|
+
### 📌 Is "Platform Support" part of the public API?
|
352
|
+
|
353
|
+
Yes. But I'm obligated to include notes...
|
354
|
+
|
355
|
+
SemVer should, but doesn't explicitly, say that dropping support for specific Platforms
|
356
|
+
is a *breaking change* to an API.
|
357
|
+
It is obvious to many, but not all, and since the spec is silent, the bike shedding is endless.
|
358
|
+
|
359
|
+
> dropping support for a platform is both obviously and objectively a breaking change
|
360
|
+
|
361
|
+
- Jordan Harband (@ljharb) [in SemVer issue 716][📌semver-breaking]
|
362
|
+
|
363
|
+
To get a better understanding of how SemVer is intended to work over a project's lifetime,
|
364
|
+
read this article from the creator of SemVer:
|
365
|
+
|
366
|
+
- ["Major Version Numbers are Not Sacred"][📌major-versions-not-sacred]
|
367
|
+
|
368
|
+
As a result of this policy, and the interpretive lens used by the maintainer,
|
369
|
+
you can (and should) specify a dependency on these libraries using
|
370
|
+
the [Pessimistic Version Constraint][📌pvc] with two digits of precision.
|
371
|
+
|
372
|
+
For example:
|
373
|
+
|
374
|
+
```ruby
|
375
|
+
spec.add_dependency("standard-rubocop-lts", "~> 2.0")
|
376
|
+
```
|
377
|
+
|
378
|
+
See [CHANGELOG.md][📌changelog] for list of releases.
|
304
379
|
|
305
380
|
## 📄 License
|
306
381
|
|
307
382
|
The gem is available as open source under the terms of
|
308
|
-
the [MIT License][license] [![License: MIT][license-img]][license-ref].
|
309
|
-
See [LICENSE.txt][license] for the official [Copyright Notice][copyright-notice-explainer].
|
383
|
+
the [MIT License][📄license] [![License: MIT][📄license-img]][📄license-ref].
|
384
|
+
See [LICENSE.txt][📄license] for the official [Copyright Notice][📄copyright-notice-explainer].
|
310
385
|
|
311
386
|
<details>
|
312
387
|
<summary>Project Logos (standard-rubocop-lts)</summary>
|
313
388
|
|
314
389
|
See [docs/images/logo/README.txt][project-logos]
|
390
|
+
|
315
391
|
</details>
|
316
392
|
|
317
393
|
<details>
|
318
394
|
<summary>Organization Logo (rubocop-lts)</summary>
|
319
395
|
|
320
|
-
Author: [Yusuf Evli][org-logo-author]
|
321
|
-
Source: [Unsplash][org-logo-source]
|
322
|
-
License: [Unsplash License][org-logo-license]
|
396
|
+
- Author: [Yusuf Evli][org-logo-author]
|
397
|
+
- Source: [Unsplash][org-logo-source]
|
398
|
+
- License: [Unsplash License][org-logo-license]
|
399
|
+
|
323
400
|
</details>
|
324
401
|
|
325
402
|
[project-logos]: https://github.com/rubocop-lts/standard-rubocop-lts/blob/main/docs/images/logo/README.txt
|
@@ -329,55 +406,148 @@ License: [Unsplash License][org-logo-license]
|
|
329
406
|
|
330
407
|
### © Copyright
|
331
408
|
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
bugs. Specifically, if a minor or patch version is released that breaks backward compatibility, a new version should be
|
342
|
-
immediately released that restores compatibility. Breaking changes to the public API will only be introduced with new
|
343
|
-
major versions.
|
344
|
-
|
345
|
-
As a result of this policy, you can (and should) specify a dependency on this gem using
|
346
|
-
the [Pessimistic Version Constraint][pvc] with two digits of precision.
|
347
|
-
|
348
|
-
For example:
|
349
|
-
|
350
|
-
```ruby
|
351
|
-
spec.add_dependency "standard-rubocop-lts", "~> 1.0"
|
352
|
-
```
|
409
|
+
<p>
|
410
|
+
Copyright (c) 2023 - 2025 Peter H. Boling,
|
411
|
+
<a href="https://railsbling.com">
|
412
|
+
RailsBling.com
|
413
|
+
<picture>
|
414
|
+
<img alt="Rails Bling" height="20" src="https://railsbling.com/images/logos/RailsBling-TrainLogo.svg" />
|
415
|
+
</picture>
|
416
|
+
</a>
|
417
|
+
</p>
|
353
418
|
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
[
|
364
|
-
|
365
|
-
[
|
366
|
-
[
|
367
|
-
[
|
368
|
-
[
|
369
|
-
[
|
370
|
-
[
|
371
|
-
[
|
372
|
-
[
|
373
|
-
[
|
374
|
-
[
|
375
|
-
[
|
376
|
-
[
|
377
|
-
[
|
378
|
-
[
|
379
|
-
[
|
380
|
-
[
|
381
|
-
[
|
382
|
-
[
|
383
|
-
[
|
419
|
+
## 🤑 One more thing
|
420
|
+
|
421
|
+
You made it to the bottom of the page,
|
422
|
+
so perhaps you'll indulge me for another 20 seconds.
|
423
|
+
I maintain many dozens of gems, including this one,
|
424
|
+
because I want Ruby to be a great place for people to solve problems, big and small.
|
425
|
+
Please consider supporting my efforts via the giant yellow link below,
|
426
|
+
or one of the others at the head of this README.
|
427
|
+
|
428
|
+
[![Buy me a latte][🖇buyme-img]][🖇buyme]
|
429
|
+
|
430
|
+
[✇bundle-group-pattern]: https://gist.github.com/pboling/4564780
|
431
|
+
[⛳️gem-namespace]: https://github.com/rubocop-lts/standard-rubocop-lts/blob/main/lib/masq.rb
|
432
|
+
[⛳️namespace-img]: https://img.shields.io/badge/namespace-Standard%3A%3ARubocop%3A%3ALts-brightgreen.svg?style=flat&logo=ruby&logoColor=white
|
433
|
+
[⛳️gem-name]: https://rubygems.org/gems/standard-rubocop-lts
|
434
|
+
[⛳️name-img]: https://img.shields.io/badge/name-standard--rubocop--lts-brightgreen.svg?style=flat&logo=rubygems&logoColor=red
|
435
|
+
[🚂bdfl-blog]: http://www.railsbling.com/tags/standard-rubocop-lts
|
436
|
+
[🚂bdfl-blog-img]: https://img.shields.io/badge/blog-railsbling-0093D0.svg?style=for-the-badge&logo=rubyonrails&logoColor=orange
|
437
|
+
[🚂bdfl-contact]: http://www.railsbling.com/contact
|
438
|
+
[🚂bdfl-contact-img]: https://img.shields.io/badge/Contact-BDFL-0093D0.svg?style=flat&logo=rubyonrails&logoColor=red
|
439
|
+
[💖🖇linkedin]: http://www.linkedin.com/in/peterboling
|
440
|
+
[💖🖇linkedin-img]: https://img.shields.io/badge/PeterBoling-LinkedIn-0B66C2?style=flat&logo=newjapanprowrestling
|
441
|
+
[💖✌️wellfound]: https://angel.co/u/peter-boling
|
442
|
+
[💖✌️wellfound-img]: https://img.shields.io/badge/peter--boling-orange?style=flat&logo=wellfound
|
443
|
+
[💖💲crunchbase]: https://www.crunchbase.com/person/peter-boling
|
444
|
+
[💖💲crunchbase-img]: https://img.shields.io/badge/peter--boling-purple?style=flat&logo=crunchbase
|
445
|
+
[💖🐘ruby-mast]: https://ruby.social/@galtzo
|
446
|
+
[💖🐘ruby-mast-img]: https://img.shields.io/mastodon/follow/109447111526622197?domain=https%3A%2F%2Fruby.social&style=flat&logo=mastodon&label=Ruby%20%40galtzo
|
447
|
+
[💖🦋bluesky]: https://galtzo.bsky.social
|
448
|
+
[💖🦋bluesky-img]: https://img.shields.io/badge/@galtzo.bsky.social-0285FF?style=flat&logo=bluesky&logoColor=white
|
449
|
+
[💖🌳linktree]: https://linktr.ee/galtzo
|
450
|
+
[💖🌳linktree-img]: https://img.shields.io/badge/galtzo-purple?style=flat&logo=linktree
|
451
|
+
[💖💁🏼♂️devto]: https://dev.to/galtzo
|
452
|
+
[💖💁🏼♂️devto-img]: https://img.shields.io/badge/dev.to-0A0A0A?style=flat&logo=devdotto&logoColor=white
|
453
|
+
[💖💁🏼♂️aboutme]: https://about.me/peter.boling
|
454
|
+
[💖💁🏼♂️aboutme-img]: https://img.shields.io/badge/about.me-0A0A0A?style=flat&logo=aboutme&logoColor=white
|
455
|
+
[👨🏼🏫expsup-upwork]: https://www.upwork.com/freelancers/~014942e9b056abdf86?mp_source=share
|
456
|
+
[👨🏼🏫expsup-upwork-img]: https://img.shields.io/badge/UpWork-13544E?style=for-the-badge&logo=Upwork&logoColor=white
|
457
|
+
[👨🏼🏫expsup-codementor]: https://www.codementor.io/peterboling?utm_source=github&utm_medium=button&utm_term=peterboling&utm_campaign=github
|
458
|
+
[👨🏼🏫expsup-codementor-img]: https://img.shields.io/badge/CodeMentor-Get_Help-1abc9c?style=for-the-badge&logo=CodeMentor&logoColor=white
|
459
|
+
[🏙️entsup-tidelift]: https://tidelift.com/subscription
|
460
|
+
[🏙️entsup-tidelift-img]: https://img.shields.io/badge/Tidelift_and_Sonar-Enterprise_Support-FD3456?style=for-the-badge&logo=sonar&logoColor=white
|
461
|
+
[🏙️entsup-tidelift-sonar]: https://blog.tidelift.com/tidelift-joins-sonar
|
462
|
+
[💁🏼♂️peterboling]: http://www.peterboling.com
|
463
|
+
[🚂railsbling]: http://www.railsbling.com
|
464
|
+
[📜src-gl-img]: https://img.shields.io/badge/GitLab-FBA326?style=for-the-badge&logo=Gitlab&logoColor=orange
|
465
|
+
[📜src-gl]: https://gitlab.com/rubocop-lts/standard-rubocop-lts/
|
466
|
+
[📜src-gh-img]: https://img.shields.io/badge/GitHub-238636?style=for-the-badge&logo=Github&logoColor=green
|
467
|
+
[📜src-gh]: https://github.com/rubocop-lts/standard-rubocop-lts/
|
468
|
+
[📜docs-cr-rd-img]: https://img.shields.io/badge/RubyDoc-Current_Release-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
|
469
|
+
[📜docs-head-rd-img]: https://img.shields.io/badge/RubyDoc-HEAD-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
|
470
|
+
[📜wiki]: https://gitlab.com/rubocop-lts/standard-rubocop-lts/-/wikis/home
|
471
|
+
[📜wiki-img]: https://img.shields.io/badge/wiki-examples-943CD2.svg?style=for-the-badge&logo=Wiki&logoColor=white
|
472
|
+
[👽dl-rank]: https://rubygems.org/gems/standard-rubocop-lts
|
473
|
+
[👽dl-ranki]: https://img.shields.io/gem/rd/standard-rubocop-lts.svg
|
474
|
+
[👽oss-help]: https://www.codetriage.com/rubocop-lts/standard-rubocop-lts
|
475
|
+
[👽oss-helpi]: https://www.codetriage.com/rubocop-lts/standard-rubocop-lts/badges/users.svg
|
476
|
+
[👽version]: https://rubygems.org/gems/standard-rubocop-lts
|
477
|
+
[👽versioni]: https://img.shields.io/gem/v/standard-rubocop-lts.svg
|
478
|
+
[🔑cc-mnt]: https://qlty.sh/gh/rubocop-lts/projects/standard-rubocop-lts
|
479
|
+
[🔑cc-mnti♻️]: https://qlty.sh/badges/4daa5208-3ae5-457c-b601-10de129d17b1/maintainability.svg
|
480
|
+
[🔑cc-cov]: https://qlty.sh/gh/rubocop-lts/projects/standard-rubocop-lts
|
481
|
+
[🔑cc-covi♻️]: https://qlty.sh/badges/4daa5208-3ae5-457c-b601-10de129d17b1/test_coverage.svg
|
482
|
+
[🔑codecov]: https://codecov.io/gh/rubocop-lts/standard-rubocop-lts
|
483
|
+
[🔑codecovi♻️]: https://codecov.io/gh/rubocop-lts/standard-rubocop-lts/branch/main/graph/badge.svg?token=l44un82aUp
|
484
|
+
[🔑coveralls]: https://coveralls.io/github/rubocop-lts/standard-rubocop-lts?branch=main
|
485
|
+
[🔑coveralls-img]: https://coveralls.io/repos/github/rubocop-lts/standard-rubocop-lts/badge.svg?branch=main
|
486
|
+
[🔑depfu]: https://depfu.com/github/rubocop-lts/standard-rubocop-lts?project_id=60302
|
487
|
+
[🔑depfui♻️]: https://badges.depfu.com/badges/31479c66ece5143367e8d3d50aef18b5/count.svg
|
488
|
+
[🖐codeQL]: https://github.com/rubocop-lts/standard-rubocop-lts/security/code-scanning
|
489
|
+
[🖐codeQL-img]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/codeql-analysis.yml/badge.svg
|
490
|
+
[🚎1-an-wf]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/ancient.yml
|
491
|
+
[🚎1-an-wfi]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/ancient.yml/badge.svg
|
492
|
+
[🚎2-cov-wf]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/coverage.yml
|
493
|
+
[🚎2-cov-wfi]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/coverage.yml/badge.svg
|
494
|
+
[🚎3-hd-wf]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/heads.yml
|
495
|
+
[🚎3-hd-wfi]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/heads.yml/badge.svg
|
496
|
+
[🚎5-st-wf]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/style.yml
|
497
|
+
[🚎5-st-wfi]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/style.yml/badge.svg
|
498
|
+
[🚎6-s-wf]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/supported.yml
|
499
|
+
[🚎6-s-wfi]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/supported.yml/badge.svg
|
500
|
+
[🚎8-df-wf]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/dogfood.yml
|
501
|
+
[🚎8-df-wfi]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/dogfood.yml/badge.svg
|
502
|
+
[🚎11-c-wf]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/current.yml
|
503
|
+
[🚎11-c-wfi]: https://github.com/rubocop-lts/standard-rubocop-lts/actions/workflows/current.yml/badge.svg
|
504
|
+
[⛳liberapay-img]: https://img.shields.io/liberapay/patrons/pboling.svg?logo=liberapay
|
505
|
+
[⛳liberapay]: https://liberapay.com/pboling/donate
|
506
|
+
[🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
|
507
|
+
[🖇sponsor]: https://github.com/sponsors/pboling
|
508
|
+
[🖇polar-img]: https://img.shields.io/badge/polar-donate-yellow.svg
|
509
|
+
[🖇polar]: https://polar.sh/pboling
|
510
|
+
[🖇kofi-img]: https://img.shields.io/badge/a_more_different_coffee-✓-yellow.svg
|
511
|
+
[🖇kofi]: https://ko-fi.com/O5O86SNP4
|
512
|
+
[🖇patreon-img]: https://img.shields.io/badge/patreon-donate-yellow.svg
|
513
|
+
[🖇patreon]: https://patreon.com/galtzo
|
514
|
+
[🖇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
|
515
|
+
[🖇buyme]: https://www.buymeacoffee.com/pboling
|
516
|
+
[🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee-✓-yellow.svg?style=flat
|
517
|
+
[💎ruby-2.7i]: https://img.shields.io/badge/Ruby-2.7-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
|
518
|
+
[💎ruby-3.0i]: https://img.shields.io/badge/Ruby-3.0-CC342D?style=for-the-badge&logo=ruby&logoColor=white
|
519
|
+
[💎ruby-3.1i]: https://img.shields.io/badge/Ruby-3.1-CC342D?style=for-the-badge&logo=ruby&logoColor=white
|
520
|
+
[💎ruby-3.2i]: https://img.shields.io/badge/Ruby-3.2-CC342D?style=for-the-badge&logo=ruby&logoColor=white
|
521
|
+
[💎ruby-3.3i]: https://img.shields.io/badge/Ruby-3.3-CC342D?style=for-the-badge&logo=ruby&logoColor=white
|
522
|
+
[💎ruby-c-i]: https://img.shields.io/badge/Ruby-current-CC342D?style=for-the-badge&logo=ruby&logoColor=green
|
523
|
+
[💎ruby-headi]: https://img.shields.io/badge/Ruby-HEAD-CC342D?style=for-the-badge&logo=ruby&logoColor=blue
|
524
|
+
[🤝issues]: https://github.com/rubocop-lts/standard-rubocop-lts/issues
|
525
|
+
[🤝pulls]: https://github.com/rubocop-lts/standard-rubocop-lts/pulls
|
526
|
+
[🤝contributing]: CONTRIBUTING.md
|
527
|
+
[🔑codecov-g♻️]: https://codecov.io/gh/rubocop-lts/standard-rubocop-lts/graphs/tree.svg?token=l44un82aUp
|
528
|
+
[🖐contrib-rocks]: https://contrib.rocks
|
529
|
+
[🖐contributors]: https://github.com/rubocop-lts/standard-rubocop-lts/graphs/contributors
|
530
|
+
[🖐contributors-img]: https://contrib.rocks/image?repo=rubocop-lts/standard-rubocop-lts
|
531
|
+
[🚎contributors-gl]: https://gitlab.com/rubocop-lts/standard-rubocop-lts/-/graphs/main
|
532
|
+
[🪇conduct]: CODE_OF_CONDUCT.md
|
533
|
+
[🪇conduct-img]: https://img.shields.io/badge/Contributor_Covenant-2.1-4baaaa.svg
|
534
|
+
[📌pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
|
535
|
+
[📌semver]: https://semver.org/spec/v2.0.0.html
|
536
|
+
[📌semver-img]: https://img.shields.io/badge/semver-2.0.0-FFDD67.svg?style=flat
|
537
|
+
[📌semver-breaking]: https://github.com/semver/semver/issues/716#issuecomment-869336139
|
538
|
+
[📌major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
|
539
|
+
[📌changelog]: CHANGELOG.md
|
540
|
+
[📗keep-changelog]: https://keepachangelog.com/en/1.0.0/
|
541
|
+
[📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-FFDD67.svg?style=flat
|
542
|
+
[🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
|
543
|
+
[🧮kloc-img]: https://img.shields.io/badge/KLOC-0.018-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
|
544
|
+
[🔐security]: SECURITY.md
|
545
|
+
[🔐security-img]: https://img.shields.io/badge/security-policy-brightgreen.svg?style=flat
|
546
|
+
[📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
|
547
|
+
[📄license]: LICENSE.txt
|
548
|
+
[📄license-ref]: https://opensource.org/licenses/MIT
|
549
|
+
[📄license-img]: https://img.shields.io/badge/License-MIT-green.svg
|
550
|
+
[📄ilo-declaration]: https://www.ilo.org/declaration/lang--en/index.htm
|
551
|
+
[📄ilo-declaration-img]: https://img.shields.io/badge/ILO_Fundamental_Principles-✓-brightgreen.svg?style=flat
|
552
|
+
[🚎yard-current]: http://rubydoc.info/gems/standard-rubocop-lts
|
553
|
+
[🚎yard-head]: https://rubydoc.info/github/rubocop-lts/standard-rubocop-lts/main
|
data/SECURITY.md
CHANGED
@@ -0,0 +1,37 @@
|
|
1
|
+
# The standard generated bin/bundle script from `bundle binstubs --all`
|
2
|
+
# does not comply with our style guide, but it is frequently regenerated
|
3
|
+
# so rather than repeatedly churning the file, we let it be.
|
4
|
+
ThreadSafety/ClassInstanceVariable:
|
5
|
+
Enabled: true
|
6
|
+
Exclude:
|
7
|
+
- bin/bundle
|
8
|
+
|
9
|
+
Style/InvertibleUnlessCondition:
|
10
|
+
Enabled: true
|
11
|
+
Exclude:
|
12
|
+
- bin/bundle
|
13
|
+
|
14
|
+
Style/MethodCallWithArgsParentheses:
|
15
|
+
Enabled: true
|
16
|
+
Exclude:
|
17
|
+
- bin/bundle
|
18
|
+
|
19
|
+
Metrics/CyclomaticComplexity:
|
20
|
+
Enabled: true
|
21
|
+
Exclude:
|
22
|
+
- bin/bundle
|
23
|
+
|
24
|
+
Metrics/MethodLength:
|
25
|
+
Enabled: true
|
26
|
+
Exclude:
|
27
|
+
- bin/bundle
|
28
|
+
|
29
|
+
Metrics/PerceivedComplexity:
|
30
|
+
Enabled: true
|
31
|
+
Exclude:
|
32
|
+
- bin/bundle
|
33
|
+
|
34
|
+
Layout/LineLength:
|
35
|
+
Enabled: true
|
36
|
+
Exclude:
|
37
|
+
- bin/bundle
|
@@ -10,10 +10,14 @@ inherit_from: ./ruby-2.0.yml
|
|
10
10
|
Style/PercentLiteralDelimiters:
|
11
11
|
Enabled: false
|
12
12
|
|
13
|
+
# Ruby < 2.0 only support bracketed arrays
|
13
14
|
Style/SymbolArray:
|
15
|
+
Enabled: true
|
14
16
|
EnforcedStyle: brackets
|
15
17
|
|
18
|
+
# Ruby < 2.0 only support bracketed arrays
|
16
19
|
Style/WordArray:
|
20
|
+
Enabled: true
|
17
21
|
EnforcedStyle: brackets
|
18
22
|
|
19
23
|
##############################################################################
|
@@ -2,3 +2,9 @@ inherit_from: ./ruby-2.1.yml
|
|
2
2
|
|
3
3
|
AllCops:
|
4
4
|
TargetRubyVersion: 2.0
|
5
|
+
|
6
|
+
# Disabled by Standard, which doesn't help compat, so overriding for Ruby < 2.1
|
7
|
+
# See: https://github.com/standardrb/standard/blob/main/config/ruby-1.9.yml#L6C1-L6C21
|
8
|
+
Style/HashConversion:
|
9
|
+
Enabled: true
|
10
|
+
AllowSplatArgument: false
|
data/config/ruby-1.8.yml
CHANGED
@@ -1,16 +1,18 @@
|
|
1
|
-
# We want Exclude and Include directives from different
|
1
|
+
# We want the Exclude and Include directives from different
|
2
2
|
# config files to get merged, not overwritten
|
3
3
|
inherit_mode:
|
4
4
|
merge:
|
5
5
|
- Exclude
|
6
6
|
- Include
|
7
7
|
|
8
|
+
plugins:
|
9
|
+
- rubocop-performance
|
10
|
+
- standard-performance
|
11
|
+
- standard-custom
|
12
|
+
|
8
13
|
require:
|
9
14
|
- standard-rubocop-lts
|
10
15
|
- standard
|
11
|
-
- standard-performance
|
12
|
-
- standard-custom
|
13
|
-
- rubocop-performance
|
14
16
|
|
15
17
|
# Load basic rules for this version of Ruby from standard.
|
16
18
|
# Rules are overridden in a LIFO stack.
|