yaml-converter 0.2.2 → 0.2.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: ff20673cd21658575822564663ad07c4435983e673628f973937b01eb6ea7b7a
4
- data.tar.gz: e4eb4b9ece2a9432dffbee6ef3962809c54a624ccd3089fc6527d50e178e286e
3
+ metadata.gz: 1ba35681a6b7b43b4e19524d8f0376791ea0adf3692961d5ca71f1293fd37958
4
+ data.tar.gz: 2428d78a4d774ac2175bb67ec98fa109a075c18349adf9a00667566ded8c6191
5
5
  SHA512:
6
- metadata.gz: b4a31646b8c08263f6f067c8d6877e4fd6526565b2c8a1313b0f80f22f5195411bd4edb3a83b820f2ffc238bdc46b3a90db0a958db8127737364e979eb73fb36
7
- data.tar.gz: cf9206ef4bb6ff61a78045af195f467ddeac4d842b694d6d31a1c287b40653053021919dd34b50e9081041d9386b80053cc3310c340583a549c93f57ec52a8ff
6
+ metadata.gz: 161710de745e2703a7b3d6852f10db4cb52051dd4f5b1f3076c1f1bd55f105cc928ab61c6665b4427debb90c42b78740dd5f2a96434efc1f688b35e49ea1378b
7
+ data.tar.gz: 073af35c067ac0e7b9f26930fa83bfd6f591241dedb1ec1b2904139c5703049d9e24b62ebfd46926507b010b6ee377f27a00aede319cc22e44b2659de830383b
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,116 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [0.2.4] - 2026-07-31
34
+
35
+ - TAG: [v0.2.4][0.2.4t]
36
+ - COVERAGE: 92.69% -- 444/479 lines in 10 files
37
+ - BRANCH COVERAGE: 68.42% -- 117/171 branches in 10 files
38
+ - 66.67% documented
39
+
40
+ ### Added
41
+
42
+ - Documentation linting now has its generated `yard-lint` dependency and severity config available in the local bundle.
43
+
44
+ - kettle-jem-template-20260726-001 - Projects now include YARD lint
45
+ configuration and documentation dependencies so documentation issues fail
46
+ before generated docs are refreshed.
47
+
48
+ - kettle-jem-template-20260727-001 - Spec harness documentation now lists the
49
+ RSpec helpers provided by `kettle-test`.
50
+
51
+ - kettle-jem-template-20260729-005 - Gemspec metadata now publishes this
52
+ project's RubyForum tag as `mailing_list_uri`, and support docs link to the
53
+ tagged RubyForum community alongside Discord.
54
+
55
+ ### Changed
56
+
57
+ - The `yaml-convert` executable startup header is now shown only when
58
+ `--verbose` is passed; `-v` and `--version` still print just the executable
59
+ version and exit.
60
+
61
+ - The `yaml-convert` executable supports `-v` / `--version` for version-only
62
+ output.
63
+
64
+ - kettle-jem-template-20260716-001 - Shim gemspec manifests now include
65
+ `LICENSE.md` instead of nonexistent `LICENSE.txt`.
66
+ - kettle-jem-template-20260716-002 - Generated gemspec manifests now ship fewer
67
+ repository-only files by default to reduce downstream distro packaging churn.
68
+ - kettle-jem-template-20260720-001 - Generated READMEs can now render
69
+ template-managed corporate sponsor logos from project or family config.
70
+ - kettle-jem-template-20260720-002 - Generated development Gemfiles now use the
71
+ released `tree_sitter_language_pack` gem 1.13.3 or newer by default.
72
+ - kettle-jem-template-20260720-003 - Generated StructuredMerge Git diff driver
73
+ config now uses the installed `smorg-rb` Ruby driver name.
74
+ - kettle-jem-template-20260720-004 - Generated multi-engine workflow files now
75
+ omit JRuby and TruffleRuby jobs when project config declares MRI-only engines.
76
+ - kettle-jem-template-20260720-005 - Generated README Support & Community rows
77
+ now include a RubyForum help badge.
78
+ - kettle-jem-template-20260725-001 - Generated JRuby and TruffleRuby workflow
79
+ files now run when pull request head branches start with `feature/release`,
80
+ so release CI monitoring does not report intentionally skipped engine
81
+ workflows as failures.
82
+
83
+ - kettle-jem-template-20260725-002 - Generated gemspec templates now include
84
+ `anonymous_loader` as a development dependency, and version specs use it to
85
+ execute generated `version.rb` files for coverage without redefining package
86
+ constants. Managed version specs are removed when `version_gem` is disabled
87
+ or incompatible with the project's runtime Ruby floor.
88
+
89
+ - kettle-jem-template-20260728-001 - Generated Ruby workflows now use clearer
90
+ setup-ruby-flash planning and can prepare appraisal-only jobs without
91
+ installing the main Gemfile bundle.
92
+
93
+ ### Fixed
94
+
95
+ - kettle-jem-template-20260726-002 - Generated version files now document their
96
+ version namespace and constants, reducing warning-only YARD lint output.
97
+
98
+ - kettle-jem-template-20260726-003 - Coverage upload steps now treat Coveralls,
99
+ QLTY, and Codecov as optional, so provider outages do not fail CI when local
100
+ coverage thresholds still pass.
101
+ - kettle-jem-template-20260728-002 - Generated RuboCop configs now ignore the
102
+ same `gemfiles/vendor/bundle` tree as `.gitignore`, so vendored dependency
103
+ installs are not reported as project lint debt.
104
+ - kettle-jem-template-20260728-003 - Generated dep-heads workflows now run
105
+ TruffleRuby jobs with current RubyGems and Bundler, avoiding setup failures
106
+ before the test suite starts.
107
+
108
+ - kettle-jem-template-20260728-004 - Generated dep-heads workflows now use the
109
+ setup-ruby Bundler install path for direct appraisal Gemfiles, avoiding rv
110
+ lockfile parser failures on Git and path dependencies.
111
+
112
+ - kettle-jem-template-20260728-005 - VersionGem bootstrap now creates the
113
+ missing canonical version spec when a project only has shim namespace version
114
+ specs.
115
+
116
+ - kettle-jem-template-20260729-001 - Generated JRuby 9.4 workflows now use the
117
+ legacy manual bundle install path, avoiding setup-time Bundler full-index
118
+ failures against `gem.coop`.
119
+
120
+ - kettle-jem-template-20260729-002 - VersionGem bootstrap now preserves
121
+ and templates dedicated `version_gem.rb` entrypoints even when the gemspec
122
+ dependency is intentionally omitted, and generated anonymous-loader specs
123
+ cover both `version.rb` and `version_gem.rb`.
124
+
125
+ - kettle-jem-template-20260729-003 - Old-Ruby gems below the VersionGem runtime
126
+ floor now get managed minimal `version.rb` files and anonymous-loader version
127
+ specs without adding `version_gem`.
128
+ - kettle-jem-template-20260730-001 - Gemspec package file enumeration now runs
129
+ relative to the gemspec directory, so packaged template assets are included
130
+ even when the gemspec is loaded from another working directory.
131
+
132
+ ## [0.2.3] - 2026-07-02
133
+
134
+ - TAG: [v0.2.3][0.2.3t]
135
+ - COVERAGE: 92.69% -- 444/479 lines in 10 files
136
+ - BRANCH COVERAGE: 67.63% -- 117/173 branches in 10 files
137
+ - 63.77% documented
138
+
139
+ ### Fixed
140
+
141
+ - Package configured license files in gem release file lists.
142
+
33
143
  ## [0.2.2] - 2026-06-22
