kettle-dev 2.2.7 → 2.2.8

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: 3468f777c78fb3017468fbb76728ee056aa1924738b8935d1fd748d41c91f3ff
4
- data.tar.gz: 10386b28122fb17e85f555c70784a398d0f8692f3b02d77ebafab8540ae74cc6
3
+ metadata.gz: 20e42b5ed4a5e7b52a046fa7cfdfe63c08963947c2414aa4cf22251419ffb853
4
+ data.tar.gz: e578b54456e497e115ccdb9bb54efc4d32be13e2b294d2b0857964b75bc5c7ff
5
5
  SHA512:
6
- metadata.gz: 3de744ea449a1f6f738b6b19704bbf48a996a67c835201310bfd60b9127fa3b3a2634fd52c9f3d8f2ce45a571e6caf316f91d902f2f8fab8a8d3511bc21c13bc
7
- data.tar.gz: 1efa9c2da744cdd3fa16d0676b06b78836df3d4194ee6908a756ad479d63c5c50e015a8dde67f416d0cd2e2da3e3c9bff4971c980840603db4613c9bf9f37cc3
6
+ metadata.gz: 676baf6a4ecffe8745d94c3016b402e8c002f98ca61f9ea478b9e629d42c7c57a82795682d49c853c19fff74982e8c70af5cf75b1e0eb6b28ce2fb904995762e
7
+ data.tar.gz: a000e3b43e2ea900fcdb03cb2471db4a8c312113c753524ca7be658119c81bba1cfb7113e0ccb576a2cf6b471c472fc01c6b71afc4eebf7322b3760e3a848c4c
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,23 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [2.2.8] - 2026-06-13
34
+
35
+ - TAG: [v2.2.8][2.2.8t]
36
+ - COVERAGE: 92.40% -- 3854/4171 lines in 28 files
37
+ - BRANCH COVERAGE: 73.37% -- 1521/2073 branches in 28 files
38
+ - 66.02% documented
39
+
40
+ ### Fixed
41
+
42
+ #### Changelog
43
+
44
+ - `kettle-changelog --release-state` now reports a clear family-root hint when
45
+ run outside a single gem instead of raising a missing `CHANGELOG.md` stack
46
+ trace.
47
+ - `kettle-changelog --release-state` now reports a successful no-changelog state
48
+ for individual gems that do not have a `CHANGELOG.md`.
49
+
33
50
  ## [2.2.7] - 2026-06-13
34
51
 
35
52
  - TAG: [v2.2.7][2.2.7t]
@@ -2092,7 +2109,9 @@ Please file a bug if you notice a violation of semantic versioning.
2092
2109
  - Selecting will run the selected workflow via `act`
2093
2110
  - This may move to its own gem in the future.
2094
2111
 
2095
- [Unreleased]: https://github.com/kettle-dev/kettle-dev/compare/v2.2.7...HEAD
2112
+ [Unreleased]: https://github.com/kettle-dev/kettle-dev/compare/v2.2.8...HEAD
2113
+ [2.2.8]: https://github.com/kettle-dev/kettle-dev/compare/v2.2.7...v2.2.8
2114
+ [2.2.8t]: https://github.com/kettle-dev/kettle-dev/releases/tag/v2.2.8
2096
2115
  [2.2.7]: https://github.com/kettle-dev/kettle-dev/compare/v2.2.6...v2.2.7
2097
2116
  [2.2.7t]: https://github.com/kettle-dev/kettle-dev/releases/tag/v2.2.7
2098
2117
  [2.2.6]: https://github.com/kettle-dev/kettle-dev/compare/v2.2.5...v2.2.6
data/README.md CHANGED
@@ -854,7 +854,7 @@ Thanks for RTFM. ☺️
854
854
  [📌gitmoji]: https://gitmoji.dev
855
855
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
856
856
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
857
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-4.161-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
857
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-4.171-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
858
858
  [🔐security]: https://github.com/kettle-dev/kettle-dev/blob/main/SECURITY.md
859
859
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
860
860
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -140,12 +140,32 @@ module Kettle
140
140
  end
141
141
 
142
142
  def release_state
