polyphony 0.49.0 → 0.49.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/Gemfile.lock +1 -1
- data/TODO.md +3 -2
- data/ext/polyphony/backend_io_uring.c +1 -1
- data/lib/polyphony.rb +1 -1
- data/lib/polyphony/adapters/process.rb +2 -0
- data/lib/polyphony/net.rb +3 -6
- data/lib/polyphony/version.rb +1 -1
- data/test/test_timer.rb +6 -4
- 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: 4d455bffada65a186f47a33dec9a29bf81a8a025b4c536a0d3136e256a3aaa55
|
4
|
+
data.tar.gz: '094f9bae247c640ac2ea721625b5dd4b58ae4943186bfc015c9c830117a9dbee'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e8a462663b9e1bca1f99b301c8d904b5fad091851dff9cf5af785bf3a76802ddeb5904565b4a79e916b8a4b97001181a48bed7a56dadf1143dfc11d9ae7762d2
|
7
|
+
data.tar.gz: 68765d941201a2d74ae1e8cc20a9ea3c6fba9e68b6a552dc65a399a7ad8853a619a259ebc1dc705cdb2f3eae77adee4098de1186212755f7d87064bbaaf125f8
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
data/TODO.md
CHANGED
@@ -1,6 +1,7 @@
|
|
1
|
-
- Check segfault when
|
1
|
+
- Check segfault when resetting a `cancel_after` timeout lots of times at very high rate
|
2
|
+
- Check why `throttled_loop` inside of `move_on_after` fails to stop
|
2
3
|
|
3
|
-
- Override stock
|
4
|
+
- Override stock `::SizedQueue` impl with Queue with capacity
|
4
5
|
|
5
6
|
- Add support for `break` and `StopIteration` in all loops (with tests)
|
6
7
|
|
@@ -72,7 +72,7 @@ static VALUE Backend_initialize(VALUE self) {
|
|
72
72
|
backend->pending_count = 0;
|
73
73
|
backend->poll_no_wait_count = 0;
|
74
74
|
backend->pending_sqes = 0;
|
75
|
-
backend->prepared_limit =
|
75
|
+
backend->prepared_limit = 2048;
|
76
76
|
|
77
77
|
context_store_initialize(&backend->store);
|
78
78
|
io_uring_queue_init(backend->prepared_limit, &backend->ring, 0);
|
data/lib/polyphony.rb
CHANGED
data/lib/polyphony/net.rb
CHANGED
@@ -8,10 +8,7 @@ module Polyphony
|
|
8
8
|
module Net
|
9
9
|
class << self
|
10
10
|
def tcp_connect(host, port, opts = {})
|
11
|
-
socket =
|
12
|
-
addr = ::Socket.sockaddr_in(port, host)
|
13
|
-
s.connect(addr)
|
14
|
-
end
|
11
|
+
socket = TCPSocket.new(host, port)
|
15
12
|
if opts[:secure_context] || opts[:secure]
|
16
13
|
secure_socket(socket, opts[:secure_context], opts.merge(host: host))
|
17
14
|
else
|
@@ -23,7 +20,7 @@ module Polyphony
|
|
23
20
|
host ||= '0.0.0.0'
|
24
21
|
raise 'Port number not specified' unless port
|
25
22
|
|
26
|
-
socket =
|
23
|
+
socket = listening_socket_from_options(host, port, opts)
|
27
24
|
if opts[:secure_context] || opts[:secure]
|
28
25
|
secure_server(socket, opts[:secure_context], opts)
|
29
26
|
else
|
@@ -31,7 +28,7 @@ module Polyphony
|
|
31
28
|
end
|
32
29
|
end
|
33
30
|
|
34
|
-
def
|
31
|
+
def listening_socket_from_options(host, port, opts)
|
35
32
|
::Socket.new(:INET, :STREAM).tap do |s|
|
36
33
|
s.reuse_addr if opts[:reuse_addr]
|
37
34
|
s.dont_linger if opts[:dont_linger]
|
data/lib/polyphony/version.rb
CHANGED
data/test/test_timer.rb
CHANGED
@@ -31,13 +31,15 @@ class TimerMoveOnAfterTest < MiniTest::Test
|
|
31
31
|
end
|
32
32
|
t1 = Time.now
|
33
33
|
|
34
|
-
assert_in_range 0.01..0.
|
34
|
+
assert_in_range 0.01..0.025, t1 - t0
|
35
35
|
assert_equal :bar, v
|
36
36
|
end
|
37
37
|
|
38
38
|
def test_move_on_after_with_reset
|
39
39
|
t0 = Time.now
|
40
40
|
v = @timer.move_on_after(0.01, with_value: :moved_on) do
|
41
|
+
sleep 0.007
|
42
|
+
@timer.reset
|
41
43
|
sleep 0.007
|
42
44
|
@timer.reset
|
43
45
|
sleep 0.007
|
@@ -46,11 +48,11 @@ class TimerMoveOnAfterTest < MiniTest::Test
|
|
46
48
|
t1 = Time.now
|
47
49
|
|
48
50
|
assert_nil v
|
49
|
-
assert_in_range 0.
|
51
|
+
assert_in_range 0.02..0.03, t1 - t0
|
50
52
|
end
|
51
53
|
end
|
52
54
|
|
53
|
-
class
|
55
|
+
class TimerCancelAfterTest < MiniTest::Test
|
54
56
|
def setup
|
55
57
|
@timer = Polyphony::Timer.new(resolution: 0.01)
|
56
58
|
end
|
@@ -69,7 +71,7 @@ class CancelAfterTest < MiniTest::Test
|
|
69
71
|
end
|
70
72
|
end
|
71
73
|
t1 = Time.now
|
72
|
-
assert_in_range 0.01..0.
|
74
|
+
assert_in_range 0.01..0.03, t1 - t0
|
73
75
|
end
|
74
76
|
|
75
77
|
def test_cancel_after_with_reset
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: polyphony
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.49.
|
4
|
+
version: 0.49.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sharon Rosner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-01-
|
11
|
+
date: 2021-01-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake-compiler
|