elasticgraph-apollo 0.19.0.0 → 0.19.1.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: 689f79346e67e882e3af7be910de70cd11a3a304a2d51965bf7cb4ad95d5437b
4
- data.tar.gz: 8b3f95b1b455ada7241101ca8e34c6c86d954816c9a2ad31ee7af5dabc572275
3
+ metadata.gz: 4b166a86ecb43bc32643bb713c007f5512f94333944cb83db09cc20de0e50b4a
4
+ data.tar.gz: 18a32e6ab622d186cbfc913d438628c84604b49fd24a79ee1c84684842deb472
5
5
  SHA512:
6
- metadata.gz: 48e4b0c5d45c094e7ed417cc72d0d24fa5add92723cb77c71ff137d6b675e2497525dc274d4e41d0149235632865a6d83fa92cc0e0f02c23ae520aef44bc8dcf
7
- data.tar.gz: da6fe796c6ef6909cb3c1c5f5ea71d15eb94fd1187e0bb1c784e8e0e1a45ad37f69e01b03f20ab4de17e2102e85ada1ac27420bc9a8d218c2c493b1852d37649
6
+ metadata.gz: 2161517feef4040edadb3d6dc98f3494b147a92c4b35eaa382ebae62f1bb53133f281bd1f1b5ac9ae0b4475059740e8c65a22380b6dbcc9f9a0aff84797220d6
7
+ data.tar.gz: 108cc20880001c64fc2af4694f23578355bfbfc6f6ae6851c5582c8dc7450eb746824ae7272e6825d59f935ae92f20167a6d2cb349de9c63d4139f2a8ac4c285
@@ -7,57 +7,21 @@ WORKDIR /web
7
7
 
8
8
  # Each of the elasticgraph gems this implementation depends on must be
9
9
  # copied into the container so it's available for inclusion in the bundle.
10
- # Note: we've observed that hidden files (like .rspec) are not copied by COPY.
11
- # gemspec_helper enforces the presence of `.rspec`/`.yardopts`, so we have to copy them.
12
10
  COPY elasticgraph-admin /web/elasticgraph-admin
13
- COPY elasticgraph-admin/.rspec /web/elasticgraph-admin/.rspec
14
- COPY elasticgraph-admin/.yardopts /web/elasticgraph-admin/.yardopts
15
-
16
11
  COPY elasticgraph-apollo /web/elasticgraph-apollo
17
- COPY elasticgraph-apollo/.rspec /web/elasticgraph-apollo/.rspec
18
- COPY elasticgraph-apollo/.yardopts /web/elasticgraph-apollo/.yardopts
19
-
20
12
  COPY elasticgraph-datastore_core /web/elasticgraph-datastore_core
21
- COPY elasticgraph-datastore_core/.rspec /web/elasticgraph-datastore_core/.rspec
22
- COPY elasticgraph-datastore_core/.yardopts /web/elasticgraph-datastore_core/.yardopts
23
-
24
13
  COPY elasticgraph-elasticsearch /web/elasticgraph-elasticsearch
25
- COPY elasticgraph-elasticsearch/.rspec /web/elasticgraph-elasticsearch/.rspec
26
- COPY elasticgraph-elasticsearch/.yardopts /web/elasticgraph-elasticsearch/.yardopts
27
-
28
14
  COPY elasticgraph-graphql /web/elasticgraph-graphql
29
- COPY elasticgraph-graphql/.rspec /web/elasticgraph-graphql/.rspec
30
- COPY elasticgraph-graphql/.yardopts /web/elasticgraph-graphql/.yardopts
31
-
32
15
  COPY elasticgraph-indexer /web/elasticgraph-indexer
33
- COPY elasticgraph-indexer/.rspec /web/elasticgraph-indexer/.rspec
34
- COPY elasticgraph-indexer/.yardopts /web/elasticgraph-indexer/.yardopts
35
-
36
16
  COPY elasticgraph-json_schema /web/elasticgraph-json_schema
37
- COPY elasticgraph-json_schema/.rspec /web/elasticgraph-json_schema/.rspec
38
- COPY elasticgraph-json_schema/.yardopts /web/elasticgraph-json_schema/.yardopts
39
-
40
17
  COPY elasticgraph-rack /web/elasticgraph-rack
