kettle-family 1.2.39 → 1.2.40

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: 7c2b4b67196f2ac81a18e5f751d117a014f936fc4e10dc360e03aa2a18140791
4
- data.tar.gz: 9bf86a36a7765c523491102ed4107cc1b573a0af75b94ba346ca1339dd4bf37a
3
+ metadata.gz: 0ae02661d9a36e34dd38c321a3dfffdc01eb76e04fb56c2ea7dd1e88696e705d
4
+ data.tar.gz: 84346e531c984489bc1aefa38a7216b785e43d8e1b6cb644e3216f964337b6e1
5
5
  SHA512:
6
- metadata.gz: 8b380f9db11078f743de7208e7135afcf033340cf0af93b54446791e56a18386a8ea205162a2afe08fac63cf2a3b96cd0cc6fdfc33b1976cbae5c1f021e735ba
7
- data.tar.gz: b8e43f90700061a3a0c023f7f5eab0b6739104325a715296e761bdc18d7158b86eff1917ed5885e5b9b0ace35ed5a39f8f3e8f6ff036571d0ad641e87dcf02bb
6
+ metadata.gz: d051b1afc05be2812619df64f07fb55bf6cc5c45cd1415456a6815b2c78328ec187e739ba440cd80790f69b23abaea203134fef53d5db74d11eb62ea34af87e2
7
+ data.tar.gz: '06388c5aeb7993996202b0876e5a71e156e0ea6a18284812d2dd1d42019aa933cdb7c9492aee0335dd539fc2d56cf33860ceaf77a97ea343d12b8057bbd81905'
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,19 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [1.2.40] - 2026-08-07
34
+
35
+ - TAG: [v1.2.40][1.2.40t]
36
+ - COVERAGE: 93.62% -- 5007/5348 lines in 32 files
37
+ - BRANCH COVERAGE: 76.09% -- 2002/2631 branches in 32 files
38
+ - 29.81% documented
39
+
40
+ ### Fixed
41
+
42
+ - Compute bump release state for shared-changelog members.
43
+
44
+ - Select the complete shared-version family when any member requires a version bump.
45
+
33
46
  ## [1.2.39] - 2026-08-07
34
47
 
35
48
  - TAG: [v1.2.39][1.2.39t]
@@ -1896,7 +1909,9 @@ Please file a bug if you notice a violation of semantic versioning.
1896
1909
  - Fixed CI load failures on engines without compatible `pty` support by falling back to Open3 for interactive release commands.
1897
1910
  - Fixed Ruby 3.2 version-bump support by loading Prism lazily and wiring the Prism gem only for MRI versions that need it.
1898
1911
 
1899
- [Unreleased]: https://github.com/kettle-dev/kettle-family/compare/v1.2.39...HEAD
1912
+ [Unreleased]: https://github.com/kettle-dev/kettle-family/compare/v1.2.40...HEAD
1913
+ [1.2.40]: https://github.com/kettle-dev/kettle-family/compare/v1.2.39...v1.2.40
1914
+ [1.2.40t]: https://github.com/kettle-dev/kettle-family/releases/tag/v1.2.40
1900
1915
  [1.2.39]: https://github.com/kettle-dev/kettle-family/compare/v1.2.38...v1.2.39
1901
1916
  [1.2.39t]: https://github.com/kettle-dev/kettle-family/releases/tag/v1.2.39
1902
1917
  [1.2.38]: https://github.com/kettle-dev/kettle-family/compare/v1.2.37...v1.2.38
data/README.md CHANGED
@@ -837,7 +837,7 @@ Thanks for RTFM. ☺️
837
837
  [📌gitmoji]: https://gitmoji.dev
838
838
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
839
839
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
840
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-5.344-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
840
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-5.348-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
841
841
  [🔐security]: https://github.com/kettle-dev/kettle-family/blob/main/SECURITY.md
842
842
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
843
843
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -655,7 +655,11 @@ module Kettle
655
655
  end
656
656
  state_event_tape = release_state_event_tape(command: command, config: config, options: options)
657
657
  release_state_results = release_state_results_for_selection(config: config, members: ordered, only: effective_only, jobs: options[:jobs])
