deprecation_collector 0.7.0 → 0.7.2

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: 26bc69b0016762d0f5e8546f48177a7b2d90334bc8f4c995853c51e814386731
4
- data.tar.gz: d059f4d6985f9136305160d0e0a6ffe184a6ac1a927e31959241e525974d78ea
3
+ metadata.gz: 81d6dd372292acd1a8e2fcddc6ed4ca2f8f2d4ab73f9894318ba26067e96a8a0
4
+ data.tar.gz: c4884163cbc574b1ce86d4a799c51507b88e2dbaa2f1c720c1d7362e1e39e7c0
5
5
  SHA512:
6
- metadata.gz: 7a4609b79edbf7f54aa11538a7201595951ced8194d2a65fd01f4ef9be21cc75719fb27c1e0debbfcad5be2fc5407a9e8a04a6b398e7af2bc19c196461017437
7
- data.tar.gz: 70f742f7dbd0525ee444c5aa076ccd241f1b8b5acd7c20a10b8778e838a40b3ba383dffd2b58b8776da6bc978583775f16104e89db5d1f1746bfe03e6e1ef8a3
6
+ metadata.gz: 9d17b36f5eee269337f20ca2901db6fb12f59d4fedc6a440be878e05956b742c69da0169ada8f89cd86e9d003e8a58421b00b18a767f23ce43ab0f17071aa0c4
7
+ data.tar.gz: a9902de9301144e6ed222eb786d32f1a13c3f504598d0dcc9d7479876c8fe0df566df1d6dc22af5695027c09231e360b72fbf9230632aacc9bd83656e08918e3
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ == 0.7.2
2
+ - fix error `undefined method instance_of? for Redis::Future` for redis < 5
3
+
4
+ == 0.7.1
5
+ - fix ruby 2.7 on rails 7.1
6
+
1
7
  == 0.7.0
2
8
  - support for Rails 7.1
3
9
  - make install critical section smaller to prevent installation deprecations preventing installation
@@ -40,7 +40,7 @@ class DeprecationCollector
40
40
  def tap_activesupport
41
41
  # TODO: a more polite hook
42
42
  # not polite to turn off all other possible behaviors, but otherwise may get duplicate calls
43
- if Rails.respond_to?(:gem_version) && Rails.gem_version >= "7.1"
43
+ if Rails.respond_to?(:gem_version) && Rails.gem_version >= Gem::Version.new("7.1")
44
44
  Rails.application.deprecators.behavior = ACTIVE_SUPPORT_BEHAVIORS[:rails71] if Rails.application&.deprecators
45
45
  # Rails.application.deprecators.behavior only captures new-style deprecations, but we need all:
46
46
  if ActiveSupport::Deprecation.respond_to?(:_instance)
@@ -109,6 +109,8 @@ class DeprecationCollector
109
109
 
110
110
  def flush(force: false)
111
111
  return unless force || (current_time > @last_write_time + @write_interval)
112
+ # do not disturb existing redis connection if already in pipeline, hope that will be flushed some other time
113
+ return if in_redis_pipeline?
112
114
 
113
115
  deprecations_to_flush = nil
114
116
  @deprecations_mutex.synchronize do
@@ -182,6 +184,11 @@ class DeprecationCollector
182
184
  end
183
185
 
184
186
  protected
187
+ def in_redis_pipeline?
188
+ return false if Gem::Version.new(::Redis::VERSION) >= Gem::Version.new("5.0")
189
+
190
+ redis.instance_variable_get(:@client) != redis.instance_variable_get(:@original_client)
191
+ end
185
192
 
186
193
  def enabled_flag_key
187
194
  @enabled_flag_key ||= "#{@key_prefix}:enabled" # usually deprecations:enabled
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class DeprecationCollector
4
- VERSION = "0.7.0"
4
+ VERSION = "0.7.2"
5
5
  end
@@ -51,7 +51,7 @@ class DeprecationCollector
51
51
  return unless defined?(ActiveSupport::Deprecation)
52
52
 
53
53
  deprecator = ActiveSupport::Deprecation
54
- deprecator = ActiveSupport::Deprecation.new("0.0", "deprecation_collector") if Rails.gem_version >= "7.1"
54
+ deprecator = ActiveSupport::Deprecation.new("0.0", "deprecation_collector") if Rails.gem_version >= Gem::Version.new("7.1")
55
55
 
56
56
  -> { deprecator.warn("Test deprecation") } []
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: deprecation_collector
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.7.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vasily Fedoseyev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-10-23 00:00:00.000000000 Z
11
+ date: 2024-04-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: redis
@@ -78,7 +78,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
78
78
  - !ruby/object:Gem::Version
79
79
  version: '0'
80
80
  requirements: []
81
- rubygems_version: 3.4.10
81
+ rubygems_version: 3.1.6
82
82
  signing_key:
83
83
  specification_version: 4
84
84
  summary: Collector for ruby/rails deprecations and warnings, suitable for production