41
- COPY elasticgraph-rack/.rspec /web/elasticgraph-rack/.rspec
42
- COPY elasticgraph-rack/.yardopts /web/elasticgraph-rack/.yardopts
43
-
44
18
  COPY elasticgraph-schema_artifacts /web/elasticgraph-schema_artifacts
45
- COPY elasticgraph-schema_artifacts/.rspec /web/elasticgraph-schema_artifacts/.rspec
46
- COPY elasticgraph-schema_artifacts/.yardopts /web/elasticgraph-schema_artifacts/.yardopts
47
-
48
19
  COPY elasticgraph-schema_definition /web/elasticgraph-schema_definition
49
- COPY elasticgraph-schema_definition/.rspec /web/elasticgraph-schema_definition/.rspec
50
- COPY elasticgraph-schema_definition/.yardopts /web/elasticgraph-schema_definition/.yardopts
51
-
52
20
  COPY elasticgraph-support /web/elasticgraph-support
53
- COPY elasticgraph-support/.rspec /web/elasticgraph-support/.rspec
54
- COPY elasticgraph-support/.yardopts /web/elasticgraph-support/.yardopts
55
21
 
56
22
  # We also have to copy the implementation files (config, schema, etc) as well.
57
23
  COPY elasticgraph-apollo/apollo_tests_implementation /web/
58
24
 
59
- COPY gemspec_helper.rb /web/gemspec_helper.rb
60
-
61
25
  # We need to install the bundle and generate our schema artifacts.
62
26
  RUN bundle install
63
27
  RUN bundle exec rake schema_artifacts:dump TARGET_APOLLO_FEDERATION_VERSION=${TARGET_APOLLO_FEDERATION_VERSION}
@@ -290,6 +290,7 @@ module ElasticGraph
290
290
  self
291
291
  end
292
292
 
293
+ # :nocov: -- these methods are not called on an adapter when `indexed?` returns `false`.
293
294
  def customize_query(query, representations)
294
295
  nil
295
296
  end
@@ -297,6 +298,7 @@ module ElasticGraph
297
298
  def index_search_hits(response)
298
299
  nil
299
300
  end
301
+ # :nocov:
300
302
 
301
303
  def identify_matching_hit(indexed_search_hits, representation, context:, index:)
302
304
  representation.representation_hash
@@ -59,14 +59,6 @@ module ElasticGraph
59
59
  # tasks.schema_definition_extension_modules = [ElasticGraph::Apollo::SchemaDefinition::APIExtension]
60
60
  # end
61
61
  module APIExtension
62
- # @private
63
- def results
64
- register_graphql_extension GraphQL::EngineExtension, defined_at: "elastic_graph/apollo/graphql/engine_extension"
65
- define_apollo_schema_elements
66
-
67
- super
68
- end
69
-
70
62
  # Applies an apollo tag to built-in types so that they are included in the Apollo contract schema.
71
63
  #
72
64
  # @param name [String] tag name
@@ -127,6 +119,11 @@ module ElasticGraph
127
119
  # have them and they aren't entity types. `Query`, as the root, is a special case that must be skipped.
128
120
  (_ = type).apollo_shareable if type.respond_to?(:apollo_shareable) && type.name != "Query"
129
121
  end
122
+
123
+ api.register_graphql_extension GraphQL::EngineExtension, defined_at: "elastic_graph/apollo/graphql/engine_extension"
124
+ api.state.after_user_definition_complete do
125
+ api.send(:define_apollo_schema_elements)
126
+ end
130
127
  end
131
128
 
132
129
  private
metadata CHANGED
@@ -1,295 +1,45 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elasticgraph-apollo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.0.0
4
+ version: 0.19.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Myron Marston
8
8
  - Ben VandenBos
9
9
  - Block Engineering
10
10
  autorequire:
11
- bindir: exe
11
+ bindir: bin
12
12
  cert_chain: []
13
- date: 2024-12-10 00:00:00.000000000 Z
13
+ date: 2025-02-06 00:00:00.000000000 Z
14
14
  dependencies:
