deprecation_collector 0.5.0 → 0.5.1
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/Gemfile.lock +1 -1
- data/gemfiles/rails_6.gemfile.lock +1 -1
- data/gemfiles/rails_7.gemfile.lock +1 -1
- data/gemfiles/rails_none.gemfile.lock +1 -1
- data/lib/deprecation_collector/storage.rb +9 -2
- data/lib/deprecation_collector/version.rb +1 -1
- data/lib/deprecation_collector/web/helpers.rb +5 -1
- data/lib/deprecation_collector/web/views/index.html.template.rb +3 -2
- data/lib/deprecation_collector.rb +16 -9
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 60dd6c4c552576ae19c4cb2a84232c5f7e6b83b0d8fb8e11b3a98bc5abf69bdf
|
4
|
+
data.tar.gz: f9f638c079489229bed7e525caaed0fb995b19ceff250146644d405462739e39
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b80b9bcfdbbccaf112b447f3ab04960f042ce98c74b53b35b76e9c4f3740a37fa1cc894ce632e7206c76bcb7eaaf8e13f596bcaa53398eb611fcd245a8b77214
|
7
|
+
data.tar.gz: 35992cd452d01b83a5884299873bd2d80c2e5d42f8977d77b72e0635f24d5bda475200eed936e74102181205575d62e511085606af3868b059377780e9efc8e1
|
data/Gemfile.lock
CHANGED
@@ -7,6 +7,8 @@ class DeprecationCollector
|
|
7
7
|
# :nodoc:
|
8
8
|
class Base
|
9
9
|
# rubocop:disable Style/SingleLineMethods
|
10
|
+
def initialize(**); end
|
11
|
+
def support_disabling?; false; end
|
10
12
|
def enabled?; true; end
|
11
13
|
def enable; end
|
12
14
|
def disable; end
|
@@ -16,6 +18,7 @@ class DeprecationCollector
|
|
16
18
|
|
17
19
|
def delete(digests); end
|
18
20
|
def clear(enable: false); end
|
21
|
+
def flush(**); end
|
19
22
|
|
20
23
|
def store(_deprecation); raise("Not implemented"); end
|
21
24
|
# rubocop:enable Style/SingleLineMethods
|
@@ -32,9 +35,9 @@ class DeprecationCollector
|
|
32
35
|
class Redis < Base
|
33
36
|
attr_accessor :write_interval, :write_interval_jitter, :redis, :count
|
34
37
|
|
35
|
-
def initialize(redis, mutex: nil, count: false, write_interval: 900, write_interval_jitter: 60,
|
38
|
+
def initialize(redis: nil, mutex: nil, count: false, write_interval: 900, write_interval_jitter: 60,
|
36
39
|
key_prefix: nil)
|
37
|
-
super
|
40
|
+
super
|
38
41
|
@key_prefix = key_prefix || "deprecations"
|
39
42
|
@redis = redis
|
40
43
|
@last_write_time = current_time
|
@@ -47,6 +50,10 @@ class DeprecationCollector
|
|
47
50
|
@known_digests = Set.new
|
48
51
|
end
|
49
52
|
|
53
|
+
def support_disabling?
|
54
|
+
true
|
55
|
+
end
|
56
|
+
|
50
57
|
def unsent_deprecations
|
51
58
|
@deprecations
|
52
59
|
end
|
@@ -65,7 +65,10 @@ class DeprecationCollector
|
|
65
65
|
msg = deprecation[:message]
|
66
66
|
return :kwargs if msg.include?("Using the last argument as keyword parameters is deprecated") ||
|
67
67
|
msg.include?("Passing the keyword argument as the last hash parameter is deprecated")
|
68
|
-
|
68
|
+
end
|
69
|
+
|
70
|
+
def test_deprecation?(deprecation)
|
71
|
+
%w[trigger_kwargs_error_warning trigger_rails_deprecation].any? { |method| deprecation[:message]}
|
69
72
|
end
|
70
73
|
|
71
74
|
def deprecation_tags(deprecation)
|
@@ -73,6 +76,7 @@ class DeprecationCollector
|
|
73
76
|
if (detected_tag = detect_tag(deprecation))
|
74
77
|
tags << detected_tag
|
75
78
|
end
|
79
|
+
tags << :test if test_deprecation?(deprecation)
|
76
80
|
tags << deprecation[:realm] if deprecation[:realm] && deprecation[:realm] != "rails"
|
77
81
|
tags.merge(deprecation.dig(:notes, :tags) || [])
|
78
82
|
|
@@ -6,7 +6,8 @@ _buf = ''; _buf << ("<header class=\"mb-3\"><h1>Deprecations</h1><a class=\"btn
|
|
6
6
|
;
|
7
7
|
;
|
8
8
|
;
|
9
|
-
; if DeprecationCollector.instance.
|
9
|
+
; if DeprecationCollector.instance.storage.support_disabling?;
|
10
|
+
; if DeprecationCollector.instance.storage.enabled?;
|
10
11
|
;
|
11
12
|
;
|
12
13
|
;
|
@@ -16,7 +17,7 @@ _buf = ''; _buf << ("<header class=\"mb-3\"><h1>Deprecations</h1><a class=\"btn
|
|
16
17
|
;
|
17
18
|
; _buf << ("<a class=\"btn btn-secondary\" data-method=\"post\"".freeze); _slim_codeattributes4 = enable_deprecations_path; if _slim_codeattributes4; if _slim_codeattributes4 == true; _buf << (" href=\"\"".freeze); else; _buf << (" href=\"".freeze); _buf << ((::Temple::Utils.escape_html((_slim_codeattributes4))).to_s); _buf << ("\"".freeze); end; end; _buf << (" rel=\"nofollow\">Turn on (after workers restart)</a> ".freeze);
|
18
19
|
;
|
19
|
-
; end; _buf << ("</header><main><table class=\"table table-striped\"><tr><th>Count</th><th>Message</th><th>Location</th><th>Ruby/Rails</th></tr>".freeze);
|
20
|
+
; end; end; _buf << ("</header><main><table class=\"table table-striped\"><tr><th>Count</th><th>Message</th><th>Location</th><th>Ruby/Rails</th></tr>".freeze);
|
20
21
|
;
|
21
22
|
;
|
22
23
|
;
|
@@ -78,35 +78,33 @@ class DeprecationCollector
|
|
78
78
|
self.count = false
|
79
79
|
self.write_interval = 900 # 15.minutes
|
80
80
|
self.write_interval_jitter = 60
|
81
|
+
self.key_prefix = "deprecations"
|
81
82
|
@context_saver = nil
|
82
83
|
end
|
83
84
|
|
84
85
|
def redis=(val)
|
85
86
|
raise ArgumentError, "redis should not be nil" unless val
|
86
|
-
|
87
|
-
|
88
|
-
write_interval: write_interval,
|
89
|
-
write_interval_jitter: write_interval_jitter,
|
90
|
-
key_prefix: key_prefix)
|
87
|
+
self.storage = DeprecationCollector::Storage::Redis unless storage.respond_to?(:redis=)
|
88
|
+
storage.redis = val
|
91
89
|
end
|
92
90
|
|
93
91
|
def count=(val)
|
94
|
-
storage.count = val if storage.respond_to?(:count)
|
92
|
+
storage.count = val if storage.respond_to?(:count=)
|
95
93
|
@count = val
|
96
94
|
end
|
97
95
|
|
98
96
|
def write_interval=(val)
|
99
|
-
storage.write_interval = val if storage.respond_to?(:write_interval)
|
97
|
+
storage.write_interval = val if storage.respond_to?(:write_interval=)
|
100
98
|
@write_interval = val
|
101
99
|
end
|
102
100
|
|
103
101
|
def write_interval_jitter=(val)
|
104
|
-
storage.write_interval_jitter = val if storage.respond_to?(:write_interval_jitter)
|
102
|
+
storage.write_interval_jitter = val if storage.respond_to?(:write_interval_jitter=)
|
105
103
|
@write_interval_jitter = val
|
106
104
|
end
|
107
105
|
|
108
106
|
def key_prefix=(val)
|
109
|
-
storage.key_prefix = val
|
107
|
+
storage.key_prefix = val if storage.respond_to?(:key_prefix=)
|
110
108
|
@key_prefix = val
|
111
109
|
end
|
112
110
|
|
@@ -114,6 +112,14 @@ class DeprecationCollector
|
|
114
112
|
@storage ||= DeprecationCollector::Storage::StdErr.new
|
115
113
|
end
|
116
114
|
|
115
|
+
def storage=(val)
|
116
|
+
return @storage = val unless val.is_a?(Class)
|
117
|
+
|
118
|
+
@storage = val.new(mutex: @instance_mutex, count: count,
|
119
|
+
write_interval: write_interval, write_interval_jitter: write_interval_jitter,
|
120
|
+
key_prefix: key_prefix)
|
121
|
+
end
|
122
|
+
|
117
123
|
def ignored_messages=(val)
|
118
124
|
@ignore_message_regexp = (val && Regexp.union(val)) || nil
|
119
125
|
end
|
@@ -173,6 +179,7 @@ class DeprecationCollector
|
|
173
179
|
storage.clear(enable: enable)
|
174
180
|
end
|
175
181
|
|
182
|
+
# deprecated, use storage.enabled?
|
176
183
|
def enabled_in_redis?
|
177
184
|
storage.enabled?
|
178
185
|
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.5.
|
4
|
+
version: 0.5.1
|
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-09-
|
11
|
+
date: 2023-09-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: redis
|