kettle-dev 2.5.2 → 2.5.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: 8e34514da333085fc17f64ad81904f1f1640e77f960fa23778a048bc02a6aa53
4
- data.tar.gz: 68a69a9cbcc0f456678c0f6ea38c721ed911a5e3e020647564650b6cf37ad32b
3
+ metadata.gz: 244703eadd8dc7dd81df1ba9531ad405d19307e0d710f89abf69143e17906093
4
+ data.tar.gz: a7f122fee074b8dac7d8851cafa09918b72cb3576d28f8def007d300012e155a
5
5
  SHA512:
6
- metadata.gz: 9947e89b73f0b45047d4ad1845e5cbcbd1226a2c68fdf3cc4a508e15d841134b44c0647c1c6d2f2844665d942209edfc55b5c0a8b01d0f7692012f98eae72ea1
7
- data.tar.gz: 32221f4a255995e476076152a2131134c89958d55f0ee0e8384ed4a930ee20898967f08e2391e3c6a0bc610ffbc32dc1a1da4e8a19c673213cf7147f4546411a
6
+ metadata.gz: 4b534ae24e40b1ae1035cfa7325dec5ae57b6c924bee555475dc11bc5974d198b0ab33f02a2a97854b90a9693f7f3342a9d655f94cfc3714601e4694cdcd8458
7
+ data.tar.gz: 0a1637936708e73ba2e25be58f86c9fad482b8700ea443d66141ad43939364485a0c262fdbdc2b568ee2e4360f70d987cc1f2a9d19c11107df8b4b4351f6f69c
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,30 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [2.5.4] - 2026-07-28
34
+
35
+ - TAG: [v2.5.4][2.5.4t]
36
+ - COVERAGE: 91.68% -- 4618/5037 lines in 42 files
37
+ - BRANCH COVERAGE: 76.54% -- 1768/2310 branches in 42 files
38
+ - 56.04% documented
39
+
40
+ ### Changed
41
+
42
+ - Raised the runtime dependency floor for `kettle-gha-pins` to `0.3.3`.
43
+
44
+ ## [2.5.3] - 2026-07-27
45
+
46
+ - TAG: [v2.5.3][2.5.3t]
47
+ - COVERAGE: 91.86% -- 4627/5037 lines in 42 files
48
+ - BRANCH COVERAGE: 76.58% -- 1769/2310 branches in 42 files
49
+ - 56.04% documented
50
+
51
+ ### Fixed
52
+
53
+ - `kettle-release` now resets release lockfiles before release task bundle
54
+ installs, preventing stale `Appraisal.root.gemfile.lock` entries for
55
+ unreleased sibling gems from aborting appraisal generation.
56
+
33
57
  ## [2.5.2] - 2026-07-27
34
58
 
35
59
  - TAG: [v2.5.2][2.5.2t]
@@ -2915,7 +2939,11 @@ Please file a bug if you notice a violation of semantic versioning.
2915
2939
  - Selecting will run the selected workflow via `act`
2916
2940
  - This may move to its own gem in the future.
2917
2941
 
2918
- [Unreleased]: https://github.com/kettle-dev/kettle-dev/compare/v2.5.2...HEAD
2942
+ [Unreleased]: https://github.com/kettle-dev/kettle-dev/compare/v2.5.4...HEAD
2943
+ [2.5.4]: https://github.com/kettle-dev/kettle-dev/compare/v2.5.3...v2.5.4
2944
+ [2.5.4t]: https://github.com/kettle-dev/kettle-dev/releases/tag/v2.5.4
2945
+ [2.5.3]: https://github.com/kettle-dev/kettle-dev/compare/v2.5.2...v2.5.3
2946
+ [2.5.3t]: https://github.com/kettle-dev/kettle-dev/releases/tag/v2.5.3
2919
2947
  [2.5.2]: https://github.com/kettle-dev/kettle-dev/compare/v2.5.1...v2.5.2
2920
2948
  [2.5.2t]: https://github.com/kettle-dev/kettle-dev/releases/tag/v2.5.2
2921
2949
  [2.5.1]: https://github.com/kettle-dev/kettle-dev/compare/v2.5.0...v2.5.1
data/README.md CHANGED
@@ -1005,7 +1005,7 @@ Thanks for RTFM. ☺️
1005
1005
  [📌gitmoji]: https://gitmoji.dev
1006
1006
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
1007
1007
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
1008
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-5.025-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
1008
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-5.037-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
1009
1009
  [🔐security]: https://github.com/kettle-dev/kettle-dev/blob/main/SECURITY.md
1010
1010
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
1011
1011
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -3,8 +3,12 @@
3
3
  # --- Appraisals (dev-only) ---
4
4
  begin
5
5
  require "appraisal/task"
6
+ require "kettle/dev/lockfile_reset"
6
7
 
7
8
  bundle = "bundle"
9
+ unbundled_env = Kettle::Dev::LockfileReset::UNBUNDLED_ENV_KEYS.each_with_object({}) do |key, env|
10
+ env[key] = nil
11
+ end
8
12
  quiet_env = {
9
13
  "KETTLE_JEM_QUIET" => "true",
10
14
  "KETTLE_JEM_DEBUG" => "false",
@@ -25,7 +29,14 @@ begin
25
29
  "BUNDLE_SILENCE_ROOT_WARNING" => "true",
26
30
  "BUNDLE_SUPPRESS_INSTALL_USING_MESSAGES" => "true"
27
31
  }