15
- - !ruby/object:Gem::Dependency
16
- name: rubocop-factory_bot
17
- requirement: !ruby/object:Gem::Requirement
18
- requirements:
19
- - - "~>"
20
- - !ruby/object:Gem::Version
21
- version: '2.26'
22
- type: :development
23
- prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- requirements:
26
- - - "~>"
27
- - !ruby/object:Gem::Version
28
- version: '2.26'
29
- - !ruby/object:Gem::Dependency
30
- name: rubocop-rake
31
- requirement: !ruby/object:Gem::Requirement
32
- requirements:
33
- - - "~>"
34
- - !ruby/object:Gem::Version
35
- version: '0.6'
36
- type: :development
37
- prerelease: false
38
- version_requirements: !ruby/object:Gem::Requirement
39
- requirements:
40
- - - "~>"
41
- - !ruby/object:Gem::Version
42
- version: '0.6'
43
- - !ruby/object:Gem::Dependency
44
- name: rubocop-rspec
45
- requirement: !ruby/object:Gem::Requirement
46
- requirements:
47
- - - "~>"
48
- - !ruby/object:Gem::Version
49
- version: '3.1'
50
- type: :development
51
- prerelease: false
52
- version_requirements: !ruby/object:Gem::Requirement
53
- requirements:
54
- - - "~>"
55
- - !ruby/object:Gem::Version
56
- version: '3.1'
57
- - !ruby/object:Gem::Dependency
58
- name: standard
59
- requirement: !ruby/object:Gem::Requirement
60
- requirements:
61
- - - "~>"
62
- - !ruby/object:Gem::Version
63
- version: 1.41.0
64
- type: :development
65
- prerelease: false
66
- version_requirements: !ruby/object:Gem::Requirement
67
- requirements:
68
- - - "~>"
69
- - !ruby/object:Gem::Version
70
- version: 1.41.0
71
- - !ruby/object:Gem::Dependency
72
- name: steep
73
- requirement: !ruby/object:Gem::Requirement
74
- requirements:
75
- - - "~>"
76
- - !ruby/object:Gem::Version
77
- version: 1.9.0
78
- type: :development
79
- prerelease: false
80
- version_requirements: !ruby/object:Gem::Requirement
81
- requirements:
82
- - - "~>"
83
- - !ruby/object:Gem::Version
84
- version: 1.9.0
85
- - !ruby/object:Gem::Dependency
86
- name: coderay
87
- requirement: !ruby/object:Gem::Requirement
88
- requirements:
89
- - - "~>"
90
- - !ruby/object:Gem::Version
91
- version: '1.1'
92
- type: :development
93
- prerelease: false
94
- version_requirements: !ruby/object:Gem::Requirement
95
- requirements:
96
- - - "~>"
97
- - !ruby/object:Gem::Version
98
- version: '1.1'
99
- - !ruby/object:Gem::Dependency
100
- name: flatware-rspec
101
- requirement: !ruby/object:Gem::Requirement
102
- requirements:
103
- - - "~>"
104
- - !ruby/object:Gem::Version
105
- version: '2.3'
106
- - - ">="
107
- - !ruby/object:Gem::Version
108
- version: 2.3.3
109
- type: :development
110
- prerelease: false
111
- version_requirements: !ruby/object:Gem::Requirement
112
- requirements:
113
- - - "~>"
114
- - !ruby/object:Gem::Version
115
- version: '2.3'
116
- - - ">="
117
- - !ruby/object:Gem::Version
118
- version: 2.3.3
119
- - !ruby/object:Gem::Dependency
120
- name: rspec
121
- requirement: !ruby/object:Gem::Requirement
122
- requirements:
123
- - - "~>"
124
- - !ruby/object:Gem::Version
125
- version: '3.13'
126
- type: :development
127
- prerelease: false
128
- version_requirements: !ruby/object:Gem::Requirement
129
- requirements:
130
- - - "~>"
131
- - !ruby/object:Gem::Version
132
- version: '3.13'
133
- - !ruby/object:Gem::Dependency
134
- name: super_diff
135
- requirement: !ruby/object:Gem::Requirement
136
- requirements:
137
- - - "~>"
138
- - !ruby/object:Gem::Version
139
- version: '0.13'
140
- type: :development
141
- prerelease: false
142
- version_requirements: !ruby/object:Gem::Requirement
143
- requirements:
144
- - - "~>"
145
- - !ruby/object:Gem::Version
146
- version: '0.13'
147
- - !ruby/object:Gem::Dependency
148
- name: simplecov
149
- requirement: !ruby/object:Gem::Requirement
150
- requirements:
151
- - - "~>"
152
- - !ruby/object:Gem::Version
153
- version: '0.22'
154
- type: :development
155
- prerelease: false
156
- version_requirements: !ruby/object:Gem::Requirement
157
- requirements:
158
- - - "~>"
159
- - !ruby/object:Gem::Version
160
- version: '0.22'
161
- - !ruby/object:Gem::Dependency
162
- name: simplecov-console
163
- requirement: !ruby/object:Gem::Requirement
164
- requirements:
165
- - - "~>"
166
- - !ruby/object:Gem::Version
167
- version: '0.9'
168
- type: :development
169
- prerelease: false
170
- version_requirements: !ruby/object:Gem::Requirement
171
- requirements:
172
- - - "~>"
173
- - !ruby/object:Gem::Version
174
- version: '0.9'
175
- - !ruby/object:Gem::Dependency
176
- name: httpx
177
- requirement: !ruby/object:Gem::Requirement
178
- requirements:
179
- - - "~>"
180
- - !ruby/object:Gem::Version
181
- version: '1.3'
182
- type: :development
183
- prerelease: false
184
- version_requirements: !ruby/object:Gem::Requirement
185
- requirements:
186
- - - "~>"
187
- - !ruby/object:Gem::Version
188
- version: '1.3'
189
- - !ruby/object:Gem::Dependency
190
- name: method_source
191
- requirement: !ruby/object:Gem::Requirement
192
- requirements:
193
- - - "~>"
194
- - !ruby/object:Gem::Version
195
- version: '1.1'
196
- type: :development
197
- prerelease: false
198
- version_requirements: !ruby/object:Gem::Requirement
199
- requirements:
200
- - - "~>"
201
- - !ruby/object:Gem::Version
202
- version: '1.1'
203
- - !ruby/object:Gem::Dependency
204
- name: rspec-retry
205
- requirement: !ruby/object:Gem::Requirement
206
- requirements:
207
- - - "~>"
208
- - !ruby/object:Gem::Version
209
- version: '0.6'
210
- type: :development
211
- prerelease: false
212
- version_requirements: !ruby/object:Gem::Requirement
213
- requirements:
214
- - - "~>"
215
- - !ruby/object:Gem::Version
216
- version: '0.6'
217
- - !ruby/object:Gem::Dependency
218
- name: vcr
219
- requirement: !ruby/object:Gem::Requirement
220
- requirements:
221
- - - "~>"
222
- - !ruby/object:Gem::Version
223
- version: '6.3'
224
- - - ">="
225
- - !ruby/object:Gem::Version
226
- version: 6.3.1
227
- type: :development
228
- prerelease: false
229
- version_requirements: !ruby/object:Gem::Requirement
230
- requirements:
231
- - - "~>"
232
- - !ruby/object:Gem::Version
233
- version: '6.3'
234
- - - ">="
235
- - !ruby/object:Gem::Version
236
- version: 6.3.1
237
- - !ruby/object:Gem::Dependency
238
- name: factory_bot
239
- requirement: !ruby/object:Gem::Requirement
240
- requirements:
241
- - - "~>"
242
- - !ruby/object:Gem::Version
243
- version: '6.4'
244
- type: :development
245
- prerelease: false
246
- version_requirements: !ruby/object:Gem::Requirement
247
- requirements:
248
- - - "~>"
249
- - !ruby/object:Gem::Version
250
- version: '6.4'
251
- - !ruby/object:Gem::Dependency
252
- name: faker
253
- requirement: !ruby/object:Gem::Requirement
254
- requirements:
255
- - - "~>"
256
- - !ruby/object:Gem::Version
257
- version: '3.5'
258
- type: :development
259
- prerelease: false
260
- version_requirements: !ruby/object:Gem::Requirement
261
- requirements:
262
- - - "~>"
263
- - !ruby/object:Gem::Version
264
- version: '3.5'
265
15
  - !ruby/object:Gem::Dependency
