apollo-federation 3.6.2 → 3.6.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0de75a7114f5a4c922ac67271a52772644978b4e0057b97f4687c72b9a613ed7
4
- data.tar.gz: 91326185c0402516133aec8fba8366465e2a97f67bea97e2db30865c02c496a8
3
+ metadata.gz: 1efc645c70a3c45df82674b36d9493fb0e42d0b95374864f9874176328aa75cf
4
+ data.tar.gz: 00d3b0d231e1224f73c98683ad77aca42857f1e932cf4e75e44d85a089c5edc0
5
5
  SHA512:
6
- metadata.gz: 8be50cbc71cf8f025c736b98eee8c7504cc8c98690061d7eab8de6ea4433a4220c48cea360579e912fcb47b4a34479604d7abf8fee79b7969d632c5bfd130c2e
7
- data.tar.gz: 121a373eaa6eda86c315acdc52a3dde5258e12b261ff2afb031cb025da34b094d9a693492c3e60c223da1f190604fc0ca55a8118281095f05671b9d64bb1613a
6
+ metadata.gz: a83a211f72274fd05a5ac4dbfc056bda9f664eed387820dd71e27b7e4829aa91857ab59ab54db834c6e65dcbad17b9cfdde53efa56d0f4ab685e483def2bbe61
7
+ data.tar.gz: 1453d0e1e2a6b9d877db833159a1636a34d1ae01d7302fe4e3252cd2ba94c1e2aef88ee9b58012b32c4ba4961e4f0029ded9be5f159549776f3f51cd4dc73022
data/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## [3.6.3](https://github.com/Gusto/apollo-federation-ruby/compare/v3.6.2...v3.6.3) (2023-04-12)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * 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))
7
+
1
8
  ## [3.6.2](https://github.com/Gusto/apollo-federation-ruby/compare/v3.6.1...v3.6.2) (2023-03-27)
2
9
 
3
10
  ## [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
@@ -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.3'
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.3
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-12 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