typescript-merge 7.1.9 → 7.1.10

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: a5bf9b0abb897bfc0f8d1078232173463a08ec83a7016ec149a8b9440742446b
4
- data.tar.gz: 0fdeeabd01723cfd69e29858dc5c884f7f496087cca6b72964cbdb78480c33c2
3
+ metadata.gz: 5fe6ff05a9a4f1ed8a5d45209325c75624c184c969301424b19457a9b4b236a7
4
+ data.tar.gz: 71b62f73fb817e79ff213b7dbf06f9fba45529cb15d1f61daec1a7f625101ce9
5
5
  SHA512:
6
- metadata.gz: 1c5bca7ece795b0e10edd593875c243cd3f2429bd230b82010de108e42542cf554a83dd8a615aaaaba477dbb2c338e7891008c5fae14e88d9a6619cec7c7d45a
7
- data.tar.gz: 9c3ab845651aece580a70302bc8df270391c7bcfa96224e60bbea729bf5df784b5095848528f21d95560e11aa67397a6537581f55fa80e603f8811f1c6e6e4ab
6
+ metadata.gz: c496ef1009606962e870c25223a36aca229a5af217ea6a5a5ee6ecadfdfbf7572b92182564683cbd28f48ae91229608e7771b77725adf36386536653019b80e8
7
+ data.tar.gz: be206660dfa7d212d83a1696da8fafabd262e36df1aa166d157d86092204ce1106f95c2c24371ef1f67099aad93a5d30aec86b80b45f6e96cd371f9798f38cdf
checksums.yaml.gz.sig CHANGED
Binary file
@@ -332,7 +332,7 @@ module TypeScript
332
332
  def grouped_ownership_failure(request, documents)
333
333
  signatures = documents.transform_values do |document|
334
334
  document.owners.filter_map { |owner| owner.signature if grouped_owner?(owner) }
335
- .sort_by { |signature| JSON.generate(Ast::Merge.json_ready(signature)) }
335
+ .sort_by { |signature| JSON.generate(Ast::Merge.json_ready(signature)) }
336
336
  end
337
337
  return if signatures.values.uniq.length == 1
338
338
 
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'ast/merge'
4
+ require 'ast/merge/typed_core_provider'
5
+
6
+ module TypeScript
7
+ module Merge
8
+ # Opt-in typed TypeScript/TSX declaration profile. Compatibility name, not a prototype dependency.
9
+ class RustHostProvider < Ast::Merge::TypedCoreProvider
10
+ PROVIDER_ID = 'rust.typescript'
11
+ FAMILY = 'typescript'
12
+ DIALECTS = %i[typescript tsx].freeze
13
+ OPERATIONS = %i[analyze diff2 merge2 merge3].freeze
14
+ CORE_PROVIDER = 'kernel.typescript'
15
+ CORE_PROFILE = 'kernel.typescript.owners.v1'
16
+ PACKAGE = 'typescript-merge'
17
+
18
+ def capabilities
19
+ super.merge(ast_ownership: :top_level_declarations).freeze
20
+ end
21
+
22
+ private
23
+
24
+ def package_version = TypeScript::Merge::Version::VERSION
25
+ def parser_language(dialect) = dialect
26
+ def owner_path(owner) = owner.fetch('id')
27
+
28
+ def additional_fields = %i[path_name labels conflict_marker_size]
29
+
30
+ def policy(operation, request)
31
+ # Git supplies neutral framing even to non-rendering providers. A path
32
+ # is context, never a language selector. This profile emits no markers:
33
+ # accept only empty labels and the default width, not custom requests.
34
+ labels = request.fetch(:labels, {})
35
+ width = request[:conflict_marker_size]
36
+ width = Integer(width, 10) if width.is_a?(String)
37
+ unless labels == {} && (width.nil? || (width.is_a?(Integer) && width == 7))
38
+ raise ArgumentError, 'Typed TypeScript does not support custom conflict markers or labels'
39
+ end
40
+
41
+ super
42
+ end
43
+ end
44
+ end
45
+ end
@@ -5,7 +5,7 @@ module TypeScript
5
5
  # Version namespace for this gem.
6
6
  module Version
7
7
  # Current gem version.
8
- VERSION = '7.1.9'
8
+ VERSION = '7.1.10'
9
9
  end
10
10
  # Current gem version exposed at the traditional constant location.
11
11
  VERSION = Version::VERSION # Traditional Constant Location
@@ -16,6 +16,7 @@ module TypeScript
16
16
  autoload :NodeWrapper, 'typescript/merge/node_wrapper'
17
17
  autoload :FileAnalysis, 'typescript/merge/file_analysis'
18
18
  autoload :Provider, 'typescript/merge/provider'
19
+ autoload :RustHostProvider, 'typescript/merge/rust_host_provider'
19
20
 