28
- appraisal_env = quiet_env.merge("BUNDLE_GEMFILE" => "Appraisal.root.gemfile")
32
+ appraisal_env = quiet_env.merge(
33
+ Kettle::Dev::LockfileReset.new(root: Dir.pwd, command_runner: ->(_command) {}).normalization_env
34
+ ).merge(
35
+ unbundled_env
36
+ ).merge(
37
+ "BUNDLE_GEMFILE" => "Appraisal.root.gemfile",
38
+ "BUNDLE_LOCKFILE" => "Appraisal.root.gemfile.lock"
39
+ )
29
40
 
30
41
  run_command = lambda do |failure_message, *args|
31
42
  ok = system(*args)
@@ -272,6 +272,7 @@ module Kettle
272
272
  end
273
273
 
274
274
  prepare_rubocop_lts_local_branch! if rubocop_lts_release_preflight_needed?
275
+ prepare_release_lockfiles_for_release_tasks! if release_lockfile_preflight_needed?
275
276
 
276
277
  # 3. bin/setup
277
278
  run_cmd!("bin/setup") if run_step?(3)
@@ -509,6 +510,10 @@ module Kettle
509
510
  (3..5).any? { |step| run_step?(step) }
510
511
  end
511
512
 
513
+ def release_lockfile_preflight_needed?
514
+ (3..5).any? { |step| run_step?(step) }
515
+ end
516
+
512
517
  def prepare_rubocop_lts_local_branch!
513
518
  local_root = rubocop_lts_local_root
514
519
  return unless local_root
@@ -570,7 +575,18 @@ module Kettle
570
575
  end
571
576
 
572
577
  def prepare_release_lockfiles_for_commit!
573
- puts "Resetting release lockfiles with local path dependencies disabled..."
578
+ reset_release_lockfiles!(stage: "before release prep commit") unless @release_lockfiles_reset_for_release_tasks
579
+ validate_release_lockfiles!(stage: "before release prep commit")
580
+ end
581
+
582
+ def prepare_release_lockfiles_for_release_tasks!
583
+ reset_release_lockfiles!(stage: "before release task bundle installs")
584
+ end
585
+
586
+ def reset_release_lockfiles!(stage:)
587
+ return if @release_lockfiles_reset_for_release_tasks && stage == "before release task bundle installs"
588
+
589
+ puts "Resetting release lockfiles with local path dependencies disabled #{stage}..."
574
590
  begin
575
591
  lockfile_reset.reset(Kettle::Dev::LockfileReset::RELEASE_LOCKFILES_TARGET)
576
592
  rescue Kettle::Dev::Error => error
@@ -585,7 +601,7 @@ module Kettle
585
601
  if diagnostics.empty?
586
602
  puts "Release lockfile reset complete: #{release_lockfile_paths.length} lockfile(s) checked, no diagnostics remain."
587
603
  end
588
- validate_release_lockfiles!(stage: "before release prep commit")
604
+ @release_lockfiles_reset_for_release_tasks = true if stage == "before release task bundle installs"
589
605
  end
590
606
 
591
607
  def validate_release_lockfiles!(stage:)
@@ -5,7 +5,7 @@ module Kettle
5
5
  # Version namespace for this gem.
6
6
  module Version
7
7
  # Current gem version.
8
- VERSION = "2.5.2"
8
+ VERSION = "2.5.4"
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: 2.5.2
4
+ version: 2.5.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -60,7 +60,7 @@ dependencies:
60
60
  version: '0.3'
61
61
  - - ">="
62
62
  - !ruby/object:Gem::Version
63
- version: 0.3.1
63
+ version: 0.3.3
64
64
  type: :runtime
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
@@ -70,7 +70,7 @@ dependencies:
70
70
  version: '0.3'
71
71
  - - ">="
72
72
  - !ruby/object:Gem::Version
73
- version: 0.3.1
73
+ version: 0.3.3
74
74
  - !ruby/object:Gem::Dependency
75
75
  name: kettle-ndjson
76
76
  requirement: !ruby/object:Gem::Requirement
@@ -395,10 +395,10 @@ licenses:
395
395
  - AGPL-3.0-only
396
396
  metadata:
397
397
  homepage_uri: https://kettle-dev.galtzo.com
398
- source_code_uri: https://github.com/kettle-dev/kettle-dev/tree/v2.5.2
399
- changelog_uri: https://github.com/kettle-dev/kettle-dev/blob/v2.5.2/CHANGELOG.md
398
+ source_code_uri: https://github.com/kettle-dev/kettle-dev/tree/v2.5.4
399
+ changelog_uri: https://github.com/kettle-dev/kettle-dev/blob/v2.5.4/CHANGELOG.md
400
400
  bug_tracker_uri: https://github.com/kettle-dev/kettle-dev/issues
401
- documentation_uri: https://www.rubydoc.info/gems/kettle-dev/2.5.2
401
+ documentation_uri: https://www.rubydoc.info/gems/kettle-dev/2.5.4
402
402
  funding_uri: https://github.com/sponsors/pboling
403
403
  wiki_uri: https://github.com/kettle-dev/kettle-dev/wiki
404
404
  news_uri: https://www.railsbling.com/tags/kettle-dev
metadata.gz.sig CHANGED
Binary file