kettle-family 1.2.76 → 1.2.77

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: ea5e2e449c39979639ba25d8ef16b2319801caae9cad7484aa06ea42b02b6ba5
4
- data.tar.gz: 356a1d85acb9691fc5cf224ac02ebc184bf9ad2a27cbdff10041234ab09a5ad6
3
+ metadata.gz: 1ca9ff18bda1392f68441dbf441572ceaa754fb959a619a75b86488184671f7d
4
+ data.tar.gz: 632ee5ca19cbc6048c31f531472298f6268c846441113cf483724a23aaca61ab
5
5
  SHA512:
6
- metadata.gz: aca651e1786dd95149f72b06ea89f1cf105a517f24d9d7ced1cff15027d2ab3865e76c6584f661f2cb82eb68d2f7f19322a68031ff173d859f51eed593fd280e
7
- data.tar.gz: 0ec5a86efdbcdb299dab0326b0079f156d8d2ef27164e11da8fbf60852d0a05f68336875f1ac3135916aff2f0871b787c9b0552fc2a331018c17b9b4e501c624
6
+ metadata.gz: 35d3075ea7a12f54b64e5beeaf64f1571a201d74f53c63c356807b91c115d38dae3a1097ed73f7c85dbbe57d9bb6047012edcb02252073acbf8e8d6203cb7c9b
7
+ data.tar.gz: 25aaf12398678d93df41e1d4bb38d0e20ffe4fc092576b69d24b8076f917e37d10946717242f8f3ca8d65c52c19efaadf4116d5f75e32edc1723e9b3b3b9a3fb
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,17 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [1.2.77] - 2026-08-31
34
+
35
+ - TAG: [v1.2.77][1.2.77t]
36
+ - COVERAGE: 93.33% -- 5568/5966 lines in 33 files
37
+ - BRANCH COVERAGE: 76.69% -- 2290/2986 branches in 33 files
38
+ - 30.69% documented
39
+
40
+ ### Added
41
+
42
+ - Stream aggregate monorepo GitHub Release asset events through family release progress.
43
+
33
44
  ## [1.2.76] - 2026-08-31
34
45
 
35
46
  - TAG: [v1.2.76][1.2.76t]
@@ -2416,7 +2427,9 @@ Please file a bug if you notice a violation of semantic versioning.
2416
2427
  - Fixed CI load failures on engines without compatible `pty` support by falling back to Open3 for interactive release commands.
2417
2428
  - Fixed Ruby 3.2 version-bump support by loading Prism lazily and wiring the Prism gem only for MRI versions that need it.
2418
2429
 
2419
- [Unreleased]: https://github.com/kettle-dev/kettle-family/compare/v1.2.76...HEAD
2430
+ [Unreleased]: https://github.com/kettle-dev/kettle-family/compare/v1.2.77...HEAD
2431
+ [1.2.77]: https://github.com/kettle-dev/kettle-family/compare/v1.2.76...v1.2.77
2432
+ [1.2.77t]: https://github.com/kettle-dev/kettle-family/releases/tag/v1.2.77
2420
2433
  [1.2.76]: https://github.com/kettle-dev/kettle-family/compare/v1.2.75...v1.2.76
2421
2434
  [1.2.76t]: https://github.com/kettle-dev/kettle-family/releases/tag/v1.2.76
2422
2435
  [1.2.75]: https://github.com/kettle-dev/kettle-family/compare/v1.2.74...v1.2.75
data/README.md CHANGED
@@ -1049,7 +1049,7 @@ Thanks for RTFM. ☺️
1049
1049
  [📌gitmoji]: https://gitmoji.dev
1050
1050
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
1051
1051
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
1052
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-5.956-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
1052
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-5.966-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
1053
1053
  [🔐security]: https://github.com/kettle-dev/kettle-family/blob/main/SECURITY.md
