kettle-dev 3.0.9 → 3.0.10

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: b33eb850afdd492ae8078a8670f93e7f452665f60feed6fe56da0ec7501fb688
4
- data.tar.gz: b9e680943a5054b237b7b747ea85af306e428ffc6d39af8b4ec316e1e254aa54
3
+ metadata.gz: 1e670b2a9da64f848886da0112d47c757607895c073ae8e0063583f9893c05a8
4
+ data.tar.gz: 9c395946450a91ee862b55922a1f5bf9bce6208c700098093d7c6050c535488b
5
5
  SHA512:
6
- metadata.gz: 0254c1bd4f95fff49146664b9e2071b213b722c736ef2d196fbefc0480d06900e1494dca631c7f7afaabfeb444b964aca179d2cedfa834225aa11d6c40ac5255
7
- data.tar.gz: 30b20f7364cd3e4e5fee5354cee5cb03daabc8219fe3695ae3585dd98695d1102068392a24477e11ca3423d52660206cc8b86c65b1ef50134f74ece81ecd4c75
6
+ metadata.gz: a9fd3e50a9f6315eec633c43dabd4447f0d2507e6b74ad9b17b3eb03497d4194895c65aa56010098e9a229e01115b4e0d3c1b3beefbaad26c76f4a6862e883c9
7
+ data.tar.gz: e493aa3febc35c6840001eca3b7f7ec127784b83c57e42feac1ab791a0aaac272e9094fb4589c18ba5e7e98cafb9d3fc256f059147c06f23f687768cb8191e52
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
+ ## [3.0.10] - 2026-08-23
34
+
35
+ - TAG: [v3.0.10][3.0.10t]
36
+ - COVERAGE: 91.15% -- 5688/6240 lines in 47 files
37
+ - BRANCH COVERAGE: 76.13% -- 2175/2857 branches in 47 files
38
+ - 50.62% documented
39
+
40
+ ### Fixed
41
+
42
+ - Omit the standalone kettle-changelog dependency from normal release-time Bundler resolution, preventing unpublished downstream gem cycles in monorepo release waves.
43
+
44
+ - Use a dependency-specific environment switch when omitting kettle-changelog from release Bundler resolution.
45
+
33
46
  ## [3.0.9] - 2026-08-23
34
47
 
35
48
  - TAG: [v3.0.9][3.0.9t]
@@ -3516,7 +3529,9 @@ Please file a bug if you notice a violation of semantic versioning.
3516
3529
  - Selecting will run the selected workflow via `act`
3517
3530
  - This may move to its own gem in the future.
3518
3531
 
3519
- [Unreleased]: https://github.com/kettle-dev/kettle-dev/compare/v3.0.9...HEAD
3532
+ [Unreleased]: https://github.com/kettle-dev/kettle-dev/compare/v3.0.10...HEAD
3533
+ [3.0.10]: https://github.com/kettle-dev/kettle-dev/compare/v3.0.9...v3.0.10
3534
+ [3.0.10t]: https://github.com/kettle-dev/kettle-dev/releases/tag/v3.0.10
3520
3535
  [3.0.9]: https://github.com/kettle-dev/kettle-dev/compare/v3.0.8...v3.0.9
3521
3536
  [3.0.9t]: https://github.com/kettle-dev/kettle-dev/releases/tag/v3.0.9
3522
3537
  [3.0.8]: https://github.com/kettle-dev/kettle-dev/compare/v3.0.7...v3.0.8
data/README.md CHANGED
@@ -463,6 +463,10 @@ What it does:
463
463
  variables, known local-template toggles, and writes checksums while
464
464
  updating path-sourced and checksum-gap gems back to released registry
465
465
  versions.
466
+ - Release lockfile resets set `KETTLE_DEV_SKIP_CHANGELOG_DEPENDENCY=true`.
467
+ This does not skip changelog generation; it keeps the development-only
468
+ `kettle-changelog` gem out of the release bundle so unpublished family
469
+ gems cannot enter Bundler's resolution graph.
466
470
  - During `kettle-release`, release lockfiles are reset before the release
467
471
  prep commit. Before pushing, `kettle-release` validates those committed
468
472
  lockfiles again; if local paths or checksum gaps reappear, it prints the
@@ -1008,7 +1012,7 @@ Thanks for RTFM. ☺️
1008
1012
  [📌gitmoji]: https://gitmoji.dev
1009
1013
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
1010
1014
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
1011
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-6.237-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
1015
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-6.240-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
1012
1016
  [🔐security]: https://github.com/kettle-dev/kettle-dev/blob/main/SECURITY.md
1013
1017
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
1014
1018
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -34,18 +34,31 @@ module Kettle
34
34
  @release_platforms = {}
35
35
  end
36
36
 
37
- def reset(target)
37
+ def reset(target, skip_changelog_dependency: false)
38
38
  BundlerEnvGuard.warn_unexpected_env!
39
39
  paths = lockfile_paths_for(target)
40
40
  force_full_update = release_lockfiles_target?(target)
41
+ skip_changelog_dependency ||= force_full_update
41
42
  platforms = release_platforms_for(paths) if force_full_update
42
43
  uninstall_unreleased_local_gems(paths) if force_full_update
43
44
  paths.each do |path|
44
- reset_lockfile!(path, full_update: force_full_update, platforms: platforms&.fetch(path)) if force_full_update || normalization_needed?(path)
45
+ if force_full_update || normalization_needed?(path)
46
+ reset_lockfile!(
47
+ path,
48
+ full_update: force_full_update,
49
+ platforms: platforms&.fetch(path),
50
+ skip_changelog_dependency: skip_changelog_dependency
51
+ )
52
+ end
45
53
  end
