unix_socks 0.2.2 → 0.2.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ff99c579c122053cf042dbddd43977eb884c6a50cf53e061fe08d10054ff900e
4
- data.tar.gz: 0d4eb1bb3f2a906e7ca543751814e6892134e936a4acbdc620d99173f69aadbf
3
+ metadata.gz: 215ee14acc29cc75bc5bd6005d4b73afbc6612c0147e28362ccad7fb4d72694d
4
+ data.tar.gz: '05698df412aab41c8b546c96576d9d99ec5ede18e968166ba8d710f909e47927'
5
5
  SHA512:
6
- metadata.gz: 1267fc73bcde19dcd236b64a632c96183a7c1e0450185778f51a1cf2f9f856605a4795ec09a8b31bcfdfc13355be74c2af14f7f11bbdf05b6c6835d34a29d1b5
7
- data.tar.gz: f94c47a3c9ad08a93a0413d10e5cababd6d007094bcaf2ab04586b6dcd8bbc26e0163cde149521eeaf27e69738b525b11a6db7ca75688dcd0bd04c91cca8e79d
6
+ metadata.gz: 7ab4adacdbe6eed5c3c9e8f8df41cf10589901c77e8f7d7f8a29866ddb826f22825a76a07884a2739b088f0aac9449cd2ad32f5c0bb6ceb0ef4ebaa1526b071e
7
+ data.tar.gz: f5141f414e1962c7cf6d8881ccadad9003daff74da2b21a74fa18a24bab16e03ea3a8ae29e511596acc8bebd44503ede98238b218e1caa48f0462e65a1c79c11
data/CHANGES.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Changes
2
2
 
3
+ ## 2025-12-23 v0.2.3
4
+
5
+ - Handle `Errno::ENOENT` errors in the background socket server thread to
6
+ prevent crashes when socket files are removed or become inaccessible
7
+ - Add test case to verify background thread execution and `ENOENT` error
8
+ handling
9
+ - Maintain existing `at_exit` cleanup behavior to ensure socket file removal
10
+ - Update `UnixSocks::Server` to be more resilient to temporary file system
11
+ conditions
12
+ - Update `gem_hadar` development dependency to version **2.16.0**
13
+
3
14
  ## 2025-12-23 v0.2.2
4
15
 
5
16
  - Updated `gem_hadar` development dependency to version **2.15.0** or higher
@@ -111,6 +111,7 @@ class UnixSocks::Server
111
111
  end
112
112
  Thread.new do
113
113
  receive(force:, &block)
114
+ rescue Errno::ENOENT
114
115
  ensure
115
116
  at_exit { remove_socket_path }
116
117
  end
@@ -1,6 +1,6 @@
1
1
  module UnixSocks
2
2
  # UnixSocks version
3
- VERSION = '0.2.2'
3
+ VERSION = '0.2.3'
4
4
  VERSION_ARRAY = VERSION.split('.').map(&:to_i) # :nodoc:
5
5
  VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
6
6
  VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
@@ -139,6 +139,17 @@ describe UnixSocks::Server do
139
139
  server.receive_in_background(force: false)
140
140
  }.to raise_error(Errno::EEXIST)
141
141
  end
142
+
143
+ it 'runs the receiver in a background thread' do
144
+ expect(Thread).to receive(:new).and_yield
145
+ expect(FileUtils).to receive(:rm_f).with(server.server_socket_path)
146
+ expect(server).to receive(:at_exit) { |&block| block.call }
147
+ expect(server).to receive(:receive).and_raise Errno::ENOENT
148
+
149
+ expect {
150
+ server.receive_in_background(force: true)
151
+ }.not_to raise_error
152
+ end
142
153
  end
143
154
 
144
155
  describe '#socket_path_exist?' do
data/unix_socks.gemspec CHANGED
@@ -1,9 +1,9 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: unix_socks 0.2.2 ruby lib
2
+ # stub: unix_socks 0.2.3 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "unix_socks".freeze
6
- s.version = "0.2.2".freeze
6
+ s.version = "0.2.3".freeze
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib".freeze]
@@ -23,7 +23,7 @@ Gem::Specification.new do |s|
23
23
 
24
24
  s.specification_version = 4
25
25
 
26
- s.add_development_dependency(%q<gem_hadar>.freeze, [">= 2.15.0".freeze])
26
+ s.add_development_dependency(%q<gem_hadar>.freeze, [">= 2.16.0".freeze])
27
27
  s.add_development_dependency(%q<all_images>.freeze, ["~> 0.4".freeze])
28
28
  s.add_development_dependency(%q<rspec>.freeze, ["~> 3.2".freeze])
29
29
  s.add_development_dependency(%q<debug>.freeze, [">= 0".freeze])
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unix_socks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Frank
@@ -15,14 +15,14 @@ dependencies:
15
15
  requirements:
16
16
  - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: 2.15.0
18
+ version: 2.16.0
19
19
  type: :development
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - ">="
24
24
  - !ruby/object:Gem::Version
25
- version: 2.15.0
25
+ version: 2.16.0
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: all_images
28
28
  requirement: !ruby/object:Gem::Requirement