34
144
 
35
145
  - TAG: [v0.2.2][0.2.2t]
@@ -102,7 +212,11 @@ Please file a bug if you notice a violation of semantic versioning.
102
212
 
103
213
  ### Security
104
214
 
105
- [Unreleased]: https://github.com/galtzo-floss/yaml-converter/compare/v0.2.2...HEAD
215
+ [Unreleased]: https://github.com/galtzo-floss/yaml-converter/compare/v0.2.4...HEAD
216
+ [0.2.4]: https://github.com/galtzo-floss/yaml-converter/compare/v0.2.3...v0.2.4
217
+ [0.2.4t]: https://github.com/galtzo-floss/yaml-converter/releases/tag/v0.2.4
218
+ [0.2.3]: https://github.com/galtzo-floss/yaml-converter/compare/v0.2.2...v0.2.3
219
+ [0.2.3t]: https://github.com/galtzo-floss/yaml-converter/releases/tag/v0.2.3
106
220
  [0.2.2]: https://github.com/galtzo-floss/yaml-converter/compare/v0.2.1...v0.2.2
107
221
  [0.2.2t]: https://github.com/galtzo-floss/yaml-converter/releases/tag/v0.2.2
108
222
  [0.2.1]: https://github.com/galtzo-floss/yaml-converter/compare/v0.2.0...v0.2.1
data/LICENSE.md CHANGED
@@ -3,7 +3,7 @@
3
3
  This project is made available under the following license.
4
4
  Choose the option that best fits your use case:
5
5
 