266
16
  name: elasticgraph-graphql
267
17
  requirement: !ruby/object:Gem::Requirement
268
18
  requirements:
269
19
  - - '='
270
20
  - !ruby/object:Gem::Version
271
- version: 0.19.0.0
21
+ version: 0.19.1.0
272
22
  type: :runtime
273
23
  prerelease: false
274
24
  version_requirements: !ruby/object:Gem::Requirement
275
25
  requirements:
276
26
  - - '='
277
27
  - !ruby/object:Gem::Version
278
- version: 0.19.0.0
28
+ version: 0.19.1.0
279
29
  - !ruby/object:Gem::Dependency
280
30
  name: elasticgraph-support
281
31
  requirement: !ruby/object:Gem::Requirement
282
32
  requirements:
283
33
  - - '='
284
34
  - !ruby/object:Gem::Version
285
- version: 0.19.0.0
35
+ version: 0.19.1.0
286
36
  type: :runtime
287
37
  prerelease: false
288
38
  version_requirements: !ruby/object:Gem::Requirement
289
39
  requirements:
290
40
  - - '='
291
41
  - !ruby/object:Gem::Version
292
- version: 0.19.0.0
42
+ version: 0.19.1.0
293
43
  - !ruby/object:Gem::Dependency
294
44
  name: graphql
