From 5cfb3ac6fb3ede33f1824d481aea7b98894a2c96 Mon Sep 17 00:00:00 2001 From: Dylan Thacker-Smith Date: Fri, 15 Jan 2021 05:51:38 -0500 Subject: [PATCH] Fix ruby 2.7 keyword argument deprecation warnings --- dev.yml | 2 +- lib/identity_cache/cache_fetcher.rb | 4 ++-- lib/identity_cache/memoized_cache_proxy.rb | 2 +- test/fetch_test.rb | 6 ++++-- test/memoized_cache_proxy_test.rb | 3 ++- 5 files changed, 10 insertions(+), 7 deletions(-) diff --git a/dev.yml b/dev.yml index 2f16955b..4ce17165 100644 --- a/dev.yml +++ b/dev.yml @@ -6,7 +6,7 @@ up: - mysql-client@5.7: or: [mysql@5.7] conflicts: [mysql-connector-c, mysql, mysql-client] - - ruby: 2.6.5 + - ruby: 2.7.2 - railgun - bundler diff --git a/lib/identity_cache/cache_fetcher.rb b/lib/identity_cache/cache_fetcher.rb index 5cdc8a9b..d4c046e8 100644 --- a/lib/identity_cache/cache_fetcher.rb +++ b/lib/identity_cache/cache_fetcher.rb @@ -117,7 +117,7 @@ def fetch_with_fill_lock(key, fill_lock_duration, lock_wait_tries) if !fill_with_lock(key, data, lock, expiration_options) && !using_fallback_key # fallback to storing data in the fallback key so it is available to clients waiting on the lock expiration_options = fallback_key_expiration_options(fill_lock_duration) - @cache_backend.write(lock_fill_fallback_key(key, lock), data, **expiration_options) + @cache_backend.write(lock_fill_fallback_key(key, lock), data, expiration_options) end return data else @@ -296,7 +296,7 @@ def add_multi(keys) result.each { |k, v| add(k, v) } end - def add(key, value, **expiration_options) + def add(key, value, expiration_options = EMPTY_HASH) return false unless IdentityCache.should_fill_cache? @cache_backend.write(key, value, { unless_exist: true, **expiration_options }) end diff --git a/lib/identity_cache/memoized_cache_proxy.rb b/lib/identity_cache/memoized_cache_proxy.rb index c25ca45c..b452cc40 100644 --- a/lib/identity_cache/memoized_cache_proxy.rb +++ b/lib/identity_cache/memoized_cache_proxy.rb @@ -78,7 +78,7 @@ def fetch(key, cache_fetcher_options = {}) value = fetch_memoized(key) do memo_misses = 1 - @cache_fetcher.fetch(key, cache_fetcher_options) do + @cache_fetcher.fetch(key, **cache_fetcher_options) do cache_misses = 1 instrument_duration(payload, :resolve_miss_time) do yield diff --git a/test/fetch_test.rb b/test/fetch_test.rb index f87f829c..fc4fa1fc 100644 --- a/test/fetch_test.rb +++ b/test/fetch_test.rb @@ -43,7 +43,8 @@ def test_fetch_cache_hit_publishes_hydration_notification end def test_fetch_cache_hit_publishes_cache_notification - IdentityCache.cache.cache_fetcher.expects(:fetch).with(@blob_key, {}).returns(@cached_value) + expected_kwargs = {} + IdentityCache.cache.cache_fetcher.expects(:fetch).with(@blob_key, **expected_kwargs).returns(@cached_value) expected = { memoizing: false, resolve_miss_time: 0, memo_hits: 0, cache_hits: 1, cache_misses: 0 } events = 0 @@ -59,7 +60,8 @@ def test_fetch_cache_hit_publishes_cache_notification def test_fetch_memoized_hit_publishes_cache_notification subscriber = nil - IdentityCache.cache.cache_fetcher.expects(:fetch).with(@blob_key, {}).returns(@cached_value) + expected_kwargs = {} + IdentityCache.cache.cache_fetcher.expects(:fetch).with(@blob_key, **expected_kwargs).returns(@cached_value) expected = { memoizing: true, resolve_miss_time: 0, memo_hits: 1, cache_hits: 0, cache_misses: 0 } IdentityCache.cache.with_memoization do diff --git a/test/memoized_cache_proxy_test.rb b/test/memoized_cache_proxy_test.rb index 2d47e41f..56b24e16 100644 --- a/test/memoized_cache_proxy_test.rb +++ b/test/memoized_cache_proxy_test.rb @@ -41,7 +41,8 @@ def test_fetch_should_short_circuit_on_falsy_memoized_values end def test_fetch_should_try_memcached_on_not_memoized_values - fetcher.expects(:fetch).with('foo', {}).returns('bar') + expected_kwargs = {} + fetcher.expects(:fetch).with('foo', **expected_kwargs).returns('bar') IdentityCache.cache.with_memoization do assert_equal('bar', IdentityCache.cache.fetch('foo'))