kettle-dev 2.2.0 → 2.2.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.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +38 -1
- data/CITATION.cff +2 -2
- data/CONTRIBUTING.md +9 -9
- data/FUNDING.md +12 -12
- data/README.md +92 -92
- data/lib/kettle/dev/gem_spec_reader.rb +3 -3
- data/lib/kettle/dev/gha_sha_pins_cli.rb +52 -7
- data/lib/kettle/dev/version.rb +1 -1
- data.tar.gz.sig +1 -1
- metadata +7 -7
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 95ca53a704f80768d0bc13fd9eb4603bb4823638fd66f0a427139ee28a1b6835
|
|
4
|
+
data.tar.gz: aea475e448ac97b3992474cf3d13b8912bcdf38d5dd5a4472256ce5dc7b4ecce
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9862a2300bfcf03533a4f8bc48e58081f8676de927de77fe5623c2192e9b9a9c5a5909b02a264317cacfc313e25f1b60e9e34ddcf87450837f56cf1ee3afe244
|
|
7
|
+
data.tar.gz: 23f33da7772e128ba221b35fecf4f2e0e110343c4087dc9572c3841496c617d04c040f761c29f1ae4816acf17e3837aa9478beb6c245d5a3419c0a0ce1cabe11
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/CHANGELOG.md
CHANGED
|
@@ -30,6 +30,39 @@ Please file a bug if you notice a violation of semantic versioning.
|
|
|
30
30
|
|
|
31
31
|
### Security
|
|
32
32
|
|
|
33
|
+
## [2.2.2] - 2026-06-09
|
|
34
|
+
|
|
35
|
+
- TAG: [v2.2.2][2.2.2t]
|
|
36
|
+
- COVERAGE: 92.04% -- 3758/4083 lines in 28 files
|
|
37
|
+
- BRANCH COVERAGE: 72.95% -- 1478/2026 branches in 28 files
|
|
38
|
+
- 66.83% documented
|
|
39
|
+
|
|
40
|
+
### Changed
|
|
41
|
+
|
|
42
|
+
- `kettle-gha-sha-pins` now scans only the selected workflow directory,
|
|
43
|
+
defaulting to `.github/workflows`, instead of recursively searching every
|
|
44
|
+
nested `.github/workflows` directory under the project root.
|
|
45
|
+
|
|
46
|
+
### Fixed
|
|
47
|
+
|
|
48
|
+
- Updated generated project metadata links to use the migrated `kettle-dev`
|
|
49
|
+
GitHub organization, including README QLTY badge URLs.
|
|
50
|
+
|
|
51
|
+
## [2.2.1] - 2026-06-09
|
|
52
|
+
|
|
53
|
+
- TAG: [v2.2.1][2.2.1t]
|
|
54
|
+
- COVERAGE: 91.61% -- 3736/4078 lines in 28 files
|
|
55
|
+
- BRANCH COVERAGE: 72.78% -- 1473/2024 branches in 28 files
|
|
56
|
+
- 66.83% documented
|
|
57
|
+
|
|
58
|
+
### Fixed
|
|
59
|
+
|
|
60
|
+
- `Kettle::Dev::GemSpecReader` now falls back to the migrated `kettle-dev`
|
|
61
|
+
GitHub organization when no forge org can be derived.
|
|
62
|
+
- `kettle-gha-sha-pins` now persists live ref-to-SHA lookup results in its action
|
|
63
|
+
cache so a dry run followed by `--write` does not repeat the same API calls.
|
|
64
|
+
- Restored `docs/CNAME` so the generated documentation site keeps its custom domain.
|
|
65
|
+
|
|
33
66
|
## [2.2.0] - 2026-06-08
|
|
34
67
|
|
|
35
68
|
- TAG: [v2.2.0][2.2.0t]
|
|
@@ -1977,7 +2010,11 @@ Please file a bug if you notice a violation of semantic versioning.
|
|
|
1977
2010
|
- Selecting will run the selected workflow via `act`
|
|
1978
2011
|
- This may move to its own gem in the future.
|
|
1979
2012
|
|
|
1980
|
-
[Unreleased]: https://github.com/kettle-
|
|
2013
|
+
[Unreleased]: https://github.com/kettle-dev/kettle-dev/compare/v2.2.2...HEAD
|
|
2014
|
+
[2.2.2]: https://github.com/kettle-dev/kettle-dev/compare/v2.2.1...v2.2.2
|
|
2015
|
+
[2.2.2t]: https://github.com/kettle-dev/kettle-dev/releases/tag/v2.2.2
|
|
2016
|
+
[2.2.1]: https://github.com/kettle-dev/kettle-dev/compare/v2.2.0...v2.2.1
|
|
2017
|
+
[2.2.1t]: https://github.com/kettle-dev/kettle-dev/releases/tag/v2.2.1
|
|
1981
2018
|
[2.2.0]: https://github.com/kettle-rb/kettle-dev/compare/v2.1.1...v2.2.0
|
|
1982
2019
|
[2.2.0t]: https://github.com/kettle-rb/kettle-dev/releases/tag/v2.2.0
|
|
1983
2020
|
[2.1.1]: https://github.com/kettle-rb/kettle-dev/compare/v2.1.0...v2.1.1
|
data/CITATION.cff
CHANGED
|
@@ -12,9 +12,9 @@ authors:
|
|
|
12
12
|
orcid: 'https://orcid.org/0009-0008-8519-441X'
|
|
13
13
|
identifiers:
|
|
14
14
|
- type: url
|
|
15
|
-
value: 'https://github.com/kettle-
|
|
15
|
+
value: 'https://github.com/kettle-dev/kettle-dev'
|
|
16
16
|
description: "kettle-dev"
|
|
17
|
-
repository-code: 'https://github.com/kettle-
|
|
17
|
+
repository-code: 'https://github.com/kettle-dev/kettle-dev'
|
|
18
18
|
abstract: >-
|
|
19
19
|
kettle-dev
|
|
20
20
|
license: See license file
|
data/CONTRIBUTING.md
CHANGED
|
@@ -198,7 +198,7 @@ Your picture could be here!
|
|
|
198
198
|
|
|
199
199
|
Made with [contributors-img][🖐contrib-rocks].
|
|
200
200
|
|
|
201
|
-
Also see GitLab Contributors: [https://gitlab.com/kettle-
|
|
201
|
+
Also see GitLab Contributors: [https://gitlab.com/kettle-dev/kettle-dev/-/graphs/main][🚎contributors-gl]
|
|
202
202
|
|
|
203
203
|
## For Maintainers
|
|
204
204
|
|
|
@@ -249,15 +249,15 @@ NOTE: To build without signing the gem set `SKIP_GEM_SIGNING` to any value in th
|
|
|
249
249
|
14. Run `bundle exec rake release` which will create a git tag for the version,
|
|
250
250
|
push git commits and tags, and push the `.gem` file to the gem host configured in the gemspec.
|
|
251
251
|
|
|
252
|
-
[📜src-gl]: https://gitlab.com/kettle-
|
|
253
|
-
[📜src-cb]: https://codeberg.org/kettle-
|
|
254
|
-
[📜src-gh]: https://github.com/kettle-
|
|
255
|
-
[🧪build]: https://github.com/kettle-
|
|
256
|
-
[🤝conduct]: https://github.com/kettle-
|
|
252
|
+
[📜src-gl]: https://gitlab.com/kettle-dev/kettle-dev
|
|
253
|
+
[📜src-cb]: https://codeberg.org/kettle-dev/kettle-dev
|
|
254
|
+
[📜src-gh]: https://github.com/kettle-dev/kettle-dev
|
|
255
|
+
[🧪build]: https://github.com/kettle-dev/kettle-dev/actions
|
|
256
|
+
[🤝conduct]: https://github.com/kettle-dev/kettle-dev/blob/main/CODE_OF_CONDUCT.md
|
|
257
257
|
[🖐contrib-rocks]: https://contrib.rocks
|
|
258
|
-
[🖐contributors]: https://github.com/kettle-
|
|
259
|
-
[🚎contributors-gl]: https://gitlab.com/kettle-
|
|
260
|
-
[🖐contributors-img]: https://contrib.rocks/image?repo=kettle-
|
|
258
|
+
[🖐contributors]: https://github.com/kettle-dev/kettle-dev/graphs/contributors
|
|
259
|
+
[🚎contributors-gl]: https://gitlab.com/kettle-dev/kettle-dev/-/graphs/main
|
|
260
|
+
[🖐contributors-img]: https://contrib.rocks/image?repo=kettle-dev/kettle-dev
|
|
261
261
|
[💎gem-coop]: https://gem.coop
|
|
262
262
|
[🔒️rubygems-security-guide]: https://guides.rubygems.org/security/#building-gems
|
|
263
263
|
[🔒️rubygems-checksums-pr]: https://github.com/rubygems/rubygems/pull/6022
|
data/FUNDING.md
CHANGED
|
@@ -10,10 +10,10 @@ Many paths lead to being a sponsor or a backer of this project. Are you on such
|
|
|
10
10
|
|
|
11
11
|
[⛳liberapay-img]: https://img.shields.io/liberapay/goal/pboling.svg?logo=liberapay&color=a51611&style=flat
|
|
12
12
|
[⛳liberapay]: https://liberapay.com/pboling/donate
|
|
13
|
-
[🖇osc-backers]: https://opencollective.com/kettle-
|
|
14
|
-
[🖇osc-backers-i]: https://opencollective.com/kettle-
|
|
15
|
-
[🖇osc-sponsors]: https://opencollective.com/kettle-
|
|
16
|
-
[🖇osc-sponsors-i]: https://opencollective.com/kettle-
|
|
13
|
+
[🖇osc-backers]: https://opencollective.com/kettle-dev#backer
|
|
14
|
+
[🖇osc-backers-i]: https://opencollective.com/kettle-dev/backers/badge.svg?style=flat
|
|
15
|
+
[🖇osc-sponsors]: https://opencollective.com/kettle-dev#sponsor
|
|
16
|
+
[🖇osc-sponsors-i]: https://opencollective.com/kettle-dev/sponsors/badge.svg?style=flat
|
|
17
17
|
[🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
|
|
18
18
|
[🖇sponsor]: https://github.com/sponsors/pboling
|
|
19
19
|
[🖇polar-img]: https://img.shields.io/badge/polar-donate-a51611.svg?style=flat
|
|
@@ -46,7 +46,7 @@ To join the community or get help 👇️ Join the Discord.
|
|
|
46
46
|
|
|
47
47
|
To say "thanks!" ☝️ Join the Discord or 👇️ send money.
|
|
48
48
|
|
|
49
|
-
[![Sponsor kettle-
|
|
49
|
+
[![Sponsor kettle-dev/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]
|
|
50
50
|
|
|
51
51
|
# Another Way to Support Open Source Software
|
|
52
52
|
|
|
@@ -59,13 +59,13 @@ I’m developing a new library, [floss_funding][🖇floss-funding-gem], designed
|
|
|
59
59
|
**[Floss-Funding.dev][🖇floss-funding.dev]: 👉️ No network calls. 👉️ No tracking. 👉️ No oversight. 👉️ Minimal crypto hashing. 💡 Easily disabled nags**
|
|
60
60
|
|
|
61
61
|
[⛳liberapay-bottom-img]: https://img.shields.io/liberapay/goal/pboling.svg?style=for-the-badge&logo=liberapay&color=a51611
|
|
62
|
-
[🖇osc-all-img]: https://img.shields.io/opencollective/all/kettle-
|
|
63
|
-
[🖇osc-sponsors-img]: https://img.shields.io/opencollective/sponsors/kettle-
|
|
64
|
-
[🖇osc-backers-img]: https://img.shields.io/opencollective/backers/kettle-
|
|
65
|
-
[🖇osc-all-bottom-img]: https://img.shields.io/opencollective/all/kettle-
|
|
66
|
-
[🖇osc-sponsors-bottom-img]: https://img.shields.io/opencollective/sponsors/kettle-
|
|
67
|
-
[🖇osc-backers-bottom-img]: https://img.shields.io/opencollective/backers/kettle-
|
|
68
|
-
[🖇osc]: https://opencollective.com/kettle-
|
|
62
|
+
[🖇osc-all-img]: https://img.shields.io/opencollective/all/kettle-dev
|
|
63
|
+
[🖇osc-sponsors-img]: https://img.shields.io/opencollective/sponsors/kettle-dev
|
|
64
|
+
[🖇osc-backers-img]: https://img.shields.io/opencollective/backers/kettle-dev
|
|
65
|
+
[🖇osc-all-bottom-img]: https://img.shields.io/opencollective/all/kettle-dev?style=for-the-badge
|
|
66
|
+
[🖇osc-sponsors-bottom-img]: https://img.shields.io/opencollective/sponsors/kettle-dev?style=for-the-badge
|
|
67
|
+
[🖇osc-backers-bottom-img]: https://img.shields.io/opencollective/backers/kettle-dev?style=for-the-badge
|
|
68
|
+
[🖇osc]: https://opencollective.com/kettle-dev
|
|
69
69
|
[🖇sponsor-bottom-img]: https://img.shields.io/badge/Sponsor_Me!-pboling-blue?style=for-the-badge&logo=github
|
|
70
70
|
[🖇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
|
|
71
71
|
[🖇paypal-bottom-img]: https://img.shields.io/badge/donate-paypal-a51611.svg?style=for-the-badge&logo=paypal&color=0A0A0A
|
data/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<a href="https://github.com/kettle-
|
|
1
|
+
<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>
|
|
2
2
|
|
|
3
3
|
# 🍲 Kettle::Dev
|
|
4
4
|
|
|
@@ -120,14 +120,14 @@ not practical for the current toolchain.
|
|
|
120
120
|
|
|
121
121
|
| Federated [DVCS][💎d-in-dvcs] Repository | Status | Issues | PRs | Wiki | CI | Discussions |
|
|
122
122
|
|-------------------------------------------------|-----------------------------------------------------------------------|---------------------------|--------------------------|---------------------------|--------------------------|------------------------------|
|
|
123
|
-
| 🧪 [kettle-
|
|
124
|
-
| 🧊 [kettle-
|
|
125
|
-
| 🐙 [kettle-
|
|
123
|
+
| 🧪 [kettle-dev/kettle-dev on GitLab][📜src-gl] | The Truth | [💚][🤝gl-issues] | [💚][🤝gl-pulls] | [💚][📜gl-wiki] | 🐭 Tiny Matrix | ➖ |
|
|
124
|
+
| 🧊 [kettle-dev/kettle-dev on CodeBerg][📜src-cb] | An Ethical Mirror ([Donate][🤝cb-donate]) | [💚][🤝cb-issues] | [💚][🤝cb-pulls] | ➖ | ⭕️ No Matrix | ➖ |
|
|
125
|
+
| 🐙 [kettle-dev/kettle-dev on GitHub][📜src-gh] | Another Mirror | [💚][🤝gh-issues] | [💚][🤝gh-pulls] | [💚][📜gh-wiki] | 💯 Full Matrix | [💚][gh-discussions] |
|
|
126
126
|
| 🎮️ [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] |
|
|
127
127
|
|
|
128
128
|
</details>
|
|
129
129
|
|
|
130
|
-
[gh-discussions]: https://github.com/kettle-
|
|
130
|
+
[gh-discussions]: https://github.com/kettle-dev/kettle-dev/discussions
|
|
131
131
|
|
|
132
132
|
### Enterprise Support [](https://tidelift.com/subscription/pkg/rubygems-kettle-dev?utm_source=rubygems-kettle-dev&utm_medium=referral&utm_campaign=readme)
|
|
133
133
|
|
|
@@ -588,16 +588,16 @@ chat rooms and mailing lists agrees to follow the [![Contributor Covenant 2.1][
|
|
|
588
588
|
|
|
589
589
|
Made with [contributors-img][🖐contrib-rocks].
|
|
590
590
|
|
|
591
|
-
Also see GitLab Contributors: [https://gitlab.com/kettle-
|
|
591
|
+
Also see GitLab Contributors: [https://gitlab.com/kettle-dev/kettle-dev/-/graphs/main][🚎contributors-gl]
|
|
592
592
|
|
|
593
593
|
<details>
|
|
594
594
|
<summary>⭐️ Star History</summary>
|
|
595
595
|
|
|
596
|
-
<a href="https://star-history.com/kettle-
|
|
596
|
+
<a href="https://star-history.com/kettle-dev/kettle-dev&Date">
|
|
597
597
|
<picture>
|
|
598
|
-
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=kettle-
|
|
599
|
-
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=kettle-
|
|
600
|
-
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=kettle-
|
|
598
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=kettle-dev/kettle-dev&type=Date&theme=dark" />
|
|
599
|
+
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=kettle-dev/kettle-dev&type=Date" />
|
|
600
|
+
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=kettle-dev/kettle-dev&type=Date" />
|
|
601
601
|
</picture>
|
|
602
602
|
</a>
|
|
603
603
|
|
|
@@ -662,7 +662,7 @@ To join the community or get help 👇️ Join the Discord.
|
|
|
662
662
|
|
|
663
663
|
To say "thanks!" ☝️ Join the Discord or 👇️ send money.
|
|
664
664
|
|
|
665
|
-
[![Sponsor kettle-
|
|
665
|
+
[![Sponsor kettle-dev/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]
|
|
666
666
|
|
|
667
667
|
### Please give the project a star ⭐ ♥.
|
|
668
668
|
|
|
@@ -673,17 +673,17 @@ Thanks for RTFM. ☺️
|
|
|
673
673
|
[⛳liberapay-img]: https://img.shields.io/liberapay/goal/pboling.svg?logo=liberapay&color=a51611&style=flat
|
|
674
674
|
[⛳liberapay-bottom-img]: https://img.shields.io/liberapay/goal/pboling.svg?style=for-the-badge&logo=liberapay&color=a51611
|
|
675
675
|
[⛳liberapay]: https://liberapay.com/pboling/donate
|
|
676
|
-
[🖇osc-all-img]: https://img.shields.io/opencollective/all/kettle-
|
|
677
|
-
[🖇osc-sponsors-img]: https://img.shields.io/opencollective/sponsors/kettle-
|
|
678
|
-
[🖇osc-backers-img]: https://img.shields.io/opencollective/backers/kettle-
|
|
679
|
-
[🖇osc-backers]: https://opencollective.com/kettle-
|
|
680
|
-
[🖇osc-backers-i]: https://opencollective.com/kettle-
|
|
681
|
-
[🖇osc-sponsors]: https://opencollective.com/kettle-
|
|
682
|
-
[🖇osc-sponsors-i]: https://opencollective.com/kettle-
|
|
683
|
-
[🖇osc-all-bottom-img]: https://img.shields.io/opencollective/all/kettle-
|
|
684
|
-
[🖇osc-sponsors-bottom-img]: https://img.shields.io/opencollective/sponsors/kettle-
|
|
685
|
-
[🖇osc-backers-bottom-img]: https://img.shields.io/opencollective/backers/kettle-
|
|
686
|
-
[🖇osc]: https://opencollective.com/kettle-
|
|
676
|
+
[🖇osc-all-img]: https://img.shields.io/opencollective/all/kettle-dev
|
|
677
|
+
[🖇osc-sponsors-img]: https://img.shields.io/opencollective/sponsors/kettle-dev
|
|
678
|
+
[🖇osc-backers-img]: https://img.shields.io/opencollective/backers/kettle-dev
|
|
679
|
+
[🖇osc-backers]: https://opencollective.com/kettle-dev#backer
|
|
680
|
+
[🖇osc-backers-i]: https://opencollective.com/kettle-dev/backers/badge.svg?style=flat
|
|
681
|
+
[🖇osc-sponsors]: https://opencollective.com/kettle-dev#sponsor
|
|
682
|
+
[🖇osc-sponsors-i]: https://opencollective.com/kettle-dev/sponsors/badge.svg?style=flat
|
|
683
|
+
[🖇osc-all-bottom-img]: https://img.shields.io/opencollective/all/kettle-dev?style=for-the-badge
|
|
684
|
+
[🖇osc-sponsors-bottom-img]: https://img.shields.io/opencollective/sponsors/kettle-dev?style=for-the-badge
|
|
685
|
+
[🖇osc-backers-bottom-img]: https://img.shields.io/opencollective/backers/kettle-dev?style=for-the-badge
|
|
686
|
+
[🖇osc]: https://opencollective.com/kettle-dev
|
|
687
687
|
[🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
|
|
688
688
|
[🖇sponsor-bottom-img]: https://img.shields.io/badge/Sponsor_Me!-pboling-blue?style=for-the-badge&logo=github
|
|
689
689
|
[🖇sponsor]: https://github.com/sponsors/pboling
|
|
@@ -707,12 +707,12 @@ Thanks for RTFM. ☺️
|
|
|
707
707
|
[✉️ruby-friends]: https://app.daily.dev/squads/rubyfriends
|
|
708
708
|
|
|
709
709
|
[✇bundle-group-pattern]: https://gist.github.com/pboling/4564780
|
|
710
|
-
[⛳️gem-namespace]: https://github.com/kettle-
|
|
710
|
+
[⛳️gem-namespace]: https://github.com/kettle-dev/kettle-dev
|
|
711
711
|
[⛳️namespace-img]: https://img.shields.io/badge/namespace-Kettle::Dev-3C2D2D.svg?style=square&logo=ruby&logoColor=white
|
|
712
712
|
[⛳️gem-name]: https://bestgems.org/gems/kettle-dev
|
|
713
713
|
[⛳️name-img]: https://img.shields.io/badge/name-kettle--dev-3C2D2D.svg?style=square&logo=rubygems&logoColor=red
|
|
714
|
-
[⛳️tag-img]: https://img.shields.io/github/tag/kettle-
|
|
715
|
-
[⛳️tag]: https://github.com/kettle-
|
|
714
|
+
[⛳️tag-img]: https://img.shields.io/github/tag/kettle-dev/kettle-dev.svg
|
|
715
|
+
[⛳️tag]: https://github.com/kettle-dev/kettle-dev/releases
|
|
716
716
|
[🚂maint-blog]: http://www.railsbling.com/tags/kettle-dev
|
|
717
717
|
[🚂maint-blog-img]: https://img.shields.io/badge/blog-railsbling-0093D0.svg?style=for-the-badge&logo=rubyonrails&logoColor=orange
|
|
718
718
|
[🚂maint-contact]: http://www.railsbling.com/contact
|
|
@@ -747,64 +747,64 @@ Thanks for RTFM. ☺️
|
|
|
747
747
|
[💁🏼♂️peterboling]: http://www.peterboling.com
|
|
748
748
|
[🚂railsbling]: http://www.railsbling.com
|
|
749
749
|
[📜src-gl-img]: https://img.shields.io/badge/GitLab-FBA326?style=for-the-badge&logo=Gitlab&logoColor=orange
|
|
750
|
-
[📜src-gl]: https://gitlab.com/kettle-
|
|
750
|
+
[📜src-gl]: https://gitlab.com/kettle-dev/kettle-dev
|
|
751
751
|
[📜src-cb-img]: https://img.shields.io/badge/CodeBerg-4893CC?style=for-the-badge&logo=CodeBerg&logoColor=blue
|
|
752
|
-
[📜src-cb]: https://codeberg.org/kettle-
|
|
752
|
+
[📜src-cb]: https://codeberg.org/kettle-dev/kettle-dev
|
|
753
753
|
[📜src-gh-img]: https://img.shields.io/badge/GitHub-238636?style=for-the-badge&logo=Github&logoColor=green
|
|
754
|
-
[📜src-gh]: https://github.com/kettle-
|
|
754
|
+
[📜src-gh]: https://github.com/kettle-dev/kettle-dev
|
|
755
755
|
[📜docs-cr-rd-img]: https://img.shields.io/badge/RubyDoc-Current_Release-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
|
|
756
756
|
[📜docs-head-rd-img]: https://img.shields.io/badge/YARD_on_Galtzo.com-HEAD-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
|
|
757
|
-
[📜gl-wiki]: https://gitlab.com/kettle-
|
|
758
|
-
[📜gh-wiki]: https://github.com/kettle-
|
|
757
|
+
[📜gl-wiki]: https://gitlab.com/kettle-dev/kettle-dev/-/wikis/home
|
|
758
|
+
[📜gh-wiki]: https://github.com/kettle-dev/kettle-dev/wiki
|
|
759
759
|
[📜gl-wiki-img]: https://img.shields.io/badge/wiki-gitlab-943CD2.svg?style=for-the-badge&logo=gitlab&logoColor=white
|
|
760
760
|
[📜gh-wiki-img]: https://img.shields.io/badge/wiki-github-943CD2.svg?style=for-the-badge&logo=github&logoColor=white
|
|
761
761
|
[👽dl-rank]: https://bestgems.org/gems/kettle-dev
|
|
762
762
|
[👽dl-ranki]: https://img.shields.io/gem/rd/kettle-dev.svg
|
|
763
763
|
[👽version]: https://bestgems.org/gems/kettle-dev
|
|
764
764
|
[👽versioni]: https://img.shields.io/gem/v/kettle-dev.svg
|
|
765
|
-
[🏀qlty-mnt]: https://qlty.sh/gh/kettle-
|
|
766
|
-
[🏀qlty-mnti]: https://qlty.sh/gh/kettle-
|
|
767
|
-
[🏀qlty-cov]: https://qlty.sh/gh/kettle-
|
|
768
|
-
[🏀qlty-covi]: https://qlty.sh/gh/kettle-
|
|
769
|
-
[🏀codecov]: https://codecov.io/gh/kettle-
|
|
770
|
-
[🏀codecovi]: https://codecov.io/gh/kettle-
|
|
771
|
-
[🏀coveralls]: https://coveralls.io/github/kettle-
|
|
772
|
-
[🏀coveralls-img]: https://coveralls.io/repos/github/kettle-
|
|
773
|
-
[🚎ruby-2.4-wf]: https://github.com/kettle-
|
|
774
|
-
[🚎ruby-2.5-wf]: https://github.com/kettle-
|
|
775
|
-
[🚎ruby-2.6-wf]: https://github.com/kettle-
|
|
776
|
-
[🚎ruby-2.7-wf]: https://github.com/kettle-
|
|
777
|
-
[🚎ruby-3.0-wf]: https://github.com/kettle-
|
|
778
|
-
[🚎ruby-3.1-wf]: https://github.com/kettle-
|
|
779
|
-
[🚎ruby-3.2-wf]: https://github.com/kettle-
|
|
780
|
-
[🚎ruby-3.3-wf]: https://github.com/kettle-
|
|
781
|
-
[🚎ruby-3.4-wf]: https://github.com/kettle-
|
|
782
|
-
[🚎jruby-9.2-wf]: https://github.com/kettle-
|
|
783
|
-
[🚎jruby-9.3-wf]: https://github.com/kettle-
|
|
784
|
-
[🚎jruby-9.4-wf]: https://github.com/kettle-
|
|
785
|
-
[🚎truby-22.3-wf]: https://github.com/kettle-
|
|
786
|
-
[🚎truby-23.0-wf]: https://github.com/kettle-
|
|
787
|
-
[🚎truby-23.1-wf]: https://github.com/kettle-
|
|
788
|
-
[🚎truby-24.2-wf]: https://github.com/kettle-
|
|
789
|
-
[🚎truby-25.0-wf]: https://github.com/kettle-
|
|
790
|
-
[🚎2-cov-wf]: https://github.com/kettle-
|
|
791
|
-
[🚎2-cov-wfi]: https://github.com/kettle-
|
|
792
|
-
[🚎3-hd-wf]: https://github.com/kettle-
|
|
793
|
-
[🚎3-hd-wfi]: https://github.com/kettle-
|
|
794
|
-
[🚎5-st-wf]: https://github.com/kettle-
|
|
795
|
-
[🚎5-st-wfi]: https://github.com/kettle-
|
|
796
|
-
[🚎9-t-wf]: https://github.com/kettle-
|
|
797
|
-
[🚎9-t-wfi]: https://github.com/kettle-
|
|
798
|
-
[🚎10-j-wf]: https://github.com/kettle-
|
|
799
|
-
[🚎10-j-wfi]: https://github.com/kettle-
|
|
800
|
-
[🚎11-c-wf]: https://github.com/kettle-
|
|
801
|
-
[🚎11-c-wfi]: https://github.com/kettle-
|
|
802
|
-
[🚎12-crh-wf]: https://github.com/kettle-
|
|
803
|
-
[🚎12-crh-wfi]: https://github.com/kettle-
|
|
804
|
-
[🚎13-🔒️-wf]: https://github.com/kettle-
|
|
805
|
-
[🚎13-🔒️-wfi]: https://github.com/kettle-
|
|
806
|
-
[🚎14-🔓️-wf]: https://github.com/kettle-
|
|
807
|
-
[🚎14-🔓️-wfi]: https://github.com/kettle-
|
|
765
|
+
[🏀qlty-mnt]: https://qlty.sh/gh/kettle-dev/projects/kettle-dev
|
|
766
|
+
[🏀qlty-mnti]: https://qlty.sh/gh/kettle-dev/projects/kettle-dev/maintainability.svg
|
|
767
|
+
[🏀qlty-cov]: https://qlty.sh/gh/kettle-dev/projects/kettle-dev/metrics/code?sort=coverageRating
|
|
768
|
+
[🏀qlty-covi]: https://qlty.sh/gh/kettle-dev/projects/kettle-dev/coverage.svg
|
|
769
|
+
[🏀codecov]: https://codecov.io/gh/kettle-dev/kettle-dev
|
|
770
|
+
[🏀codecovi]: https://codecov.io/gh/kettle-dev/kettle-dev/graph/badge.svg
|
|
771
|
+
[🏀coveralls]: https://coveralls.io/github/kettle-dev/kettle-dev?branch=main
|
|
772
|
+
[🏀coveralls-img]: https://coveralls.io/repos/github/kettle-dev/kettle-dev/badge.svg?branch=main
|
|
773
|
+
[🚎ruby-2.4-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/ruby-2.4.yml
|
|
774
|
+
[🚎ruby-2.5-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/ruby-2.5.yml
|
|
775
|
+
[🚎ruby-2.6-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/ruby-2.6.yml
|
|
776
|
+
[🚎ruby-2.7-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/ruby-2.7.yml
|
|
777
|
+
[🚎ruby-3.0-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/ruby-3.0.yml
|
|
778
|
+
[🚎ruby-3.1-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/ruby-3.1.yml
|
|
779
|
+
[🚎ruby-3.2-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/ruby-3.2.yml
|
|
780
|
+
[🚎ruby-3.3-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/ruby-3.3.yml
|
|
781
|
+
[🚎ruby-3.4-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/ruby-3.4.yml
|
|
782
|
+
[🚎jruby-9.2-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/jruby-9.2.yml
|
|
783
|
+
[🚎jruby-9.3-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/jruby-9.3.yml
|
|
784
|
+
[🚎jruby-9.4-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/jruby-9.4.yml
|
|
785
|
+
[🚎truby-22.3-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/truffleruby-22.3.yml
|
|
786
|
+
[🚎truby-23.0-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/truffleruby-23.0.yml
|
|
787
|
+
[🚎truby-23.1-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/truffleruby-23.1.yml
|
|
788
|
+
[🚎truby-24.2-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/truffleruby-24.2.yml
|
|
789
|
+
[🚎truby-25.0-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/truffleruby-25.0.yml
|
|
790
|
+
[🚎2-cov-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/coverage.yml
|
|
791
|
+
[🚎2-cov-wfi]: https://github.com/kettle-dev/kettle-dev/actions/workflows/coverage.yml/badge.svg
|
|
792
|
+
[🚎3-hd-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/heads.yml
|
|
793
|
+
[🚎3-hd-wfi]: https://github.com/kettle-dev/kettle-dev/actions/workflows/heads.yml/badge.svg
|
|
794
|
+
[🚎5-st-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/style.yml
|
|
795
|
+
[🚎5-st-wfi]: https://github.com/kettle-dev/kettle-dev/actions/workflows/style.yml/badge.svg
|
|
796
|
+
[🚎9-t-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/truffle.yml
|
|
797
|
+
[🚎9-t-wfi]: https://github.com/kettle-dev/kettle-dev/actions/workflows/truffle.yml/badge.svg
|
|
798
|
+
[🚎10-j-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/jruby.yml
|
|
799
|
+
[🚎10-j-wfi]: https://github.com/kettle-dev/kettle-dev/actions/workflows/jruby.yml/badge.svg
|
|
800
|
+
[🚎11-c-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/current.yml
|
|
801
|
+
[🚎11-c-wfi]: https://github.com/kettle-dev/kettle-dev/actions/workflows/current.yml/badge.svg
|
|
802
|
+
[🚎12-crh-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/dep-heads.yml
|
|
803
|
+
[🚎12-crh-wfi]: https://github.com/kettle-dev/kettle-dev/actions/workflows/dep-heads.yml/badge.svg
|
|
804
|
+
[🚎13-🔒️-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/locked_deps.yml
|
|
805
|
+
[🚎13-🔒️-wfi]: https://github.com/kettle-dev/kettle-dev/actions/workflows/locked_deps.yml/badge.svg
|
|
806
|
+
[🚎14-🔓️-wf]: https://github.com/kettle-dev/kettle-dev/actions/workflows/unlocked_deps.yml
|
|
807
|
+
[🚎14-🔓️-wfi]: https://github.com/kettle-dev/kettle-dev/actions/workflows/unlocked_deps.yml/badge.svg
|
|
808
808
|
[💎ruby-2.4i]: https://img.shields.io/badge/Ruby-2.4-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
|
|
809
809
|
[💎ruby-2.5i]: https://img.shields.io/badge/Ruby-2.5-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
|
|
810
810
|
[💎ruby-2.6i]: https://img.shields.io/badge/Ruby-2.6-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
|
|
@@ -828,34 +828,34 @@ Thanks for RTFM. ☺️
|
|
|
828
828
|
[💎jruby-9.4i]: https://img.shields.io/badge/JRuby-9.4-FBE742?style=for-the-badge&logo=ruby&logoColor=red
|
|
829
829
|
[💎jruby-c-i]: https://img.shields.io/badge/JRuby-current-FBE742?style=for-the-badge&logo=ruby&logoColor=green
|
|
830
830
|
[💎jruby-headi]: https://img.shields.io/badge/JRuby-HEAD-FBE742?style=for-the-badge&logo=ruby&logoColor=blue
|
|
831
|
-
[🤝gh-issues]: https://github.com/kettle-
|
|
832
|
-
[🤝gh-pulls]: https://github.com/kettle-
|
|
833
|
-
[🤝gl-issues]: https://gitlab.com/kettle-
|
|
834
|
-
[🤝gl-pulls]: https://gitlab.com/kettle-
|
|
835
|
-
[🤝cb-issues]: https://codeberg.org/kettle-
|
|
836
|
-
[🤝cb-pulls]: https://codeberg.org/kettle-
|
|
831
|
+
[🤝gh-issues]: https://github.com/kettle-dev/kettle-dev/issues
|
|
832
|
+
[🤝gh-pulls]: https://github.com/kettle-dev/kettle-dev/pulls
|
|
833
|
+
[🤝gl-issues]: https://gitlab.com/kettle-dev/kettle-dev/-/issues
|
|
834
|
+
[🤝gl-pulls]: https://gitlab.com/kettle-dev/kettle-dev/-/merge_requests
|
|
835
|
+
[🤝cb-issues]: https://codeberg.org/kettle-dev/kettle-dev/issues
|
|
836
|
+
[🤝cb-pulls]: https://codeberg.org/kettle-dev/kettle-dev/pulls
|
|
837
837
|
[🤝cb-donate]: https://donate.codeberg.org/
|
|
838
|
-
[🤝contributing]: https://github.com/kettle-
|
|
839
|
-
[🏀codecov-g]: https://codecov.io/gh/kettle-
|
|
838
|
+
[🤝contributing]: https://github.com/kettle-dev/kettle-dev/blob/main/CONTRIBUTING.md
|
|
839
|
+
[🏀codecov-g]: https://codecov.io/gh/kettle-dev/kettle-dev/graph/badge.svg
|
|
840
840
|
[🖐contrib-rocks]: https://contrib.rocks
|
|
841
|
-
[🖐contributors]: https://github.com/kettle-
|
|
842
|
-
[🖐contributors-img]: https://contrib.rocks/image?repo=kettle-
|
|
843
|
-
[🚎contributors-gl]: https://gitlab.com/kettle-
|
|
844
|
-
[🪇conduct]: https://github.com/kettle-
|
|
841
|
+
[🖐contributors]: https://github.com/kettle-dev/kettle-dev/graphs/contributors
|
|
842
|
+
[🖐contributors-img]: https://contrib.rocks/image?repo=kettle-dev/kettle-dev
|
|
843
|
+
[🚎contributors-gl]: https://gitlab.com/kettle-dev/kettle-dev/-/graphs/main
|
|
844
|
+
[🪇conduct]: https://github.com/kettle-dev/kettle-dev/blob/main/CODE_OF_CONDUCT.md
|
|
845
845
|
[🪇conduct-img]: https://img.shields.io/badge/Contributor_Covenant-2.1-259D6C.svg
|
|
846
846
|
[📌pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
|
|
847
847
|
[📌semver]: https://semver.org/spec/v2.0.0.html
|
|
848
848
|
[📌semver-img]: https://img.shields.io/badge/semver-2.0.0-259D6C.svg?style=flat
|
|
849
849
|
[📌semver-breaking]: https://github.com/semver/semver/issues/716#issuecomment-869336139
|
|
850
850
|
[📌major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
|
|
851
|
-
[📌changelog]: https://github.com/kettle-
|
|
851
|
+
[📌changelog]: https://github.com/kettle-dev/kettle-dev/blob/main/CHANGELOG.md
|
|
852
852
|
[📗keep-changelog]: https://keepachangelog.com/en/1.0.0/
|
|
853
853
|
[📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-34495e.svg?style=flat
|
|
854
854
|
[📌gitmoji]: https://gitmoji.dev
|
|
855
855
|
[📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
|
|
856
856
|
[🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
|
|
857
|
-
[🧮kloc-img]: https://img.shields.io/badge/KLOC-4.
|
|
858
|
-
[🔐security]: https://github.com/kettle-
|
|
857
|
+
[🧮kloc-img]: https://img.shields.io/badge/KLOC-4.083-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
|
|
858
|
+
[🔐security]: https://github.com/kettle-dev/kettle-dev/blob/main/SECURITY.md
|
|
859
859
|
[🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
|
|
860
860
|
[📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
|
|
861
861
|
[📄license]: LICENSE.md
|
|
@@ -869,7 +869,7 @@ Thanks for RTFM. ☺️
|
|
|
869
869
|
[🚎yard-current]: http://rubydoc.info/gems/kettle-dev
|
|
870
870
|
[🚎yard-head]: https://kettle-dev.galtzo.com
|
|
871
871
|
[💎stone_checksums]: https://github.com/galtzo-floss/stone_checksums
|
|
872
|
-
[💎SHA_checksums]: https://gitlab.com/kettle-
|
|
872
|
+
[💎SHA_checksums]: https://gitlab.com/kettle-dev/kettle-dev/-/tree/main/checksums
|
|
873
873
|
[💎rlts]: https://github.com/rubocop-lts/rubocop-lts
|
|
874
874
|
[💎rlts-img]: https://img.shields.io/badge/code_style_&_linting-rubocop--lts-34495e.svg?plastic&logo=ruby&logoColor=white
|
|
875
875
|
[💎appraisal2]: https://github.com/appraisal-rb/appraisal2
|
|
@@ -881,8 +881,8 @@ Thanks for RTFM. ☺️
|
|
|
881
881
|
|---|---|
|
|
882
882
|
| Package | kettle-dev |
|
|
883
883
|
| 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 |
|
|
884
|
-
| Homepage | https://github.com/kettle-
|
|
885
|
-
| Source | https://github.com/kettle-
|
|
884
|
+
| Homepage | https://github.com/kettle-dev/kettle-dev |
|
|
885
|
+
| Source | https://github.com/kettle-dev/kettle-dev/tree/v2.2.1 |
|
|
886
886
|
| License | `AGPL-3.0-only` |
|
|
887
|
-
| 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 |
|
|
887
|
+
| 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-dev, 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 |
|
|
888
888
|
<!-- kettle-jem:metadata:end -->
|
|
@@ -25,7 +25,7 @@ module Kettle
|
|
|
25
25
|
# @option return [String] :gem_name gem name ("" when not derivable)
|
|
26
26
|
# @option return [Gem::Version] :min_ruby minimum Ruby version derived or DEFAULT_MINIMUM_RUBY
|
|
27
27
|
# @option return [String] :homepage homepage string (may be "")
|
|
28
|
-
# @option return [String] :gh_org GitHub org (falls back to "kettle-
|
|
28
|
+
# @option return [String] :gh_org GitHub org (falls back to "kettle-dev")
|
|
29
29
|
# @option return [String] :forge_org primary forge org (currently same as gh_org)
|
|
30
30
|
# @option return [String, nil] :funding_org OpenCollective/org handle or nil when not discovered
|
|
31
31
|
# @option return [String, nil] :gh_repo GitHub repo name, if discoverable
|
|
@@ -107,8 +107,8 @@ module Kettle
|
|
|
107
107
|
forge_org = explicit_forge_org || forge_info[:forge_org]
|
|
108
108
|
gh_repo = forge_info[:origin_repo]
|
|
109
109
|
if forge_org.to_s.empty?
|
|
110
|
-
Kernel.warn("kettle-dev: Could not determine forge org from spec.homepage or git remote.\n - Ensure gemspec.homepage is set to a GitHub URL or that the git remote 'origin' points to GitHub.\n - Example homepage: https://github.com/<org>/<repo>\n - Proceeding with default org: kettle-
|
|
111
|
-
forge_org = "kettle-
|
|
110
|
+
Kernel.warn("kettle-dev: Could not determine forge org from spec.homepage or git remote.\n - Ensure gemspec.homepage is set to a GitHub URL or that the git remote 'origin' points to GitHub.\n - Example homepage: https://github.com/<org>/<repo>\n - Proceeding with default org: kettle-dev.")
|
|
111
|
+
forge_org = "kettle-dev"
|
|
112
112
|
end
|
|
113
113
|
|
|
114
114
|
camel = lambda do |s|
|
|
@@ -38,7 +38,7 @@ module Kettle
|
|
|
38
38
|
@argv = argv
|
|
39
39
|
@err = err
|
|
40
40
|
@options = {
|
|
41
|
-
root: Dir.pwd,
|
|
41
|
+
root: File.join(Dir.pwd, ".github", "workflows"),
|
|
42
42
|
dry_run: true,
|
|
43
43
|
token: ENV["GITHUB_TOKEN"] || ENV["GH_TOKEN"],
|
|
44
44
|
json: false,
|
|
@@ -227,7 +227,7 @@ module Kettle
|
|
|
227
227
|
opt.banner = "Usage: kettle-gha-sha-pins [options]"
|
|
228
228
|
opt.separator ""
|
|
229
229
|
opt.separator "Normalize GitHub Actions workflow action refs to immutable commit SHAs."
|
|
230
|
-
opt.on("-r", "--root PATH", "
|
|
230
|
+
opt.on("-r", "--root PATH", "Directory to scan (defaults to .github/workflows under cwd)") do |root|
|
|
231
231
|
@options[:root] = root
|
|
232
232
|
end
|
|
233
233
|
opt.on("-w", "--write", "Write edits (dry-run is default)") do
|
|
@@ -367,12 +367,10 @@ module Kettle
|
|
|
367
367
|
end
|
|
368
368
|
|
|
369
369
|
def discover_workflow_files(root, reject_patterns)
|
|
370
|
-
expanded_root =
|
|
370
|
+
expanded_root = workflow_analysis_root(root)
|
|
371
371
|
patterns = [
|
|
372
|
-
File.join(expanded_root.to_s, "
|
|
373
|
-
File.join(expanded_root.to_s, "
|
|
374
|
-
File.join(expanded_root.to_s, "**/.github/workflows/*.yml"),
|
|
375
|
-
File.join(expanded_root.to_s, "**/.github/workflows/*.yaml")
|
|
372
|
+
File.join(expanded_root.to_s, "*.yml"),
|
|
373
|
+
File.join(expanded_root.to_s, "*.yaml")
|
|
376
374
|
]
|
|
377
375
|
files = Dir.glob(patterns, File::FNM_PATHNAME).uniq.sort
|
|
378
376
|
files.select do |path|
|
|
@@ -382,6 +380,14 @@ module Kettle
|
|
|
382
380
|
end
|
|
383
381
|
end
|
|
384
382
|
|
|
383
|
+
def workflow_analysis_root(root)
|
|
384
|
+
expanded_root = Pathname.new(root).expand_path
|
|
385
|
+
workflow_root = expanded_root.join(".github", "workflows")
|
|
386
|
+
return workflow_root if workflow_root.directory?
|
|
387
|
+
|
|
388
|
+
expanded_root
|
|
389
|
+
end
|
|
390
|
+
|
|
385
391
|
def extract_uses_nodes(parsed, text = nil)
|
|
386
392
|
mapping_node = Psych::Nodes::Mapping
|
|
387
393
|
scalar_node = Psych::Nodes::Scalar
|
|
@@ -957,6 +963,32 @@ module Kettle
|
|
|
957
963
|
save!
|
|
958
964
|
end
|
|
959
965
|
|
|
966
|
+
def ref_sha(repo_ref, ref, fresh: true)
|
|
967
|
+
action = action_data(repo_ref)
|
|
968
|
+
return nil unless action
|
|
969
|
+
|
|
970
|
+
refs = action.fetch("refs", {})
|
|
971
|
+
entry = refs[ref.to_s]
|
|
972
|
+
return nil unless entry
|
|
973
|
+
return nil if fresh && !fresh_entry?(entry)
|
|
974
|
+
|
|
975
|
+
sha = entry["sha"].to_s
|
|
976
|
+
sha.empty? ? nil : sha
|
|
977
|
+
end
|
|
978
|
+
|
|
979
|
+
def write_ref_sha(repo_ref, ref, sha)
|
|
980
|
+
return if @path.to_s.empty?
|
|
981
|
+
return if repo_ref.to_s.empty? || ref.to_s.empty? || sha.to_s.empty?
|
|
982
|
+
|
|
983
|
+
action = data.fetch("actions")[repo_ref] ||= {}
|
|
984
|
+
refs = action["refs"] ||= {}
|
|
985
|
+
refs[ref.to_s] = {
|
|
986
|
+
"sha" => sha.to_s[0, 40],
|
|
987
|
+
"cached_at" => @clock.call.utc.iso8601
|
|
988
|
+
}
|
|
989
|
+
save!
|
|
990
|
+
end
|
|
991
|
+
|
|
960
992
|
def to_h
|
|
961
993
|
data
|
|
962
994
|
end
|
|
@@ -1108,10 +1140,23 @@ module Kettle
|
|
|
1108
1140
|
cache_key = "commit:#{repo_ref}:#{ref}"
|
|
1109
1141
|
return @commit_cache[cache_key] if @commit_cache.key?(cache_key)
|
|
1110
1142
|
|
|
1143
|
+
unless @refresh_cache
|
|
1144
|
+
cached = @persistent_cache&.ref_sha(repo_ref, ref, fresh: true)
|
|
1145
|
+
if cached
|
|
1146
|
+
@commit_cache[cache_key] = cached
|
|
1147
|
+
return cached
|
|
1148
|
+
end
|
|
1149
|
+
end
|
|
1150
|
+
|
|
1111
1151
|
data = request_json("/repos/#{repo_ref}/commits/#{uri_encode(ref)}")
|
|
1112
1152
|
sha = if data.is_a?(Hash)
|
|
1113
1153
|
data.fetch("sha", "")[0, 40]
|
|
1114
1154
|
end
|
|
1155
|
+
if sha.to_s.empty?
|
|
1156
|
+
sha = @persistent_cache&.ref_sha(repo_ref, ref, fresh: false)
|
|
1157
|
+
else
|
|
1158
|
+
@persistent_cache&.write_ref_sha(repo_ref, ref, sha)
|
|
1159
|
+
end
|
|
1115
1160
|
@commit_cache[cache_key] = sha
|
|
1116
1161
|
sha
|
|
1117
1162
|
end
|
data/lib/kettle/dev/version.rb
CHANGED
data.tar.gz.sig
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
/�F�
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: kettle-dev
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.2.
|
|
4
|
+
version: 2.2.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Peter H. Boling
|
|
@@ -333,17 +333,17 @@ files:
|
|
|
333
333
|
- sig/kettle/dev/version.rbs
|
|
334
334
|
- sig/kettle/dev/versioning.rbs
|
|
335
335
|
- sig/kettle/emoji_regex.rbs
|
|
336
|
-
homepage: https://github.com/kettle-
|
|
336
|
+
homepage: https://github.com/kettle-dev/kettle-dev
|
|
337
337
|
licenses:
|
|
338
338
|
- AGPL-3.0-only
|
|
339
339
|
metadata:
|
|
340
340
|
homepage_uri: https://kettle-dev.galtzo.com
|
|
341
|
-
source_code_uri: https://github.com/kettle-
|
|
342
|
-
changelog_uri: https://github.com/kettle-
|
|
343
|
-
bug_tracker_uri: https://github.com/kettle-
|
|
344
|
-
documentation_uri: https://www.rubydoc.info/gems/kettle-dev/2.2.
|
|
341
|
+
source_code_uri: https://github.com/kettle-dev/kettle-dev/tree/v2.2.2
|
|
342
|
+
changelog_uri: https://github.com/kettle-dev/kettle-dev/blob/v2.2.2/CHANGELOG.md
|
|
343
|
+
bug_tracker_uri: https://github.com/kettle-dev/kettle-dev/issues
|
|
344
|
+
documentation_uri: https://www.rubydoc.info/gems/kettle-dev/2.2.2
|
|
345
345
|
funding_uri: https://github.com/sponsors/pboling
|
|
346
|
-
wiki_uri: https://github.com/kettle-
|
|
346
|
+
wiki_uri: https://github.com/kettle-dev/kettle-dev/wiki
|
|
347
347
|
news_uri: https://www.railsbling.com/tags/kettle-dev
|
|
348
348
|
discord_uri: https://discord.gg/3qme4XHNKN
|
|
349
349
|
rubygems_mfa_required: 'true'
|
metadata.gz.sig
CHANGED
|
Binary file
|