143
+ changelog_present = ensure_changelog_for_release_state!
144
+ version = detect_version
145
+ gem_name = detect_gem_name
146
+ unless changelog_present
147
+ latest_overall, latest_for_series = latest_released_versions(gem_name, version)
148
+ latest_target = latest_release_target(version, latest_overall, latest_for_series)
149
+ return {
150
+ root: @root,
151
+ gem_name: gem_name,
152
+ version: version,
153
+ changelog_present: false,
154
+ pending: false,
155
+ pending_release: false,
156
+ unreleased_entries: false,
157
+ prepared_release_pending: false,
158
+ latest_changelog_version: nil,
159
+ latest_released: latest_overall,
160
+ latest_released_for_current_series: latest_for_series,
161
+ latest_release_target: latest_target
162
+ }
163
+ end
164
+
143
165
  changelog = File.read(@changelog_path)
144
166
  unreleased_block, _before, after = extract_unreleased(changelog)
145
167
  unreleased_entries = unreleased_block_has_entries?(unreleased_block)
146
168
  latest_changelog_version = detect_previous_version(after.to_s)
147
- version = detect_version
148
- gem_name = detect_gem_name
149
169
  release_lookup_version = latest_changelog_version || version
150
170
  latest_overall, latest_for_series = latest_released_versions(gem_name, release_lookup_version)
151
171
  latest_target = latest_release_target(release_lookup_version, latest_overall, latest_for_series)
@@ -155,6 +175,7 @@ module Kettle
155
175
  root: @root,
156
176
  gem_name: gem_name,
157
177
  version: version,
178
+ changelog_present: true,
158
179
  pending: unreleased_entries || prepared_release_pending,
159
180
  pending_release: unreleased_entries || prepared_release_pending,
160
181
  unreleased_entries: unreleased_entries,
@@ -196,6 +217,16 @@ module Kettle
196
217
  Kettle::Dev::ExitAdapter.abort(msg)
197
218
  end
198
219
 
220
+ def ensure_changelog_for_release_state!
221
+ return true if File.file?(@changelog_path)
222
+
223
+ if File.file?(File.join(@root, "Gemfile")) && Dir.glob(File.join(@root, "*", "*.gemspec")).any?
224
+ abort("Could not find CHANGELOG.md in #{Kettle::Dev.display_path(@root)}. This looks like a gem-family root; run `kettle-family release-state` from this directory, or run `kettle-changelog --release-state` from an individual gem directory.")
225
+ end
226
+
227
+ false
228
+ end
229
+
199
230
  def yes_no(value)
200
231
  value ? "yes" : "no"
201
232
  end
@@ -3,7 +3,7 @@
3
3
  module Kettle
4
4
  module Dev
5
5
  module Version
6
- VERSION = "2.2.7"
6
+ VERSION = "2.2.8"
7
7
  end
8
8
  VERSION = Version::VERSION # Traditional Constant Location
9
9
  end
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.2.7
4
+ version: 2.2.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -338,10 +338,10 @@ licenses:
338
338
  - AGPL-3.0-only
339
339
  metadata:
340
340
  homepage_uri: https://kettle-dev.galtzo.com
341
- source_code_uri: https://github.com/kettle-dev/kettle-dev/tree/v2.2.7
342
- changelog_uri: https://github.com/kettle-dev/kettle-dev/blob/v2.2.7/CHANGELOG.md
341
+ source_code_uri: https://github.com/kettle-dev/kettle-dev/tree/v2.2.8
342
+ changelog_uri: https://github.com/kettle-dev/kettle-dev/blob/v2.2.8/CHANGELOG.md
343
343
  bug_tracker_uri: https://github.com/kettle-dev/kettle-dev/issues
344
- documentation_uri: https://www.rubydoc.info/gems/kettle-dev/2.2.7
344
+ documentation_uri: https://www.rubydoc.info/gems/kettle-dev/2.2.8
345
345
  funding_uri: https://github.com/sponsors/pboling
346
346
  wiki_uri: https://github.com/kettle-dev/kettle-dev/wiki
347
347
  news_uri: https://www.railsbling.com/tags/kettle-dev
metadata.gz.sig CHANGED
Binary file