1054
1054
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
1055
1055
  [📄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.76"
8
+ VERSION = "1.2.77"
9
9
  end
10
10
  # Current gem version exposed at the traditional constant location.
11
11
  VERSION = Version::VERSION # Traditional Constant Location
@@ -2616,7 +2616,7 @@ module Kettle
2616
2616
  checksum_path = File.join(member.root, "checksums", "#{member.name}-#{version.first}.gem.sha256")
2617
2617
  gem_path + (File.file?(checksum_path) ? [checksum_path] : [])
2618
2618
  end
2619
- command = ["bundle", "exec", "kettle-gh-release", "--allow-unpublished", "--release-version", version.first]
2619
+ command = ["bundle", "exec", "kettle-gh-release", "--allow-unpublished", "--events", "--release-version", version.first]
2620
2620
  assets.each { |asset| command.concat(["--asset", asset]) }
2621
2621
  return aggregate_release_dry_run_result(command) unless execute
2622
2622
 
@@ -2632,20 +2632,15 @@ module Kettle
2632
2632
  # implementation needed by this aggregate step.
2633
2633
  local_kettle_dev = ENV.fetch("KETTLE_DEV_DEV", "").to_s.strip
2634
2634
  env["KETTLE_DEV_DEV"] = local_kettle_dev if local_path_env_value?(local_kettle_dev)
2635
- started = Process.clock_gettime(Process::CLOCK_MONOTONIC)
2636
- stdout, stderr, status = Open3.capture3(env, *command, chdir: config.root)
2637
- result = CommandResult.new(
2638
- member_name: config.family_name,
2635
+ aggregate_member = family_member
2636
+ result = command_runner.call(
2637
+ member: aggregate_member,
2639
2638
  phase: "aggregate_github_release",
2640
2639
  command: command,
2641
- workdir: config.root,
2642
- status: status.exitstatus,
2643
- success: status.success?,
2644
- stdout: stdout,
2645
- stderr: stderr,
2646
- elapsed_seconds: Process.clock_gettime(Process::CLOCK_MONOTONIC) - started,
2647
- skipped: false,
2648
- reason: status.success? ? nil : "aggregate GitHub release failed"
2640
+ env: env,
2641
+ stdout_line_handler: aggregate_github_release_event_line_handler(aggregate_member),
2642
+ log_path: release_command_log_path(aggregate_member, "aggregate_github_release"),
2643
+ passthrough_output: release_command_passthrough_output?
2649
2644
  )
2650
2645
  result.resume_command = aggregate_github_release_resume_command(env, command) unless result.ok?
2651
2646
  result
@@ -2667,6 +2662,16 @@ module Kettle
2667
2662
  end
2668
2663
  (["env", *assignments].join(" ") + " " + Shellwords.join(command)).strip
2669
2664
  end
2665
+
2666
+ def aggregate_github_release_event_line_handler(member)
2667
+ lambda do |line|
2668
+ event = parse_template_event(line)
2669
+ next false unless event && event["type"] == "github_release"
2670
+
2671
+ emit_template_event_line(member, github_release_event_mark(event), github_release_event_label(event)) if progress_io
2672
+ true
2673
+ end
2674
+ end
2670
2675
  # simplecov:enable
2671
2676
 
2672
2677
  def aggregate_release_result(reason)
@@ -3741,6 +3746,21 @@ module Kettle
3741
3746
  parts.reject(&:empty?).join(":")
3742
3747
  end
3743
3748
 
3749
+ def github_release_event_label(event)
3750
+ parts = ["github_release", event["action"].to_s]
3751
+ asset = event["asset"].to_s
3752
+ parts << asset unless asset.empty?
3753
+ parts << "#{event["attempt"]}/#{event["attempts"]}" if event["attempt"] && event["attempts"]
3754
+ parts.reject(&:empty?).join(":")
3755
+ end
3756
+
3757
+ def github_release_event_mark(event)
3758
+ return "F" if event["status"].to_s == "failed"
3759
+ return "." if event["status"].to_s == "ok"
3760
+
3761
+ ">"
3762
+ end
3763
+
3744
3764
  def diagnostic_event_label(event)
3745
3765
  message = event["message"]
3746
3766
  return message.to_s unless message.to_s.empty? || message.is_a?(Hash)
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.76
4
+ version: 1.2.77
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -91,7 +91,7 @@ dependencies:
91
91
  requirements:
92
92
  - - ">="
93
93
  - !ruby/object:Gem::Version
94
- version: 3.0.26
94
+ version: 3.0.27
95
95
  - - "<"
96
96
  - !ruby/object:Gem::Version
97
97
  version: 4.0.0
@@ -101,7 +101,7 @@ dependencies:
101
101
  requirements:
102
102
  - - ">="
103
103
  - !ruby/object:Gem::Version
104
- version: 3.0.26
104
+ version: 3.0.27
105
105
  - - "<"
106
106
  - !ruby/object:Gem::Version
107
107
  version: 4.0.0
@@ -441,10 +441,10 @@ licenses:
441
441
  - AGPL-3.0-only
442
442
  metadata:
443
443
  homepage_uri: https://kettle-family.galtzo.com
444
- source_code_uri: https://github.com/kettle-dev/kettle-family/tree/v1.2.76
445
- changelog_uri: https://github.com/kettle-dev/kettle-family/blob/v1.2.76/CHANGELOG.md
444
+ source_code_uri: https://github.com/kettle-dev/kettle-family/tree/v1.2.77
445
+ changelog_uri: https://github.com/kettle-dev/kettle-family/blob/v1.2.77/CHANGELOG.md
446
446
  bug_tracker_uri: https://github.com/kettle-dev/kettle-family/issues
447
- documentation_uri: https://www.rubydoc.info/gems/kettle-family/1.2.76
447
+ documentation_uri: https://www.rubydoc.info/gems/kettle-family/1.2.77
448
448
  funding_uri: https://github.com/sponsors/pboling
449
449
  wiki_uri: https://github.com/kettle-dev/kettle-family/wiki
450
450
  news_uri: https://www.railsbling.com/tags/kettle-family
metadata.gz.sig CHANGED
Binary file