kettle-family 1.2.3 → 1.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b45c2fb44c1bf149f0a2f9cfd25f9c3ff66223a7d83b1afd29a2ca3e34d899e2
4
- data.tar.gz: 8b1ec3ef54ac02e16cbd93ede3412d411fd72bd33b69e99885d98152846a724a
3
+ metadata.gz: da7381b4cfaa486889d244554f6b1fda061e61a0425f0c9bcb6d16d1e0193618
4
+ data.tar.gz: 57d3827d32081abf403728035aed2b58c2aba097ee726b5ddf2de87cc3f3982e
5
5
  SHA512:
6
- metadata.gz: 18ce32a11fcbb38cbeb32476699256a68e51b45786d91aa1eeb173fb1f2d9ffb9b7fce4009aac9d68e51c6ebadd973d5d63942deede6d939800ea80a0870f9a1
7
- data.tar.gz: 3671daa647afe8e2d93c386793a74b64ed0f43984ed580760c5899706c4516d633fe0a47960810e0082f21147fbe27a1129aa27dd7bb0c77ef5378007e05c3b1
6
+ metadata.gz: 8dd7fd4a57106d5dd7b542e619d36fb8de0cdebbcd4678be1cf1257b69b046c1743ec8b52cb32eb5f13b7a802c71fc08e0df7233f7c7c6ea180bf0fed9c6b945
7
+ data.tar.gz: 8f691261815c402a0d2264778b39b8effd298850502c6e12bd2a68b05ac2bbe35185e8a2bd856997136b27c507a1c5318065d1efd4271e8de349a997c7d1a592
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,46 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [1.2.4] - 2026-07-29
34
+
35
+ - TAG: [v1.2.4][1.2.4t]
36
+ - COVERAGE: 93.92% -- 3629/3864 lines in 27 files
37
+ - BRANCH COVERAGE: 76.22% -- 1378/1808 branches in 27 files
38
+ - 28.01% documented
39
+
40
+ ### Added
41
+
42
+ - kettle-jem-template-20260729-005 - Gemspec metadata now publishes this
43
+ project's RubyForum tag as `mailing_list_uri`, and support docs link to the
44
+ tagged RubyForum community alongside Discord.
45
+
46
+ ### Fixed
47
+
48
+ - Family release changelog phases now pass `--yes` to configured
49
+ `kettle-changelog` commands by default, matching child `kettle-release`
50
+ behavior and keeping publish runs non-interactive unless `--no-accept` is
51
+ used.
52
+
53
+ - kettle-jem-template-20260728-003 - Generated dep-heads workflows now run
54
+ TruffleRuby jobs with current RubyGems and Bundler, avoiding setup failures
55
+ before the test suite starts.
56
+ - kettle-jem-template-20260728-004 - Generated dep-heads workflows now use the
57
+ setup-ruby Bundler install path for direct appraisal Gemfiles, avoiding rv
58
+ lockfile parser failures on Git and path dependencies.
59
+ - kettle-jem-template-20260728-005 - VersionGem bootstrap now creates the
60
+ missing canonical version spec when a project only has shim namespace version
61
+ specs.
62
+ - kettle-jem-template-20260729-001 - Generated JRuby 9.4 workflows now use the
63
+ legacy manual bundle install path, avoiding setup-time Bundler full-index
64
+ failures against `gem.coop`.
65
+ - kettle-jem-template-20260729-002 - VersionGem bootstrap now preserves
66
+ and templates dedicated `version_gem.rb` entrypoints even when the gemspec
67
+ dependency is intentionally omitted, and generated anonymous-loader specs
68
+ cover both `version.rb` and `version_gem.rb`.
69
+ - kettle-jem-template-20260729-003 - Old-Ruby gems below the VersionGem runtime
70
+ floor now get managed minimal `version.rb` files and anonymous-loader version
71
+ specs without adding `version_gem`.
72
+
33
73
  ## [1.2.3] - 2026-07-28
34
74
 
35
75
  - TAG: [v1.2.3][1.2.3t]
@@ -1211,7 +1251,9 @@ Please file a bug if you notice a violation of semantic versioning.
1211
1251
  - Fixed CI load failures on engines without compatible `pty` support by falling back to Open3 for interactive release commands.
1212
1252
  - Fixed Ruby 3.2 version-bump support by loading Prism lazily and wiring the Prism gem only for MRI versions that need it.
1213
1253
 
