graphql-persisted_queries 1.6.1 β 1.7.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 +4 -4
- data/.github/workflows/rspec.yml +1 -1
- data/CHANGELOG.md +7 -0
- data/README.md +6 -0
- data/graphql-persisted_queries.gemspec +1 -1
- data/lib/graphql/persisted_queries/store_adapters/base_store_adapter.rb +2 -3
- data/lib/graphql/persisted_queries/store_adapters/memcached_store_adapter.rb +0 -2
- data/lib/graphql/persisted_queries/store_adapters/memory_store_adapter.rb +0 -2
- data/lib/graphql/persisted_queries/store_adapters/redis_store_adapter.rb +0 -2
- data/lib/graphql/persisted_queries/store_adapters/redis_with_local_cache_store_adapter.rb +5 -15
- data/lib/graphql/persisted_queries/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 430993c73790f83784c3e048a8fa0a4032f2fa5809b725265b5600b6ca8b5a01
|
4
|
+
data.tar.gz: 10aaa0422835323129d2e771f9bcfa68c4b8d24563ff7b8fb0f341b29dc92dd4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c8cf0e07efa3c4a2ea92af6014333c3adc08f1471357b3cc31f1d93779e5af3920e7c71b308bff62f34366211fd5912baadd9780cc2978c9b4185582524f9181
|
7
|
+
data.tar.gz: f001860c11580ae570e25875f548a167ec878d87545befb39b7ee13a58385e2d2fda86a0919745030b915fed8bd84b3cc6200462c467b320e823cb43a9785047
|
data/.github/workflows/rspec.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,12 @@
|
|
2
2
|
|
3
3
|
## master
|
4
4
|
|
5
|
+
## 1.7.0 (2023-02-02)
|
6
|
+
|
7
|
+
- [PR#62](https://github.com/DmitryTsepelev/graphql-ruby-persisted_queries/pull/62)
|
8
|
+
Fix double hashing of keys in case of redis_with_local_cache_store adapter ([@mpospelov][])
|
9
|
+
- [PR#62](https://github.com/DmitryTsepelev/graphql-ruby-persisted_queries/pull/62) Drop tracers= implementation as it's no longer valid ([@mpospelov][])
|
10
|
+
|
5
11
|
## 1.6.1 (2022-11-17)
|
6
12
|
|
7
13
|
- [PR#60](https://github.com/DmitryTsepelev/graphql-ruby-persisted_queries/pull/60)
|
@@ -112,3 +118,4 @@ Handle situations when prepare_ast happens before instrumentation ([@DmitryTsepe
|
|
112
118
|
[@ogidow]: https://github.com/ogidow
|
113
119
|
[@rbviz]: https://github.com/rbviz
|
114
120
|
[@louim]: https://github.com/louim
|
121
|
+
[@mpospelov]: https://github.com/mpospelov
|
data/README.md
CHANGED
@@ -6,6 +6,12 @@
|
|
6
6
|
- π€**Clients share cached queries** β it's enough to miss cache only once for each unique query
|
7
7
|
- π
**Works for clients without persisted query support**
|
8
8
|
|
9
|
+
Used in production by:
|
10
|
+
|
11
|
+
- [Yammer by Microsoft](https://github.com/DmitryTsepelev/graphql-ruby-persisted_queries/issues/20#issuecomment-587945989)
|
12
|
+
- Toptal
|
13
|
+
- _Want to be here? Let me know_ π
|
14
|
+
|
9
15
|
## Getting started
|
10
16
|
|
11
17
|
First of all, install and configure [apollo's persisted queries](https://www.apollographql.com/docs/react/api/link/persisted-queries/) on the frontβend side:
|
@@ -20,7 +20,7 @@ Gem::Specification.new do |spec|
|
|
20
20
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
21
21
|
spec.require_paths = ["lib"]
|
22
22
|
|
23
|
-
spec.required_ruby_version = ">= 2.
|
23
|
+
spec.required_ruby_version = ">= 2.7"
|
24
24
|
|
25
25
|
spec.add_dependency "graphql", ">= 1.12"
|
26
26
|
|
@@ -12,7 +12,8 @@ module GraphQL
|
|
12
12
|
@name = :base
|
13
13
|
end
|
14
14
|
|
15
|
-
def fetch_query(hash,
|
15
|
+
def fetch_query(hash, options = {})
|
16
|
+
compiled_query = options[:compiled_query] || false
|
16
17
|
key = build_key(hash, compiled_query)
|
17
18
|
|
18
19
|
fetch(key).tap do |result|
|
@@ -26,8 +27,6 @@ module GraphQL
|
|
26
27
|
trace("save_query", adapter: @name) { save(key, query) }
|
27
28
|
end
|
28
29
|
|
29
|
-
protected
|
30
|
-
|
31
30
|
def fetch(_hash)
|
32
31
|
raise NotImplementedError
|
33
32
|
end
|
@@ -22,29 +22,19 @@ module GraphQL
|
|
22
22
|
@name = :redis_with_local_cache
|
23
23
|
end
|
24
24
|
|
25
|
-
# We don't need to implement our own traces for this adapter since the
|
26
|
-
# underlying adapters will emit the proper events for us. However,
|
27
|
-
# since tracers can be defined at any time, we need to pass them through.
|
28
|
-
def tracers=(tracers)
|
29
|
-
@memory_adapter.tracers = tracers
|
30
|
-
@redis_adapter.tracers = tracers
|
31
|
-
end
|
32
|
-
|
33
|
-
protected
|
34
|
-
|
35
25
|
def fetch(hash)
|
36
|
-
result = @memory_adapter.
|
26
|
+
result = @memory_adapter.fetch(hash)
|
37
27
|
result ||= begin
|
38
|
-
inner_result = @redis_adapter.
|
39
|
-
@memory_adapter.
|
28
|
+
inner_result = @redis_adapter.fetch(hash)
|
29
|
+
@memory_adapter.save(hash, inner_result) if inner_result
|
40
30
|
inner_result
|
41
31
|
end
|
42
32
|
result
|
43
33
|
end
|
44
34
|
|
45
35
|
def save(hash, query)
|
46
|
-
@redis_adapter.
|
47
|
-
@memory_adapter.
|
36
|
+
@redis_adapter.save(hash, query)
|
37
|
+
@memory_adapter.save(hash, query)
|
48
38
|
end
|
49
39
|
|
50
40
|
private
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: graphql-persisted_queries
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- DmitryTsepelev
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-02-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: graphql
|
@@ -182,14 +182,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
182
182
|
requirements:
|
183
183
|
- - ">="
|
184
184
|
- !ruby/object:Gem::Version
|
185
|
-
version: '2.
|
185
|
+
version: '2.7'
|
186
186
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
187
187
|
requirements:
|
188
188
|
- - ">="
|
189
189
|
- !ruby/object:Gem::Version
|
190
190
|
version: '0'
|
191
191
|
requirements: []
|
192
|
-
rubygems_version: 3.
|
192
|
+
rubygems_version: 3.4.1
|
193
193
|
signing_key:
|
194
194
|
specification_version: 4
|
195
195
|
summary: Persisted queries for graphql-ruby
|