kettle-dev 3.1.22 → 3.1.24

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: 88d63d67c63bcf4fdb5e94c407a2aea115b573e9b727bcc5ce8d2e0e3894ab4a
4
- data.tar.gz: 35e10c8f15b02a93363709c130895d6167ca9540308a13ae1a33b9ca1ff3d563
3
+ metadata.gz: b2680db79529b2b254abdb745d2df3deaadbe1b363e07abae0858eae0c380f08
4
+ data.tar.gz: cf91189864f2b043b083371e16e56fbe25d1053404d7b1c41164cf6efd30b058
5
5
  SHA512:
6
- metadata.gz: f33f304d020f5b915f5fe2ebbedfa6a9cdbebcd7db7ea911de348cae51fef28dc93eae39e19c36b1d94f14acba07335d736614adf424a6d5492f9f0323faaa3e
7
- data.tar.gz: 242c784448e83d1535fabc6e6ae47a013371f42a73ce5e7603203acbb77c9096f650afbf9287d3de9d64ec7e8e35772a56c844300418e0a80529500463aef6fa
6
+ metadata.gz: 8c825d6f00d0459e8e16cb6ecee2233e48779385a4be03b2d0ea708cae018ad4f79a51d081ba94d7dd078205f2ee5af9ab1bcf3c867278c73a066d68516b8b1a
7
+ data.tar.gz: 70a8578f23410bf6856ddeef0472aa91098d431ffcf42ceb7091c71f36df069e54e7ecee084c78e779cc78c5de31a6cd59fea9d5c6dbb01554d3b3282db3faa7
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,28 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [3.1.24] - 2026-10-23
34
+
35
+ - TAG: [v3.1.24][3.1.24t]
36
+ - COVERAGE: 91.85% -- 5817/6333 lines in 48 files
37
+ - BRANCH COVERAGE: 75.71% -- 2235/2952 branches in 48 files
38
+ - 53.70% documented
39
+
40
+ ### Fixed
41
+
42
+ - Markdown reference validator: keep GitHub's leading hyphen for emoji-led headings (e.g. '## 🔧 Basic Usage' anchors at '#-basic-usage'); previously slugify stripped it and the pre-release check rejected valid README links
43
+
44
+ ## [3.1.23] - 2026-10-22
45
+
46
+ - TAG: [v3.1.23][3.1.23t]
47
+ - COVERAGE: 91.74% -- 5810/6333 lines in 48 files
48
+ - BRANCH COVERAGE: 75.81% -- 2238/2952 branches in 48 files
49
+ - 53.70% documented
50
+
51
+ ### Fixed
52
+
53
+ - kettle-release: publish-boundary lockfile revalidation no longer commits, pushes, or re-triggers CI from a detached checkout. Family member publishes run in a detached worktree the family orchestrator owns end-to-end (branch state, CI validation, tags, GitHub release), and a bare detached HEAD has no branch to push; lockfile drift now stays local to the checkout in both topologies instead of dying in validation-PR creation against a literal HEAD ref. See https://github.com/kettle-dev/kettle-dev/issues/52
54
+
33
55
  ## [3.1.22] - 2026-10-21
34
56
 
35
57
  - TAG: [v3.1.22][3.1.22t]
@@ -4222,7 +4244,11 @@ Please file a bug if you notice a violation of semantic versioning.
4222
4244
  - Selecting will run the selected workflow via `act`
4223
4245
  - This may move to its own gem in the future.
4224
4246
 
4225
- [Unreleased]: https://github.com/kettle-dev/kettle-dev/compare/v3.1.22...HEAD
4247
+ [Unreleased]: https://github.com/kettle-dev/kettle-dev/compare/v3.1.24...HEAD
4248
+ [3.1.24]: https://github.com/kettle-dev/kettle-dev/compare/v3.1.23...v3.1.24
4249
+ [3.1.24t]: https://github.com/kettle-dev/kettle-dev/releases/tag/v3.1.24
4250
+ [3.1.23]: https://github.com/kettle-dev/kettle-dev/compare/v3.1.22...v3.1.23
4251
+ [3.1.23t]: https://github.com/kettle-dev/kettle-dev/releases/tag/v3.1.23
4226
4252
  [3.1.22]: https://github.com/kettle-dev/kettle-dev/compare/v3.1.21...v3.1.22
4227
4253
  [3.1.22t]: https://github.com/kettle-dev/kettle-dev/releases/tag/v3.1.22
4228
4254
  [3.1.21]: https://github.com/kettle-dev/kettle-dev/compare/v3.1.20...v3.1.21
data/README.md CHANGED
@@ -1084,7 +1084,7 @@ Thanks for RTFM. ☺️
1084
1084
  [📌gitmoji]: https://gitmoji.dev
1085
1085
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
1086
1086
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
1087
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-6.328-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
1087
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-6.333-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
1088
1088
  [🔐security]: https://github.com/kettle-dev/kettle-dev/blob/main/SECURITY.md