1214
- [Unreleased]: https://github.com/kettle-dev/kettle-family/compare/v1.2.3...HEAD
1254
+ [Unreleased]: https://github.com/kettle-dev/kettle-family/compare/v1.2.4...HEAD
1255
+ [1.2.4]: https://github.com/kettle-dev/kettle-family/compare/v1.2.3...v1.2.4
1256
+ [1.2.4t]: https://github.com/kettle-dev/kettle-family/releases/tag/v1.2.4
1215
1257
  [1.2.3]: https://github.com/kettle-dev/kettle-family/compare/v1.2.2...v1.2.3
1216
1258
  [1.2.3t]: https://github.com/kettle-dev/kettle-family/releases/tag/v1.2.3
1217
1259
  [1.2.2]: https://github.com/kettle-dev/kettle-family/compare/v1.2.1...v1.2.2
data/README.md CHANGED
@@ -2,9 +2,9 @@
2
2
 
3
3
  # 👩‍👩‍👧‍👧 Kettle::Family
4
4
 
5
- [![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] [![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]
5
+ [![Version][👽versioni]][👽version] [![Ruby Users Forum][✉️ruby-forum-top-img]][✉️ruby-forum] [![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] [![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]
6
6
 
7
- `if ci_badges.map(&:color).detect { it != "green"}` ☝️ [let me know][✉️discord-invite], as I may have missed the [discord notification][✉️discord-invite].
7
+ `if ci_badges.map(&:color).detect { it != "green"}` ☝️ [let me know on Discord][✉️discord-invite] or [RubyForum][✉️ruby-forum], as I may have missed the notification.
8
8
 
9
9
  ---
10
10
 
@@ -87,17 +87,14 @@ The _amazing_ test matrix is powered by the kettle-dev stack.
87
87
  <details markdown="1">
88
88
  <summary>Find this repo on federated forges (Coming soon!)</summary>
89
89
 
90
- | Federated [DVCS][💎d-in-dvcs] Repository | Status | Issues | PRs | Wiki | CI | Discussions |
91
- |-------------------------------------------------|-----------------------------------------------------------------------|---------------------------|--------------------------|---------------------------|--------------------------|------------------------------|
92
- | 🧪 [kettle-dev/kettle-family on GitLab][📜src-gl] | The Truth | [💚][🤝gl-issues] | [💚][🤝gl-pulls] | [💚][📜gl-wiki] | 🐭 Tiny Matrix | ➖ |
93
- | 🧊 [kettle-dev/kettle-family on CodeBerg][📜src-cb] | An Ethical Mirror ([Donate][🤝cb-donate]) | [💚][🤝cb-issues] | [💚][🤝cb-pulls] | ➖ | ⭕️ No Matrix | ➖ |
94
- | 🐙 [kettle-dev/kettle-family on GitHub][📜src-gh] | Another Mirror | [💚][🤝gh-issues] | [💚][🤝gh-pulls] | [💚][📜gh-wiki] | 💯 Full Matrix | [💚][gh-discussions] |
95
- | 🎮️ [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] |
90
+ | Federated [DVCS][💎d-in-dvcs] Repository | Status | Issues | PRs | Wiki | CI |
91
+ |-------------------------------------------------|-------------------------------------------|-------------------|------------------|-----------------|----------------|
92
+ | 🧪 [kettle-dev/kettle-family on GitLab][📜src-gl] | The Truth | [💚][🤝gl-issues] | [💚][🤝gl-pulls] | [💚][📜gl-wiki] | 🐭 Tiny Matrix |
93
+ | 🧊 [kettle-dev/kettle-family on CodeBerg][📜src-cb] | An Ethical Mirror ([Donate][🤝cb-donate]) | [💚][🤝cb-issues] | [💚][🤝cb-pulls] | ➖ | ⭕️ No Matrix |
94
+ | 🐙 [kettle-dev/kettle-family on GitHub][📜src-gh] | Another Mirror | [💚][🤝gh-issues] | [💚][🤝gh-pulls] | [💚][📜gh-wiki] | 💯 Full Matrix |
96
95
 
97
96
  </details>
98
97
 
99
- [gh-discussions]: https://github.com/kettle-dev/kettle-family/discussions
100
-
101
98
  ### Enterprise Support [![Tidelift](https://tidelift.com/badges/package/rubygems/kettle-family)](https://tidelift.com/subscription/pkg/rubygems-kettle-family?utm_source=rubygems-kettle-family&utm_medium=referral&utm_campaign=readme)
102
99
 
103
100
  Available as part of the Tidelift Subscription.
@@ -115,6 +112,7 @@ The maintainers of this and thousands of other packages are working with Tidelif
115
112
 
116
113
  Alternatively:
117
114
 
115
+ - [![Ruby Users Forum][✉️ruby-forum-img]][✉️ruby-forum]
118
116
  - [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite]
119
117
  - [![Get help from me on Upwork][👨🏼‍🏫expsup-upwork-img]][👨🏼‍🏫expsup-upwork]
120
118
  - [![Get help from me on Codementor][👨🏼‍🏫expsup-codementor-img]][👨🏼‍🏫expsup-codementor]
@@ -399,9 +397,10 @@ and leaves RubyGems MFA prompts interactive by default:
399
397
  kettle-family release --publish --execute
400
398
  ```
401
399
 
402
- By default, family publish runs pass `--yes` to child `kettle-release`
403
- commands. Use `--no-accept` when you want each child release command to ask its
404
- own confirmation prompts.
400
+ By default, family publish runs pass `--yes` to configured `kettle-changelog`
401
+ family changelog commands and child `kettle-release` commands. Use
402
+ `--no-accept` when you want each child command to ask its own confirmation
403
+ prompts.
405
404
 
406
405
  Executed publish runs can opt in to the local 1Password CLI for unattended
407
406
  release credentials. The gem signing passphrase is loaded once and cached only
@@ -659,11 +658,12 @@ I'm hoping to be able to pay for my kids' health insurance this month,
659
658
  so if you value the work I am doing, I need your support.
660
659
  Please consider sponsoring me or the project.
661
660
 
662
- To join the community or get help 👇️ Join the Discord.
661
+ To join the community or get help, use the RubyForum or Discord.
663
662
 
663
+ [![Ruby Users Forum][✉️ruby-forum-img]][✉️ruby-forum]
664
664
  [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite]
665
665
 
666
- To say "thanks!" ☝️ Join the Discord or 👇️ send money.
666
+ To say "thanks!" ☝️ Join the community or 👇️ send money.
667
667
 
668
668
  [![Sponsor kettle-dev/kettle-family 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]
669
669
 
@@ -704,8 +704,9 @@ Thanks for RTFM. ☺️
704
704
  [✉️discord-invite-img-ftb]: https://img.shields.io/discord/1373797679469170758?style=for-the-badge&logo=discord
705
705
  [✉️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
706
706
  [✉️ruby-friends]: https://app.daily.dev/squads/rubyfriends
707
- [✉️ruby-forum-img]: https://img.shields.io/badge/RubyForum-Help-CC342D?style=for-the-badge&logo=ruby&logoColor=white
708
- [✉️ruby-forum]: https://www.rubyforum.org/c/help/8
707
+ [✉️ruby-forum-top-img]: https://img.shields.io/discourse/topics?server=https://www.rubyforum.org&style=flat&logo=discourse&label=Ruby%20Users%20Forum
708
+ [✉️ruby-forum-img]: https://img.shields.io/discourse/topics?server=https://www.rubyforum.org&style=for-the-badge&logo=discourse&label=Ruby%20Users%20Forum
709
+ [✉️ruby-forum]: https://www.rubyforum.org/tag/kettle-dev
709
710
 
710
711
  [✇bundle-group-pattern]: https://gist.github.com/pboling/4564780
711
712
  [⛳️gem-namespace]: https://github.com/kettle-dev/kettle-family
@@ -813,7 +814,7 @@ Thanks for RTFM. ☺️
813
814
  [📌gitmoji]: https://gitmoji.dev
814
815
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
815
816
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
816
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-3.855-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
817
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-3.864-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
817
818
  [🔐security]: https://github.com/kettle-dev/kettle-family/blob/main/SECURITY.md
818
819
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
819
820
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -5,7 +5,7 @@ module Kettle
5
5
  # Version namespace for this gem.
6
6
  module Version
7
7
  # Current gem version.
8
- VERSION = "1.2.3"
8
+ VERSION = "1.2.4"
9
9
  end
10
10
  # Current gem version exposed at the traditional constant location.
11
11
  VERSION = Version::VERSION # Traditional Constant Location
@@ -983,7 +983,7 @@ module Kettle
983
983
  memo << runner.call(
984
984
  member: family_member,
985
985
  phase: "family_changelog",
986
- command: config.release_family_changelog_command,
986
+ command: family_changelog_command,
987
987
  env: release_env.merge(config.changelog_env)
988
988
  )
989
989
  end
@@ -997,6 +997,11 @@ module Kettle
997
997
  kettle_release_command?(command) ? append_kettle_release_args(command) : command
998
998
  end
999
999
 
1000
+ def family_changelog_command
1001
+ command = config.release_family_changelog_command
1002
+ kettle_changelog_command?(command) ? append_kettle_changelog_args(command) : command
1003
+ end
1004
+
1000
1005
  def raw_release_command
1001
1006
  publish ? config.release_publish_command : config.release_build_command
1002
1007
  end
@@ -1016,6 +1021,17 @@ module Kettle
1016
1021
  end
1017
1022
  end
1018
1023
 
1024
+ def kettle_changelog_command?(command)
1025
+ case command
1026
+ when Array
1027
+ command.any? { |part| part.to_s.include?("kettle-changelog") }
1028
+ when String
1029
+ command.include?("kettle-changelog")
1030
+ else
1031
+ false
1032
+ end
1033
+ end
1034
+
1019
1035
  def append_kettle_release_args(command)
1020
1036
  args = []
1021
1037
  args << "start_step=#{start_step}" if start_step
@@ -1036,6 +1052,13 @@ module Kettle
1036
1052
  accept && kettle_release_command?(raw_release_command)
1037
1053
  end
1038
1054
 
1055
+ def append_kettle_changelog_args(command)
1056
+ return command unless accept
1057
+ return command if command_includes_arg?(command, "--yes")
1058
+
1059
+ command.is_a?(Array) ? [*command, "--yes"] : "#{command} --yes"
1060
+ end
1061
+
1039
1062
  def validate_ci_workflows(value)
1040
1063
  return nil if value.nil? || value.to_s.empty?
1041
1064
 
data/lib/kettle/family.rb CHANGED
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "version_gem"
4
-
5
3
  require_relative "family/version"
6
4
  require_relative "family/member"
7
5
  require_relative "family/command_result"
@@ -30,7 +28,3 @@ module Kettle
30
28
  class Error < StandardError; end
31
29
  end
32
30
  end
33
-
34
- Kettle::Family::Version.class_eval do
35
- extend VersionGem::Basic
36
- end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kettle-family
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.3
4
+ version: 1.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -284,7 +284,7 @@ dependencies:
284
284
  version: '2.0'
285
285
  - - ">="
286
286
  - !ruby/object:Gem::Version
287
- version: 2.0.6
287
+ version: 2.0.10
288
288
  type: :development
289
289
  prerelease: false
290
290
  version_requirements: !ruby/object:Gem::Requirement
@@ -294,7 +294,7 @@ dependencies:
294
294
  version: '2.0'
295
295
  - - ">="
296
296
  - !ruby/object:Gem::Version
297
- version: 2.0.6
297
+ version: 2.0.10
298
298
  description: "\U0001F469‍\U0001F469‍\U0001F467‍\U0001F467 Kettle::Family provides
299
299
  scripts and conventions for coordinating related Ruby gems as one family."
300
300
  email:
@@ -341,14 +341,15 @@ licenses:
341
341
  - AGPL-3.0-only
342
342
  metadata:
343
343
  homepage_uri: https://kettle-family.galtzo.com
344
- source_code_uri: https://github.com/kettle-dev/kettle-family/tree/v1.2.3
345
- changelog_uri: https://github.com/kettle-dev/kettle-family/blob/v1.2.3/CHANGELOG.md
344
+ source_code_uri: https://github.com/kettle-dev/kettle-family/tree/v1.2.4
345
+ changelog_uri: https://github.com/kettle-dev/kettle-family/blob/v1.2.4/CHANGELOG.md
346
346
  bug_tracker_uri: https://github.com/kettle-dev/kettle-family/issues
347
- documentation_uri: https://www.rubydoc.info/gems/kettle-family/1.2.3
347
+ documentation_uri: https://www.rubydoc.info/gems/kettle-family/1.2.4
348
348
  funding_uri: https://github.com/sponsors/pboling
349
349
  wiki_uri: https://github.com/kettle-dev/kettle-family/wiki
350
350
  news_uri: https://www.railsbling.com/tags/kettle-family
351
351
  discord_uri: https://discord.gg/3qme4XHNKN
352
+ mailing_list_uri: https://www.rubyforum.org/tag/kettle-dev
352
353
  rubygems_mfa_required: 'true'
353
354
  rdoc_options:
354
355
  - "--title"
metadata.gz.sig CHANGED
Binary file