apollo-federation 3.6.2 → 3.6.4

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: 0de75a7114f5a4c922ac67271a52772644978b4e0057b97f4687c72b9a613ed7
4
- data.tar.gz: 91326185c0402516133aec8fba8366465e2a97f67bea97e2db30865c02c496a8
3
+ metadata.gz: 4cd2e7169071acfad2efc91a881ff435f2769d2512a77bc898687742238ccf0f
4
+ data.tar.gz: 0a18f66aecfa94e7b653503812d464f4900d5a0ba89a9f06e598cebc1a5e8990
5
5
  SHA512:
6
- metadata.gz: 8be50cbc71cf8f025c736b98eee8c7504cc8c98690061d7eab8de6ea4433a4220c48cea360579e912fcb47b4a34479604d7abf8fee79b7969d632c5bfd130c2e
7
- data.tar.gz: 121a373eaa6eda86c315acdc52a3dde5258e12b261ff2afb031cb025da34b094d9a693492c3e60c223da1f190604fc0ca55a8118281095f05671b9d64bb1613a
6
+ metadata.gz: 0c3b8e04e0091382af8da1661b0f9d8dc2d9174321048991fee0eff357859c40588e83b99426407d852a9eb640e4b781506e49ba8abaa6acb55c2c5fe8e43798
7
+ data.tar.gz: f9ddc5ef1a13af0d247c8a90a62d48f292517a33c6cd8c6b1057aea8942f531005424e5fb89c22b7fe6f4769eae4dbf702bc8c4da69767bbd25bc9941e9ba143
data/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [3.6.4](https://github.com/Gusto/apollo-federation-ruby/compare/v3.6.3...v3.6.4) (2023-04-19)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * inherit Query type from schema superclass ([#241](https://github.com/Gusto/apollo-federation-ruby/issues/241)) ([0efb37e](https://github.com/Gusto/apollo-federation-ruby/commit/0efb37e2c2b14fc7ed99c695f35ed48d363d7695))
7
+
8
+ ## [3.6.3](https://github.com/Gusto/apollo-federation-ruby/compare/v3.6.2...v3.6.3) (2023-04-12)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * ensure correct ordering of `resolve_references` ([#239](https://github.com/Gusto/apollo-federation-ruby/issues/239)) ([f9948a7](https://github.com/Gusto/apollo-federation-ruby/commit/f9948a76c3e55e40cf2ae5e2bb8ca5575ca1a6a9))
14
+
1
15
  ## [3.6.2](https://github.com/Gusto/apollo-federation-ruby/compare/v3.6.1...v3.6.2) (2023-03-27)
2
16
 
3
17
  ## [3.6.1](https://github.com/Gusto/apollo-federation-ruby/compare/v3.6.0...v3.6.1) (2023-03-24)
@@ -27,10 +27,9 @@ module ApolloFederation
27
27
  end
28
28
 
29
29
  def _entities(representations:)
30
- grouped_references = representations.group_by { |r| r[:__typename] }
30
+ chunked_references = representations.chunk { |r| r[:__typename] }
31
31
 
32
- final_results = []
33
- grouped_references.each do |typename, references|
32
+ chunked_references.flat_map do |typename, references|
34
33
  # TODO: Use warden or schema?
35
34
  type = context.warden.get_type(typename)
36
35
  if type.nil? || type.kind != GraphQL::TypeKinds::OBJECT
@@ -50,7 +49,7 @@ module ApolloFederation
50
49
  results = references
51
50
  end
52
51
 
53
- results = results.map do |result|
52
+ results.map do |result|
54
53
  context.schema.after_lazy(result) do |resolved_value|
55
54
  # TODO: This isn't 100% correct: if (for some reason) 2 different resolve_reference
56
55
  # calls return the same object, it might not have the right type
@@ -60,9 +59,7 @@ module ApolloFederation
60
59
  resolved_value
61
60
  end
62
61
  end
63
- final_results = final_results.concat(results)
64
62
  end
65
- final_results
66
63
  end
67
64
 
68
65
  private
@@ -46,7 +46,7 @@ module ApolloFederation
46
46
  @orig_query_object = new_query_object
47
47
  else
48
48
  if !@federation_query_object
49
- @federation_query_object = federation_query(@orig_query_object)
49
+ @federation_query_object = federation_query(original_query)
50
50
  @federation_query_object.define_entities_field(schema_entities)
51
51
 
52
52
  super(@federation_query_object)
@@ -58,6 +58,10 @@ module ApolloFederation
58
58
 
59
59
  private
60
60
 
61
+ def original_query
62
+ @orig_query_object || find_inherited_value(:original_query)
63
+ end
64
+
61
65
  def federation_2_prefix
62
66
  federation_namespace = ", as: \"#{link_namespace}\"" if link_namespace != DEFAULT_LINK_NAMESPACE
63
67
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ApolloFederation
4
- VERSION = '3.6.2'
4
+ VERSION = '3.6.4'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: apollo-federation
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.6.2
4
+ version: 3.6.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Noa Elad
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2023-03-27 00:00:00.000000000 Z
12
+ date: 2023-04-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: graphql
@@ -255,7 +255,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
255
255
  - !ruby/object:Gem::Version
256
256
  version: '0'
257
257
  requirements: []
258
- rubygems_version: 3.4.6
258
+ rubygems_version: 3.4.10
259
259
  signing_key:
260
260
  specification_version: 4
261
261
  summary: A Ruby implementation of Apollo Federation