20
21
  def register_backend!
21
22
  BACKEND_REGISTRY.mutex.synchronize do
@@ -103,7 +104,10 @@ module TypeScript
103
104
  return backend.to_s unless backend.to_s.empty?
104
105
 
105
106
  contextual = TreeHaver.current_backend_id || ENV['TREE_HAVER_BACKEND']
106
- contextual.to_s.empty? || contextual.to_s == 'auto' ? TREE_SITTER_BACKEND.id : contextual.to_s
107
+ return TREE_SITTER_BACKEND.id if contextual.to_s.empty? || contextual.to_s == 'auto'
108
+ return TREE_SITTER_BACKEND.id if contextual.to_s == 'rust_tslp'
109
+
110
+ contextual.to_s
107
111
  end
108
112
  private_class_method :requested_tree_sitter_backend_id
109
113
 
@@ -121,6 +125,14 @@ module TypeScript
121
125
  Ast::Merge.register_provider(merge_provider, replace: replace)
122
126
  end
123
127
 
128
+ def rust_host_provider
129
+ @rust_host_provider ||= RustHostProvider.new
130
+ end
131
+
132
+ def register_rust_host_provider!(replace: false)
133
+ Ast::Merge.register_provider(rust_host_provider, replace: replace)
134
+ end
135
+
124
136
  def merge_type_script(template_source, destination_source, dialect)
125
137
  template = parse_type_script(template_source, dialect)
126
138
  return { ok: false, diagnostics: template[:diagnostics], policies: [] } unless template[:ok]
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: typescript-merge
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.1.9
4
+ version: 7.1.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter H. Boling
@@ -43,28 +43,28 @@ dependencies:
43
43
  requirements:
44
44
  - - '='
45
45
  - !ruby/object:Gem::Version
46
- version: 7.1.9
46
+ version: 7.1.10
47
47
  type: :runtime
48
48
  prerelease: false
49
49
  version_requirements: !ruby/object:Gem::Requirement
50
50
  requirements:
51
51
  - - '='
52
52
  - !ruby/object:Gem::Version
53
- version: 7.1.9
53
+ version: 7.1.10
54
54
  - !ruby/object:Gem::Dependency
55
55
  name: tree_haver
56
56
  requirement: !ruby/object:Gem::Requirement
57
57
  requirements:
58
58
  - - '='
59
59
  - !ruby/object:Gem::Version
60
- version: 7.1.9
60
+ version: 7.1.10
61
61
  type: :runtime
62
62
  prerelease: false
63
63
  version_requirements: !ruby/object:Gem::Requirement
64
64
  requirements:
65
65
  - - '='
66
66
  - !ruby/object:Gem::Version
67
- version: 7.1.9
67
+ version: 7.1.10
68
68
  - !ruby/object:Gem::Dependency
69
69
  name: version_gem
70
70
  requirement: !ruby/object:Gem::Requirement
@@ -91,20 +91,20 @@ dependencies:
91
91
  requirements:
92
92
  - - "~>"
93
93
  - !ruby/object:Gem::Version
94
- version: '3.0'
94
+ version: '3.1'
95
95
  - - ">="
96
96
  - !ruby/object:Gem::Version
97
- version: 3.0.34
97
+ version: 3.1.8
98
98
  type: :development
99
99
  prerelease: false
100
100
  version_requirements: !ruby/object:Gem::Requirement
101
101
  requirements:
102
102
  - - "~>"
103
103
  - !ruby/object:Gem::Version
104
- version: '3.0'
104
+ version: '3.1'
105
105
  - - ">="
106
106
  - !ruby/object:Gem::Version
107
- version: 3.0.34
107
+ version: 3.1.8
108
108
  - !ruby/object:Gem::Dependency
109
109
  name: bundler-audit
110
110
  requirement: !ruby/object:Gem::Requirement
@@ -182,7 +182,7 @@ dependencies:
182
182
  version: '3.2'
183
183
  - - ">="
184
184
  - !ruby/object:Gem::Version
185
- version: 3.2.3
185
+ version: 3.2.5
186
186
  type: :development
187
187
  prerelease: false
188
188
  version_requirements: !ruby/object:Gem::Requirement
@@ -192,7 +192,7 @@ dependencies:
192
192
  version: '3.2'
193
193
  - - ">="
194
194
  - !ruby/object:Gem::Version
195
- version: 3.2.3
195
+ version: 3.2.5
196
196
  - !ruby/object:Gem::Dependency
197
197
  name: kettle-test
198
198
  requirement: !ruby/object:Gem::Requirement
@@ -202,7 +202,7 @@ dependencies:
202
202
  version: '2.0'
203
203
  - - ">="
204
204
  - !ruby/object:Gem::Version
205
- version: 2.0.21
205
+ version: 2.0.23
206
206
  type: :development
207
207
  prerelease: false
