bash-merge 1.0.2 → 2.0.0

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: bf2cbd8a4823b24975b63a2366d700f7cbc61a72584bf08d4c90e998713df3bf
4
- data.tar.gz: 172b697453ad5c0b647914036906f3068b49a4d18475c183471f2dd649081f21
3
+ metadata.gz: fe623f331b7f75cf956604e4fbe0f8c8cf60955bc82ba6a8546a9b7a75a5e9fd
4
+ data.tar.gz: c392e8e939cf15870303f445e4e37c3036b663469c24a037a984b7c1dc5ee9ab
5
5
  SHA512:
6
- metadata.gz: 4bd8c9ff57b18df22ca30d2a7fd55868fbf101d1159f76b987bb39b92c592e044ab96856bbaf73dea137af9da4089f4eae9a43fd240694488e45f20608a79dfc
7
- data.tar.gz: 87b6db769a1a8680a77380f6e1b0d0b6f842430687b314fbd5fa36c4097c87e984b7b974d2aea0d85fd2e2f9c10292d034a997257e601cbe92e1f65406f8aa20
6
+ metadata.gz: f5e2f494e97dfb16d578380f06a75add04aedee4f2cc2934f59889334aef3065ce5be95568feb7a01ad29b9471874f6ac1a76e7c372b6dc29e09a2fcbef7b45a
7
+ data.tar.gz: 6092c5a5c70bcf81682dbabec13fd5f1d601b994c41606b6d6d78877dc9d4cd8ac82000e4ac09e283047b0c8834aba6b8a7c8845264da80df8917741933d3510
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,17 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [2.0.0] - 2026-01-06
34
+
35
+ - TAG: [v2.0.0][2.0.0t]
36
+ - COVERAGE: 100.00% -- 109/109 lines in 2 files
37
+ - BRANCH COVERAGE: 100.00% -- 28/28 branches in 2 files
38
+ - 96.46% documented
39
+
40
+ ### Changed
41
+
42
+ - ast-merge v3.0.0 compatibility (breaking changes)
43
+
33
44
  ## [1.0.2] - 2026-01-02
34
45
 
35
46
  - TAG: [v1.0.2][1.0.2t]
@@ -74,7 +85,9 @@ Please file a bug if you notice a violation of semantic versioning.
74
85
 
75
86
  ### Security
76
87
 
77
- [Unreleased]: https://github.com/kettle-rb/bash-merge/compare/v1.0.2...HEAD
88
+ [Unreleased]: https://github.com/kettle-rb/bash-merge/compare/v2.0.0...HEAD
89
+ [2.0.0]: https://github.com/kettle-rb/bash-merge/compare/v1.0.2...v2.0.0
90
+ [2.0.0t]: https://github.com/kettle-rb/bash-merge/releases/tag/v2.0.0
78
91
  [1.0.2]: https://github.com/kettle-rb/bash-merge/compare/v1.0.1...v1.0.2
79
92
  [1.0.2t]: https://github.com/kettle-rb/bash-merge/releases/tag/v1.0.2
80
93
  [1.0.1]: https://github.com/kettle-rb/bash-merge/compare/v1.0.0...v1.0.1
data/README.md CHANGED
@@ -98,26 +98,25 @@ result = merger.merge
98
98
  File.write("merged.sh", result.to_bash)
