isomorfeus-speednode 0.2.5 → 0.2.6

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: ff385e17d9a0ad14f80b1d1b9bafe5b41e2d168b2caf4e282cfcd9db1e7867e6
4
- data.tar.gz: 66c713e846617959a343c644ac2c09d326f901440f27c3ec3e1446790c6a4196
3
+ metadata.gz: f167c560233ea7e7be7878c82904042713a770bed43a0aea82be00873c2cdd5a
4
+ data.tar.gz: 520b52ea901320c811a772b82ca169b243c1bebe74bce0fcc6ea619cf0207eee
5
5
  SHA512:
6
- metadata.gz: 118dcf3ecb4e89fc7cee5b2eef95460d33e2826dd38cd0b14f89383a685790b710e917ba17daa77cd14ec1d9551888ae9f09941a9dca4f51606997aa7280475e
7
- data.tar.gz: 25b59b6254349cfaaa4b51710f66277e5dbc8b5c133fd6d4c571587d702c7bd36758fc88b4338dc78be4f30614c8e9ebb7e0375fbcd4c41ff67552cb62b32279
6
+ metadata.gz: 7030fae1af851c181b641fb1dcccc5d09f4fe19dd41ec44210b42d0e74b06f4ea20f1ebfb9f48716a7fc93a47fae24711584074027e825739cf789f975bb5a96
7
+ data.tar.gz: 41b7b7886d40935f03bc481b57d4856842178b8d260964008df82c99776e623909390016e498d3e5f62ecbdc64cf9de8cda09eb1f9730882a20a09e5ccfa7c28
@@ -32,10 +32,13 @@ module Isomorfeus
32
32
  @started
33
33
  end
34
34
 
35
- def self.finalize(socket)
35
+ def self.finalize(socket, socket_dir, socket_path, pid)
36
36
  proc {
37
37
  VMCommand.new(socket, "exit", [0]).execute
38
38
  socket.close
39
+ File.unlink(socket_path)
40
+ Dir.rmdir(socket_dir)
41
+ Process.kill('KILL', pid)
39
42
  }
40
43
  end
41
44
 
@@ -61,8 +64,8 @@ module Isomorfeus
61
64
 
62
65
  def start_without_synchronization
63
66
  return if @started
64
- dir = Dir.mktmpdir("isomorfeus-speednode-")
65
- @socket_path = File.join(dir, "socket")
67
+ @socket_dir = Dir.mktmpdir("isomorfeus-speednode-")
68
+ @socket_path = File.join(@socket_dir, "socket")
66
69
  @pid = Process.spawn({"SOCKET_PATH" => @socket_path}, @options[:binary], @options[:runner_path])
67
70
 
68
71
  retries = 20
@@ -82,10 +85,13 @@ module Isomorfeus
82
85
  unless @socket.closed?
83
86
  VMCommand.new(@socket, "exit", [0]).execute
84
87
  @socket.close
88
+ File.unlink(@socket_path)
89
+ Dir.rmdir(@socket_dir)
90
+ Process.kill('KILL', @pid)
85
91
  end
86
92
  end
87
93
 
88
- ObjectSpace.define_finalizer(self, self.class.finalize(@socket))
94
+ ObjectSpace.define_finalizer(self, self.class.finalize(@socket, @socket_dir, @socket_path, @pid))
89
95
  end
90
96
 
91
97
  def command(cmd, *arguments)
@@ -1,5 +1,5 @@
1
1
  module Isomorfeus
2
2
  module Speednode
3
- VERSION = '0.2.5'
3
+ VERSION = '0.2.6'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: isomorfeus-speednode
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Biedermann