kettle-dev 2.0.0 → 2.0.2

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.
data/README.md CHANGED
@@ -1,26 +1,26 @@
1
- [![Galtzo FLOSS Logo by Aboling0, CC BY-SA 4.0][🖼️galtzo-i]][🖼️galtzo-discord] [![ruby-lang Logo, Yukihiro Matsumoto, Ruby Visual Identity Team, CC BY-SA 2.5][🖼️ruby-lang-i]][🖼️ruby-lang] [![kettle-dev Logo by Aboling0, CC BY-SA 4.0][🖼️kettle-dev-i]][📜src-gh]
1
+ [![Galtzo FLOSS Logo by Aboling0, CC BY-SA 4.0][🖼️galtzo-floss-i]][🖼️galtzo-floss] [![ruby-lang Logo, Yukihiro Matsumoto, Ruby Visual Identity Team, CC BY-SA 2.5][🖼️ruby-lang-i]][🖼️ruby-lang] [![kettle-rb Logo by Aboling0, CC BY-SA 4.0][🖼️kettle-rb-i]][🖼️kettle-rb]
2
2
 
3
- [🖼️galtzo-i]: https://logos.galtzo.com/assets/images/galtzo-floss/avatar-192px.svg
4
- [🖼️galtzo-discord]: https://discord.gg/3qme4XHNKN
3
+ [🖼️galtzo-floss-i]: https://logos.galtzo.com/assets/images/galtzo-floss/avatar-192px.svg
4
+ [🖼️galtzo-floss]: https://discord.gg/3qme4XHNKN
5
5
  [🖼️ruby-lang-i]: https://logos.galtzo.com/assets/images/ruby-lang/avatar-192px.svg
6
6
  [🖼️ruby-lang]: https://www.ruby-lang.org/
7
- [🖼️kettle-dev-i]: https://logos.galtzo.com/assets/images/kettle-rb/kettle-dev/avatar-192px.svg
8
- [🖼️kettle-dev]: https://github.com/kettle-rb/kettle-dev
7
+ [🖼️kettle-rb-i]: https://logos.galtzo.com/assets/images/kettle-rb/avatar-192px.svg
8
+ [🖼️kettle-rb]: https://github.com/kettle-rb
9
9
 
10
10
  # 🍲 Kettle::Dev
11
11
 
