bash-merge 2.0.4 → 2.0.6

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: 537268a1e7226b74f86d72b94a17fd1a5da6c5a995fd6f6d6623949c9436f048
4
- data.tar.gz: 0d5d29f36d35e1c4b56597f97f563d8da1345e380d23a9a2a5be350342c1f5b1
3
+ metadata.gz: 6c986cd0c94a1ce089bbd91e4dfaf8231fce4f1c7be371d2360fe9d554629c66
4
+ data.tar.gz: a015c172a3927379ccdc99306aeead042f79f33b7b75f4d6634039fa43383419
5
5
  SHA512:
6
- metadata.gz: 5557dbf95b0dfacbd1fbeb899ea20b7b03eda1453ffd5e16912667e5b033c020291772bfff5d25cceea8bd8733e6b3aed3244d495465c3266d6cce55d1cf86e3
7
- data.tar.gz: 0acf658b9e0f0b9754866564fb99133511d6a96fc008bc5e9949a43fe3274baa0b5492af1c7c5df8f70dca4dbbb3166c940552caaf005c9c12870a375a72bd41
6
+ metadata.gz: b4d132dc07bfc018c0d4624d4db9d054959fff75c886fd63b2c8e7864586c19f865f9f0c13230dbcf0d7709ef8819afde7f821650a1724a13a173c1e3f37d6a9
7
+ data.tar.gz: 8000de3038c098bcfafc24db674313fef4e1c3e2e51ad55e6b696f0135482d740afc0e722e017d259b52166724d675eb680b74f4530eae3423040826993c441b
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,45 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [2.0.6] - 2026-02-19
34
+
35
+ - TAG: [v2.0.6][2.0.6t]
36
+ - COVERAGE: 96.10% -- 518/539 lines in 11 files
37
+ - BRANCH COVERAGE: 74.72% -- 133/178 branches in 11 files
38
+ - 96.33% documented
39
+
40
+ ### Added
41
+
42
+ - AGENTS.md
43
+
44
+ ### Changed
45
+
46
+ - appraisal2 v3.0.6
47
+ - kettle-test v1.0.10
48
+ - stone_checksums v1.0.3
49
+ - ast-merge v4.0.6
50
+ - tree_haver v5.0.5
51
+ - tree_stump v0.2.0
52
+ - fork no longer required, updates all applied upstream
53
+ - Updated documentation on hostile takeover of RubyGems
54
+ - https://dev.to/galtzo/hostile-takeover-of-rubygems-my-thoughts-5hlo
55
+
56
+ ## [2.0.5] - 2026-02-01
57
+
58
+ - TAG: [v2.0.5][2.0.5t]
59
+ - COVERAGE: 96.10% -- 518/539 lines in 11 files
60
+ - BRANCH COVERAGE: 74.72% -- 133/178 branches in 11 files
61
+ - 96.33% documented
62
+
63
+ ### Added
64
+
65
+ - ConflictResolver now applies per-node-type preferences via `node_typing`.
66
+
67
+ ### Changed
68
+
69
+ - Upgrade to [ast-merge v4.0.5](https://github.com/kettle-rb/ast-merge/releases/tag/v4.0.5)
70
+ - Upgrade to [tree_haver v5.0.3](https://github.com/kettle-rb/tree_haver/releases/tag/v5.0.3)
71
+
33
72
  ## [2.0.4] - 2026-01-20
34
73
 
35
74
  - TAG: [v2.0.4][2.0.4t]
@@ -149,7 +188,11 @@ Please file a bug if you notice a violation of semantic versioning.
149
188
 
150
189
  ### Security
151
190
 
152
- [Unreleased]: https://github.com/kettle-rb/bash-merge/compare/v2.0.4...HEAD
191
+ [Unreleased]: https://github.com/kettle-rb/bash-merge/compare/v2.0.6...HEAD
192
+ [2.0.6]: https://github.com/kettle-rb/bash-merge/compare/v2.0.5...v2.0.6
193
+ [2.0.6t]: https://github.com/kettle-rb/bash-merge/releases/tag/v2.0.6
194
+ [2.0.5]: https://github.com/kettle-rb/bash-merge/compare/v2.0.4...v2.0.5
195
+ [2.0.5t]: https://github.com/kettle-rb/bash-merge/releases/tag/v2.0.5
153
196
  [2.0.4]: https://github.com/kettle-rb/bash-merge/compare/v2.0.3...v2.0.4
154
197
  [2.0.4t]: https://github.com/kettle-rb/bash-merge/releases/tag/v2.0.4
155
198
  [2.0.3]: https://github.com/kettle-rb/bash-merge/compare/v2.0.2...v2.0.3
data/README.md CHANGED
@@ -1,36 +1,3 @@
1
- | 📍 NOTE |
2
- | --- |
3
- | RubyGems (the [GitHub org][rubygems-org], not the website) [suffered][draper-security] a [hostile takeover][ellen-takeover] in September 2025. |
4
- | Ultimately [4 maintainers][simi-removed] were [hard removed][martin-removed] and a reason has been given for only 1 of those, while 2 others resigned in protest. |
5
- | It is a [complicated story][draper-takeover] which is difficult to [parse quickly][draper-lies]. |
6
- | Simply put - there was active policy for adding or removing maintainers/owners of [rubygems][rubygems-maint-policy] and [bundler][bundler-maint-policy], and those [policies were not followed][policy-fail]. |
7
- | I'm adding notes like this to gems because I [don't condone theft][draper-theft] of repositories or gems from their rightful owners. |
8
- | If a similar theft happened with my repos/gems, I'd hope some would stand up for me. |
9
- | Disenfranchised former-maintainers have started [gem.coop][gem-coop]. |
10
- | Once available I will publish there exclusively; unless RubyCentral makes amends with the community. |
11
- | The ["Technology for Humans: Joel Draper"][reinteractive-podcast] podcast episode by [reinteractive][reinteractive] is the most cogent summary I'm aware of. |
12
- | See [here][gem-naming], [here][gem-coop] and [here][martin-ann] for more info on what comes next. |
13
- | What I'm doing: A (WIP) proposal for [bundler/gem scopes][gem-scopes], and a (WIP) proposal for a federated [gem server][gem-server]. |
14
-
15
- [rubygems-org]: https://github.com/rubygems/
16
- [draper-security]: https://joel.drapper.me/p/ruby-central-security-measures/
17
- [draper-takeover]: https://joel.drapper.me/p/ruby-central-takeover/
18
- [ellen-takeover]: https://pup-e.com/blog/goodbye-rubygems/
19
- [simi-removed]: https://www.reddit.com/r/ruby/s/gOk42POCaV
20
- [martin-removed]: https://bsky.app/profile/martinemde.com/post/3m3occezxxs2q
21
- [draper-lies]: https://joel.drapper.me/p/ruby-central-fact-check/
22
- [draper-theft]: https://joel.drapper.me/p/ruby-central/
23
- [reinteractive]: https://reinteractive.com/ruby-on-rails
24
- [gem-coop]: https://gem.coop
25
- [gem-naming]: https://github.com/gem-coop/gem.coop/issues/12
26
- [martin-ann]: https://martinemde.com/2025/10/05/announcing-gem-coop.html
27
- [gem-scopes]: https://github.com/galtzo-floss/bundle-namespace
28
- [gem-server]: https://github.com/galtzo-floss/gem-server
29
- [reinteractive-podcast]: https://youtu.be/_H4qbtC5qzU?si=BvuBU90R2wAqD2E6
30
- [bundler-maint-policy]: https://github.com/ruby/rubygems/blob/b1ab33a3d52310a84d16b193991af07f5a6a07c0/doc/bundler/playbooks/TEAM_CHANGES.md
31
- [rubygems-maint-policy]: https://github.com/ruby/rubygems/blob/b1ab33a3d52310a84d16b193991af07f5a6a07c0/doc/rubygems/POLICIES.md?plain=1#L187-L196
32
- [policy-fail]: https://www.reddit.com/r/ruby/comments/1ove9vp/rubycentral_hates_this_one_fact/
33
-
34
1
  [![Galtzo FLOSS Logo by Aboling0, CC BY-SA 4.0][🖼️galtzo-i]][🖼️galtzo-discord] [![ruby-lang Logo, Yukihiro Matsumoto, Ruby Visual Identity Team, CC BY-SA 2.5][🖼️ruby-lang-i]][🖼️ruby-lang] [![kettle-rb Logo by Aboling0, CC BY-SA 4.0][🖼️kettle-rb-i]][🖼️kettle-rb]
35
2
 
36
3
  [🖼️galtzo-i]: https://logos.galtzo.com/assets/images/galtzo-floss/avatar-192px.svg
@@ -52,6 +19,13 @@
52
19
 
53
20
  [![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![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 on Polar][🖇polar-img]][🖇polar] [![Donate at ko-fi.com][🖇kofi-img]][🖇kofi]
54
21
 
22
+ <details>
23
+ <summary>👣 How will this project approach the September 2025 hostile takeover of RubyGems? 🚑️</summary>
24
+
25
+ I've summarized my thoughts in [this blog post](https://dev.to/galtzo/hostile-takeover-of-rubygems-my-thoughts-5hlo).
26
+
27
+ </details>
28
+
55
29
  ## 🌻 Synopsis
56
30
 
57
31
  Bash::Merge is a standalone Ruby module that intelligently merges two versions of a Bash script using tree-sitter AST analysis. It's like a smart "git merge" specifically designed for shell scripts. Built on top of [ast-merge][ast-merge], it shares the same architecture as [prism-merge][prism-merge] for Ruby source files.
@@ -104,21 +78,21 @@ File.write("merged.sh", result.to_bash)
104
78
 
105
79
  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.
106
80
 
107
- | Gem | Version | CI | | Language<br>/ Format | Parser Backend(s) | Description |
108
- |------------------------------------------|----------------------------------------------------------------|--------------------------------------------------------------|----------|-------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------|-------------|
109
- | [tree_haver][tree_haver] | [![Version][tree_haver-gem-i]][tree_haver-gem] | [![Version][tree_haver-ci-i]][tree_haver-ci] | Multi | Supported Backends: MRI C, Rust, FFI, Java, Prism, Psych, Commonmarker, Markly, Citrus, Parslet | **Foundation**: Cross-Ruby adapter for parsing libraries (like Faraday for HTTP) |
110
- | [ast-merge][ast-merge] | [![Version][ast-merge-gem-i]][ast-merge-gem] | [![Version][ast-merge-ci-i]][ast-merge-ci] | Text | internal | **Infrastructure**: Shared base classes and merge logic for all `*-merge` gems |
111
- | [bash-merge][bash-merge] | [![Version][bash-merge-gem-i]][bash-merge-gem] | [![Version][bash-merge-ci-i]][bash-merge-ci] | Bash | [tree-sitter-bash][ts-bash] (via tree_haver) | Smart merge for Bash scripts |
112
- | [commonmarker-merge][commonmarker-merge] | [![Version][commonmarker-merge-gem-i]][commonmarker-merge-gem] | [![Version][commonmarker-merge-ci-i]][commonmarker-merge-ci] | Markdown | [Commonmarker][commonmarker] (via tree_haver) | Smart merge for Markdown (CommonMark via comrak Rust) |
113
- | [dotenv-merge][dotenv-merge] | [![Version][dotenv-merge-gem-i]][dotenv-merge-gem] | [![Version][dotenv-merge-ci-i]][dotenv-merge-ci] | Dotenv | internal | Smart merge for `.env` files |
114
- | [json-merge][json-merge] | [![Version][json-merge-gem-i]][json-merge-gem] | [![Version][json-merge-ci-i]][json-merge-ci] | JSON | [tree-sitter-json][ts-json] (via tree_haver) | Smart merge for JSON files |
115
- | [jsonc-merge][jsonc-merge] | [![Version][jsonc-merge-gem-i]][jsonc-merge-gem] | [![Version][jsonc-merge-ci-i]][jsonc-merge-ci] | JSONC | [tree-sitter-jsonc][ts-jsonc] (via tree_haver) | ⚠️ Proof of concept; Smart merge for JSON with Comments |
116
- | [markdown-merge][markdown-merge] | [![Version][markdown-merge-gem-i]][markdown-merge-gem] | [![Version][markdown-merge-ci-i]][markdown-merge-ci] | Markdown | [Commonmarker][commonmarker] / [Markly][markly] (via tree_haver) | **Foundation**: Shared base for Markdown mergers with inner code block merging |
117
- | [markly-merge][markly-merge] | [![Version][markly-merge-gem-i]][markly-merge-gem] | [![Version][markly-merge-ci-i]][markly-merge-ci] | Markdown | [Markly][markly] (via tree_haver) | Smart merge for Markdown (CommonMark via cmark-gfm C) |
118
- | [prism-merge][prism-merge] | [![Version][prism-merge-gem-i]][prism-merge-gem] | [![Version][prism-merge-ci-i]][prism-merge-ci] | Ruby | [Prism][prism] (`prism` std lib gem) | Smart merge for Ruby source files |
119
- | [psych-merge][psych-merge] | [![Version][psych-merge-gem-i]][psych-merge-gem] | [![Version][psych-merge-ci-i]][psych-merge-ci] | YAML | [Psych][psych] (`psych` std lib gem) | Smart merge for YAML files |
120
- | [rbs-merge][rbs-merge] | [![Version][rbs-merge-gem-i]][rbs-merge-gem] | [![Version][rbs-merge-ci-i]][rbs-merge-ci] | RBS | [tree-sitter-bash][ts-rbs] (via tree_haver), [RBS][rbs] (`rbs` std lib gem) | Smart merge for Ruby type signatures |
121
- | [toml-merge][toml-merge] | [![Version][toml-merge-gem-i]][toml-merge-gem] | [![Version][toml-merge-ci-i]][toml-merge-ci] | TOML | [Parslet + toml][toml], [Citrus + toml-rb][toml-rb], [tree-sitter-toml][ts-toml] (all via tree_haver) | Smart merge for TOML files |
81
+ | Gem | Version / CI | Language<br>/ Format | Parser Backend(s) | Description |
82
+ |------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------:|----------------------|-------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------|
83
+ | [tree_haver][tree_haver] | [![Version][tree_haver-gem-i]][tree_haver-gem] <br/> [![CI][tree_haver-ci-i]][tree_haver-ci] | Multi | Supported Backends: MRI C, Rust, FFI, Java, Prism, Psych, Commonmarker, Markly, Citrus, Parslet | **Foundation**: Cross-Ruby adapter for parsing libraries (like Faraday for HTTP) |
84
+ | [ast-merge][ast-merge] | [![Version][ast-merge-gem-i]][ast-merge-gem] <br/> [![CI][ast-merge-ci-i]][ast-merge-ci] | Text | internal | **Infrastructure**: Shared base classes and merge logic for all `*-merge` gems |
85
+ | [bash-merge][bash-merge] | [![Version][bash-merge-gem-i]][bash-merge-gem] <br/> [![CI][bash-merge-ci-i]][bash-merge-ci] | Bash | [tree-sitter-bash][ts-bash] (via tree_haver) | Smart merge for Bash scripts |
86
+ | [commonmarker-merge][commonmarker-merge] | [![Version][commonmarker-merge-gem-i]][commonmarker-merge-gem] <br/> [![CI][commonmarker-merge-ci-i]][commonmarker-merge-ci] | Markdown | [Commonmarker][commonmarker] (via tree_haver) | Smart merge for Markdown (CommonMark via comrak Rust) |
87
+ | [dotenv-merge][dotenv-merge] | [![Version][dotenv-merge-gem-i]][dotenv-merge-gem] <br/> [![CI][dotenv-merge-ci-i]][dotenv-merge-ci] | Dotenv | internal | Smart merge for `.env` files |
88
+ | [json-merge][json-merge] | [![Version][json-merge-gem-i]][json-merge-gem] <br/> [![CI][json-merge-ci-i]][json-merge-ci] | JSON | [tree-sitter-json][ts-json] (via tree_haver) | Smart merge for JSON files |
89
+ | [jsonc-merge][jsonc-merge] | [![Version][jsonc-merge-gem-i]][jsonc-merge-gem] <br/> [![CI][jsonc-merge-ci-i]][jsonc-merge-ci] | JSONC | [tree-sitter-jsonc][ts-jsonc] (via tree_haver) | ⚠️ Proof of concept; Smart merge for JSON with Comments |
90
+ | [markdown-merge][markdown-merge] | [![Version][markdown-merge-gem-i]][markdown-merge-gem] <br/> [![CI][markdown-merge-ci-i]][markdown-merge-ci] | Markdown | [Commonmarker][commonmarker] / [Markly][markly] (via tree_haver), [Parslet][parslet] | **Foundation**: Shared base for Markdown mergers with inner code block merging |
91
+ | [markly-merge][markly-merge] | [![Version][markly-merge-gem-i]][markly-merge-gem] <br/> [![CI][markly-merge-ci-i]][markly-merge-ci] | Markdown | [Markly][markly] (via tree_haver) | Smart merge for Markdown (CommonMark via cmark-gfm C) |
92
+ | [prism-merge][prism-merge] | [![Version][prism-merge-gem-i]][prism-merge-gem] <br/> [![CI][prism-merge-ci-i]][prism-merge-ci] | Ruby | [Prism][prism] (`prism` std lib gem) | Smart merge for Ruby source files |
93
+ | [psych-merge][psych-merge] | [![Version][psych-merge-gem-i]][psych-merge-gem] <br/> [![CI][psych-merge-ci-i]][psych-merge-ci] | YAML | [Psych][psych] (`psych` std lib gem) | Smart merge for YAML files |
94
+ | [rbs-merge][rbs-merge] | [![Version][rbs-merge-gem-i]][rbs-merge-gem] <br/> [![CI][rbs-merge-ci-i]][rbs-merge-ci] | RBS | [tree-sitter-bash][ts-rbs] (via tree_haver), [RBS][rbs] (`rbs` std lib gem) | Smart merge for Ruby type signatures |
95
+ | [toml-merge][toml-merge] | [![Version][toml-merge-gem-i]][toml-merge-gem] <br/> [![CI][toml-merge-ci-i]][toml-merge-ci] | TOML | [Parslet + toml][toml], [Citrus + toml-rb][toml-rb], [tree-sitter-toml][ts-toml] (all via tree_haver) | Smart merge for TOML files |
122
96
 
123
97
  #### Backend Platform Compatibility
124
98
 
@@ -976,7 +950,7 @@ Thanks for RTFM. ☺️
976
950
  [📌gitmoji]: https://gitmoji.dev
977
951
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
978
952
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
979
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.025-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
953
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.539-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
980
954
  [🔐security]: SECURITY.md
981
955
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
982
956
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -13,14 +13,16 @@ module Bash
13
13
  #
14
14
  # @param template_analysis [FileAnalysis] Analyzed template file
15
15
  # @param dest_analysis [FileAnalysis] Analyzed destination file
16
- # @param preference [Symbol] Which version to prefer when
16
+ # @param preference [Symbol, Hash] Which version to prefer when
17
17
  # nodes have matching signatures:
18
18
  # - :destination (default) - Keep destination version (customizations)
19
19
  # - :template - Use template version (updates)
20
20
  # @param add_template_only_nodes [Boolean] Whether to add nodes only in template
21
21
  # @param match_refiner [#call, nil] Optional match refiner for fuzzy matching
22
22
  # @param options [Hash] Additional options for forward compatibility
23
- def initialize(template_analysis, dest_analysis, preference: :destination, add_template_only_nodes: false, match_refiner: nil, **options)
23
+ # @param node_typing [Hash{Symbol,String => #call}, nil] Node typing configuration
24
+ # for per-node-type preferences
25
+ def initialize(template_analysis, dest_analysis, preference: :destination, add_template_only_nodes: false, match_refiner: nil, node_typing: nil, **options)
24
26
  super(
25
27
  strategy: :batch,
26
28
  preference: preference,
@@ -30,6 +32,7 @@ module Bash
30
32
  match_refiner: match_refiner,
31
33
  **options
32
34
  )
35
+ @node_typing = node_typing
33
36
  @emitter = Emitter.new
34
37
  end
35
38
 
@@ -98,11 +101,7 @@ module Bash
98
101
  template_node = template_info[:node]
99
102
 
100
103
  # Decide which to emit based on preference
101
- if @preference == :destination
102
- emit_node(dest_node, @dest_analysis)
103
- else
104
- emit_node(template_node, @template_analysis)
105
- end
104
+ emit_preferred_node(template_node, dest_node)
106
105
 
107
106
  processed_dest_sigs << dest_sig
108
107
  processed_template_sigs << dest_sig
@@ -131,6 +130,40 @@ module Bash
131
130
  end
132
131
  end
133
132
 
133
+ def emit_preferred_node(template_node, dest_node)
134
+ if preference_for_pair(template_node, dest_node) == :destination
135
+ emit_node(dest_node, @dest_analysis)
136
+ else
137
+ emit_node(template_node, @template_analysis)
138
+ end
139
+ end
140
+
141
+ def preference_for_pair(template_node, dest_node)
142
+ return @preference unless @preference.is_a?(Hash)
143
+
144
+ typed_template = apply_node_typing(template_node)
145
+ typed_dest = apply_node_typing(dest_node)
146
+
147
+ if Ast::Merge::NodeTyping.typed_node?(typed_template)
148
+ merge_type = Ast::Merge::NodeTyping.merge_type_for(typed_template)
149
+ return @preference.fetch(merge_type) { default_preference } if merge_type
150
+ end
151
+
152
+ if Ast::Merge::NodeTyping.typed_node?(typed_dest)
153
+ merge_type = Ast::Merge::NodeTyping.merge_type_for(typed_dest)
154
+ return @preference.fetch(merge_type) { default_preference } if merge_type
155
+ end
156
+
157
+ default_preference
158
+ end
159
+
160
+ def apply_node_typing(node)
161
+ return node unless @node_typing
162
+ return node unless node
163
+
164
+ Ast::Merge::NodeTyping.process(node, @node_typing)
165
+ end
166
+
134
167
  # Emit a single node to the emitter
135
168
  # @param node [NodeWrapper] Node to emit
136
169
  # @param analysis [FileAnalysis] Analysis for accessing source
@@ -176,6 +176,7 @@ module Bash
176
176
  @dest_analysis,
177
177
  preference: @preference,
178
178
  add_template_only_nodes: @add_template_only_nodes,
179
+ node_typing: @node_typing,
179
180
  )
180
181
  end
181
182
 
@@ -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 = "2.0.4"
8
+ VERSION = "2.0.6"
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: 2.0.4
4
+ version: 2.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -46,7 +46,7 @@ dependencies:
46
46
  version: '5.0'
47
47
  - - ">="
48
48
  - !ruby/object:Gem::Version
49
- version: 5.0.2
49
+ version: 5.0.5
50
50
  type: :runtime
51
51
  prerelease: false
52
52
  version_requirements: !ruby/object:Gem::Requirement
@@ -56,7 +56,7 @@ dependencies:
56
56
  version: '5.0'
57
57
  - - ">="
58
58
  - !ruby/object:Gem::Version
59
- version: 5.0.2
59
+ version: 5.0.5
60
60
  - !ruby/object:Gem::Dependency
61
61
  name: ast-merge
62
62
  requirement: !ruby/object:Gem::Requirement
@@ -66,7 +66,7 @@ dependencies:
66
66
  version: '4.0'
67
67
  - - ">="
68
68
  - !ruby/object:Gem::Version
69
- version: 4.0.3
69
+ version: 4.0.6
70
70
  type: :runtime
71
71
  prerelease: false
72
72
  version_requirements: !ruby/object:Gem::Requirement
@@ -76,7 +76,7 @@ dependencies:
76
76
  version: '4.0'
77
77
  - - ">="
78
78
  - !ruby/object:Gem::Version
79
- version: 4.0.3
79
+ version: 4.0.6
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: version_gem
82
82
  requirement: !ruby/object:Gem::Requirement
@@ -166,6 +166,9 @@ dependencies:
166
166
  - - "~>"
167
167
  - !ruby/object:Gem::Version
168
168
  version: '3.0'
169
+ - - "~>"
170
+ - !ruby/object:Gem::Version
171
+ version: 3.0.6
169
172
  type: :development
170
173
  prerelease: false
171
174
  version_requirements: !ruby/object:Gem::Requirement
@@ -173,6 +176,9 @@ dependencies:
173
176
  - - "~>"
174
177
  - !ruby/object:Gem::Version
175
178
  version: '3.0'
179
+ - - "~>"
180
+ - !ruby/object:Gem::Version
181
+ version: 3.0.6
176
182
  - !ruby/object:Gem::Dependency
177
183
  name: kettle-soup-cover
178
184
  requirement: !ruby/object:Gem::Requirement
@@ -202,7 +208,7 @@ dependencies:
202
208
  version: '1.0'
203
209
  - - ">="
204
210
  - !ruby/object:Gem::Version
205
- version: 1.0.7
211
+ version: 1.0.10
206
212
  type: :development
207
213
  prerelease: false
208
214
  version_requirements: !ruby/object:Gem::Requirement
@@ -212,7 +218,7 @@ dependencies:
212
218
  version: '1.0'
213
219
  - - ">="
214
220
  - !ruby/object:Gem::Version
215
- version: 1.0.7
221
+ version: 1.0.10
216
222
  - !ruby/object:Gem::Dependency
217
223
  name: ruby-progressbar
218
224
  requirement: !ruby/object:Gem::Requirement
@@ -236,7 +242,7 @@ dependencies:
236
242
  version: '1.0'
237
243
  - - ">="
238
244
  - !ruby/object:Gem::Version
239
- version: 1.0.2
245
+ version: 1.0.3
240
246
  type: :development
241
247
  prerelease: false
242
248
  version_requirements: !ruby/object:Gem::Requirement
@@ -246,7 +252,7 @@ dependencies:
246
252
  version: '1.0'
247
253
  - - ">="
248
254
  - !ruby/object:Gem::Version
249
- version: 1.0.2
255
+ version: 1.0.3
250
256
  - !ruby/object:Gem::Dependency
251
257
  name: gitmoji-regex
252
258
  requirement: !ruby/object:Gem::Requirement
@@ -315,10 +321,10 @@ licenses:
315
321
  - MIT
316
322
  metadata:
317
323
  homepage_uri: https://bash-merge.galtzo.com/
318
- source_code_uri: https://github.com/kettle-rb/bash-merge/tree/v2.0.4
319
- changelog_uri: https://github.com/kettle-rb/bash-merge/blob/v2.0.4/CHANGELOG.md
324
+ source_code_uri: https://github.com/kettle-rb/bash-merge/tree/v2.0.6
325
+ changelog_uri: https://github.com/kettle-rb/bash-merge/blob/v2.0.6/CHANGELOG.md
320
326
  bug_tracker_uri: https://github.com/kettle-rb/bash-merge/issues
321
- documentation_uri: https://www.rubydoc.info/gems/bash-merge/2.0.4
327
+ documentation_uri: https://www.rubydoc.info/gems/bash-merge/2.0.6
322
328
  funding_uri: https://github.com/sponsors/pboling
323
329
  wiki_uri: https://github.com/kettle-rb/bash-merge/wiki
324
330
  news_uri: https://www.railsbling.com/tags/bash-merge
@@ -347,7 +353,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
347
353
  - !ruby/object:Gem::Version
348
354
  version: '0'
349
355
  requirements: []
350
- rubygems_version: 4.0.3
356
+ rubygems_version: 4.0.5
351
357
  specification_version: 4
352
358
  summary: "☯️ Intelligent Bash script merging using tree-sitter AST analysis"
353
359
  test_files: []
metadata.gz.sig CHANGED
Binary file