295
45
  requirement: !ruby/object:Gem::Requirement
@@ -324,70 +74,70 @@ dependencies:
324
74
  requirements:
325
75
  - - '='
326
76
  - !ruby/object:Gem::Version
327
- version: 0.19.0.0
77
+ version: 0.19.1.0
328
78
  type: :development
329
79
  prerelease: false
330
80
  version_requirements: !ruby/object:Gem::Requirement
331
81
  requirements:
332
82
  - - '='
333
83
  - !ruby/object:Gem::Version
334
- version: 0.19.0.0
84
+ version: 0.19.1.0
335
85
  - !ruby/object:Gem::Dependency
336
86
  name: elasticgraph-admin
337
87
  requirement: !ruby/object:Gem::Requirement
338
88
  requirements:
339
89
  - - '='
340
90
  - !ruby/object:Gem::Version
341
- version: 0.19.0.0
91
+ version: 0.19.1.0
342
92
  type: :development
343
93
  prerelease: false
344
94
  version_requirements: !ruby/object:Gem::Requirement
345
95
  requirements:
346
96
  - - '='
347
97
  - !ruby/object:Gem::Version
348
- version: 0.19.0.0
98
+ version: 0.19.1.0
349
99
  - !ruby/object:Gem::Dependency
350
100
  name: elasticgraph-elasticsearch
351
101
  requirement: !ruby/object:Gem::Requirement
352
102
  requirements:
353
103
  - - '='
354
104
  - !ruby/object:Gem::Version
355
- version: 0.19.0.0
105
+ version: 0.19.1.0
356
106
  type: :development
357
107
  prerelease: false
358
108
  version_requirements: !ruby/object:Gem::Requirement
359
109
  requirements:
360
110
  - - '='
361
111
  - !ruby/object:Gem::Version
362
- version: 0.19.0.0
112
+ version: 0.19.1.0
363
113
  - !ruby/object:Gem::Dependency
364
114
  name: elasticgraph-opensearch
365
115
  requirement: !ruby/object:Gem::Requirement
366
116
  requirements:
367
117
  - - '='
368
118
  - !ruby/object:Gem::Version
369
- version: 0.19.0.0
119
+ version: 0.19.1.0
370
120
  type: :development
371
121
  prerelease: false
372
122
  version_requirements: !ruby/object:Gem::Requirement
373
123
  requirements:
374
124
  - - '='
375
125
  - !ruby/object:Gem::Version
376
- version: 0.19.0.0
126
+ version: 0.19.1.0
377
127
  - !ruby/object:Gem::Dependency
378
128
  name: elasticgraph-indexer
