debounced 1.0.2 → 1.0.3
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/CHANGELOG.md +4 -0
- data/lib/debounced/service_proxy.rb +11 -6
- data/lib/debounced/version.rb +1 -1
- data/lib/debounced.rb +2 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f90306d666ec22b89d230a9e57a589d7e3c6f6cc4344f4107958e018d3fc8dab
|
4
|
+
data.tar.gz: 0d035ebc14a9e4737ce9031484d56ecf4d46ffdf9dc97232f5d6f933cd971128
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 798c7ff5e42b9b610684550c5a05081d430399cd5bb138eacfd7fd92d1a9fade82a22597df5b7e5c561129522b8177fa3f948498d71b2728575d6d954fd0492e
|
7
|
+
data.tar.gz: 1b64a24b034f701d913b1d7ac0cfa7192e421028378c17a7bf51c2792e9c52facda9a0c5038c289d95f7a7959cece9dedfa77b6dae2f149baef06294bd1dcf27
|
data/CHANGELOG.md
CHANGED
@@ -19,3 +19,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
19
19
|
## [1.0.2] - 2025-03-26
|
20
20
|
|
21
21
|
- Fixed bug where Ruby (proxy) would allow messages to be sent to Javascript (server), even if the Ruby (proxy) was not listening for messages from Javascript (server)
|
22
|
+
|
23
|
+
## [1.0.3] - 2025-03-26
|
24
|
+
|
25
|
+
- Avoid using a trace log level, which is not supported by the default Rails loggers.
|
@@ -33,7 +33,7 @@ module Debounced
|
|
33
33
|
if socket.nil?
|
34
34
|
logger.warn("No connection to #{server_name}; unable to reset server.")
|
35
35
|
else
|
36
|
-
|
36
|
+
logger_trace { "Resetting #{server_name}" }
|
37
37
|
transmit({ type: 'reset' })
|
38
38
|
end
|
39
39
|
end
|
@@ -44,7 +44,7 @@ module Debounced
|
|
44
44
|
logger.debug { "No connection to #{server_name}; skipping debounce step." }
|
45
45
|
callback.call
|
46
46
|
else
|
47
|
-
|
47
|
+
logger_trace { "Sending #{activity_descriptor} to #{server_name}" }
|
48
48
|
transmit(build_request(activity_descriptor, timeout, callback))
|
49
49
|
end
|
50
50
|
end
|
@@ -99,7 +99,7 @@ module Debounced
|
|
99
99
|
def receive_message_from_server
|
100
100
|
raise NoServerError, "#{server_name} at #{socket_descriptor} not running" if socket.nil?
|
101
101
|
|
102
|
-
|
102
|
+
logger_trace { "Waiting for data from #{server_name}..." }
|
103
103
|
message = socket.gets(DELIMITER, chomp: true)
|
104
104
|
unless message
|
105
105
|
close
|
@@ -107,7 +107,7 @@ module Debounced
|
|
107
107
|
end
|
108
108
|
message
|
109
109
|
rescue IO::TimeoutError
|
110
|
-
|
110
|
+
logger_trace { "Timeout waiting for data" }
|
111
111
|
sleep wait_timeout
|
112
112
|
nil
|
113
113
|
rescue Errno::EPIPE, IOError, Errno::ECONNRESET
|
@@ -139,7 +139,7 @@ module Debounced
|
|
139
139
|
end
|
140
140
|
|
141
141
|
def deserialize_message(message)
|
142
|
-
|
142
|
+
logger_trace { "Deserializing #{message}" }
|
143
143
|
JSON.parse(message)
|
144
144
|
end
|
145
145
|
|
@@ -155,7 +155,7 @@ module Debounced
|
|
155
155
|
@mutex.synchronize do
|
156
156
|
return @socket if @socket
|
157
157
|
|
158
|
-
|
158
|
+
logger_trace { "Connecting to #{server_name} at #{socket_descriptor}" }
|
159
159
|
@socket = UNIXSocket.new(socket_descriptor).tap { |s| s.timeout = wait_timeout }
|
160
160
|
end
|
161
161
|
rescue Errno::ECONNREFUSED, Errno::ENOENT
|
@@ -164,5 +164,10 @@ module Debounced
|
|
164
164
|
# Errno::ECONNREFUSED is raised if the socket file exists but no process is listening on it.
|
165
165
|
nil
|
166
166
|
end
|
167
|
+
|
168
|
+
def logger_trace(&block)
|
169
|
+
logger.debug(&block) if Debounced.configuration.enable_trace_logging
|
170
|
+
end
|
171
|
+
|
167
172
|
end
|
168
173
|
end
|
data/lib/debounced/version.rb
CHANGED
data/lib/debounced.rb
CHANGED
@@ -20,7 +20,7 @@ module Debounced
|
|
20
20
|
end
|
21
21
|
|
22
22
|
class Configuration
|
23
|
-
attr_accessor :socket_descriptor, :wait_timeout, :logger
|
23
|
+
attr_accessor :socket_descriptor, :wait_timeout, :logger, :enable_trace_logging
|
24
24
|
|
25
25
|
def initialize
|
26
26
|
@socket_descriptor = ENV['DEBOUNCED_SOCKET'] || '/tmp/app.debounceEvents'
|
@@ -28,6 +28,7 @@ module Debounced
|
|
28
28
|
SemanticLogger.add_appender(file_name: 'debounced_proxy.log', formatter: :color)
|
29
29
|
SemanticLogger.default_level = ENV.fetch('LOG_LEVEL', 'info')
|
30
30
|
@logger = SemanticLogger['ServiceProxy']
|
31
|
+
@enable_trace_logging = ENV['TRACE_LOGGING'] == 'true'
|
31
32
|
end
|
32
33
|
end
|
33
34
|
end
|