46
54
  if force_full_update && uninstall_unreleased_local_gems(paths)
47
55
  paths.each do |path|
48
- reset_lockfile!(path, full_update: true, platforms: platforms.fetch(path))
56
+ reset_lockfile!(
57
+ path,
58
+ full_update: true,
59
+ platforms: platforms.fetch(path),
60
+ skip_changelog_dependency: skip_changelog_dependency
61
+ )
49
62
  end
50
63
  end
51
64
  diagnostics = paths.flat_map { |path| diagnostics(path) }
@@ -54,7 +67,7 @@ module Kettle
54
67
  paths
55
68
  end
56
69
 
57
- def reset_lockfile!(path, full_update: false, platforms: nil)
70
+ def reset_lockfile!(path, full_update: false, platforms: nil, skip_changelog_dependency: false)
58
71
  gemfile = gemfile_for_lockfile(path)
59
72
  unless gemfile && File.file?(gemfile)
60
73
  warn("Cannot reset #{display_path(path)} because its Gemfile was not found.")
@@ -67,6 +80,7 @@ module Kettle
67
80
  gemfile: gemfile,
68
81
  full_update: full_update,
69
82
  platforms: platforms,
83
+ skip_changelog_dependency: skip_changelog_dependency,
70
84
  isolated_gem_home: gem_home
71
85
  )
72
86
  if full_update || has_local_path_remote?(path)
@@ -77,7 +91,7 @@ module Kettle
77
91
  end
78
92
  end
79
93
 
80
- def reset_command(path:, gemfile:, full_update: false, platforms: nil, isolated_gem_home: nil)
94
+ def reset_command(path:, gemfile:, full_update: false, platforms: nil, skip_changelog_dependency: false, isolated_gem_home: nil)
81
95
  update_gems = (full_update || has_local_path_remote?(path)) ? [] : reset_update_gems(path)
82
96
  platforms ||= reset_platforms(path)
83
97
  removed_platforms = full_update ? [] : lockfile_platforms(path) - platforms
@@ -85,6 +99,7 @@ module Kettle
85
99
  "BUNDLE_GEMFILE" => gemfile,
86
100
  "BUNDLE_LOCKFILE" => path
87
101
  )
102
+ env["KETTLE_DEV_SKIP_CHANGELOG_DEPENDENCY"] = "true" if skip_changelog_dependency
88
103
  if isolated_gem_home
89
104
  env["GEM_HOME"] = isolated_gem_home
90
105
  env["GEM_PATH"] = isolated_gem_home
@@ -689,7 +689,10 @@ module Kettle
689
689
  emit_release_lockfile_event(action: "reset", status: "started", stage: stage, attempt: attempt, attempts: attempts)
690
690
  puts "Resetting release lockfiles with local path dependencies disabled #{stage} (attempt #{attempt}/#{attempts})..."
691
691
  begin
692
- lockfile_reset.reset(Kettle::Dev::LockfileReset::RELEASE_LOCKFILES_TARGET)
692
+ lockfile_reset.reset(
693
+ Kettle::Dev::LockfileReset::RELEASE_LOCKFILES_TARGET,
694
+ skip_changelog_dependency: true
695
+ )
693
696
  emit_release_lockfile_event(action: "reset", status: "ok", stage: stage, attempt: attempt, attempts: attempts)
694
697
  break
695
698
  rescue Kettle::Dev::Error => error
@@ -775,7 +778,7 @@ module Kettle
775
778
  end
776
779
 
777
780
  def normalize_release_lockfile!(path)
778
- lockfile_reset.reset_lockfile!(path)
781
+ lockfile_reset.reset_lockfile!(path, skip_changelog_dependency: true)
779
782
  end
780
783
 
781
784
  def release_gemfile_for_lockfile(path)
@@ -783,7 +786,7 @@ module Kettle
783
786
  end
784
787
 
785
788
  def release_lockfile_normalization_env
786
- lockfile_reset.normalization_env
789
+ lockfile_reset.normalization_env.merge("KETTLE_DEV_SKIP_CHANGELOG_DEPENDENCY" => "true")
787
790
  end
788
791
 
789
792
  def release_lockfile_diagnostics(path)
@@ -5,7 +5,7 @@ module Kettle
5
5
  # Version namespace for this gem.
6
6
  module Version
7
7
  # Current gem version.
8
- VERSION = "3.0.9"
8
+ VERSION = "3.0.10"
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-dev
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.9
4
+ version: 3.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -400,10 +400,10 @@ licenses:
400
400
  - AGPL-3.0-only
401
401
  metadata:
402
402
  homepage_uri: https://kettle-dev.galtzo.com
403
- source_code_uri: https://github.com/kettle-dev/kettle-dev/tree/v3.0.9
404
- changelog_uri: https://github.com/kettle-dev/kettle-dev/blob/v3.0.9/CHANGELOG.md
403
+ source_code_uri: https://github.com/kettle-dev/kettle-dev/tree/v3.0.10
404
+ changelog_uri: https://github.com/kettle-dev/kettle-dev/blob/v3.0.10/CHANGELOG.md
405
405
  bug_tracker_uri: https://github.com/kettle-dev/kettle-dev/issues
406
- documentation_uri: https://www.rubydoc.info/gems/kettle-dev/3.0.9
406
+ documentation_uri: https://www.rubydoc.info/gems/kettle-dev/3.0.10
407
407
  funding_uri: https://github.com/sponsors/pboling
408
408
  wiki_uri: https://github.com/kettle-dev/kettle-dev/wiki
409
409
  news_uri: https://www.railsbling.com/tags/kettle-dev
metadata.gz.sig CHANGED
Binary file