658
- selected = Selection.new(members: ordered, release_state_results: release_state_results).apply(only: effective_only, exclude: options[:exclude], start_at: start_at.member)
658
+ selected = Selection.new(
659
+ members: ordered,
660
+ release_state_results: release_state_results,
661
+ shared_version: config.shared_changelog?
662
+ ).apply(only: effective_only, exclude: options[:exclude], start_at: start_at.member)
659
663
  result_members = selected
660
664
  display_members = display_members_for(command: command, config: config, members: ordered, selected_members: selected)
661
665
  display_selected_members = display_members_for(command: command, config: config, members: selected, selected_members: selected)
@@ -118,6 +118,7 @@ module Kettle
118
118
  success = status.success?
119
119
  emit_event(event_handler, member: member, branch: branch, action: "changelog_command", status: success ? "ok" : "failed", elapsed_seconds: elapsed, status_code: status.exitstatus)
120
120
  state = success ? JSON.parse(stdout) : {}
121
+ state = state_with_computed_booleans(state) if success
121
122
  state = branch_filtered_state(member, state, branch) if success && branch
122
123
  emit_event(event_handler, member: member, branch: branch, action: "git_state", status: "running") if success
123
124
  state = enrich_git_state(member.root, state, branch: branch) if success
@@ -21,9 +21,10 @@ module Kettle
21
21
  STATUS_TOKEN_KEYS.key?(value.to_s)
22
22
  end
23
23
 
24
- def initialize(members:, release_state_results: nil)
24
+ def initialize(members:, release_state_results: nil, shared_version: false)
25
25
  @members = members
26
26
  @release_state_results = release_state_results
27
+ @shared_version = shared_version
27
28
  end
28
29
 
29
30
  def apply(only: nil, exclude: nil, start_at: nil)
@@ -38,7 +39,7 @@ module Kettle
38
39
 
39
40
  private
40
41
 
41
- attr_reader :members, :release_state_results
42
+ attr_reader :members, :release_state_results, :shared_version
42
43
 
43
44
  def select_only(selected, only)
44
45
  names = only.split(",").map(&:strip).reject(&:empty?)
@@ -80,6 +81,10 @@ module Kettle
80
81
  failed = results_by_member.values.select { |result| !result.ok? }
81
82
  raise Error, "release-state check failed for: #{failed.map(&:member_name).join(", ")}" unless failed.empty?
82
83
 
84
+ if shared_version && status_tokens.include?("bump")
85
+ return selected if selected.any? { |candidate| truthy_state?(results_by_member[candidate.name]&.state&.fetch("bump_release_pending", nil)) }
86
+ end
87
+
83
88
  selected.select do |candidate|
84
89
  result = results_by_member[candidate.name]
85
90
  result && status_tokens.all? { |token| truthy_state?(result.state[STATUS_TOKEN_KEYS.fetch(token)]) }
@@ -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.39"
8
+ VERSION = "1.2.40"
9
9
  end
10
10
  # Current gem version exposed at the traditional constant location.
11
11
  VERSION = Version::VERSION # Traditional Constant Location
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.39
4
+ version: 1.2.40
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -360,10 +360,10 @@ licenses:
360
360
  - AGPL-3.0-only
361
361
  metadata:
362
362
  homepage_uri: https://kettle-family.galtzo.com
363
- source_code_uri: https://github.com/kettle-dev/kettle-family/tree/v1.2.39
364
- changelog_uri: https://github.com/kettle-dev/kettle-family/blob/v1.2.39/CHANGELOG.md
363
+ source_code_uri: https://github.com/kettle-dev/kettle-family/tree/v1.2.40
364
+ changelog_uri: https://github.com/kettle-dev/kettle-family/blob/v1.2.40/CHANGELOG.md
365
365
  bug_tracker_uri: https://github.com/kettle-dev/kettle-family/issues
366
- documentation_uri: https://www.rubydoc.info/gems/kettle-family/1.2.39
366
+ documentation_uri: https://www.rubydoc.info/gems/kettle-family/1.2.40
367
367
  funding_uri: https://github.com/sponsors/pboling
368
368
  wiki_uri: https://github.com/kettle-dev/kettle-family/wiki
369
369
  news_uri: https://www.railsbling.com/tags/kettle-family
metadata.gz.sig CHANGED
Binary file