12
- [![Version][👽versioni]][👽dl-rank] [![GitHub tag (latest SemVer)][⛳️tag-img]][⛳️tag] [![License: MIT][📄license-img]][📄license-ref] [![Downloads Rank][👽dl-ranki]][👽dl-rank] [![Open Source Helpers][👽oss-helpi]][👽oss-help] [![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 Supported][🚎6-s-wfi]][🚎6-s-wf] [![CI Legacy][🚎4-lg-wfi]][🚎4-lg-wf] [![CI Unsupported][🚎7-us-wfi]][🚎7-us-wf] [![CI Ancient][🚎1-an-wfi]][🚎1-an-wf] [![CI Test Coverage][🚎2-cov-wfi]][🚎2-cov-wf] [![CI Style][🚎5-st-wfi]][🚎5-st-wf] [![CodeQL][🖐codeQL-img]][🖐codeQL] [![Apache SkyWalking Eyes License Compatibility Check][🚎15-🪪-wfi]][🚎15-🪪-wf]
12
+ [![Version][👽versioni]][👽version] [![GitHub tag (latest SemVer)][⛳️tag-img]][⛳️tag] [![License: AGPL-3.0-only][📄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] [![CodeQL][🖐codeQL-img]][🖐codeQL]
13
13
 
14
- `if ci_badges.map(&:color).detect { it != "green"}` ☝️ [let me know][🖼️galtzo-discord], as I may have missed the [discord notification][🖼️galtzo-discord].
14
+ `if ci_badges.map(&:color).detect { it != "green"}` ☝️ [let me know][🖼️galtzo-floss], as I may have missed the [discord notification][🖼️galtzo-floss].
15
15
 
16
- -----
16
+ ---
17
17
 
18
18
  `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.
19
19
 
20
20
  [![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 on Polar][🖇polar-img]][🖇polar] [![Donate at ko-fi.com][🖇kofi-img]][🖇kofi]
21
21
 
22
22
  <details>
23
- <summary>👣 How will this project approach the September 2025 hostile takeover of RubyGems? 🚑️</summary>
23
+ <summary>👣 How will this project approach the September 2025 hostile takeover of RubyGems? 🚑️</summary>
24
24
 
25
25
  I've summarized my thoughts in [this blog post](https://dev.to/galtzo/hostile-takeover-of-rubygems-my-thoughts-5hlo).
26
26
 
@@ -210,67 +210,68 @@ tree_haver supports multiple parsing backends, but not all backends work on all
210
210
 
211
211
  ## 💡 Info you can shake a stick at
212
212
 
213
- | Tokens to Remember | [![Gem name][⛳️name-img]][👽dl-rank] [![Gem namespace][⛳️namespace-img]][📜src-gh] |
214
- |-------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
215
- | Works with JRuby | ![JRuby 9.1 Compat][💎jruby-9.1i] ![JRuby 9.2 Compat][💎jruby-9.2i] ![JRuby 9.3 Compat][💎jruby-9.3i] <br/> [![JRuby 9.4 Compat][💎jruby-9.4i]][🚎10-j-wf] [![JRuby 10.0 Compat][💎jruby-c-i]][🚎11-c-wf] [![JRuby HEAD Compat][💎jruby-headi]][🚎3-hd-wf] |
216
- | Works with Truffle Ruby | ![Truffle Ruby 22.3 Compat][💎truby-22.3i] ![Truffle Ruby 23.0 Compat][💎truby-23.0i] <br/> [![Truffle Ruby 23.1 Compat][💎truby-23.1i]][🚎9-t-wf] [![Truffle Ruby 24.1 Compat][💎truby-c-i]][🚎11-c-wf] |
217
- | Works with MRI Ruby 3 | [![Ruby 3.0 Compat][💎ruby-3.0i]][🚎4-lg-wf] [![Ruby 3.1 Compat][💎ruby-3.1i]][🚎6-s-wf] [\!\[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] |
218
- | Works with MRI Ruby 2 | [![Ruby 2.3 Compat][💎ruby-2.3i]][🚎1-an-wf] [![Ruby 2.4 Compat][💎ruby-2.4i]][🚎1-an-wf] [![Ruby 2.5 Compat][💎ruby-2.5i]][🚎1-an-wf] [![Ruby 2.6 Compat][💎ruby-2.6i]][🚎7-us-wf] [![Ruby 2.7 Compat][💎ruby-2.7i]][🚎7-us-wf] |
219
- | Support & Community | [![Join Me on Daily.dev's RubyFriends][✉️ruby-friends-img]][✉️ruby-friends] [![Live Chat on Discord][✉️discord-invite-img-ftb]][🖼️galtzo-discord] [![Get help from me on Upwork][👨🏼‍🏫expsup-upwork-img]][👨🏼‍🏫expsup-upwork] [![Get help from me on Codementor][👨🏼‍🏫expsup-codementor-img]][👨🏼‍🏫expsup-codementor] |
220
- | 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] |
221
- | 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] |
222
- | Compliance | [![License: MIT][📄license-img]][📄license-ref] [![Compatible with Apache Software Projects: Verified by SkyWalking Eyes][📄license-compat-img]][📄license-compat] [![📄ilo-declaration-img][📄ilo-declaration-img]][📄ilo-declaration] [![Security Policy][🔐security-img]][🔐security] [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct] [![SemVer 2.0.0][📌semver-img]][📌semver] |
223
- | 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] |
224
- | 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] |
225
- | `...` 💖 | [![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] |
213
+ | Tokens to Remember | [![Gem name][⛳️name-img]][⛳️gem-name] [![Gem namespace][⛳️namespace-img]][⛳️gem-namespace] |
214
+ |-------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
215
+ | Works with JRuby | [![JRuby 9.2 Compat][💎jruby-9.2i]][🚎jruby-9.2-wf] [![JRuby 9.3 Compat][💎jruby-9.3i]][🚎jruby-9.3-wf] <br/> [![JRuby 9.4 Compat][💎jruby-9.4i]][🚎jruby-9.4-wf] [![JRuby current Compat][💎jruby-c-i]][🚎10-j-wf] [![JRuby HEAD Compat][💎jruby-headi]][🚎3-hd-wf]|
216
+ | Works with Truffle Ruby | [![Truffle Ruby 22.3 Compat][💎truby-22.3i]][🚎truby-22.3-wf] [![Truffle Ruby 23.0 Compat][💎truby-23.0i]][🚎truby-23.0-wf] [![Truffle Ruby 23.1 Compat][💎truby-23.1i]][🚎truby-23.1-wf] <br/> [![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 current Compat][💎truby-c-i]][🚎9-t-wf]|
217
+ | Works with MRI Ruby 4 | [![Ruby 4.0 Compat][💎ruby-4.0i]][🚎11-c-wf] [![Ruby current Compat][💎ruby-c-i]][🚎11-c-wf] [![Ruby HEAD Compat][💎ruby-headi]][🚎3-hd-wf]|
218
+ | Works with MRI Ruby 3 | [![Ruby 3.0 Compat][💎ruby-3.0i]][🚎ruby-3.0-wf] [![Ruby 3.1 Compat][💎ruby-3.1i]][🚎ruby-3.1-wf] [![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]|
219
+ | Works with MRI Ruby 2 | [![Ruby 2.4 Compat][💎ruby-2.4i]][🚎ruby-2.4-wf] [![Ruby 2.5 Compat][💎ruby-2.5i]][🚎ruby-2.5-wf] [![Ruby 2.6 Compat][💎ruby-2.6i]][🚎ruby-2.6-wf] [![Ruby 2.7 Compat][💎ruby-2.7i]][🚎ruby-2.7-wf]|
220
+ | 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] |
221
+ | 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] |
222
+ | 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] |
223
+ | Compliance | [![License: AGPL-3.0-only][📄license-img]][📄license] [![Apache license compatibility: Category X][📄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] |
224
+ | 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] |
225
+ | 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] |
226
+ | `...` 💖 | [![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] |
226
227
 
227
228
  ### Compatibility
228
229
 
229
- Compatible with MRI Ruby 2.3.0+, and concordant releases of JRuby, and TruffleRuby.
230
- Templating features (AST-aware merging) are provided by [kettle-jem][kettle-jem], which requires Ruby 3.2+ and relies on [prism-merge][prism-merge]. It is recommended to run the template tasks / scripts in the latest release of Ruby\!
230
+ Compatible with MRI Ruby 2.4.0+, and concordant releases of JRuby, and TruffleRuby.
231
+ CI workflows and Appraisals are generated for MRI Ruby 2.4+.
232
+ This test floor is configured by `ruby.test_minimum` in `.kettle-jem.yml` and
233
+ may be higher than the gem's runtime compatibility floor when legacy Rubies are
234
+ not practical for the current toolchain.
231
235
 
232
- | 🚚 *Amazing* test matrix was brought to you by | 🔎 appraisal2 🔎 and the color 💚 green 💚 |
233
- | --- | --- |
234
- | 👟 Check it out\! | ✨ [github.com/appraisal-rb/appraisal2][💎appraisal2] ✨ |
236
+ | 🚚 _Amazing_ test matrix was brought to you by | 🔎 appraisal2 🔎 and the color 💚 green 💚 |
237
+ |------------------------------------------------|--------------------------------------------------------|
238
+ | 👟 Check it out! | ✨ [github.com/appraisal-rb/appraisal2][💎appraisal2] ✨ |
235
239
 
236
240
  ### Federated DVCS
237
241
 
238
242
  <details markdown="1">
239
- <summary>Find this repo on federated forges (Coming soon!)</summary>
243
+ <summary>Find this repo on federated forges (Coming soon!)</summary>
240
244
 
241
245
  | Federated [DVCS][💎d-in-dvcs] Repository | Status | Issues | PRs | Wiki | CI | Discussions |
242
- | --- | --- | --- | --- | --- | --- | --- |
246
+ |-------------------------------------------------|-----------------------------------------------------------------------|---------------------------|--------------------------|---------------------------|--------------------------|------------------------------|
243
247
  | 🧪 [kettle-rb/kettle-dev on GitLab][📜src-gl] | The Truth | [💚][🤝gl-issues] | [💚][🤝gl-pulls] | [💚][📜gl-wiki] | 🐭 Tiny Matrix | ➖ |
244
248
  | 🧊 [kettle-rb/kettle-dev on CodeBerg][📜src-cb] | An Ethical Mirror ([Donate][🤝cb-donate]) | [💚][🤝cb-issues] | [💚][🤝cb-pulls] | ➖ | ⭕️ No Matrix | ➖ |
245
249
  | 🐙 [kettle-rb/kettle-dev on GitHub][📜src-gh] | Another Mirror | [💚][🤝gh-issues] | [💚][🤝gh-pulls] | [💚][📜gh-wiki] | 💯 Full Matrix | [💚][gh-discussions] |
246
- | 🎮️ [Discord Server][🖼️galtzo-discord] | [![Live Chat on Discord][✉️discord-invite-img-ftb]][🖼️galtzo-discord] | [Let's][🖼️galtzo-discord] | [talk][🖼️galtzo-discord] | [about][🖼️galtzo-discord] | [this][🖼️galtzo-discord] | [library\!][🖼️galtzo-discord] |
250
+ | 🎮️ [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] |
247
251
 
248
252
  </details>
249
253
 
250
254
  [gh-discussions]: https://github.com/kettle-rb/kettle-dev/discussions
251
255
 
252
- ### Enterprise Support [![Tidelift](https://tidelift.com/badges/package/rubygems/kettle-dev)][🏙️entsup-tidelift]
256
+ ### Enterprise Support [![Tidelift](https://tidelift.com/badges/package/rubygems/kettle-dev)](https://tidelift.com/subscription/pkg/rubygems-kettle-dev?utm_source=rubygems-kettle-dev&utm_medium=referral&utm_campaign=readme)
253
257
 
254
258
  Available as part of the Tidelift Subscription.
255
259
 
256
260
  <details markdown="1">
257
- <summary>Need enterprise-level guarantees?</summary>
261
+ <summary>Need enterprise-level guarantees?</summary>
258
262
 
259
263
  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.
260
264
 
261
265
  [![Get help from me on Tidelift][🏙️entsup-tidelift-img]][🏙️entsup-tidelift]
262
266
 
263
- - 💡Subscribe for support guarantees covering *all* your FLOSS dependencies
264
-
267
+ - 💡Subscribe for support guarantees covering _all_ your FLOSS dependencies
265
268
  - 💡Tidelift is part of [Sonar][🏙️entsup-tidelift-sonar]
269
+ - 💡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
266
270
 
267
- - 💡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
268
- Alternatively:
269
-
270
- - [![Live Chat on Discord][✉️discord-invite-img-ftb]][🖼️galtzo-discord]
271
+ Alternatively:
271
272
 
273
+ - [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite]
272
274
  - [![Get help from me on Upwork][👨🏼‍🏫expsup-upwork-img]][👨🏼‍🏫expsup-upwork]
273
-
274
275
  - [![Get help from me on Codementor][👨🏼‍🏫expsup-codementor-img]][👨🏼‍🏫expsup-codementor]
275
276
 
276
277
  </details>
@@ -289,41 +290,6 @@ If bundler is not being used to manage dependencies, install the gem by executin
289
290
  gem install kettle-dev
290
291
  ```
291
292
 
292
- ### 🔒 Secure Installation
293
-
294
- <details markdown="1">
295
- <summary>For Medium or High Security Installations</summary>
296
-
297
- This gem is cryptographically signed and has verifiable [SHA-256 and SHA-512][💎SHA_checksums] checksums by
298
- [stone\_checksums][💎stone_checksums]. Be sure the gem you install hasn’t been tampered with
299
- by following the instructions below.
300
-
301
- Add my public key (if you haven’t already; key expires 2045-04-29) as a trusted certificate:
302
-
303
- ```console
304
- gem cert --add <(curl -Ls https://raw.github.com/galtzo-floss/certs/main/pboling.pem)
305
- ```
306
-
307
- You only need to do that once. Then proceed to install with:
308
-
309
- ```console
310
- gem install kettle-dev -P HighSecurity
311
- ```
312
-
313
- The `HighSecurity` trust profile will verify signed gems, and not allow the installation of unsigned dependencies.
314
-
315
- If you want to up your security game full-time:
316
-
317
- ```console
318
- bundle config set --global trust-policy MediumSecurity
319
- ```
320
-
321
- `MediumSecurity` instead of `HighSecurity` is necessary if not all the gems you use are signed.
322
-
323
- NOTE: Be prepared to track down certs for signed gems and add them the same way you added mine.
324
-
325
- </details>
326
-
327
293
  ## ⚙️ Configuration
328
294
 
329
295
  Note on executables vs Rake tasks
@@ -600,7 +566,7 @@ What it does:
600
566
 
601
567
  - Script: `exe/kettle-release` (run as `kettle-release`)
602
568
  - Purpose: guided release helper that:
603
- - Runs sanity checks (`bin/setup`, `bin/rake`), confirms version/changelog, optionally updates Appraisals, commits “🔖 Prepare release vX.Y.Z”.
569
+ - Runs sanity checks (`bin/setup`, `bin/rake`), confirms version/changelog, optionally updates Appraisals, regenerates docs via `bin/rake yard`, commits “🔖 Prepare release vX.Y.Z”.
604
570
  - Optionally runs your CI locally with `act` before any push:
605
571
  - Enable with env: `K_RELEASE_LOCAL_CI="true"` (run automatically) or `K_RELEASE_LOCAL_CI="ask"` (prompt \[Y/n\]).
606
572
  - Select workflow with `K_RELEASE_LOCAL_CI_WORKFLOW` (with or without .yml/.yaml). Defaults to `locked_deps.yml` if present; otherwise the first workflow discovered.
@@ -613,7 +579,7 @@ What it does:
613
579
  2. Detect version; RubyGems sanity check; confirm CHANGELOG/version; sync copyright years; update badges/headers
614
580
  3. Run bin/setup
615
581
  4. Run bin/rake (default task)
616
- 5. Run bin/rake appraisal:update if Appraisals present
582
+ 5. Run bin/rake appraisal:update if Appraisals present, then bin/rake yard
617
583
  6. Ensure git user configured; commit release prep
618
584
  7. Optional local CI with `act` (controlled by `K_RELEASE_LOCAL_CI`)
619
585
  8. Ensure trunk in sync across remotes; rebase feature as needed
@@ -640,7 +606,7 @@ What it does:
640
606
  - Purpose: Generates a new CHANGELOG.md section for the current version read from `lib/**/version.rb`, moves notes from the Unreleased section, and updates comparison links.
641
607
  - Prerequisites:
642
608
  - `coverage/coverage.json` present (generate with: `K_SOUP_COV_FORMATTERS="json" bin/rspec`).
643
- - `bin/yard` available (Bundler-installed), to compute documentation coverage.
609
+ - `bin/rake yard` available, to compute documentation coverage.
644
610
  - Usage:
645
611
  - `kettle-changelog`
646
612
  - Behavior:
@@ -736,63 +702,6 @@ What it does:
736
702
  - The updater will look for `REPO` or `GITHUB_REPOSITORY` (both usually set by GitHub Actions) to infer `<YOUR_ORG>` for guidance.
737
703
  - If `README_UPDATER_TOKEN` is missing, the tool prints a helpful error to STDERR and aborts, including a direct link to the expected org settings page.
738
704
 
739
- ## 🦷 FLOSS Funding
740
-
741
- While kettle-rb tools are free software and will always be, the project would benefit immensely from some funding.
742
- Raising a monthly budget of... "dollars" would make the project more sustainable.
743
-
744
- We welcome both individual and corporate sponsors\! We also offer a
745
- wide array of funding channels to account for your preferences
746
- (although currently [Open Collective][🖇osc] is our preferred funding platform).
747
-
748
- **If you're working in a company that's making significant use of kettle-rb tools we'd
749
- appreciate it if you suggest to your company to become a kettle-rb sponsor.**
750
-
751
- You can support the development of kettle-rb tools via
752
- [GitHub Sponsors][🖇sponsor],
753
- [Liberapay][⛳liberapay],
754
- [PayPal][🖇paypal],
755
- [Open Collective][🖇osc]
756
- and [Tidelift][🏙️entsup-tidelift].
757
-
758
- | 📍 NOTE |
759
- | --- |
760
- | 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. |
761
-
762
- ### Open Collective for Individuals
763
-
764
- Support us with a monthly donation and help us continue our activities. \[[Become a backer][🖇osc-backers]\]
765
-
766
- NOTE: [kettle-readme-backers][kettle-readme-backers] updates this list every day, automatically.
767
-
768
- <!-- OPENCOLLECTIVE-INDIVIDUALS:START -->
769
- No backers yet. Be the first\!
770
- <!-- OPENCOLLECTIVE-INDIVIDUALS:END -->
771
-
772
- ### Open Collective for Organizations
773
-
774
- Become a sponsor and get your logo on our README on GitHub with a link to your site. \[[Become a sponsor][🖇osc-sponsors]\]
775
-
776
- NOTE: [kettle-readme-backers][kettle-readme-backers] updates this list every day, automatically.
777
-
778
- <!-- OPENCOLLECTIVE-ORGANIZATIONS:START -->
779
- No sponsors yet. Be the first\!
780
- <!-- OPENCOLLECTIVE-ORGANIZATIONS:END -->
781
-
782
- [kettle-readme-backers]: https://github.com/kettle-rb/kettle-dev/blob/main/exe/kettle-readme-backers
783
-
784
- ### Another way to support open-source
785
-
786
- 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).
787
-
788
- 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`.
789
-
790
- 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.
791
-
792
- **[Floss-Funding.dev][🖇floss-funding.dev]: 👉️ No network calls. 👉️ No tracking. 👉️ No oversight. 👉️ Minimal crypto hashing. 💡 Easily disabled nags**
793
-
794
- [![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 on Polar][🖇polar-img]][🖇polar] [![Donate to my FLOSS efforts at ko-fi.com][🖇kofi-img]][🖇kofi] [![Donate to my FLOSS efforts using Patreon][🖇patreon-img]][🖇patreon]
795
-
796
705
  ## 🔐 Security
797
706
 
798
707
  See [SECURITY.md][🔐security].
@@ -800,7 +709,7 @@ See [SECURITY.md][🔐security].
800
709
  ## 🤝 Contributing
801
710
 
802
711
  If you need some ideas of where to help, you could work on adding more code coverage,
803
- or if it is already 💯 (see [below](#code-coverage)) check [reek](REEK), [issues][🤝gh-issues], or [PRs][🤝gh-pulls],
712
+ or if it is already 💯 (see [below](#code-coverage)) check [issues][🤝gh-issues] or [PRs][🤝gh-pulls],
804
713
  or use the gem and think about how it could be better.
805
714
 
806
715
  We [![Keep A Changelog][📗keep-changelog-img]][📗keep-changelog] so if you make changes, remember to update it.
@@ -813,12 +722,17 @@ See [CONTRIBUTING.md][🤝contributing].
813
722
 
814
723
  ### Code Coverage
815
724
 
725
+ <details markdown="1">
726
+ <summary>Coverage service badges</summary>
727
+
816
728
  [![Coverage Graph][🏀codecov-g]][🏀codecov]
817
729
 
818
730
  [![Coveralls Test Coverage][🏀coveralls-img]][🏀coveralls]
819
731
 
820
732
  [![QLTY Test Coverage][🏀qlty-covi]][🏀qlty-cov]
821
733
 
734
+ </details>
735
+
822
736
  ### 🪇 Code of Conduct
823
737
 
824
738
  Everyone interacting with this project's codebases, issue trackers,
@@ -830,16 +744,16 @@ chat rooms and mailing lists agrees to follow the [![Contributor Covenant 2.1][
830
744
 
831
745
  Made with [contributors-img][🖐contrib-rocks].
832
746
 
833
- Also see GitLab Contributors: <https://gitlab.com/kettle-rb/kettle-dev/-/graphs/main>
747
+ Also see GitLab Contributors: [https://gitlab.com/kettle-rb/kettle-dev/-/graphs/main][🚎contributors-gl]
834
748
 
835
749
  <details>
836
- <summary>⭐️ Star History</summary>
750
+ <summary>⭐️ Star History</summary>
837
751
 
838
- <a href="https://star-history.com/#kettle-rb/kettle-dev&Date">
752
+ <a href="https://star-history.com/kettle-rb/kettle-dev&Date">
839
753
  <picture>
840
- <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=kettle-rb/kettle-dev&type=Date&theme=dark" />
841
- <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=kettle-rb/kettle-dev&type=Date" />
842
- <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=kettle-rb/kettle-dev&type=Date" />
754
+ <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=kettle-rb/kettle-dev&type=Date&theme=dark" />
755
+ <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=kettle-rb/kettle-dev&type=Date" />
756
+ <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=kettle-rb/kettle-dev&type=Date" />
843
757
  </picture>
844
758
  </a>
845
759
 
@@ -847,31 +761,20 @@ Also see GitLab Contributors: <https://gitlab.com/kettle-rb/kettle-dev/-/graphs/
847
761
 
848
762
  ## 📌 Versioning
849
763
 
850
- This Library adheres to [![Semantic Versioning 2.0.0][📌semver-img]][📌semver].
851
- Violations of this scheme should be reported as bugs.
852
- Specifically, if a minor or patch version is released that breaks backward compatibility,
853
- a new version should be immediately released that restores compatibility.
854
- Breaking changes to the public API will only be introduced with new major versions.
855
-
856
- > dropping support for a platform is both obviously and objectively a breaking change <br/>
857
- > —Jordan Harband ([@ljharb](https://github.com/ljharb), maintainer of SemVer) [in SemVer issue 716][📌semver-breaking]
858
-
859
- I understand that policy doesn't work universally ("exceptions to every rule\!"),
860
- but it is the policy here.
861
- As such, in many cases it is good to specify a dependency on this library using
862
- the [Pessimistic Version Constraint][📌pvc] with two digits of precision.
764
+ This library follows [![Semantic Versioning 2.0.0][📌semver-img]][📌semver] for its public API where practical.
765
+ For most applications, prefer the [Pessimistic Version Constraint][📌pvc] with two digits of precision.
863
766
 
864
767
  For example:
865
768
 
866
769
  ```ruby
