libuv 2.0.12 → 3.0.0
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/.gitignore +2 -0
- data/README.md +67 -34
- data/lib/libuv.rb +30 -5
- data/lib/libuv/async.rb +16 -10
- data/lib/libuv/check.rb +19 -12
- data/lib/libuv/coroutines.rb +39 -12
- data/lib/libuv/dns.rb +25 -18
- data/lib/libuv/error.rb +2 -0
- data/lib/libuv/ext/ext.rb +28 -36
- data/lib/libuv/ext/platform/darwin_x64.rb +2 -0
- data/lib/libuv/ext/platform/unix.rb +2 -0
- data/lib/libuv/ext/platform/windows.rb +2 -0
- data/lib/libuv/ext/tasks.rb +2 -0
- data/lib/libuv/ext/tasks/mac.rb +2 -0
- data/lib/libuv/ext/tasks/unix.rb +2 -0
- data/lib/libuv/ext/tasks/win.rb +2 -0
- data/lib/libuv/ext/types.rb +2 -1
- data/lib/libuv/file.rb +67 -50
- data/lib/libuv/filesystem.rb +63 -61
- data/lib/libuv/fs_event.rb +7 -4
- data/lib/libuv/handle.rb +30 -14
- data/lib/libuv/idle.rb +17 -10
- data/lib/libuv/mixins/accessors.rb +41 -0
- data/lib/libuv/mixins/assertions.rb +3 -1
- data/lib/libuv/mixins/fs_checks.rb +29 -6
- data/lib/libuv/mixins/listener.rb +4 -2
- data/lib/libuv/mixins/net.rb +4 -2
- data/lib/libuv/mixins/resource.rb +5 -3
- data/lib/libuv/mixins/stream.rb +128 -35
- data/lib/libuv/pipe.rb +54 -27
- data/lib/libuv/prepare.rb +19 -12
- data/lib/libuv/q.rb +109 -101
- data/lib/libuv/{loop.rb → reactor.rb} +163 -85
- data/lib/libuv/signal.rb +13 -5
- data/lib/libuv/tcp.rb +109 -63
- data/lib/libuv/timer.rb +44 -24
- data/lib/libuv/tty.rb +8 -3
- data/lib/libuv/udp.rb +49 -22
- data/lib/libuv/version.rb +3 -1
- data/lib/libuv/work.rb +14 -10
- data/libuv.gemspec +11 -9
- data/spec/async_spec.rb +13 -13
- data/spec/coroutines_spec.rb +20 -50
- data/spec/defer_spec.rb +182 -311
- data/spec/dns_spec.rb +51 -41
- data/spec/dsl_spec.rb +43 -0
- data/spec/filesystem_spec.rb +65 -87
- data/spec/idle_spec.rb +19 -33
- data/spec/pipe_spec.rb +25 -32
- data/spec/tcp_spec.rb +116 -53
- data/spec/timer_spec.rb +3 -3
- data/spec/udp_spec.rb +16 -17
- data/spec/zen_spec.rb +2 -3
- metadata +37 -30
data/spec/zen_spec.rb
CHANGED
@@ -9,7 +9,7 @@ describe Libuv::Listener do
|
|
9
9
|
|
10
10
|
# These are created by loop objects and are never cleaned up
|
11
11
|
# This is OK as the loops are expected to execute for the life of the application
|
12
|
-
except = [::Libuv::Async, ::Libuv::Timer, ::Libuv::Prepare]
|
12
|
+
except = [::Libuv::Async, ::Libuv::Timer, ::Libuv::Prepare, ::Libuv::Signal]
|
13
13
|
|
14
14
|
ObjectSpace.each_object(Class) do |cls|
|
15
15
|
next unless cls.ancestors.include? ::Libuv::Handle
|
@@ -21,8 +21,7 @@ describe Libuv::Listener do
|
|
21
21
|
|
22
22
|
if values.length > 0
|
23
23
|
puts "\nMemory Leak in #{cls} with #{values.length} left over objects"
|
24
|
-
puts "
|
25
|
-
puts "\n\nObjects are:"
|
24
|
+
puts "Checked #{checked.length} classes, objects are:"
|
26
25
|
values.each do |val|
|
27
26
|
puts "\n#{val}\n"
|
28
27
|
end
|
metadata
CHANGED
@@ -1,103 +1,101 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: libuv
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
- Bulat Shakirzyanov
|
8
7
|
- Stephen von Takach
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2016-10-20 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: ffi
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
16
|
requirements:
|
18
|
-
- - "
|
17
|
+
- - "~>"
|
19
18
|
- !ruby/object:Gem::Version
|
20
19
|
version: '1.9'
|
21
20
|
type: :runtime
|
22
21
|
prerelease: false
|
23
22
|
version_requirements: !ruby/object:Gem::Requirement
|
24
23
|
requirements:
|
25
|
-
- - "
|
24
|
+
- - "~>"
|
26
25
|
- !ruby/object:Gem::Version
|
27
26
|
version: '1.9'
|
28
27
|
- !ruby/object:Gem::Dependency
|
29
|
-
name:
|
28
|
+
name: concurrent-ruby
|
30
29
|
requirement: !ruby/object:Gem::Requirement
|
31
30
|
requirements:
|
32
|
-
- - "
|
31
|
+
- - "~>"
|
33
32
|
- !ruby/object:Gem::Version
|
34
|
-
version: '0'
|
33
|
+
version: '1.0'
|
35
34
|
type: :runtime
|
36
35
|
prerelease: false
|
37
36
|
version_requirements: !ruby/object:Gem::Requirement
|
38
37
|
requirements:
|
39
|
-
- - "
|
38
|
+
- - "~>"
|
40
39
|
- !ruby/object:Gem::Version
|
41
|
-
version: '0'
|
40
|
+
version: '1.0'
|
42
41
|
- !ruby/object:Gem::Dependency
|
43
42
|
name: ruby-tls
|
44
43
|
requirement: !ruby/object:Gem::Requirement
|
45
44
|
requirements:
|
46
|
-
- - "
|
45
|
+
- - "~>"
|
47
46
|
- !ruby/object:Gem::Version
|
48
|
-
version: 2.
|
47
|
+
version: '2.1'
|
49
48
|
type: :runtime
|
50
49
|
prerelease: false
|
51
50
|
version_requirements: !ruby/object:Gem::Requirement
|
52
51
|
requirements:
|
53
|
-
- - "
|
52
|
+
- - "~>"
|
54
53
|
- !ruby/object:Gem::Version
|
55
|
-
version: 2.
|
54
|
+
version: '2.1'
|
56
55
|
- !ruby/object:Gem::Dependency
|
57
56
|
name: rspec
|
58
57
|
requirement: !ruby/object:Gem::Requirement
|
59
58
|
requirements:
|
60
|
-
- - "
|
59
|
+
- - "~>"
|
61
60
|
- !ruby/object:Gem::Version
|
62
|
-
version: '
|
61
|
+
version: '3.5'
|
63
62
|
type: :development
|
64
63
|
prerelease: false
|
65
64
|
version_requirements: !ruby/object:Gem::Requirement
|
66
65
|
requirements:
|
67
|
-
- - "
|
66
|
+
- - "~>"
|
68
67
|
- !ruby/object:Gem::Version
|
69
|
-
version: '
|
68
|
+
version: '3.5'
|
70
69
|
- !ruby/object:Gem::Dependency
|
71
70
|
name: rake
|
72
71
|
requirement: !ruby/object:Gem::Requirement
|
73
72
|
requirements:
|
74
|
-
- - "
|
73
|
+
- - "~>"
|
75
74
|
- !ruby/object:Gem::Version
|
76
|
-
version: '
|
75
|
+
version: '11.2'
|
77
76
|
type: :development
|
78
77
|
prerelease: false
|
79
78
|
version_requirements: !ruby/object:Gem::Requirement
|
80
79
|
requirements:
|
81
|
-
- - "
|
80
|
+
- - "~>"
|
82
81
|
- !ruby/object:Gem::Version
|
83
|
-
version: '
|
82
|
+
version: '11.2'
|
84
83
|
- !ruby/object:Gem::Dependency
|
85
84
|
name: yard
|
86
85
|
requirement: !ruby/object:Gem::Requirement
|
87
86
|
requirements:
|
88
|
-
- - "
|
87
|
+
- - "~>"
|
89
88
|
- !ruby/object:Gem::Version
|
90
|
-
version: '0'
|
89
|
+
version: '0.9'
|
91
90
|
type: :development
|
92
91
|
prerelease: false
|
93
92
|
version_requirements: !ruby/object:Gem::Requirement
|
94
93
|
requirements:
|
95
|
-
- - "
|
94
|
+
- - "~>"
|
96
95
|
- !ruby/object:Gem::Version
|
97
|
-
version: '0'
|
96
|
+
version: '0.9'
|
98
97
|
description: An opinionated wrapper around libuv for Ruby
|
99
98
|
email:
|
100
|
-
- mallluhuct@gmail.com
|
101
99
|
- steve@cotag.me
|
102
100
|
executables: []
|
103
101
|
extensions:
|
@@ -124,6 +122,7 @@ files:
|
|
124
122
|
- ext/libuv/Makefile.am
|
125
123
|
- ext/libuv/Makefile.mingw
|
126
124
|
- ext/libuv/README.md
|
125
|
+
- ext/libuv/SUPPORTED_PLATFORMS.md
|
127
126
|
- ext/libuv/android-configure
|
128
127
|
- ext/libuv/appveyor.yml
|
129
128
|
- ext/libuv/autogen.sh
|
@@ -188,6 +187,7 @@ files:
|
|
188
187
|
- ext/libuv/include/uv-darwin.h
|
189
188
|
- ext/libuv/include/uv-errno.h
|
190
189
|
- ext/libuv/include/uv-linux.h
|
190
|
+
- ext/libuv/include/uv-os390.h
|
191
191
|
- ext/libuv/include/uv-sunos.h
|
192
192
|
- ext/libuv/include/uv-threadpool.h
|
193
193
|
- ext/libuv/include/uv-unix.h
|
@@ -240,6 +240,7 @@ files:
|
|
240
240
|
- ext/libuv/src/unix/loop.c
|
241
241
|
- ext/libuv/src/unix/netbsd.c
|
242
242
|
- ext/libuv/src/unix/openbsd.c
|
243
|
+
- ext/libuv/src/unix/os390.c
|
243
244
|
- ext/libuv/src/unix/pipe.c
|
244
245
|
- ext/libuv/src/unix/poll.c
|
245
246
|
- ext/libuv/src/unix/process.c
|
@@ -261,6 +262,7 @@ files:
|
|
261
262
|
- ext/libuv/src/win/async.c
|
262
263
|
- ext/libuv/src/win/atomicops-inl.h
|
263
264
|
- ext/libuv/src/win/core.c
|
265
|
+
- ext/libuv/src/win/detect-wakeup.c
|
264
266
|
- ext/libuv/src/win/dl.c
|
265
267
|
- ext/libuv/src/win/error.c
|
266
268
|
- ext/libuv/src/win/fs-event.c
|
@@ -400,6 +402,7 @@ files:
|
|
400
402
|
- ext/libuv/test/test-socket-buffer-size.c
|
401
403
|
- ext/libuv/test/test-spawn.c
|
402
404
|
- ext/libuv/test/test-stdio-over-pipes.c
|
405
|
+
- ext/libuv/test/test-tcp-alloc-cb-fail.c
|
403
406
|
- ext/libuv/test/test-tcp-bind-error.c
|
404
407
|
- ext/libuv/test/test-tcp-bind6-error.c
|
405
408
|
- ext/libuv/test/test-tcp-close-accept.c
|
@@ -431,6 +434,7 @@ files:
|
|
431
434
|
- ext/libuv/test/test-timer.c
|
432
435
|
- ext/libuv/test/test-tmpdir.c
|
433
436
|
- ext/libuv/test/test-tty.c
|
437
|
+
- ext/libuv/test/test-udp-alloc-cb-fail.c
|
434
438
|
- ext/libuv/test/test-udp-bind.c
|
435
439
|
- ext/libuv/test/test-udp-create-socket-early.c
|
436
440
|
- ext/libuv/test/test-udp-dgram-too-big.c
|
@@ -470,7 +474,7 @@ files:
|
|
470
474
|
- lib/libuv/fs_event.rb
|
471
475
|
- lib/libuv/handle.rb
|
472
476
|
- lib/libuv/idle.rb
|
473
|
-
- lib/libuv/
|
477
|
+
- lib/libuv/mixins/accessors.rb
|
474
478
|
- lib/libuv/mixins/assertions.rb
|
475
479
|
- lib/libuv/mixins/fs_checks.rb
|
476
480
|
- lib/libuv/mixins/listener.rb
|
@@ -480,6 +484,7 @@ files:
|
|
480
484
|
- lib/libuv/pipe.rb
|
481
485
|
- lib/libuv/prepare.rb
|
482
486
|
- lib/libuv/q.rb
|
487
|
+
- lib/libuv/reactor.rb
|
483
488
|
- lib/libuv/signal.rb
|
484
489
|
- lib/libuv/tcp.rb
|
485
490
|
- lib/libuv/timer.rb
|
@@ -493,6 +498,7 @@ files:
|
|
493
498
|
- spec/cpu_spec.rb
|
494
499
|
- spec/defer_spec.rb
|
495
500
|
- spec/dns_spec.rb
|
501
|
+
- spec/dsl_spec.rb
|
496
502
|
- spec/filesystem_spec.rb
|
497
503
|
- spec/idle_spec.rb
|
498
504
|
- spec/pipe_spec.rb
|
@@ -512,7 +518,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
512
518
|
requirements:
|
513
519
|
- - ">="
|
514
520
|
- !ruby/object:Gem::Version
|
515
|
-
version:
|
521
|
+
version: 2.0.0
|
516
522
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
517
523
|
requirements:
|
518
524
|
- - ">="
|
@@ -520,7 +526,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
520
526
|
version: '0'
|
521
527
|
requirements: []
|
522
528
|
rubyforge_project:
|
523
|
-
rubygems_version: 2.
|
529
|
+
rubygems_version: 2.5.1
|
524
530
|
signing_key:
|
525
531
|
specification_version: 4
|
526
532
|
summary: libuv bindings for Ruby
|
@@ -530,6 +536,7 @@ test_files:
|
|
530
536
|
- spec/cpu_spec.rb
|
531
537
|
- spec/defer_spec.rb
|
532
538
|
- spec/dns_spec.rb
|
539
|
+
- spec/dsl_spec.rb
|
533
540
|
- spec/filesystem_spec.rb
|
534
541
|
- spec/idle_spec.rb
|
535
542
|
- spec/pipe_spec.rb
|