208
208
  version_requirements: !ruby/object:Gem::Requirement
@@ -212,7 +212,7 @@ dependencies:
212
212
  version: '2.0'
213
213
  - - ">="
214
214
  - !ruby/object:Gem::Version
215
- version: 2.0.21
215
+ version: 2.0.23
216
216
  - !ruby/object:Gem::Dependency
217
217
  name: turbo_tests2
218
218
  requirement: !ruby/object:Gem::Requirement
@@ -222,7 +222,7 @@ dependencies:
222
222
  version: '3.2'
223
223
  - - ">="
224
224
  - !ruby/object:Gem::Version
225
- version: 3.2.7
225
+ version: 3.2.14
226
226
  type: :development
227
227
  prerelease: false
228
228
  version_requirements: !ruby/object:Gem::Requirement
@@ -232,7 +232,7 @@ dependencies:
232
232
  version: '3.2'
233
233
  - - ">="
234
234
  - !ruby/object:Gem::Version
235
- version: 3.2.7
235
+ version: 3.2.14
236
236
  - !ruby/object:Gem::Dependency
237
237
  name: ruby-progressbar
238
238
  requirement: !ruby/object:Gem::Requirement
@@ -256,7 +256,7 @@ dependencies:
256
256
  version: '1.0'
257
257
  - - ">="
258
258
  - !ruby/object:Gem::Version
259
- version: 1.0.8
259
+ version: 1.0.9
260
260
  type: :development
261
261
  prerelease: false
262
262
  version_requirements: !ruby/object:Gem::Requirement
@@ -266,7 +266,7 @@ dependencies:
266
266
  version: '1.0'
267
267
  - - ">="
268
268
  - !ruby/object:Gem::Version
269
- version: 1.0.8
269
+ version: 1.0.9
270
270
  - !ruby/object:Gem::Dependency
271
271
  name: gitmoji-regex
272
272
  requirement: !ruby/object:Gem::Requirement
@@ -276,7 +276,7 @@ dependencies:
276
276
  version: '2.0'
277
277
  - - ">="
278
278
  - !ruby/object:Gem::Version
279
- version: 2.0.12
279
+ version: 2.0.15
280
280
  type: :development
281
281
  prerelease: false
282
282
  version_requirements: !ruby/object:Gem::Requirement
@@ -286,7 +286,7 @@ dependencies:
286
286
  version: '2.0'
287
287
  - - ">="
288
288
  - !ruby/object:Gem::Version
289
- version: 2.0.12
289
+ version: 2.0.15
290
290
  description: "☯️ Portable TypeScript module owner analysis and merge behavior for
291
291
  Structured Merge."
292
292
  email:
@@ -302,6 +302,7 @@ files:
302
302
  - lib/typescript/merge/file_analysis.rb
303
303
  - lib/typescript/merge/node_wrapper.rb
304
304
  - lib/typescript/merge/provider.rb
305
+ - lib/typescript/merge/rust_host_provider.rb
305
306
  - lib/typescript/merge/version.rb
306
307
  - sig/typescript/merge.rbs
307
308
  homepage: https://github.com/structuredmerge/structuredmerge-ruby
@@ -310,10 +311,10 @@ licenses:
310
311
  - PolyForm-Small-Business-1.0.0
311
312
  metadata:
312
313
  homepage_uri: https://structuredmerge.org
313
- source_code_uri: https://github.com/structuredmerge/structuredmerge-ruby/tree/v7.1.9
314
- changelog_uri: https://github.com/structuredmerge/structuredmerge-ruby/blob/v7.1.9/CHANGELOG.md
314
+ source_code_uri: https://github.com/structuredmerge/structuredmerge-ruby/tree/v7.1.10
315
+ changelog_uri: https://github.com/structuredmerge/structuredmerge-ruby/blob/v7.1.10/CHANGELOG.md
315
316
  bug_tracker_uri: https://github.com/structuredmerge/structuredmerge-ruby/issues
316
- documentation_uri: https://www.rubydoc.info/gems/typescript-merge/7.1.9
317
+ documentation_uri: https://www.rubydoc.info/gems/typescript-merge/7.1.10
317
318
  funding_uri: https://github.com/sponsors/pboling
318
319
  wiki_uri: https://github.com/structuredmerge/structuredmerge-ruby/wiki
319
320
  news_uri: https://www.railsbling.com/tags/typescript-merge
@@ -344,7 +345,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
344
345
  - !ruby/object:Gem::Version
345
346
  version: '0'
346
347
  requirements: []
347
- rubygems_version: 4.0.17
348
+ rubygems_version: 4.0.20
348
349
  specification_version: 4
349
350
  summary: "☯️ Structured Merge TypeScript module analysis and merge for Ruby"
350
351
  test_files: []
metadata.gz.sig CHANGED
Binary file