goru 0.4.1 → 0.4.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: ee1c8b3918ce9583f53e8d0e80c15b45ac402a33cd006b43cc022c90ddab02ae
4
- data.tar.gz: 8f951013098962c00aca0e20ba82a3b81b6d30ccb7d36abfae333f042b9bbd53
3
+ metadata.gz: e51ea3837c3867f3454c5c4794a9a9aca28a5d8e72b199a616a6fe450294e0af
4
+ data.tar.gz: a7efb9761602db2224ddf2d8c48ba9c89d0e3c872f4b880a6dc4fec7633d4068
5
5
  SHA512:
6
- metadata.gz: 339305691d3b38927b32c5cc51040a2cd48f179956bcfc6d04648631a6508d2d4147c63a3eef4a75cdd7517a37b255e654875c66f6da60b39a37b20a64fb2028
7
- data.tar.gz: 65fa5d90461938fac3c3857e431505ba855dabd555afb60993b6a52f4f1d3468db0d7747f433d53139fbc2b34ce600b3677aeb0c73ac79f08514732454a7c599
6
+ metadata.gz: 8f926d07bd70647ea0b05c3eb78244e234174ba0b720bf13e40178674bb2189e1fffd562a8ae2f7df3f39c86fc2612762caf9e29a3e19128f4dabd510cc08e49
7
+ data.tar.gz: 025ec84977d4c997f4578a15934420d7060656512b8ba46e02f8b768cd42ec0cf56488234985b0a4d074003f9e0ca1e6e2ce144544b48c123344e7b52c6e31a2
data/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## [v0.4.2](https://github.com/bryanp/goru/releases/tag/v0.4.2)
2
+
3
+ *released on 2023-09-17*
4
+
5
+ * `fix` [#24](https://github.com/bryanp/goru/pull/24) Close the io object when the routine is finished ([bryanp](https://github.com/bryanp))
6
+ * `fix` [#25](https://github.com/bryanp/goru/pull/25) Handle IOError in the scheduler and reactor ([bryanp](https://github.com/bryanp))
7
+
1
8
  ## [v0.4.1](https://github.com/bryanp/goru/releases/tag/v0.4.1)
2
9
 
3
10
  *released on 2023-07-29*
data/lib/goru/channel.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "./reactor"
3
+ require_relative "reactor"
4
4
 
5
5
  module Goru
6
6
  class Channel
data/lib/goru/reactor.rb CHANGED
@@ -108,6 +108,7 @@ module Goru
108
108
  end
109
109
 
110
110
  @timers.fire
111
+ rescue IOError
111
112
  end
112
113
 
113
114
  private def wait(timeout: nil)
@@ -161,6 +161,13 @@ module Goru
161
161
  @reactor.wakeup
162
162
  end
163
163
 
164
+ # [public]
165
+ #
166
+ def finished(...)
167
+ @io.close
168
+ super
169
+ end
170
+
164
171
  private def status_changed
165
172
  case @status
166
173
  when Routine::STATUS_FINISHED
@@ -50,6 +50,7 @@ module Goru
50
50
  Thread.new {
51
51
  Thread.handle_interrupt(Interrupt => :never) do
52
52
  reactor.run
53
+ rescue IOError
53
54
  end
54
55
  }
55
56
  }
data/lib/goru/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Goru
4
- VERSION = "0.4.1"
4
+ VERSION = "0.4.2"
5
5
 
6
6
  # [public]
7
7
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: goru
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bryan Powell
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-07-29 00:00:00.000000000 Z
11
+ date: 2023-09-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: core-extension