6
- - [MIT](MIT.md)
6
+ - [MIT](https://github.com/galtzo-floss/yaml-converter/blob/main/MIT.md)
7
7
 
8
8
  ## Copyright Notice
9
9
 
data/README.md CHANGED
@@ -2,9 +2,9 @@
2
2
 
3
3
  # 🥨 Yaml::Converter
4
4
 
5
- [![Version][👽versioni]][👽version] [![GitHub tag (latest SemVer)][⛳️tag-img]][⛳️tag] [![License: MIT][📄license-img]][📄license] [![Downloads Rank][👽dl-ranki]][👽dl-rank] [![CodeCov Test Coverage][🏀codecovi]][🏀codecov] [![Coveralls Test Coverage][🏀coveralls-img]][🏀coveralls] [![QLTY Test Coverage][🏀qlty-covi]][🏀qlty-cov] [![QLTY Maintainability][🏀qlty-mnti]][🏀qlty-mnt] [![CI Heads][🚎3-hd-wfi]][🚎3-hd-wf] [![CI Runtime Dependencies @ HEAD][🚎12-crh-wfi]][🚎12-crh-wf] [![CI Current][🚎11-c-wfi]][🚎11-c-wf] [![CI Truffle Ruby][🚎9-t-wfi]][🚎9-t-wf] [![CI JRuby][🚎10-j-wfi]][🚎10-j-wf] [![Deps Locked][🚎13-🔒️-wfi]][🚎13-🔒️-wf] [![Deps Unlocked][🚎14-🔓️-wfi]][🚎14-🔓️-wf] [![CI Test Coverage][🚎2-cov-wfi]][🚎2-cov-wf] [![CI Style][🚎5-st-wfi]][🚎5-st-wf] [![Apache SkyWalking Eyes License Compatibility Check][🚎15-🪪-wfi]][🚎15-🪪-wf]
5
+ [![Version][👽versioni]][👽version] [![Ruby Users Forum][✉️ruby-forum-top-img]][✉️ruby-forum] [![GitHub tag (latest SemVer)][⛳️tag-img]][⛳️tag] [![License: MIT][📄license-img]][📄license] [![Downloads Rank][👽dl-ranki]][👽dl-rank] [![CodeCov Test Coverage][🏀codecovi]][🏀codecov] [![Coveralls Test Coverage][🏀coveralls-img]][🏀coveralls] [![QLTY Test Coverage][🏀qlty-covi]][🏀qlty-cov] [![QLTY Maintainability][🏀qlty-mnti]][🏀qlty-mnt] [![CI Heads][🚎3-hd-wfi]][🚎3-hd-wf] [![CI Runtime Dependencies @ HEAD][🚎12-crh-wfi]][🚎12-crh-wf] [![CI Current][🚎11-c-wfi]][🚎11-c-wf] [![CI Truffle Ruby][🚎9-t-wfi]][🚎9-t-wf] [![CI JRuby][🚎10-j-wfi]][🚎10-j-wf] [![Deps Locked][🚎13-🔒️-wfi]][🚎13-🔒️-wf] [![Deps Unlocked][🚎14-🔓️-wfi]][🚎14-🔓️-wf] [![CI Test Coverage][🚎2-cov-wfi]][🚎2-cov-wf] [![CI Style][🚎5-st-wfi]][🚎5-st-wf] [![Apache SkyWalking Eyes License Compatibility Check][🚎15-🪪-wfi]][🚎15-🪪-wf]
6
6
 
7
- `if ci_badges.map(&:color).detect { it != "green"}` ☝️ [let me know][✉️discord-invite], as I may have missed the [discord notification][✉️discord-invite].
7
+ `if ci_badges.map(&:color).detect { it != "green"}` ☝️ [let me know on Discord][✉️discord-invite] or [RubyForum][✉️ruby-forum], as I may have missed the notification.
8
8
 
9
9
  ---
10
10
 
@@ -46,8 +46,8 @@ Alternatives (none in Ruby, send a PR if you know of one):
46
46
  | Works with Truffle Ruby | [![Truffle Ruby 24.2 Compat][💎truby-24.2i]][🚎truby-24.2-wf] [![Truffle Ruby 25.0 Compat][💎truby-25.0i]][🚎truby-25.0-wf] [![Truffle Ruby 33.0 Compat][💎truby-33.0i]][🚎truby-33.0-wf] [![Truffle Ruby current Compat][💎truby-c-i]][🚎9-t-wf] [![Truffle Ruby HEAD Compat][💎truby-headi]][🚎3-hd-wf]|
47
47
  | Works with MRI Ruby 4 | [![Ruby current Compat][💎ruby-c-i]][🚎11-c-wf] [![Ruby HEAD Compat][💎ruby-headi]][🚎3-hd-wf]|
48
48
  | Works with MRI Ruby 3 | [![Ruby 3.2 Compat][💎ruby-3.2i]][🚎ruby-3.2-wf] [![Ruby 3.3 Compat][💎ruby-3.3i]][🚎ruby-3.3-wf] [![Ruby 3.4 Compat][💎ruby-3.4i]][🚎ruby-3.4-wf]|
49
- | Support & Community | [![Join Me on Daily.dev's RubyFriends][✉️ruby-friends-img]][✉️ruby-friends] [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite] [![Get help from me on Upwork][👨🏼‍🏫expsup-upwork-img]][👨🏼‍🏫expsup-upwork] [![Get help from me on Codementor][👨🏼‍🏫expsup-codementor-img]][👨🏼‍🏫expsup-codementor] |
50
- | Source | [![Source on GitLab.com][📜src-gl-img]][📜src-gl] [![Source on CodeBerg.org][📜src-cb-img]][📜src-cb] [![Source on Github.com][📜src-gh-img]][📜src-gh] [![The best SHA: dQw4w9WgXcQ!][🧮kloc-img]][🧮kloc] |
49
+ | Support & Community | [![Join Me on Daily.dev's RubyFriends][✉️ruby-friends-img]][✉️ruby-friends] [![Get help from RubyForum][✉️ruby-forum-img]][✉️ruby-forum] [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite] [![Get help from me on Upwork][👨🏼‍🏫expsup-upwork-img]][👨🏼‍🏫expsup-upwork] [![Get help from me on Codementor][👨🏼‍🏫expsup-codementor-img]][👨🏼‍🏫expsup-codementor] |
50
+ | Source | [![Source on GitLab.com][📜src-gl-img]][📜src-gl] [![Source on CodeBerg.org][📜src-cb-img]][📜src-cb] [![Source on GitHub.com][📜src-gh-img]][📜src-gh] [![The best SHA: dQw4w9WgXcQ!][🧮kloc-img]][🧮kloc] |
51
51
  | Documentation | [![Current release on RubyDoc.info][📜docs-cr-rd-img]][🚎yard-current] [![YARD on Galtzo.com][📜docs-head-rd-img]][🚎yard-head] [![Maintainer Blog][🚂maint-blog-img]][🚂maint-blog] [![GitLab Wiki][📜gl-wiki-img]][📜gl-wiki] [![GitHub Wiki][📜gh-wiki-img]][📜gh-wiki] |
52
52
  | Compliance | [![License: MIT][📄license-img]][📄license] [![Apache license compatibility: Category A][📄license-compat-img]][📄license-compat] [![📄ilo-declaration-img]][📄ilo-declaration] [![Security Policy][🔐security-img]][🔐security] [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct] [![SemVer 2.0.0][📌semver-img]][📌semver] |
53
53
  | Style | [![Enforced Code Style Linter][💎rlts-img]][💎rlts] [![Keep-A-Changelog 1.0.0][📗keep-changelog-img]][📗keep-changelog] [![Gitmoji Commits][📌gitmoji-img]][📌gitmoji] [![Compatibility appraised by: appraisal2][💎appraisal2-img]][💎appraisal2] |
@@ -87,17 +87,14 @@ The _amazing_ test matrix is powered by the kettle-dev stack.
87
87
  <details markdown="1">
88
88
  <summary>Find this repo on federated forges (Coming soon!)</summary>
89
89
 
90
- | Federated [DVCS][💎d-in-dvcs] Repository | Status | Issues | PRs | Wiki | CI | Discussions |
91
- |-------------------------------------------------|-----------------------------------------------------------------------|---------------------------|--------------------------|---------------------------|--------------------------|------------------------------|
92
- | 🧪 [galtzo-floss/yaml-converter on GitLab][📜src-gl] | The Truth | [💚][🤝gl-issues] | [💚][🤝gl-pulls] | [💚][📜gl-wiki] | 🐭 Tiny Matrix | ➖ |
93
- | 🧊 [galtzo-floss/yaml-converter on CodeBerg][📜src-cb] | An Ethical Mirror ([Donate][🤝cb-donate]) | [💚][🤝cb-issues] | [💚][🤝cb-pulls] | ➖ | ⭕️ No Matrix | ➖ |
94
- | 🐙 [galtzo-floss/yaml-converter on GitHub][📜src-gh] | Another Mirror | [💚][🤝gh-issues] | [💚][🤝gh-pulls] | [💚][📜gh-wiki] | 💯 Full Matrix | [💚][gh-discussions] |
95
- | 🎮️ [Discord Server][✉️discord-invite] | [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite] | [Let's][✉️discord-invite] | [talk][✉️discord-invite] | [about][✉️discord-invite] | [this][✉️discord-invite] | [library!][✉️discord-invite] |
90
+ | Federated [DVCS][💎d-in-dvcs] Repository | Status | Issues | PRs | Wiki | CI |
91
+ |-------------------------------------------------|-------------------------------------------|-------------------|------------------|-----------------|----------------|
92
+ | 🧪 [galtzo-floss/yaml-converter on GitLab][📜src-gl] | The Truth | [💚][🤝gl-issues] | [💚][🤝gl-pulls] | [💚][📜gl-wiki] | 🐭 Tiny Matrix |
93
+ | 🧊 [galtzo-floss/yaml-converter on CodeBerg][📜src-cb] | An Ethical Mirror ([Donate][🤝cb-donate]) | [💚][🤝cb-issues] | [💚][🤝cb-pulls] | ➖ | ⭕️ No Matrix |
94
+ | 🐙 [galtzo-floss/yaml-converter on GitHub][📜src-gh] | Another Mirror | [💚][🤝gh-issues] | [💚][🤝gh-pulls] | [💚][📜gh-wiki] | 💯 Full Matrix |
96
95
 
97
96
  </details>
98
97
 
99
- [gh-discussions]: https://github.com/galtzo-floss/yaml-converter/discussions
100
-
101
98
  ### Enterprise Support [![Tidelift](https://tidelift.com/badges/package/rubygems/yaml-converter)](https://tidelift.com/subscription/pkg/rubygems-yaml-converter?utm_source=rubygems-yaml-converter&utm_medium=referral&utm_campaign=readme)
102
99
 
103
100
  Available as part of the Tidelift Subscription.
@@ -115,6 +112,7 @@ The maintainers of this and thousands of other packages are working with Tidelif
115
112
 
116
113
  Alternatively:
117
114
 
115
+ - [![Ruby Users Forum][✉️ruby-forum-img]][✉️ruby-forum]
118
116
  - [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite]
119
117
  - [![Get help from me on Upwork][👨🏼‍🏫expsup-upwork-img]][👨🏼‍🏫expsup-upwork]
120
118
  - [![Get help from me on Codementor][👨🏼‍🏫expsup-codementor-img]][👨🏼‍🏫expsup-codementor]
@@ -529,7 +527,7 @@ See [CHANGELOG.md][📌changelog] for a list of releases.
529
527
  ## 📄 License
530
528
 
531
529
  The gem is available as open source under the terms of
532
- the [MIT](MIT.md) [![License: MIT][📄license-img]][📄license-ref].
530
+ the [MIT](https://github.com/galtzo-floss/yaml-converter/blob/main/MIT.md) [![License: MIT][📄license-img]][📄license-ref].
533
531
 
534
532
  ### © Copyright
535
533
 
@@ -551,11 +549,12 @@ I'm hoping to be able to pay for my kids' health insurance this month,
551
549
  so if you value the work I am doing, I need your support.
552
550
  Please consider sponsoring me or the project.
553
551
 
554
- To join the community or get help 👇️ Join the Discord.
552
+ To join the community or get help, use the RubyForum or Discord.
555
553
 
554
+ [![Ruby Users Forum][✉️ruby-forum-img]][✉️ruby-forum]
556
555
  [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite]
557
556
 
558
- To say "thanks!" ☝️ Join the Discord or 👇️ send money.
557
+ To say "thanks!" ☝️ Join the community or 👇️ send money.
559
558
 
560
559
  [![Sponsor galtzo-floss/yaml-converter on Open Source Collective][🖇osc-all-bottom-img]][🖇osc] 💌 [![Sponsor me on GitHub Sponsors][🖇sponsor-bottom-img]][🖇sponsor] 💌 [![Sponsor me on Liberapay][⛳liberapay-bottom-img]][⛳liberapay] 💌 [![Donate on PayPal][🖇paypal-bottom-img]][🖇paypal]
561
560
 
@@ -596,6 +595,9 @@ Thanks for RTFM. ☺️
596
595
  [✉️discord-invite-img-ftb]: https://img.shields.io/discord/1373797679469170758?style=for-the-badge&logo=discord
597
596
  [✉️ruby-friends-img]: https://img.shields.io/badge/daily.dev-%F0%9F%92%8E_Ruby_Friends-0A0A0A?style=for-the-badge&logo=dailydotdev&logoColor=white
598
597
  [✉️ruby-friends]: https://app.daily.dev/squads/rubyfriends
598
+ [✉️ruby-forum-top-img]: https://img.shields.io/discourse/topics?server=https%3A%2F%2Fwww.rubyforum.org&style=flat&logo=discourse&label=Ruby%20Users%20Forum
599
+ [✉️ruby-forum-img]: https://img.shields.io/discourse/topics?server=https%3A%2F%2Fwww.rubyforum.org&style=for-the-badge&logo=discourse&label=Ruby%20Users%20Forum
600
+ [✉️ruby-forum]: https://www.rubyforum.org/tag/galtzo-floss
599
601
 
600
602
  [✇bundle-group-pattern]: https://gist.github.com/pboling/4564780
601
603
  [⛳️gem-namespace]: https://github.com/galtzo-floss/yaml-converter
@@ -641,7 +643,7 @@ Thanks for RTFM. ☺️
641
643
  [📜src-gl]: https://gitlab.com/galtzo-floss/yaml-converter
642
644
  [📜src-cb-img]: https://img.shields.io/badge/CodeBerg-4893CC?style=for-the-badge&logo=CodeBerg&logoColor=blue
643
645
  [📜src-cb]: https://codeberg.org/galtzo-floss/yaml-converter
644
- [📜src-gh-img]: https://img.shields.io/badge/GitHub-238636?style=for-the-badge&logo=Github&logoColor=green
646
+ [📜src-gh-img]: https://img.shields.io/badge/GitHub-238636?style=for-the-badge&logo=GitHub&logoColor=green
645
647
  [📜src-gh]: https://github.com/galtzo-floss/yaml-converter
646
648
  [📜docs-cr-rd-img]: https://img.shields.io/badge/RubyDoc-Current_Release-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
647
649
  [📜docs-head-rd-img]: https://img.shields.io/badge/YARD_on_Galtzo.com-HEAD-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
@@ -732,7 +734,7 @@ Thanks for RTFM. ☺️
732
734
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
733
735
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
734
736
  [📄license]: LICENSE.md
735
- [📄license-ref]: MIT.md
737
+ [📄license-ref]: https://github.com/galtzo-floss/yaml-converter/blob/main/MIT.md
736
738
  [📄license-img]: https://img.shields.io/badge/License-MIT-259D6C.svg
737
739
  [📄license-compat]: https://www.apache.org/legal/resolved.html#category-a
738
740
  [📄license-compat-img]: https://img.shields.io/badge/Apache_Compatible:_Category_A-%E2%9C%93-259D6C.svg?style=flat&logo=Apache
data/exe/yaml-convert CHANGED
@@ -4,6 +4,7 @@
4
4
  require "optparse"
5
5
  require "fileutils"
6
6
  require "yaml/converter"
7
+ require "yaml/converter/version"
7
8
 
8
9
  options = {
9
10
  max_line_length: nil,
@@ -17,7 +18,8 @@ options = {
17
18
  out_dir: nil,
18
19
  concurrency: nil,
19
20
  streaming: nil,
20
- streaming_threshold_bytes: nil
21
+ streaming_threshold_bytes: nil,
22
+ verbose: false
21
23
  }
22
24
 
23
25
  parser = OptionParser.new do |opts|
@@ -31,6 +33,7 @@ parser = OptionParser.new do |opts|
31
33
  opts.on("--pandoc-args STRING", "Extra args for pandoc (split on spaces)") { |v| options[:pandoc_args] = v.split(/\s+/) }
32
34
  opts.on("--streaming", "Force streaming mode for markdown output") { options[:streaming] = true }
33
35
  opts.on("--streaming-threshold BYTES", Integer, "Auto-enable streaming when input file >= BYTES") { |v| options[:streaming_threshold_bytes] = v }
36
+ opts.on("--verbose", "Show startup header") { options[:verbose] = true }
34
37
 
35
38
  # Batch mode
36
39
  opts.on("--glob PATTERN", "Batch convert all YAML files matching the glob pattern") { |v| options[:glob] = v }
@@ -38,7 +41,7 @@ parser = OptionParser.new do |opts|
38
41
  opts.on("--out-dir DIR", "Output directory for batch mode (defaults next to input)") { |v| options[:out_dir] = v }
39
42
  opts.on("--concurrency N", Integer, "Batch concurrency (currently not used; reserved)") { |v| options[:concurrency] = v }
40
43
 
41
- opts.on("--version", "Show version") {
44
+ opts.on("-v", "--version", "Show version") {
42
45
  puts Yaml::Converter::VERSION
43
46
  exit(0)
44
47
  }
@@ -56,6 +59,9 @@ rescue OptionParser::InvalidOption => e
56
59
  exit(2)
57
60
  end
58
61
 
62
+ script_basename = File.basename(__FILE__)
63
+ puts "== #{script_basename} v#{Yaml::Converter::VERSION} ==" if options[:verbose]
64
+
59
65
  # Batch mode if --glob is provided
60
66
  if options[:glob]
61
67
  pattern = options[:glob]
@@ -2,9 +2,12 @@
2
2
 
3
3
  module Yaml
4
4
  module Converter
5
+ # Version namespace for this gem.
5
6
  module Version
6
- VERSION = "0.2.2"
7
+ # Current gem version.
8
+ VERSION = "0.2.4"
7
9
  end
10
+ # Current gem version exposed at the traditional constant location.
8
11
  VERSION = Version::VERSION # Traditional Constant Location
9
12
  end
10
13
  end
@@ -37,5 +37,44 @@ module Yaml
37
37
  def self.to_markdown_streaming: (String input_path, untyped io, ?options: options) -> void
38
38
  def self.validate: (String yaml_string) -> { status: Symbol, error: Exception? }
39
39
  def self.convert: (input_path: String, output_path: String, ?options: options) -> { status: Symbol, output_path: String, validation: { status: Symbol, error: Exception? } }
40
+ module Config
41
+ DEFAULTS: { max_line_length: Integer, truncate: bool, margin_notes: Symbol, validate: bool, use_pandoc: bool, pandoc_args: Array[String], pandoc_path: String? , html_theme: Symbol, pdf_page_size: String, pdf_margin: Array[Integer], pdf_title_font_size: Integer, pdf_body_font_size: Integer, pdf_yaml_font_size: Integer, pdf_two_column_notes: bool, current_date: untyped, emit_footer: bool, streaming: bool, streaming_threshold_bytes: Integer }
42
+ ENV_MAP: { max_line_length: String, truncate: String, margin_notes: String, validate: String, use_pandoc: String, pdf_page_size: String, pdf_title_font_size: String, pdf_body_font_size: String, pdf_yaml_font_size: String, pdf_two_column_notes: String, emit_footer: String, streaming: String, streaming_threshold_bytes: String }
43
+ BOOLEAN_KEYS: Array[Symbol]
44
+
45
+ def self.resolve: (?Hash[Symbol, untyped]) -> Hash[Symbol, untyped]
46
+ def self.normalize: (Hash[Symbol, untyped]) -> Hash[Symbol, untyped]
47
+ def self.coerce_env_value: (Symbol, String) -> untyped
48
+ end
49
+
50
+ class MarkdownEmitter
51
+ START_YAML: String
52
+ END_YAML: String
53
+ VALIDATED_STR: String
54
+ NOTE_STR: String
55
+
56
+ def initialize: (Yaml::Converter::options options) -> void
57
+ def set_validation_status: (Symbol) -> void
58
+ def emit: (Array[String]) -> Array[String]
59
+ end
60
+
61
+ class StreamingEmitter
62
+ START_YAML: String
63
+ END_YAML: String
64
+
65
+ def initialize: (Yaml::Converter::options options, untyped io) -> void
66
+ def set_validation_status: (Symbol) -> void
67
+ def emit_file: (String input_path) -> void
68
+ end
69
+
70
+ module Validation
71
+ def self.validate_string: (String) -> { status: Symbol, error: Exception? }
72
+ def self.validate_file: (String) -> { status: Symbol, error: Exception? }
73
+ end
74
+
75
+ module Version
76
+ VERSION: String
77
+ end
78
+ VERSION: String
40
79
  end
41
80
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yaml-converter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -100,7 +100,7 @@ dependencies:
100
100
  version: '1.1'
101
101
  - - ">="
102
102
  - !ruby/object:Gem::Version
103
- version: 1.1.13
103
+ version: 1.1.14
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
@@ -110,27 +110,27 @@ dependencies:
110
110
  version: '1.1'
111
111
  - - ">="
112
112
  - !ruby/object:Gem::Version
113
- version: 1.1.13
113
+ version: 1.1.14
114
114
  - !ruby/object:Gem::Dependency
115
115
  name: kettle-dev
116
116
  requirement: !ruby/object:Gem::Requirement
117
117
  requirements:
118
118
  - - "~>"
119
119
  - !ruby/object:Gem::Version
120
- version: '2.2'
120
+ version: '2.5'
121
121
  - - ">="
122
122
  - !ruby/object:Gem::Version
123
- version: 2.2.15
123
+ version: 2.5.13
124
124
  type: :development
125
125
  prerelease: false
126
126
  version_requirements: !ruby/object:Gem::Requirement
127
127
  requirements:
128
128
  - - "~>"
129
129
  - !ruby/object:Gem::Version
130
- version: '2.2'
130
+ version: '2.5'
131
131
  - - ">="
132
132
  - !ruby/object:Gem::Version
133
- version: 2.2.15
133
+ version: 2.5.13
134
134
  - !ruby/object:Gem::Dependency
135
135
  name: bundler-audit
136
136
  requirement: !ruby/object:Gem::Requirement
@@ -179,26 +179,46 @@ dependencies:
179
179
  - - ">="
180
180
  - !ruby/object:Gem::Version
181
181
  version: 1.0.4
182
+ - !ruby/object:Gem::Dependency
183
+ name: anonymous_loader
184
+ requirement: !ruby/object:Gem::Requirement
185
+ requirements:
186
+ - - "~>"
187
+ - !ruby/object:Gem::Version
188
+ version: '0.1'
189
+ - - ">="
190
+ - !ruby/object:Gem::Version
191
+ version: 0.1.3
192
+ type: :development
193
+ prerelease: false
194
+ version_requirements: !ruby/object:Gem::Requirement
195
+ requirements:
196
+ - - "~>"
197
+ - !ruby/object:Gem::Version
198
+ version: '0.1'
199
+ - - ">="
200
+ - !ruby/object:Gem::Version
201
+ version: 0.1.3
182
202
  - !ruby/object:Gem::Dependency
183
203
  name: appraisal2
184
204
  requirement: !ruby/object:Gem::Requirement
185
205
  requirements:
186
206
  - - "~>"
187
207
  - !ruby/object:Gem::Version
188
- version: '3.1'
208
+ version: '3.2'
189
209
  - - ">="
190
210
  - !ruby/object:Gem::Version
191
- version: 3.1.2
211
+ version: 3.2.0
192
212
  type: :development
193
213
  prerelease: false
194
214
  version_requirements: !ruby/object:Gem::Requirement
195
215
  requirements:
196
216
  - - "~>"
197
217
  - !ruby/object:Gem::Version
198
- version: '3.1'
218
+ version: '3.2'
199
219
  - - ">="
200
220
  - !ruby/object:Gem::Version
201
- version: 3.1.2
221
+ version: 3.2.0
202
222
  - !ruby/object:Gem::Dependency
203
223
  name: kettle-test
204
224
  requirement: !ruby/object:Gem::Requirement
@@ -208,7 +228,7 @@ dependencies:
208
228
  version: '2.0'
209
229
  - - ">="
210
230
  - !ruby/object:Gem::Version
211
- version: 2.0.6
231
+ version: 2.0.17
212
232
  type: :development
213
233
  prerelease: false
214
234
  version_requirements: !ruby/object:Gem::Requirement
@@ -218,27 +238,27 @@ dependencies:
218
238
  version: '2.0'
219
239
  - - ">="
220
240
  - !ruby/object:Gem::Version
221
- version: 2.0.6
241
+ version: 2.0.17
222
242
  - !ruby/object:Gem::Dependency
223
243
  name: turbo_tests2
224
244
  requirement: !ruby/object:Gem::Requirement
225
245
  requirements:
226
246
  - - "~>"
227
247
  - !ruby/object:Gem::Version
228
- version: '3.1'
248
+ version: '3.2'
229
249
  - - ">="
230
250
  - !ruby/object:Gem::Version
231
- version: 3.1.4
251
+ version: 3.2.4
232
252
  type: :development
233
253
  prerelease: false
234
254
  version_requirements: !ruby/object:Gem::Requirement
235
255
  requirements:
236
256
  - - "~>"
237
257
  - !ruby/object:Gem::Version
238
- version: '3.1'
258
+ version: '3.2'
239
259
  - - ">="
240
260
  - !ruby/object:Gem::Version
241
- version: 3.1.4
261
+ version: 3.2.4
242
262
  - !ruby/object:Gem::Dependency
243
263
  name: ruby-progressbar
244
264
  requirement: !ruby/object:Gem::Requirement
@@ -262,7 +282,7 @@ dependencies:
262
282
  version: '1.0'
263
283
  - - ">="
264
284
  - !ruby/object:Gem::Version
265
- version: 1.0.3
285
+ version: 1.0.8
266
286
  type: :development
267
287
  prerelease: false
268
288
  version_requirements: !ruby/object:Gem::Requirement
@@ -272,7 +292,7 @@ dependencies:
272
292
  version: '1.0'
273
293
  - - ">="
274
294
  - !ruby/object:Gem::Version
275
- version: 1.0.3
295
+ version: 1.0.8
276
296
  - !ruby/object:Gem::Dependency
277
297
  name: gitmoji-regex
278
298
  requirement: !ruby/object:Gem::Requirement
@@ -282,7 +302,7 @@ dependencies:
282
302
  version: '2.0'
283
303
  - - ">="
284
304
  - !ruby/object:Gem::Version
285
- version: 2.0.3
305
+ version: 2.0.11
286
306
  type: :development
287
307
  prerelease: false
288
308
  version_requirements: !ruby/object:Gem::Requirement
@@ -292,7 +312,7 @@ dependencies:
292
312
  version: '2.0'
293
313
  - - ">="
294
314
  - !ruby/object:Gem::Version
295
- version: 2.0.3
315
+ version: 2.0.11
296
316
  description: "\U0001F968 yaml-converter parses YAML files (with inline #note: annotations
297
317
  and validation markers) and emits polished Markdown, HTML, and PDF/DOCX (via pandoc)
298
318
  outputs including a validation status line, fenced YAML blocks, and extracted notes."
@@ -301,27 +321,11 @@ email:
301
321
  executables:
302
322
  - yaml-convert
303
323
  extensions: []
304
- extra_rdoc_files:
305
- - CHANGELOG.md
306
- - CITATION.cff
307
- - CODE_OF_CONDUCT.md
308
- - CONTRIBUTING.md
309
- - FUNDING.md
310
- - LICENSE.md
311
- - README.md
312
- - RUBOCOP.md
313
- - SECURITY.md
324
+ extra_rdoc_files: []
314
325
  files:
315
326
  - CHANGELOG.md
316
- - CITATION.cff
317
- - CODE_OF_CONDUCT.md
318
- - CONTRIBUTING.md
319
- - FUNDING.md
320
327
  - LICENSE.md
321
328
  - README.md
322
- - RUBOCOP.md
323
- - SECURITY.md
324
- - certs/pboling.pem
325
329
  - exe/yaml-convert
326
330
  - lib/yaml/converter.rb
327
331
  - lib/yaml/converter/config.rb
@@ -334,24 +338,20 @@ files:
334
338
  - lib/yaml/converter/validation.rb
335
339
  - lib/yaml/converter/version.rb
336
340
  - sig/yaml/converter.rbs
337
- - sig/yaml/converter/config.rbs
338
- - sig/yaml/converter/markdown_emitter.rbs
339
- - sig/yaml/converter/streaming_emitter.rbs
340
- - sig/yaml/converter/validation.rbs
341
- - sig/yaml/converter/version.rbs
342
341
  homepage: https://github.com/galtzo-floss/yaml-converter
343
342
  licenses:
344
343
  - MIT
345
344
  metadata:
346
345
  homepage_uri: https://yaml-converter.galtzo.com
347
- source_code_uri: https://github.com/galtzo-floss/yaml-converter/tree/v0.2.2
348
- changelog_uri: https://github.com/galtzo-floss/yaml-converter/blob/v0.2.2/CHANGELOG.md
346
+ source_code_uri: https://github.com/galtzo-floss/yaml-converter/tree/v0.2.4
347
+ changelog_uri: https://github.com/galtzo-floss/yaml-converter/blob/v0.2.4/CHANGELOG.md
349
348
  bug_tracker_uri: https://github.com/galtzo-floss/yaml-converter/issues
350
- documentation_uri: https://www.rubydoc.info/gems/yaml-converter/0.2.2
349
+ documentation_uri: https://www.rubydoc.info/gems/yaml-converter/0.2.4
351
350
  funding_uri: https://github.com/sponsors/pboling
352
351
  wiki_uri: https://github.com/galtzo-floss/yaml-converter/wiki
353
352
  news_uri: https://www.railsbling.com/tags/yaml-converter
354
353
  discord_uri: https://discord.gg/3qme4XHNKN
354
+ mailing_list_uri: https://www.rubyforum.org/tag/galtzo-floss
355
355
  rubygems_mfa_required: 'true'
356
356
  rdoc_options:
357
357
  - "--title"
@@ -377,7 +377,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
377
377
  - !ruby/object:Gem::Version
378
378
  version: '0'
379
379
  requirements: []
380
- rubygems_version: 4.0.10
380
+ rubygems_version: 4.0.17
381
381
  specification_version: 4
382
382
  summary: "\U0001F968 Convert annotated YAML blueprints into readable Markdown, HTML,
383
383
  PDF, or DOCX with validation status and notes extraction."
metadata.gz.sig CHANGED
Binary file
data/CITATION.cff DELETED
@@ -1,20 +0,0 @@
1
- cff-version: 1.2.0
2
- title: "yaml-converter"
3
- message: >-
4
- If you use this work and you want to cite it,
5
- then you can use the metadata from this file.
6
- type: software
7
- authors:
8
- - given-names: "Peter H."
9
- family-names: "Boling"
10
- email: "floss@galtzo.com"
11
- affiliation: "galtzo.com"
12
- orcid: 'https://orcid.org/0009-0008-8519-441X'
13
- identifiers:
14
- - type: url
15
- value: 'https://github.com/galtzo-floss/yaml-converter'
16
- description: "yaml-converter"
17
- repository-code: 'https://github.com/galtzo-floss/yaml-converter'
18
- abstract: >-
19
- yaml-converter
20
- license: See license file