379
129
  requirement: !ruby/object:Gem::Requirement
380
130
  requirements:
381
131
  - - '='
382
132
  - !ruby/object:Gem::Version
383
- version: 0.19.0.0
133
+ version: 0.19.1.0
384
134
  type: :development
385
135
  prerelease: false
386
136
  version_requirements: !ruby/object:Gem::Requirement
387
137
  requirements:
388
138
  - - '='
389
139
  - !ruby/object:Gem::Version
390
- version: 0.19.0.0
140
+ version: 0.19.1.0
391
141
  description:
392
142
  email:
393
143
  - myron@squareup.com
@@ -406,7 +156,6 @@ files:
406
156
  - apollo_tests_implementation/docker-compose.yaml
407
157
  - apollo_tests_implementation/lib/test_implementation_extension.rb
408
158
  - apollo_tests_implementation/wait_for_datastore.sh
409
- - elasticgraph-apollo.gemspec
410
159
  - lib/elastic_graph/apollo/graphql/engine_extension.rb
411
160
  - lib/elastic_graph/apollo/graphql/entities_field_resolver.rb
412
161
  - lib/elastic_graph/apollo/graphql/http_endpoint_extension.rb
@@ -434,10 +183,10 @@ licenses:
434
183
  - MIT
435
184
  metadata:
436
185
  bug_tracker_uri: https://github.com/block/elasticgraph/issues
437
- changelog_uri: https://github.com/block/elasticgraph/releases/tag/v0.19.0.0
186
+ changelog_uri: https://github.com/block/elasticgraph/releases/tag/v0.19.1.0
438
187
  documentation_uri: https://block.github.io/elasticgraph/docs/main/
439
188
  homepage_uri: https://block.github.io/elasticgraph/
440
- source_code_uri: https://github.com/block/elasticgraph/tree/v0.19.0.0/elasticgraph-apollo
189
+ source_code_uri: https://github.com/block/elasticgraph/tree/v0.19.1.0/elasticgraph-apollo
441
190
  gem_category: extension
442
191
  post_install_message:
443
192
  rdoc_options: []
@@ -445,9 +194,12 @@ require_paths:
445
194
  - lib
446
195
  required_ruby_version: !ruby/object:Gem::Requirement
447
196
  requirements:
448
- - - "~>"
197
+ - - ">="
449
198
  - !ruby/object:Gem::Version
450
199
  version: '3.2'
200
+ - - "<"
201
+ - !ruby/object:Gem::Version
202
+ version: '3.5'
451
203
  required_rubygems_version: !ruby/object:Gem::Requirement
452
204
  requirements:
453
205
  - - ">="
@@ -1,27 +0,0 @@
1
- # Copyright 2024 Block, Inc.
2
- #
3
- # Use of this source code is governed by an MIT-style
4
- # license that can be found in the LICENSE file or at
5
- # https://opensource.org/licenses/MIT.
6
- #
7
- # frozen_string_literal: true
8
-
9
- require_relative "../gemspec_helper"
10
-
11
- ElasticGraphGemspecHelper.define_elasticgraph_gem(gemspec_file: __FILE__, category: :extension) do |spec, eg_version|
12
- spec.summary = "An ElasticGraph extension that implements the Apollo federation spec."
13
-
14
- spec.add_dependency "elasticgraph-graphql", eg_version
15
- spec.add_dependency "elasticgraph-support", eg_version
16
- spec.add_dependency "graphql", "~> 2.4.8"
17
- spec.add_dependency "apollo-federation", "~> 3.8"
18
-
19
- # Note: technically, this is not purely a development dependency, but since `eg-schema_def`
20
- # isn't intended to be used in production (or even included in a deployed bundle) we don't
21
- # want to declare it as normal dependency here.
22
- spec.add_development_dependency "elasticgraph-schema_definition", eg_version
23
- spec.add_development_dependency "elasticgraph-admin", eg_version
24
- spec.add_development_dependency "elasticgraph-elasticsearch", eg_version
25
- spec.add_development_dependency "elasticgraph-opensearch", eg_version
26
- spec.add_development_dependency "elasticgraph-indexer", eg_version
27
- end