smorg-rb 7.1.1

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: c450da4a626c5f983cd9b487e0e42714ad674003f3b779e99716ce9237268df9
4
+ data.tar.gz: e21ef620c696b6cd36b4fd8bd0c7619cb788992f1a3685ca3e01e8c578633412
5
+ SHA512:
6
+ metadata.gz: befc7f7bd499c36ebfeaa1b04aea6fe1672db736a2a40081b759ccdedc364427c22088112e5d0849b395da1f21cf406e6c73f0aaa2d4a4730fcecdc1ed7169dc
7
+ data.tar.gz: 8f3c51cd057fef2dadb1553c29b7eff34587afcd105bcdde4c78332baff7ac6b9c90f8ecb5b2313b48a7fd5943696130e4560eae497dc66dd15beba0766c5b14
checksums.yaml.gz.sig ADDED
Binary file
data/LICENSE.md ADDED
@@ -0,0 +1,13 @@
1
+ # License
2
+
3
+ This project is made available under the following licenses.
4
+ Choose the option that best fits your use case:
5
+
6
+ - [AGPL-3.0-only](https://github.com/structuredmerge/structuredmerge-ruby/blob/main/AGPL-3.0-only.md)
7
+ - [PolyForm-Small-Business-1.0.0](https://github.com/structuredmerge/structuredmerge-ruby/blob/main/PolyForm-Small-Business-1.0.0.md)
8
+
9
+ If none of the above licenses fit your use case, please [contact us](mailto:floss@galtzo.com) to discuss a custom commercial license.
10
+
11
+ ## Copyright Notice
12
+
13
+ - Required Notice: Copyright (c) 2026 Peter H. Boling
data/README.md ADDED
@@ -0,0 +1,283 @@
1
+ <a href="https://github.com/structuredmerge"><img alt="structuredmerge Logo by GitHub" src="https://github.com/structuredmerge.png?size=192" width="14%" align="right"/></a>
2
+
3
+ # 💎 Smorg::RB
4
+
5
+ [![Version][👽versioni]][👽version] [![Ruby Users Forum][✉️ruby-forum-top-img]][✉️ruby-forum] [![GitHub tag (latest SemVer)][⛳️tag-img]][⛳️tag] [![License: AGPL-3.0-only OR PolyForm-Small-Business-1.0.0][📄license-img]][📄license] [![Total downloads][👽dl-ranki]][👽dl-rank] [![CI Current][🚎11-c-wfi]][🚎11-c-wf]
6
+
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
+
9
+ ---
10
+
11
+ `if ci_badges.map(&:color).all? { it == "green"}` 👇️ send money so I can do more of this. FLOSS maintenance is now my full-time job.
12
+
13
+ [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate at ko-fi.com][🖇kofi-img]][🖇kofi]
14
+
15
+ <details markdown="1">
16
+ <summary>👣 How will this project approach the September 2025 hostile takeover of RubyGems? 🚑️</summary>
17
+
18
+ I've summarized my thoughts in [this blog post](https://dev.to/galtzo/hostile-takeover-of-rubygems-my-thoughts-5hlo).
19
+
20
+ </details>
21
+
22
+ ## 🌻 Synopsis <a href="https://discord.gg/3qme4XHNKN"><img alt="Galtzo FLOSS Logo by Aboling0, CC BY-SA 4.0" src="https://logos.galtzo.com/assets/images/galtzo-floss/avatar-128px.svg" width="8%" align="right"/></a> <a href="https://ruby-toolbox.com"><img alt="ruby-lang Logo, Yukihiro Matsumoto, Ruby Visual Identity Team, CC BY-SA 2.5" src="https://logos.galtzo.com/assets/images/ruby-lang/avatar-128px.svg" width="8%" align="right"/></a>
23
+
24
+ `smorg-rb` is the Ruby command/runtime layer for StructuredMerge workflows. It coordinates file arguments, family selection, merge-driver style inputs, diagnostics, and command output for Ruby-based tooling.
25
+
26
+ ### Key Features
27
+
28
+ - CLI-oriented option parsing and request normalization.
29
+ - Family-aware dispatch into Ruby merge gems.
30
+ - Merge-driver input handling for base/current/incoming file triples.
31
+ - Structured diagnostics suitable for CI and local command output.
32
+
33
+ ## 💡 Info you can shake a stick at
34
+
35
+ | Tokens to Remember | [![Gem name][⛳️name-img]][⛳️gem-name] [![Gem namespace][⛳️namespace-img]][⛳️gem-namespace] |
36
+ |-------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
37
+ | Works with MRI Ruby 4 | [![Ruby current Compat][💎ruby-c-i]][🚎11-c-wf]|
38
+ | 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] |
39
+ | 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] |
40
+ | 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] |
41
+ | Compliance | [![License: AGPL-3.0-only OR PolyForm-Small-Business-1.0.0][📄license-img]][📄license] [![Apache license compatibility: Category X][📄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] |
42
+ | 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] |
43
+ | Maintainer 🎖️ | [![Follow Me on LinkedIn][💖🖇linkedin-img]][💖🖇linkedin] [![Follow Me on Ruby.Social][💖🐘ruby-mast-img]][💖🐘ruby-mast] [![Follow Me on Bluesky][💖🦋bluesky-img]][💖🦋bluesky] [![Contact Maintainer][🚂maint-contact-img]][🚂maint-contact] [![My technical writing][💖💁🏼‍♂️devto-img]][💖💁🏼‍♂️devto] |
44
+ | `...` 💖 | [![Find Me on WellFound:][💖✌️wellfound-img]][💖✌️wellfound] [![Find Me on CrunchBase][💖💲crunchbase-img]][💖💲crunchbase] [![My LinkTree][💖🌳linktree-img]][💖🌳linktree] [![More About Me][💖💁🏼‍♂️aboutme-img]][💖💁🏼‍♂️aboutme] [🧊][💖🧊berg] [🐙][💖🐙hub] [🛖][💖🛖hut] [🧪][💖🧪lab] |
45
+
46
+ ### Compatibility
47
+
48
+ Compatible with MRI Ruby 4.0.0+, and concordant releases of JRuby, and TruffleRuby.
49
+ CI workflows and Appraisals are generated for MRI Ruby 4.0.0+.
50
+ This test floor is configured by `ruby.test_minimum` in `.kettle-jem.yml` and
51
+ may be higher than the gem's runtime compatibility floor when legacy Rubies are
52
+ not practical for the current toolchain.
53
+
54
+ <a href="https://github.com/kettle-dev"><img alt="kettle-dev Logo by Aboling0, CC BY-SA 4.0" src="https://logos.galtzo.com/assets/images/kettle-dev/avatar-128px.svg" width="14%" align="right"/></a>
55
+
56
+ The _amazing_ test matrix is powered by the kettle-dev stack.
57
+
58
+ <details markdown="1">
59
+ <summary>How kettle-dev manages complexity in tests</summary>
60
+
61
+ | Gem | Source | Role | Total downloads |
62
+ |-----|--------|------|---------------------|
63
+ | [appraisal2](https://clickgems.clickhouse.com/dashboard/appraisal2) | [GitHub](https://github.com/appraisal-rb/appraisal2) | multi-dependency Appraisal matrix generation | [![Total downloads for appraisal2](https://img.shields.io/gem/dt/appraisal2.svg?style=flat-square)](https://clickgems.clickhouse.com/dashboard/appraisal2) |
64
+ | [appraisal2-rubocop](https://clickgems.clickhouse.com/dashboard/appraisal2-rubocop) | [GitHub](https://github.com/appraisal-rb/appraisal2-rubocop) | RuboCop Appraisal generator integration | [![Total downloads for appraisal2-rubocop](https://img.shields.io/gem/dt/appraisal2-rubocop.svg?style=flat-square)](https://clickgems.clickhouse.com/dashboard/appraisal2-rubocop) |
65
+ | [kettle-dev](https://clickgems.clickhouse.com/dashboard/kettle-dev) | [GitHub](https://github.com/kettle-dev/kettle-dev) | development, release, and CI workflow tooling | [![Total downloads for kettle-dev](https://img.shields.io/gem/dt/kettle-dev.svg?style=flat-square)](https://clickgems.clickhouse.com/dashboard/kettle-dev) |
66
+ | [kettle-jem](https://clickgems.clickhouse.com/dashboard/kettle-jem) | [GitHub](https://github.com/kettle-dev/kettle-jem) | Appraisals & CI workflow templates | [![Total downloads for kettle-jem](https://img.shields.io/gem/dt/kettle-jem.svg?style=flat-square)](https://clickgems.clickhouse.com/dashboard/kettle-jem) |
67
+ | [kettle-soup-cover](https://clickgems.clickhouse.com/dashboard/kettle-soup-cover) | [GitHub](https://github.com/kettle-dev/kettle-soup-cover) | SimpleCov coverage policy and reporting | [![Total downloads for kettle-soup-cover](https://img.shields.io/gem/dt/kettle-soup-cover.svg?style=flat-square)](https://clickgems.clickhouse.com/dashboard/kettle-soup-cover) |
68
+ | [kettle-test](https://clickgems.clickhouse.com/dashboard/kettle-test) | [GitHub](https://github.com/kettle-dev/kettle-test) | standard test runner and coverage harness | [![Total downloads for kettle-test](https://img.shields.io/gem/dt/kettle-test.svg?style=flat-square)](https://clickgems.clickhouse.com/dashboard/kettle-test) |
69
+ | [rubocop-lts](https://clickgems.clickhouse.com/dashboard/rubocop-lts) | [GitHub](https://github.com/rubocop-lts/rubocop-lts) | Ruby-version-aware linting | [![Total downloads for rubocop-lts](https://img.shields.io/gem/dt/rubocop-lts.svg?style=flat-square)](https://clickgems.clickhouse.com/dashboard/rubocop-lts) |
70
+ | [turbo_tests2](https://clickgems.clickhouse.com/dashboard/turbo_tests2) | [GitHub](https://github.com/galtzo-floss/turbo_tests2) | parallel test execution | [![Total downloads for turbo_tests2](https://img.shields.io/gem/dt/turbo_tests2.svg?style=flat-square)](https://clickgems.clickhouse.com/dashboard/turbo_tests2) |
71
+
72
+ </details>
73
+
74
+ ## ✨ Installation
75
+
76
+ Install the gem and add to the application's Gemfile by executing:
77
+
78
+ ```console
79
+ bundle add smorg-rb
80
+ ```
81
+
82
+ If bundler is not being used to manage dependencies, install the gem by executing:
83
+
84
+ ```console
85
+ gem install smorg-rb
86
+ ```
87
+
88
+ ## ⚙️ Configuration
89
+
90
+ Configure `smorg-rb` with command-line options and the merge gems present in the active bundle. Use the Ruby gem READMEs for family-specific backend and parser settings.
91
+
92
+ In monorepo development, local sibling gems should be wired through `nomono` and the workspace environment rather than manual load-path changes.
93
+
94
+ ## 🔧 Basic Usage
95
+
96
+ ```ruby
97
+ require "smorg/rb"
98
+
99
+ argv = ["merge", "--family", "json", "base.json", "ours.json", "theirs.json"]
100
+ exit_code = Smorg::Rb.run(argv)
101
+ exit exit_code unless exit_code.zero?
102
+ ```
103
+
104
+ ## 🔐 Security
105
+
106
+ See [SECURITY.md][🔐security].
107
+
108
+ ## 🤝 Contributing
109
+
110
+ If you need some ideas of where to help, you could work on adding more code coverage,
111
+ or if it is already 💯 (see [below](#code-coverage)) check [issues][🤝gh-issues] or [PRs][🤝gh-pulls],
112
+ or use the gem and think about how it could be better.
113
+
114
+ We [![Keep A Changelog][📗keep-changelog-img]][📗keep-changelog] so if you make changes, remember to update it.
115
+
116
+ See [CONTRIBUTING.md][🤝contributing] for more detailed instructions.
117
+
118
+ ### Code Coverage
119
+
120
+ <details markdown="1">
121
+ <summary>Coverage service badges</summary>
122
+
123
+ </details>
124
+
125
+ ## 📌 Versioning
126
+
127
+ This library follows [![Semantic Versioning 2.0.0][📌semver-img]][📌semver] for its public API where practical.
128
+ For most applications, prefer the [Pessimistic Version Constraint][📌pvc] with two digits of precision.
129
+
130
+ For example:
131
+
132
+ ```ruby
133
+ spec.add_dependency("smorg-rb", "~> 7.0")
134
+ ```
135
+
136
+ <details markdown="1">
137
+ <summary>📌 Is "Platform Support" part of the public API? More details inside.</summary>
138
+
139
+ Dropping support for a platform can be a breaking change for affected users.
140
+ If a release changes supported platforms, it should be called out clearly in the changelog and versioned with that impact in mind.
141
+
142
+ To get a better understanding of how SemVer is intended to work over a project's lifetime,
143
+ read this article from the creator of SemVer:
144
+
145
+ - ["Major Version Numbers are Not Sacred"][📌major-versions-not-sacred]
146
+
147
+ </details>
148
+
149
+ See [CHANGELOG.md][📌changelog] for a list of releases.
150
+
151
+ ## 📄 License
152
+
153
+ The gem is available under the following licenses: [AGPL-3.0-only](https://github.com/structuredmerge/structuredmerge-ruby/blob/main/AGPL-3.0-only.md), [PolyForm-Small-Business-1.0.0](https://github.com/structuredmerge/structuredmerge-ruby/blob/main/PolyForm-Small-Business-1.0.0.md).
154
+ See [LICENSE.md][📄license] for details.
155
+
156
+ If none of the available licenses suit your use case, please [contact us](mailto:floss@galtzo.com) to discuss a custom commercial license.
157
+
158
+ [⛳liberapay-img]: https://img.shields.io/liberapay/goal/pboling.svg?logo=liberapay&color=a51611&style=flat
159
+ [⛳liberapay-bottom-img]: https://img.shields.io/liberapay/goal/pboling.svg?style=for-the-badge&logo=liberapay&color=a51611
160
+ [⛳liberapay]: https://liberapay.com/pboling/donate
161
+ [🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
162
+ [🖇sponsor-bottom-img]: https://img.shields.io/badge/Sponsor_Me!-pboling-blue?style=for-the-badge&logo=github
163
+ [🖇sponsor]: https://github.com/sponsors/pboling
164
+ [🖇kofi-img]: https://img.shields.io/badge/ko--fi-%E2%9C%93-a51611.svg?style=flat
165
+ [🖇kofi]: https://ko-fi.com/pboling
166
+ [🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee-%E2%9C%93-a51611.svg?style=flat
167
+ [🖇buyme-img]: https://img.buymeacoffee.com/button-api/?text=Buy%20me%20a%20latte&emoji=&slug=pboling&button_colour=FFDD00&font_colour=000000&font_family=Cookie&outline_colour=000000&coffee_colour=ffffff
168
+ [🖇buyme]: https://www.buymeacoffee.com/pboling
169
+ [🖇paypal-img]: https://img.shields.io/badge/donate-paypal-a51611.svg?style=flat&logo=paypal
170
+ [🖇paypal-bottom-img]: https://img.shields.io/badge/donate-paypal-a51611.svg?style=for-the-badge&logo=paypal&color=0A0A0A
171
+ [🖇paypal]: https://www.paypal.com/paypalme/peterboling
172
+ [🖇floss-funding.dev]: https://floss-funding.dev
173
+ [🖇floss-funding-gem]: https://github.com/galtzo-floss/floss_funding
174
+ [✉️discord-invite]: https://discord.gg/3qme4XHNKN
175
+ [✉️discord-invite-img-ftb]: https://img.shields.io/discord/1373797679469170758?style=for-the-badge&logo=discord
176
+ [✉️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
177
+ [✉️ruby-friends]: https://app.daily.dev/squads/rubyfriends
178
+ [✉️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
179
+ [✉️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
180
+ [✉️ruby-forum]: https://www.rubyforum.org/tag/smorg-rb
181
+ [✇bundle-group-pattern]: https://gist.github.com/pboling/4564780
182
+ [⛳️gem-namespace]: https://github.com/structuredmerge/structuredmerge-ruby/tree/main/gems/smorg-rb
183
+ [⛳️namespace-img]: https://img.shields.io/badge/namespace-Smorg::RB-3C2D2D.svg?style=square&logo=ruby&logoColor=white
184
+ [⛳️gem-name]: https://clickgems.clickhouse.com/dashboard/smorg-rb
185
+ [⛳️name-img]: https://img.shields.io/badge/name-smorg--rb-3C2D2D.svg?style=square&logo=rubygems&logoColor=red
186
+ [⛳️tag-img]: https://img.shields.io/github/tag/structuredmerge/structuredmerge-ruby.svg
187
+ [⛳️tag]: https://github.com/structuredmerge/structuredmerge-ruby/releases
188
+ [🚂maint-blog]: http://www.railsbling.com/tags/smorg-rb
189
+ [🚂maint-blog-img]: https://img.shields.io/badge/blog-railsbling-0093D0.svg?style=for-the-badge&logo=rubyonrails&logoColor=orange
190
+ [🚂maint-contact]: http://www.railsbling.com/contact
191
+ [🚂maint-contact-img]: https://img.shields.io/badge/Contact-Maintainer-0093D0.svg?style=flat&logo=rubyonrails&logoColor=red
192
+ [💖🖇linkedin]: http://www.linkedin.com/in/peterboling
193
+ [💖🖇linkedin-img]: https://img.shields.io/badge/LinkedIn-Profile-0B66C2?style=flat&logo=newjapanprowrestling
194
+ [💖✌️wellfound]: https://wellfound.com/u/peter-boling
195
+ [💖✌️wellfound-img]: https://img.shields.io/badge/peter--boling-orange?style=flat&logo=wellfound
196
+ [💖💲crunchbase]: https://www.crunchbase.com/person/peter-boling
197
+ [💖💲crunchbase-img]: https://img.shields.io/badge/peter--boling-purple?style=flat&logo=crunchbase
198
+ [💖🐘ruby-mast]: https://ruby.social/@galtzo
199
+ [💖🐘ruby-mast-img]: https://img.shields.io/mastodon/follow/109447111526622197?domain=https://ruby.social&style=flat&logo=mastodon&label=Ruby%20@galtzo
200
+ [💖🦋bluesky]: https://bsky.app/profile/galtzo.com
201
+ [💖🦋bluesky-img]: https://img.shields.io/badge/@galtzo.com-0285FF?style=flat&logo=bluesky&logoColor=white
202
+ [💖🌳linktree]: https://linktr.ee/galtzo
203
+ [💖🌳linktree-img]: https://img.shields.io/badge/galtzo-purple?style=flat&logo=linktree
204
+ [💖💁🏼‍♂️devto]: https://dev.to/galtzo
205
+ [💖💁🏼‍♂️devto-img]: https://img.shields.io/badge/dev.to-0A0A0A?style=flat&logo=devdotto&logoColor=white
206
+ [💖💁🏼‍♂️aboutme]: https://about.me/peter.boling
207
+ [💖💁🏼‍♂️aboutme-img]: https://img.shields.io/badge/about.me-0A0A0A?style=flat&logo=aboutme&logoColor=white
208
+ [💖🧊berg]: https://codeberg.org/pboling
209
+ [💖🐙hub]: https://github.org/pboling
210
+ [💖🛖hut]: https://sr.ht/~galtzo/
211
+ [💖🧪lab]: https://gitlab.com/pboling
212
+ [👨🏼‍🏫expsup-upwork]: https://www.upwork.com/freelancers/~014942e9b056abdf86?mp_source=share
213
+ [👨🏼‍🏫expsup-upwork-img]: https://img.shields.io/badge/UpWork-13544E?style=for-the-badge&logo=Upwork&logoColor=white
214
+ [👨🏼‍🏫expsup-codementor]: https://www.codementor.io/peterboling?utm_source=github&utm_medium=button&utm_term=peterboling&utm_campaign=github
215
+ [👨🏼‍🏫expsup-codementor-img]: https://img.shields.io/badge/CodeMentor-Get_Help-1abc9c?style=for-the-badge&logo=CodeMentor&logoColor=white
216
+ [🏙️entsup-tidelift]: https://tidelift.com/subscription/pkg/rubygems-smorg-rb?utm_source=rubygems-smorg-rb&utm_medium=referral&utm_campaign=readme
217
+ [🏙️entsup-tidelift-img]: https://img.shields.io/badge/Tidelift_and_Sonar-Enterprise_Support-FD3456?style=for-the-badge&logo=sonar&logoColor=white
218
+ [🏙️entsup-tidelift-sonar]: https://blog.tidelift.com/tidelift-joins-sonar
219
+ [💁🏼‍♂️peterboling]: http://www.peterboling.com
220
+ [🚂railsbling]: http://www.railsbling.com
221
+ [📜src-gl-img]: https://img.shields.io/badge/GitLab-FBA326?style=for-the-badge&logo=Gitlab&logoColor=orange
222
+ [📜src-gl]: https://gitlab.com/structuredmerge/structuredmerge-ruby/-/tree/main/gems/smorg-rb
223
+ [📜src-cb-img]: https://img.shields.io/badge/CodeBerg-4893CC?style=for-the-badge&logo=CodeBerg&logoColor=blue
224
+ [📜src-cb]: https://codeberg.org/structuredmerge/structuredmerge-ruby/src/branch/main/gems/smorg-rb
225
+ [📜src-gh-img]: https://img.shields.io/badge/GitHub-238636?style=for-the-badge&logo=GitHub&logoColor=green
226
+ [📜src-gh]: https://github.com/structuredmerge/structuredmerge-ruby/tree/main/gems/smorg-rb
227
+ [📜docs-cr-rd-img]: https://img.shields.io/badge/RubyDoc-Current_Release-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
228
+ [📜docs-head-rd-img]: https://img.shields.io/badge/YARD_on_Galtzo.com-HEAD-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
229
+ [📜gl-wiki]: https://gitlab.com/structuredmerge/structuredmerge-ruby/-/wikis/home
230
+ [📜gh-wiki]: https://github.com/structuredmerge/structuredmerge-ruby/wiki
231
+ [📜gl-wiki-img]: https://img.shields.io/badge/wiki-gitlab-943CD2.svg?style=for-the-badge&logo=gitlab&logoColor=white
232
+ [📜gh-wiki-img]: https://img.shields.io/badge/wiki-github-943CD2.svg?style=for-the-badge&logo=github&logoColor=white
233
+ [👽dl-rank]: https://clickgems.clickhouse.com/dashboard/smorg-rb
234
+ [👽dl-ranki]: https://img.shields.io/gem/dt/smorg-rb.svg
235
+ [👽version]: https://clickgems.clickhouse.com/dashboard/smorg-rb
236
+ [👽versioni]: https://img.shields.io/gem/v/smorg-rb.svg
237
+ [🚎11-c-wf]: https://github.com/structuredmerge/structuredmerge-ruby/actions/workflows/current.yml
238
+ [🚎11-c-wfi]: https://github.com/structuredmerge/structuredmerge-ruby/actions/workflows/current.yml/badge.svg
239
+ [💎ruby-c-i]: https://img.shields.io/badge/Ruby-current-CC342D?style=for-the-badge&logo=ruby&logoColor=green
240
+ [🤝gh-issues]: https://github.com/structuredmerge/structuredmerge-ruby/issues
241
+ [🤝gh-pulls]: https://github.com/structuredmerge/structuredmerge-ruby/pulls
242
+ [🤝gl-issues]: https://gitlab.com/structuredmerge/structuredmerge-ruby/-/issues
243
+ [🤝gl-pulls]: https://gitlab.com/structuredmerge/structuredmerge-ruby/-/merge_requests
244
+ [🤝cb-issues]: https://codeberg.org/structuredmerge/structuredmerge-ruby/issues
245
+ [🤝cb-pulls]: https://codeberg.org/structuredmerge/structuredmerge-ruby/pulls
246
+ [🤝cb-donate]: https://donate.codeberg.org/
247
+ [🤝contributing]: https://github.com/structuredmerge/structuredmerge-ruby/blob/main/CONTRIBUTING.md
248
+ [🖐contrib-rocks]: https://contrib.rocks
249
+ [🖐contributors]: https://github.com/structuredmerge/structuredmerge-ruby/graphs/contributors
250
+ [🖐contributors-img]: https://contrib.rocks/image?repo=structuredmerge/structuredmerge-ruby
251
+ [🪇conduct]: https://github.com/structuredmerge/structuredmerge-ruby/blob/main/CODE_OF_CONDUCT.md
252
+ [🪇conduct-img]: https://img.shields.io/badge/Contributor_Covenant-2.1-259D6C.svg
253
+ [📌pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
254
+ [📌semver]: https://semver.org/spec/v2.0.0.html
255
+ [📌semver-img]: https://img.shields.io/badge/semver-2.0.0-259D6C.svg?style=flat
256
+ [📌semver-breaking]: https://github.com/semver/semver/issues/716#issuecomment-869336139
257
+ [📌major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
258
+ [📌changelog]: https://github.com/structuredmerge/structuredmerge-ruby/blob/main/CHANGELOG.md
259
+ [📗keep-changelog]: https://keepachangelog.com/en/1.0.0/
260
+ [📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-34495e.svg?style=flat
261
+ [📌gitmoji]: https://gitmoji.dev
262
+ [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
263
+ [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
264
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.494-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
265
+ [🔐security]: https://github.com/structuredmerge/structuredmerge-ruby/blob/main/SECURITY.md
266
+ [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
267
+ [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
268
+ [📄license]: LICENSE.md
269
+ [📄license-ref]: LICENSE.md
270
+ [📄license-img]: https://img.shields.io/badge/License-AGPL--3.0--only_OR_PolyForm--Small--Business--1.0.0-259D6C.svg
271
+ [📄license-compat]: https://www.apache.org/legal/resolved.html#category-x
272
+ [📄license-compat-img]: https://img.shields.io/badge/Apache_Incompatible:_Category_X-%E2%9C%97-C0392B.svg?style=flat&logo=Apache
273
+ [📄ilo-declaration]: https://www.ilo.org/declaration/lang--en/index.htm
274
+ [📄ilo-declaration-img]: https://img.shields.io/badge/ILO_Fundamental_Principles-✓-259D6C.svg?style=flat
275
+ [🚎yard-current]: http://rubydoc.info/gems/smorg-rb
276
+ [🚎yard-head]: https://smorg-rb.galtzo.com
277
+ [💎stone_checksums]: https://github.com/galtzo-floss/stone_checksums
278
+ [💎SHA_checksums]: https://gitlab.com/structuredmerge/structuredmerge-ruby/-/tree/main/checksums
279
+ [💎rlts]: https://github.com/rubocop-lts/rubocop-lts
280
+ [💎rlts-img]: https://img.shields.io/badge/code_style_&_linting-rubocop--lts-34495e.svg?plastic&logo=ruby&logoColor=white
281
+ [💎appraisal2]: https://github.com/appraisal-rb/appraisal2
282
+ [💎appraisal2-img]: https://img.shields.io/badge/appraised_by-appraisal2-34495e.svg?plastic&logo=ruby&logoColor=white
283
+ [💎d-in-dvcs]: https://railsbling.com/posts/dvcs/put_the_d_in_dvcs/
data/exe/smorg-rb ADDED
@@ -0,0 +1,15 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ script_basename = File.basename(__FILE__)
5
+ require_relative '../lib/smorg/rb/version'
6
+ if ARGV.any? { |arg| ['-v', '--version'].include?(arg) }
7
+ puts Smorg::RB::Version::VERSION
8
+ exit(0)
9
+ end
10
+
11
+ require 'smorg-rb'
12
+
13
+ puts "== #{script_basename} v#{Smorg::RB::Version::VERSION} ==" if ARGV.delete('--verbose')
14
+
15
+ exit(Smorg::RB.run(ARGV))
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Smorg
4
+ module RB
5
+ # Version namespace for this gem.
6
+ module Version
7
+ # Current gem version.
8
+ VERSION = '7.1.1'
9
+ end
10
+ # Current gem version exposed at the traditional constant location.
11
+ VERSION = Version::VERSION # Traditional Constant Location
12
+ end
13
+ end