99
99
  ```
100
100
 
101
-
102
101
  ### The `*-merge` Gem Family
103
102
 
104
103
  The `*-merge` gem family provides intelligent, AST-based merging for various file formats. At the foundation is [tree_haver][tree_haver], which provides a unified cross-Ruby parsing API that works seamlessly across MRI, JRuby, and TruffleRuby.
105
104
 
106
- | Gem | Format | Parser Backend(s) | Description |
107
- |------------------------------------------|----------|-----------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------|
108
- | [tree_haver][tree_haver] | Multi | MRI C, Rust, FFI, Java, Prism, Psych, Commonmarker, Markly, Citrus | **Foundation**: Cross-Ruby adapter for parsing libraries (like Faraday for HTTP) |
109
- | [ast-merge][ast-merge] | Text | internal | **Infrastructure**: Shared base classes and merge logic for all `*-merge` gems |
110
- | [prism-merge][prism-merge] | Ruby | [Prism][prism] | Smart merge for Ruby source files |
111
- | [psych-merge][psych-merge] | YAML | [Psych][psych] | Smart merge for YAML files |
112
- | [json-merge][json-merge] | JSON | [tree-sitter-json][ts-json] (via tree_haver) | Smart merge for JSON files |
113
- | [jsonc-merge][jsonc-merge] | JSONC | [tree-sitter-jsonc][ts-jsonc] (via tree_haver) | ⚠️ Proof of concept; Smart merge for JSON with Comments |
114
- | [bash-merge][bash-merge] | Bash | [tree-sitter-bash][ts-bash] (via tree_haver) | Smart merge for Bash scripts |
115
- | [rbs-merge][rbs-merge] | RBS | [RBS][rbs] | Smart merge for Ruby type signatures |
116
- | [dotenv-merge][dotenv-merge] | Dotenv | internal | Smart merge for `.env` files |
117
- | [toml-merge][toml-merge] | TOML | [Citrus + toml-rb][toml-rb] (default, via tree_haver), [tree-sitter-toml][ts-toml] (via tree_haver) | Smart merge for TOML files |
118
- | [markdown-merge][markdown-merge] | Markdown | [Commonmarker][commonmarker] / [Markly][markly] (via tree_haver) | **Foundation**: Shared base for Markdown mergers with inner code block merging |
119
- | [markly-merge][markly-merge] | Markdown | [Markly][markly] (via tree_haver) | Smart merge for Markdown (CommonMark via cmark-gfm C) |
120
- | [commonmarker-merge][commonmarker-merge] | Markdown | [Commonmarker][commonmarker] (via tree_haver) | Smart merge for Markdown (CommonMark via comrak Rust) |
105
+ | Gem | Language<br>/ Format | Parser Backend(s) | Description |
106
+ |------------------------------------------|----------------------|-----------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------|
107
+ | [tree_haver][tree_haver] | Multi | MRI C, Rust, FFI, Java, Prism, Psych, Commonmarker, Markly, Citrus | **Foundation**: Cross-Ruby adapter for parsing libraries (like Faraday for HTTP) |
108
+ | [ast-merge][ast-merge] | Text | internal | **Infrastructure**: Shared base classes and merge logic for all `*-merge` gems |
109
+ | [bash-merge][bash-merge] | Bash | [tree-sitter-bash][ts-bash] (via tree_haver) | Smart merge for Bash scripts |
110
+ | [commonmarker-merge][commonmarker-merge] | Markdown | [Commonmarker][commonmarker] (via tree_haver) | Smart merge for Markdown (CommonMark via comrak Rust) |
111
+ | [dotenv-merge][dotenv-merge] | Dotenv | internal | Smart merge for `.env` files |
112
+ | [json-merge][json-merge] | JSON | [tree-sitter-json][ts-json] (via tree_haver) | Smart merge for JSON files |
113
+ | [jsonc-merge][jsonc-merge] | JSONC | [tree-sitter-jsonc][ts-jsonc] (via tree_haver) | ⚠️ Proof of concept; Smart merge for JSON with Comments |
114
+ | [markdown-merge][markdown-merge] | Markdown | [Commonmarker][commonmarker] / [Markly][markly] (via tree_haver) | **Foundation**: Shared base for Markdown mergers with inner code block merging |
115
+ | [markly-merge][markly-merge] | Markdown | [Markly][markly] (via tree_haver) | Smart merge for Markdown (CommonMark via cmark-gfm C) |
116
+ | [prism-merge][prism-merge] | Ruby | [Prism][prism] (`prism` std lib gem) | Smart merge for Ruby source files |
117
+ | [psych-merge][psych-merge] | YAML | [Psych][psych] (`psych` std lib gem) | Smart merge for YAML files |
118
+ | [rbs-merge][rbs-merge] | RBS | [tree-sitter-bash][ts-rbs] (via tree_haver), [RBS][rbs] (`rbs` std lib gem) | Smart merge for Ruby type signatures |
119
+ | [toml-merge][toml-merge] | TOML | [Citrus + toml-rb][toml-rb] (default, via tree_haver), [tree-sitter-toml][ts-toml] (via tree_haver) | Smart merge for TOML files |
121
120
 
122
121
  **Example implementations** for the gem templating use case:
123
122
 
@@ -206,12 +205,16 @@ The maintainers of this and thousands of other packages are working with Tidelif
206
205
  [![Get help from me on Tidelift](https://img.shields.io/badge/Tidelift_and_Sonar-Enterprise_Support-FD3456?style=for-the-badge&logo=sonar&logoColor=white)](https://tidelift.com/subscription/pkg/rubygems-bash-merge?utm_source=rubygems-bash-merge&utm_medium=referral&utm_campaign=readme)
207
206
 
208
207
  - 💡Subscribe for support guarantees covering *all* your FLOSS dependencies
208
+
209
209
  - 💡Tidelift is part of [Sonar](https://blog.tidelift.com/tidelift-joins-sonar)
210
+
210
211
  - 💡Tidelift pays maintainers to maintain the software you depend on\!<br/>📊`@`Pointy Haired Boss: An [enterprise support](https://tidelift.com/subscription/pkg/rubygems-bash-merge?utm_source=rubygems-bash-merge&utm_medium=referral&utm_campaign=readme) subscription is "[never gonna let you down](https://www.youtube.com/watch?v=dQw4w9WgXcQ)", and *supports* open source maintainers
211
- Alternatively:
212
+ Alternatively:
212
213
 
213
214
  - [![Live Chat on Discord](https://img.shields.io/discord/1373797679469170758?style=for-the-badge&logo=discord)](https://discord.gg/3qme4XHNKN)
215
+
214
216
  - [![Get help from me on Upwork](https://img.shields.io/badge/UpWork-13544E?style=for-the-badge&logo=Upwork&logoColor=white)](https://www.upwork.com/freelancers/~014942e9b056abdf86?mp_source=share)
217
+
215
218
  - [![Get help from me on Codementor](https://img.shields.io/badge/CodeMentor-Get_Help-1abc9c?style=for-the-badge&logo=CodeMentor&logoColor=white)](https://www.codementor.io/peterboling?utm_source=github&utm_medium=button&utm_term=peterboling&utm_campaign=github)
216
219
  </details>
217
220
 
@@ -357,8 +360,7 @@ export TREE_SITTER_BASH_PATH="/path/to/libtree-sitter-bash.so"
357
360
  If the gem can't find the parser, check for versioned files and either:
358
361
  - Set `TREE_SITTER_BASH_PATH` to the full versioned path, or
359
362
  - Create a symlink: `sudo ln -s /usr/lib64/libtree-sitter-bash.so.14 /usr/lib64/libtree-sitter-bash.so`
360
- Add this to your shell profile (`.bashrc`, `.zshrc`, etc.) for persistence.
361
-
363
+ Add this to your shell profile (`.bashrc`, `.zshrc`, etc.) for persistence.
362
364
  ### 💎 Ruby Interface Gems
363
365
 
364
366
  In addition to the tree-sitter parser library, you need a Ruby gem that provides
@@ -560,7 +562,7 @@ Support us with a monthly donation and help us continue our activities. \[[Becom
560
562
  NOTE: [kettle-readme-backers](https://github.com/kettle-rb/bash-merge/blob/main/exe/kettle-readme-backers) updates this list every day, automatically.
561
563
 
562
564
  <!-- OPENCOLLECTIVE-INDIVIDUALS:START -->
563
- No backers yet. Be the first\!
565
+ No backers yet. Be the first!
564
566
  <!-- OPENCOLLECTIVE-INDIVIDUALS:END -->
565
567
 
566
568
  ### Open Collective for Organizations
@@ -570,7 +572,7 @@ Become a sponsor and get your logo on our README on GitHub with a link to your s
570
572
  NOTE: [kettle-readme-backers](https://github.com/kettle-rb/bash-merge/blob/main/exe/kettle-readme-backers) updates this list every day, automatically.
571
573
 
572
574
  <!-- OPENCOLLECTIVE-ORGANIZATIONS:START -->
573
- No sponsors yet. Be the first\!
575
+ No sponsors yet. Be the first!
574
576
  <!-- OPENCOLLECTIVE-ORGANIZATIONS:END -->
575
577
 
576
578
  [kettle-readme-backers]: https://github.com/kettle-rb/bash-merge/blob/main/exe/kettle-readme-backers
@@ -5,7 +5,7 @@ module Bash
5
5
  # Version information for Bash::Merge
6
6
  module Version
7
7
  # Current version of the bash-merge gem
8
- VERSION = "1.0.2"
8
+ VERSION = "2.0.0"
9
9
  end
10
10
  VERSION = Version::VERSION # traditional location
11
11
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bash-merge
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -63,20 +63,20 @@ dependencies:
63
63
  requirements:
64
64
  - - "~>"
65
65
  - !ruby/object:Gem::Version
66
- version: '2.0'
66
+ version: '3.0'
67
67
  - - ">="
68
68
  - !ruby/object:Gem::Version
69
- version: 2.0.9
69
+ version: 3.0.0
70
70
  type: :runtime
71
71
  prerelease: false
72
72
  version_requirements: !ruby/object:Gem::Requirement
73
73
  requirements:
74
74
  - - "~>"
75
75
  - !ruby/object:Gem::Version
76
- version: '2.0'
76
+ version: '3.0'
77
77
  - - ">="
78
78
  - !ruby/object:Gem::Version
79
- version: 2.0.9
79
+ version: 3.0.0
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: version_gem
82
82
  requirement: !ruby/object:Gem::Requirement
@@ -315,10 +315,10 @@ licenses:
315
315
  - MIT
316
316
  metadata:
317
317
  homepage_uri: https://bash-merge.galtzo.com/
318
- source_code_uri: https://github.com/kettle-rb/bash-merge/tree/v1.0.2
319
- changelog_uri: https://github.com/kettle-rb/bash-merge/blob/v1.0.2/CHANGELOG.md
318
+ source_code_uri: https://github.com/kettle-rb/bash-merge/tree/v2.0.0
319
+ changelog_uri: https://github.com/kettle-rb/bash-merge/blob/v2.0.0/CHANGELOG.md
320
320
  bug_tracker_uri: https://github.com/kettle-rb/bash-merge/issues
321
- documentation_uri: https://www.rubydoc.info/gems/bash-merge/1.0.2
321
+ documentation_uri: https://www.rubydoc.info/gems/bash-merge/2.0.0
322
322
  funding_uri: https://github.com/sponsors/pboling
323
323
  wiki_uri: https://github.com/kettle-rb/bash-merge/wiki
324
324
  news_uri: https://www.railsbling.com/tags/bash-merge
metadata.gz.sig CHANGED
Binary file