1089
1089
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
1090
1090
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -254,13 +254,10 @@ module Kettle
254
254
  end
255
255
 
256
256
  def slugify(text)
257
- text.to_s.gsub(/<[^>]+>/, "").downcase
257
+ text.to_s.gsub(/<[^>]+>/, "").strip.downcase
258
258
  .gsub(/[*_~`]/, "")
259
259
  .gsub(/[^\p{Alnum}\s-]/u, "")
260
260
  .gsub(/\s+/, "-")
261
- .squeeze("-")
262
- .sub(/\A-/, "")
263
- .sub(/-\z/, "")
264
261
  end
265
262
  end
266
263
  end
@@ -837,6 +837,19 @@ module Kettle
837
837
  end
838
838
 
839
839
  def revalidate_publish_lockfile_changes!
840
+ # Release checkout topology: a family member publish runs in a
841
+ # detached worktree owned end-to-end by the family orchestrator (trunk
842
+ # sync, branch pushes, CI validation, tags, and the GitHub release all
843
+ # happen on the primary checkout), and a bare detached HEAD has no
844
+ # branch to push either. Committing or pushing branch state from here
845
+ # is void-to-meaningless (the worktree is deleted after the run), so
846
+ # drift stays local to this checkout; the built gem does not embed the
847
+ # development lockfile.
848
+ if family_member_publish? || detached_head?
849
+ puts "Release lockfiles changed before publication; keeping updates local to this checkout (no release branch to push)."
850
+ return
851
+ end
852
+
840
853
  puts "Release lockfiles changed before publication; committing updates and rerunning CI."
841
854
  ensure_git_user!
842
855
  abort("Failed to commit updated release lockfiles.") unless commit_bundle_update!
@@ -853,6 +866,10 @@ module Kettle
853
866
  end
854
867
  end
855
868
 
869
+ def detached_head?
870
+ current_branch == "HEAD"
871
+ end
872
+
856
873
  # Resetting can select a platform-specific artifact that is not installed
857
874
  # in the invoking development bundle. Materialize every canonical release
858
875
  # bundle before a release gate runs `bundle exec`. Use a disposable copy:
@@ -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.1.22"
8
+ VERSION = "3.1.24"
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.1.22
4
+ version: 3.1.24
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -423,10 +423,10 @@ licenses:
423
423
  - AGPL-3.0-only
424
424
  metadata:
425
425
  homepage_uri: https://kettle-dev.galtzo.com
426
- source_code_uri: https://github.com/kettle-dev/kettle-dev/tree/v3.1.22
427
- changelog_uri: https://github.com/kettle-dev/kettle-dev/blob/v3.1.22/CHANGELOG.md
426
+ source_code_uri: https://github.com/kettle-dev/kettle-dev/tree/v3.1.24
427
+ changelog_uri: https://github.com/kettle-dev/kettle-dev/blob/v3.1.24/CHANGELOG.md
428
428
  bug_tracker_uri: https://github.com/kettle-dev/kettle-dev/issues
429
- documentation_uri: https://www.rubydoc.info/gems/kettle-dev/3.1.22
429
+ documentation_uri: https://www.rubydoc.info/gems/kettle-dev/3.1.24
430
430
  funding_uri: https://github.com/sponsors/pboling
431
431
  wiki_uri: https://github.com/kettle-dev/kettle-dev/wiki
432
432
  news_uri: https://www.railsbling.com/tags/kettle-dev
metadata.gz.sig CHANGED
@@ -1,2 +1 @@
1
- �?�S�*��/� 0̔D�rwĐSb��d3[pB�N�r�<J�05����nBm9��q��n��6~Gz�Ǥ4c�S��q�I�r��Q��� 4}P�`��6���jA�D�^@I�"3 ��<&��R&�3 ���Wiʜ ��K�ߕf�}���$k��k�І H�}��LqF��j�`�U$hQ@�Մ���O��((=���
2
- sq�Ox�$�hQ(��Z_V?���y�q��-}TKc�¿�u;�(����S��υ $��fq��1s��PޙL���h����7�f?�-D�E?��28qϷ� G��tI��\�/[�*6:��2Ǵ�
1
+ I�%�7�+����L�\�����B���B�8��jx�7D�5Q��t�6�U�^e�./L��� :�!(�������2�I��(��D�o�V*�FS�<5o�'�[6��C��-+RȞh��I�}I.�c�*�K���R����O�snv����2�Zx�8��>����C)����Q�"3hػ}���P�ֻ��f�pӐi��ø��O�e�V� ���~��My:G���xg��,�����J5,o�?8꩛W���}�}v�IV�j�?)b������Q��'������j�*�W8���{L�0pP�b]R�S��3L���3�d�ň/AW��o\���jue�x] N�"ȃ�x����g_��yPS�r`��\�ӯA��N�>L�o[=&