867
- spec.add_dependency("kettle-dev", "~> 1.0")
770
+ spec.add_dependency("kettle-dev", "~> 2.0")
868
771
  ```
869
772
 
870
773
  <details markdown="1">
871
774
  <summary>📌 Is "Platform Support" part of the public API? More details inside.</summary>
872
775
 
873
- SemVer should, IMO, but doesn't explicitly, say that dropping support for specific Platforms
874
- is a *breaking change* to an API, and for that reason the bike shedding is endless.
776
+ Dropping support for a platform can be a breaking change for affected users.
777
+ If a release changes supported platforms, it should be called out clearly in the changelog and versioned with that impact in mind.
875
778
 
876
779
  To get a better understanding of how SemVer is intended to work over a project's lifetime,
877
780
  read this article from the creator of SemVer:
@@ -884,23 +787,21 @@ See [CHANGELOG.md][📌changelog] for a list of releases.
884
787
 
885
788
  ## 📄 License
886
789
 
887
- The gem is available as open source under the terms of
888
- the [MIT License][📄license] [![License: MIT][📄license-img]][📄license-ref].
889
- See [LICENSE.txt][📄license] for the official [Copyright Notice][📄copyright-notice-explainer].
790
+ The gem is available under the following license: [AGPL-3.0-only](AGPL-3.0-only.md).
791
+ See [LICENSE.md][📄license] for details.
792
+
793
+ If none of the available licenses suit your use case, please [contact us](mailto:floss@galtzo.com) to discuss a custom commercial license.
890
794
 
891
795
  ### © Copyright
892
796
 
893
- <ul>
894
- <li>
895
- Copyright (c) 2023, 2025 Peter H. Boling, of
896
- <a href="https://discord.gg/3qme4XHNKN">
897
- Galtzo.com
898
- <picture>
899
- <img src="https://logos.galtzo.com/assets/images/galtzo-floss/avatar-128px-blank.svg" alt="Galtzo.com Logo (Wordless) by Aboling0, CC BY-SA 4.0" width="24">
900
- </picture>
901
- </a>, and kettle-dev contributors.
902
- </li>
903
- </ul>
797
+ See [LICENSE.md][📄license] for the official copyright notice.
798
+
799
+ <details markdown="1">
800
+ <summary>Copyright holders</summary>
801
+
802
+ - Copyright (c) 2023, 2025-2026 Peter H. Boling
803
+
804
+ </details>
904
805
 
905
806
  ## 🤑 A request for help
906
807
 
@@ -913,9 +814,9 @@ Please consider sponsoring me or the project.
913
814
 
914
815
  To join the community or get help 👇️ Join the Discord.
915
816
 
916
- [![Live Chat on Discord][✉️discord-invite-img-ftb]][🖼️galtzo-discord]
817
+ [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite]
917
818
 
918
- To say "thanks\!" ☝️ Join the Discord or 👇️ send money.
819
+ To say "thanks!" ☝️ Join the Discord or 👇️ send money.
919
820
 
920
821
  [![Sponsor kettle-rb/kettle-dev 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]
921
822
 
@@ -943,7 +844,7 @@ Thanks for RTFM. ☺️
943
844
  [🖇polar-img]: https://img.shields.io/badge/polar-donate-a51611.svg?style=flat
944
845
  [🖇polar]: https://polar.sh/pboling
945
846
  [🖇kofi-img]: https://img.shields.io/badge/ko--fi-%E2%9C%93-a51611.svg?style=flat
946
- [🖇kofi]: https://ko-fi.com/O5O86SNP4
847
+ [🖇kofi]: https://ko-fi.com/pboling
947
848
  [🖇patreon-img]: https://img.shields.io/badge/patreon-donate-a51611.svg?style=flat
948
849
  [🖇patreon]: https://patreon.com/galtzo
949
850
  [🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee-%E2%9C%93-a51611.svg?style=flat
@@ -958,19 +859,20 @@ Thanks for RTFM. ☺️
958
859
  [✉️discord-invite-img-ftb]: https://img.shields.io/discord/1373797679469170758?style=for-the-badge&logo=discord
959
860
  [✉️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
960
861
  [✉️ruby-friends]: https://app.daily.dev/squads/rubyfriends
862
+
961
863
  [✇bundle-group-pattern]: https://gist.github.com/pboling/4564780
962
864
  [⛳️gem-namespace]: https://github.com/kettle-rb/kettle-dev
963
865
  [⛳️namespace-img]: https://img.shields.io/badge/namespace-Kettle::Dev-3C2D2D.svg?style=square&logo=ruby&logoColor=white
964
866
  [⛳️gem-name]: https://bestgems.org/gems/kettle-dev
965
867
  [⛳️name-img]: https://img.shields.io/badge/name-kettle--dev-3C2D2D.svg?style=square&logo=rubygems&logoColor=red
966
868
  [⛳️tag-img]: https://img.shields.io/github/tag/kettle-rb/kettle-dev.svg
967
- [⛳️tag]: http://github.com/kettle-rb/kettle-dev/releases
869
+ [⛳️tag]: https://github.com/kettle-rb/kettle-dev/releases
968
870
  [🚂maint-blog]: http://www.railsbling.com/tags/kettle-dev
969
871
  [🚂maint-blog-img]: https://img.shields.io/badge/blog-railsbling-0093D0.svg?style=for-the-badge&logo=rubyonrails&logoColor=orange
970
872
  [🚂maint-contact]: http://www.railsbling.com/contact
971
873
  [🚂maint-contact-img]: https://img.shields.io/badge/Contact-Maintainer-0093D0.svg?style=flat&logo=rubyonrails&logoColor=red
972
874
  [💖🖇linkedin]: http://www.linkedin.com/in/peterboling
973
- [💖🖇linkedin-img]: https://img.shields.io/badge/PeterBoling-LinkedIn-0B66C2?style=flat&logo=newjapanprowrestling
875
+ [💖🖇linkedin-img]: https://img.shields.io/badge/LinkedIn-Profile-0B66C2?style=flat&logo=newjapanprowrestling
974
876
  [💖✌️wellfound]: https://wellfound.com/u/peter-boling
975
877
  [💖✌️wellfound-img]: https://img.shields.io/badge/peter--boling-orange?style=flat&logo=wellfound
976
878
  [💖💲crunchbase]: https://www.crunchbase.com/person/peter-boling
@@ -999,7 +901,7 @@ Thanks for RTFM. ☺️
999
901
  [💁🏼‍♂️peterboling]: http://www.peterboling.com
1000
902
  [🚂railsbling]: http://www.railsbling.com
1001
903
  [📜src-gl-img]: https://img.shields.io/badge/GitLab-FBA326?style=for-the-badge&logo=Gitlab&logoColor=orange
1002
- [📜src-gl]: https://gitlab.com/kettle-rb/kettle-dev/
904
+ [📜src-gl]: https://gitlab.com/kettle-rb/kettle-dev
1003
905
  [📜src-cb-img]: https://img.shields.io/badge/CodeBerg-4893CC?style=for-the-badge&logo=CodeBerg&logoColor=blue
1004
906
  [📜src-cb]: https://codeberg.org/kettle-rb/kettle-dev
1005
907
  [📜src-gh-img]: https://img.shields.io/badge/GitHub-238636?style=for-the-badge&logo=Github&logoColor=green
@@ -1008,12 +910,10 @@ Thanks for RTFM. ☺️
1008
910
  [📜docs-head-rd-img]: https://img.shields.io/badge/YARD_on_Galtzo.com-HEAD-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
1009
911
  [📜gl-wiki]: https://gitlab.com/kettle-rb/kettle-dev/-/wikis/home
1010
912
  [📜gh-wiki]: https://github.com/kettle-rb/kettle-dev/wiki
1011
- [📜gl-wiki-img]: https://img.shields.io/badge/wiki-examples-943CD2.svg?style=for-the-badge&logo=gitlab&logoColor=white
1012
- [📜gh-wiki-img]: https://img.shields.io/badge/wiki-examples-943CD2.svg?style=for-the-badge&logo=github&logoColor=white
913
+ [📜gl-wiki-img]: https://img.shields.io/badge/wiki-gitlab-943CD2.svg?style=for-the-badge&logo=gitlab&logoColor=white
914
+ [📜gh-wiki-img]: https://img.shields.io/badge/wiki-github-943CD2.svg?style=for-the-badge&logo=github&logoColor=white
1013
915
  [👽dl-rank]: https://bestgems.org/gems/kettle-dev
1014
916
  [👽dl-ranki]: https://img.shields.io/gem/rd/kettle-dev.svg
1015
- [👽oss-help]: https://www.codetriage.com/kettle-rb/kettle-dev
1016
- [👽oss-helpi]: https://www.codetriage.com/kettle-rb/kettle-dev/badges/users.svg
1017
917
  [👽version]: https://bestgems.org/gems/kettle-dev
1018
918
  [👽versioni]: https://img.shields.io/gem/v/kettle-dev.svg
1019
919
  [🏀qlty-mnt]: https://qlty.sh/gh/kettle-rb/projects/kettle-dev
@@ -1026,22 +926,29 @@ Thanks for RTFM. ☺️
1026
926
  [🏀coveralls-img]: https://coveralls.io/repos/github/kettle-rb/kettle-dev/badge.svg?branch=main
1027
927
  [🖐codeQL]: https://github.com/kettle-rb/kettle-dev/security/code-scanning
1028
928
  [🖐codeQL-img]: https://github.com/kettle-rb/kettle-dev/actions/workflows/codeql-analysis.yml/badge.svg
1029
- [🚎1-an-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/ancient.yml
1030
- [🚎1-an-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/ancient.yml/badge.svg
929
+ [🚎ruby-2.4-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/ruby-2.4.yml
930
+ [🚎ruby-2.5-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/ruby-2.5.yml
931
+ [🚎ruby-2.6-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/ruby-2.6.yml
932
+ [🚎ruby-2.7-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/ruby-2.7.yml
933
+ [🚎ruby-3.0-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/ruby-3.0.yml
934
+ [🚎ruby-3.1-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/ruby-3.1.yml
935
+ [🚎ruby-3.2-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/ruby-3.2.yml
936
+ [🚎ruby-3.3-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/ruby-3.3.yml
937
+ [🚎ruby-3.4-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/ruby-3.4.yml
938
+ [🚎jruby-9.2-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/jruby-9.2.yml
939
+ [🚎jruby-9.3-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/jruby-9.3.yml
940
+ [🚎jruby-9.4-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/jruby-9.4.yml
941
+ [🚎truby-22.3-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/truffleruby-22.3.yml
942
+ [🚎truby-23.0-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/truffleruby-23.0.yml
943
+ [🚎truby-23.1-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/truffleruby-23.1.yml
944
+ [🚎truby-24.2-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/truffleruby-24.2.yml
945
+ [🚎truby-25.0-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/truffleruby-25.0.yml
1031
946
  [🚎2-cov-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/coverage.yml
1032
947
  [🚎2-cov-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/coverage.yml/badge.svg
1033
948
  [🚎3-hd-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/heads.yml
1034
949
  [🚎3-hd-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/heads.yml/badge.svg
1035
- [🚎4-lg-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/legacy.yml
1036
- [🚎4-lg-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/legacy.yml/badge.svg
1037
950
  [🚎5-st-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/style.yml
1038
951
  [🚎5-st-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/style.yml/badge.svg
1039
- [🚎6-s-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/supported.yml
1040
- [🚎6-s-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/supported.yml/badge.svg
1041
- [🚎7-us-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/unsupported.yml
1042
- [🚎7-us-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/unsupported.yml/badge.svg
1043
- [🚎8-ho-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/hoary.yml
1044
- [🚎8-ho-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/hoary.yml/badge.svg
1045
952
  [🚎9-t-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/truffle.yml
1046
953
  [🚎9-t-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/truffle.yml/badge.svg
1047
954
  [🚎10-j-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/jruby.yml
@@ -1054,21 +961,27 @@ Thanks for RTFM. ☺️
1054
961
  [🚎13-🔒️-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/locked_deps.yml/badge.svg
1055
962
  [🚎14-🔓️-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/unlocked_deps.yml
1056
963
  [🚎14-🔓️-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/unlocked_deps.yml/badge.svg
1057
- [🚎15-🪪-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/license-eye.yml
1058
- [🚎15-🪪-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/license-eye.yml/badge.svg
1059
- [💎ruby-2.3i]: https://img.shields.io/badge/Ruby-2.3-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
1060
964
  [💎ruby-2.4i]: https://img.shields.io/badge/Ruby-2.4-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
1061
965
  [💎ruby-2.5i]: https://img.shields.io/badge/Ruby-2.5-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
1062
966
  [💎ruby-2.6i]: https://img.shields.io/badge/Ruby-2.6-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
1063
967
  [💎ruby-2.7i]: https://img.shields.io/badge/Ruby-2.7-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
1064
968
  [💎ruby-3.0i]: https://img.shields.io/badge/Ruby-3.0-CC342D?style=for-the-badge&logo=ruby&logoColor=white
1065
969
  [💎ruby-3.1i]: https://img.shields.io/badge/Ruby-3.1-CC342D?style=for-the-badge&logo=ruby&logoColor=white
970
+ [💎ruby-3.2i]: https://img.shields.io/badge/Ruby-3.2-CC342D?style=for-the-badge&logo=ruby&logoColor=white
1066
971
  [💎ruby-3.3i]: https://img.shields.io/badge/Ruby-3.3-CC342D?style=for-the-badge&logo=ruby&logoColor=white
972
+ [💎ruby-3.4i]: https://img.shields.io/badge/Ruby-3.4-CC342D?style=for-the-badge&logo=ruby&logoColor=white
973
+ [💎ruby-4.0i]: https://img.shields.io/badge/Ruby-4.0-CC342D?style=for-the-badge&logo=ruby&logoColor=white
1067
974
  [💎ruby-c-i]: https://img.shields.io/badge/Ruby-current-CC342D?style=for-the-badge&logo=ruby&logoColor=green
1068
975
  [💎ruby-headi]: https://img.shields.io/badge/Ruby-HEAD-CC342D?style=for-the-badge&logo=ruby&logoColor=blue
976
+ [💎truby-22.3i]: https://img.shields.io/badge/Truffle_Ruby-22.3-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
977
+ [💎truby-23.0i]: https://img.shields.io/badge/Truffle_Ruby-23.0-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
1069
978
  [💎truby-23.1i]: https://img.shields.io/badge/Truffle_Ruby-23.1-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
979
+ [💎truby-24.2i]: https://img.shields.io/badge/Truffle_Ruby-24.2-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
980
+ [💎truby-25.0i]: https://img.shields.io/badge/Truffle_Ruby-25.0-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
1070
981
  [💎truby-c-i]: https://img.shields.io/badge/Truffle_Ruby-current-34BCB1?style=for-the-badge&logo=ruby&logoColor=green
1071
- [💎truby-headi]: https://img.shields.io/badge/Truffle_Ruby-HEAD-34BCB1?style=for-the-badge&logo=ruby&logoColor=blue
982
+ [💎jruby-9.2i]: https://img.shields.io/badge/JRuby-9.2-FBE742?style=for-the-badge&logo=ruby&logoColor=red
983
+ [💎jruby-9.3i]: https://img.shields.io/badge/JRuby-9.3-FBE742?style=for-the-badge&logo=ruby&logoColor=red
984
+ [💎jruby-9.4i]: https://img.shields.io/badge/JRuby-9.4-FBE742?style=for-the-badge&logo=ruby&logoColor=red
1072
985
  [💎jruby-c-i]: https://img.shields.io/badge/JRuby-current-FBE742?style=for-the-badge&logo=ruby&logoColor=green
1073
986
  [💎jruby-headi]: https://img.shields.io/badge/JRuby-HEAD-FBE742?style=for-the-badge&logo=ruby&logoColor=blue
1074
987
  [🤝gh-issues]: https://github.com/kettle-rb/kettle-dev/issues
@@ -1078,36 +991,37 @@ Thanks for RTFM. ☺️
1078
991
  [🤝cb-issues]: https://codeberg.org/kettle-rb/kettle-dev/issues
1079
992
  [🤝cb-pulls]: https://codeberg.org/kettle-rb/kettle-dev/pulls
1080
993
  [🤝cb-donate]: https://donate.codeberg.org/
1081
- [🤝contributing]: CONTRIBUTING.md
1082
- [🏀codecov-g]: https://codecov.io/gh/kettle-rb/kettle-dev/graphs/tree.svg
994
+ [🤝contributing]: https://github.com/kettle-rb/kettle-dev/blob/main/CONTRIBUTING.md
995
+ [🏀codecov-g]: https://codecov.io/gh/kettle-rb/kettle-dev/graph/badge.svg
1083
996
  [🖐contrib-rocks]: https://contrib.rocks
1084
997
  [🖐contributors]: https://github.com/kettle-rb/kettle-dev/graphs/contributors
1085
998
  [🖐contributors-img]: https://contrib.rocks/image?repo=kettle-rb/kettle-dev
1086
999
  [🚎contributors-gl]: https://gitlab.com/kettle-rb/kettle-dev/-/graphs/main
1087
- [🪇conduct]: CODE_OF_CONDUCT.md
1000
+ [🪇conduct]: https://github.com/kettle-rb/kettle-dev/blob/main/CODE_OF_CONDUCT.md
1088
1001
  [🪇conduct-img]: https://img.shields.io/badge/Contributor_Covenant-2.1-259D6C.svg
1089
1002
  [📌pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
1090
1003
  [📌semver]: https://semver.org/spec/v2.0.0.html
1091
1004
  [📌semver-img]: https://img.shields.io/badge/semver-2.0.0-259D6C.svg?style=flat
1092
1005
  [📌semver-breaking]: https://github.com/semver/semver/issues/716#issuecomment-869336139
1093
1006
  [📌major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
1094
- [📌changelog]: CHANGELOG.md
1007
+ [📌changelog]: https://github.com/kettle-rb/kettle-dev/blob/main/CHANGELOG.md
1095
1008
  [📗keep-changelog]: https://keepachangelog.com/en/1.0.0/
1096
1009
  [📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-34495e.svg?style=flat
1097
1010
  [📌gitmoji]: https://gitmoji.dev
1098
1011
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
1099
1012
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
1100
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-2.793-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
1101
- [🔐security]: SECURITY.md
1013
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-3.101-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
1014
+ [🔐security]: https://github.com/kettle-rb/kettle-dev/blob/main/SECURITY.md
1102
1015
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
1103
1016
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
1104
- [📄license]: LICENSE.txt
1105
- [📄license-ref]: https://opensource.org/licenses/MIT
1106
- [📄license-img]: https://img.shields.io/badge/License-MIT-259D6C.svg
1107
- [📄license-compat]: https://dev.to/galtzo/how-to-check-license-compatibility-41h0
1108
- [📄license-compat-img]: https://img.shields.io/badge/Apache_Compatible:_Category_A-%E2%9C%93-259D6C.svg?style=flat&logo=Apache
1017
+ [📄license]: LICENSE.md
1018
+ [📄license-ref]: AGPL-3.0-only.md
1019
+ [📄license-img]: https://img.shields.io/badge/License-AGPL--3.0--only-259D6C.svg
1020
+ [📄license-compat]: https://www.apache.org/legal/resolved.html#category-x
1021
+ [📄license-compat-img]: https://img.shields.io/badge/Apache_Incompatible:_Category_X-%E2%9C%97-C0392B.svg?style=flat&logo=Apache
1022
+
1109
1023
  [📄ilo-declaration]: https://www.ilo.org/declaration/lang--en/index.htm
1110
- [📄ilo-declaration-img]: https://img.shields.io/badge/ILO_Fundamental_Principles-%E2%9C%93-259D6C.svg?style=flat
1024
+ [📄ilo-declaration-img]: https://img.shields.io/badge/ILO_Fundamental_Principles-✓-259D6C.svg?style=flat
1111
1025
  [🚎yard-current]: http://rubydoc.info/gems/kettle-dev
1112
1026
  [🚎yard-head]: https://kettle-dev.galtzo.com
1113
1027
  [💎stone_checksums]: https://github.com/galtzo-floss/stone_checksums
@@ -1117,3 +1031,14 @@ Thanks for RTFM. ☺️
1117
1031
  [💎appraisal2]: https://github.com/appraisal-rb/appraisal2
1118
1032
  [💎appraisal2-img]: https://img.shields.io/badge/appraised_by-appraisal2-34495e.svg?plastic&logo=ruby&logoColor=white
1119
1033
  [💎d-in-dvcs]: https://railsbling.com/posts/dvcs/put_the_d_in_dvcs/
1034
+
1035
+ <!-- kettle-jem:metadata:start -->
1036
+ | Field | Value |
1037
+ |---|---|
1038
+ | Package | kettle-dev |
1039
+ | Description | 🍲 Kettle::Dev is a meta tool from kettle-rb to streamline development and testing. Acts as a shim dependency, pulling in many other dependencies, to give you OOTB productivity with a RubyGem, or Ruby app project. Configures a complete set of Rake tasks, for all the libraries is brings in, so they arrive ready to go. Fund overlooked open source projects - bottom of stack, dev/test dependencies: floss-funding.dev |
1040
+ | Homepage | https://github.com/kettle-rb/kettle-dev |
1041
+ | Source | https://github.com/kettle-rb/kettle-dev/tree/v2.0.1 |
1042
+ | License | `AGPL-3.0-only` |
1043
+ | Funding | https://github.com/sponsors/pboling, https://issuehunt.io/u/pboling, https://ko-fi.com/pboling, https://liberapay.com/pboling/donate, https://opencollective.com/kettle-rb, https://patreon.com/galtzo, https://polar.sh/pboling, https://thanks.dev/u/gh/pboling, https://tidelift.com/funding/github/rubygems/kettle-dev, https://www.buymeacoffee.com/pboling |
1044
+ <!-- kettle-jem:metadata:end -->