event 0.4.2 → 0.7.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.
Binary file
data/ext/event/event.c CHANGED
@@ -19,6 +19,7 @@
19
19
  // THE SOFTWARE.
20
20
 
21
21
  #include "event.h"
22
+ #include "backend/backend.h"
22
23
 
23
24
  VALUE Event = Qnil;
24
25
  VALUE Event_Backend = Qnil;
@@ -32,6 +33,8 @@ void Init_event()
32
33
  Event = rb_define_module("Event");
33
34
  Event_Backend = rb_define_module_under(Event, "Backend");
34
35
 
36
+ Init_Event_Backend(Event_Backend);
37
+
35
38
  #ifdef EVENT_BACKEND_URING
36
39
  Init_Event_Backend_URing(Event_Backend);
37
40
  #endif
data/ext/event/event.h CHANGED
@@ -26,14 +26,14 @@
26
26
 
27
27
  void Init_event();
28
28
 
29
- #if HAVE_LIBURING_H
29
+ #ifdef HAVE_LIBURING_H
30
30
  #include "backend/uring.h"
31
31
  #endif
32
32
 
33
- #if HAVE_SYS_EPOLL_H
33
+ #ifdef HAVE_SYS_EPOLL_H
34
34
  #include "backend/epoll.h"
35
35
  #endif
36
36
 
37
- #if HAVE_SYS_EVENT_H
37
+ #ifdef HAVE_SYS_EVENT_H
38
38
  #include "backend/kqueue.h"
39
39
  #endif
data/ext/event/event.o ADDED
Binary file
@@ -0,0 +1,4 @@
1
+ #ifndef EXTCONF_H
2
+ #define EXTCONF_H
3
+ #define HAVE_SYS_EVENT_H 1
4
+ #endif
data/ext/event/extconf.rb CHANGED
@@ -30,9 +30,11 @@ dir_config(extension_name)
30
30
 
31
31
  $CFLAGS << " -Wall"
32
32
 
33
- $srcs = ["event.c"]
33
+ $srcs = ["event.c", "backend/backend.c"]
34
34
  $VPATH << "$(srcdir)/backend"
35
35
 
36
+ have_func('&rb_fiber_transfer')
37
+
36
38
  if have_library('uring') and have_header('liburing.h')
37
39
  $srcs << "backend/uring.c"
38
40
  end
@@ -45,6 +47,11 @@ if have_header('sys/event.h')
45
47
  $srcs << "backend/kqueue.c"
46
48
  end
47
49
 
50
+ have_func("rb_io_descriptor")
51
+ have_func("&rb_process_status_wait")
52
+
53
+ have_header('ruby/io/buffer.h')
54
+
48
55
  create_header
49
56
 
50
57
  # Generate the makefile to compile the native binary into `lib`:
Binary file
@@ -0,0 +1,195 @@
1
+ have_func: checking for &rb_fiber_transfer()... -------------------- no
2
+
3
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
4
+ checked program was:
5
+ /* begin */
6
+ 1: #include "ruby.h"
7
+ 2:
8
+ 3: int main(int argc, char **argv)
9
+ 4: {
10
+ 5: return !!argv[argc];
11
+ 6: }
12
+ /* end */
13
+
14
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
15
+ conftest.c:14:76: error: use of undeclared identifier 'rb_fiber_transfer'
16
+ int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_fiber_transfer; return !p; }
17
+ ^
18
+ 1 error generated.
19
+ checked program was:
20
+ /* begin */
21
+ 1: #include "ruby.h"
22
+ 2:
23
+ 3: /*top*/
24
+ 4: extern int t(void);
25
+ 5: int main(int argc, char **argv)
26
+ 6: {
27
+ 7: if (argc > 1000000) {
28
+ 8: int (* volatile tp)(void)=(int (*)(void))&t;
29
+ 9: printf("%d", (*tp)());
30
+ 10: }
31
+ 11:
32
+ 12: return !!argv[argc];
33
+ 13: }
34
+ 14: int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_fiber_transfer; return !p; }
35
+ /* end */
36
+
37
+ --------------------
38
+
39
+ have_library: checking for -luring... -------------------- no
40
+
41
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc -luring "
42
+ ld: library not found for -luring
43
+ clang: error: linker command failed with exit code 1 (use -v to see invocation)
44
+ checked program was:
45
+ /* begin */
46
+ 1: #include "ruby.h"
47
+ 2:
48
+ 3: /*top*/
49
+ 4: extern int t(void);
50
+ 5: int main(int argc, char **argv)
51
+ 6: {
52
+ 7: if (argc > 1000000) {
53
+ 8: int (* volatile tp)(void)=(int (*)(void))&t;
54
+ 9: printf("%d", (*tp)());
55
+ 10: }
56
+ 11:
57
+ 12: return !!argv[argc];
58
+ 13: }
59
+ 14:
60
+ 15: int t(void) { ; return 0; }
61
+ /* end */
62
+
63
+ --------------------
64
+
65
+ have_header: checking for sys/epoll.h... -------------------- no
66
+
67
+ "clang -E -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -o conftest.i"
68
+ conftest.c:3:10: fatal error: 'sys/epoll.h' file not found
69
+ #include <sys/epoll.h>
70
+ ^~~~~~~~~~~~~
71
+ 1 error generated.
72
+ checked program was:
73
+ /* begin */
74
+ 1: #include "ruby.h"
75
+ 2:
76
+ 3: #include <sys/epoll.h>
77
+ /* end */
78
+
79
+ --------------------
80
+
81
+ have_header: checking for sys/event.h... -------------------- yes
82
+
83
+ "clang -E -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -o conftest.i"
84
+ checked program was:
85
+ /* begin */
86
+ 1: #include "ruby.h"
87
+ 2:
88
+ 3: #include <sys/event.h>
89
+ /* end */
90
+
91
+ --------------------
92
+
93
+ have_func: checking for rb_io_descriptor()... -------------------- no
94
+
95
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
96
+ conftest.c:14:57: error: use of undeclared identifier 'rb_io_descriptor'
97
+ int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_io_descriptor; return !p; }
98
+ ^
99
+ 1 error generated.
100
+ checked program was:
101
+ /* begin */
102
+ 1: #include "ruby.h"
103
+ 2:
104
+ 3: /*top*/
105
+ 4: extern int t(void);
106
+ 5: int main(int argc, char **argv)
107
+ 6: {
108
+ 7: if (argc > 1000000) {
109
+ 8: int (* volatile tp)(void)=(int (*)(void))&t;
110
+ 9: printf("%d", (*tp)());
111
+ 10: }
112
+ 11:
113
+ 12: return !!argv[argc];
114
+ 13: }
115
+ 14: int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_io_descriptor; return !p; }
116
+ /* end */
117
+
118
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
119
+ Undefined symbols for architecture x86_64:
120
+ "_rb_io_descriptor", referenced from:
121
+ _t in conftest-9dccb6.o
122
+ ld: symbol(s) not found for architecture x86_64
123
+ clang: error: linker command failed with exit code 1 (use -v to see invocation)
124
+ checked program was:
125
+ /* begin */
126
+ 1: #include "ruby.h"
127
+ 2:
128
+ 3: /*top*/
129
+ 4: extern int t(void);
130
+ 5: int main(int argc, char **argv)
131
+ 6: {
132
+ 7: if (argc > 1000000) {
133
+ 8: int (* volatile tp)(void)=(int (*)(void))&t;
134
+ 9: printf("%d", (*tp)());
135
+ 10: }
136
+ 11:
137
+ 12: return !!argv[argc];
138
+ 13: }
139
+ 14: extern void rb_io_descriptor();
140
+ 15: int t(void) { rb_io_descriptor(); return 0; }
141
+ /* end */
142
+
143
+ --------------------
144
+
145
+ have_func: checking for &rb_process_status_wait()... -------------------- no
146
+
147
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
148
+ conftest.c:14:76: error: use of undeclared identifier 'rb_process_status_wait'
149
+ int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_process_status_wait; return !p; }
150
+ ^
151
+ 1 error generated.
152
+ checked program was:
153
+ /* begin */
154
+ 1: #include "ruby.h"
155
+ 2:
156
+ 3: /*top*/
157
+ 4: extern int t(void);
158
+ 5: int main(int argc, char **argv)
159
+ 6: {
160
+ 7: if (argc > 1000000) {
161
+ 8: int (* volatile tp)(void)=(int (*)(void))&t;
162
+ 9: printf("%d", (*tp)());
163
+ 10: }
164
+ 11:
165
+ 12: return !!argv[argc];
166
+ 13: }
167
+ 14: int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_process_status_wait; return !p; }
168
+ /* end */
169
+
170
+ --------------------
171
+
172
+ have_header: checking for ruby/io/buffer.h... -------------------- no
173
+
174
+ "clang -E -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -o conftest.i"
175
+ conftest.c:3:10: fatal error: 'ruby/io/buffer.h' file not found
176
+ #include <ruby/io/buffer.h>
177
+ ^~~~~~~~~~~~~~~~~~
178
+ 1 error generated.
179
+ checked program was:
180
+ /* begin */
181
+ 1: #include "ruby.h"
182
+ 2:
183
+ 3: #include <ruby/io/buffer.h>
184
+ /* end */
185
+
186
+ --------------------
187
+
188
+ extconf.h is:
189
+ /* begin */
190
+ 1: #ifndef EXTCONF_H
191
+ 2: #define EXTCONF_H
192
+ 3: #define HAVE_SYS_EVENT_H 1
193
+ 4: #endif
194
+ /* end */
195
+
@@ -26,6 +26,8 @@ module Event
26
26
 
27
27
  @readable = {}
28
28
  @writable = {}
29
+
30
+ @ready = []
29
31
  end
30
32
 
31
33
  def close
@@ -34,6 +36,24 @@ module Event
34
36
  @writable = nil
35
37
  end
36
38
 
39
+ def defer
40
+ fiber = Fiber.current
41
+ @ready.push(fiber)
42
+ @loop.transfer
43
+ ensure
44
+ # Linear scan :(
45
+ @ready.delete(fiber)
46
+ end
47
+
48
+ def transfer(fiber)
49
+ @ready.push(Fiber.current)
50
+ fiber.transfer
51
+ end
52
+
53
+ def ready?
54
+ @ready.any?
55
+ end
56
+
37
57
  def io_wait(fiber, io, events)
38
58
  remove_readable = remove_writable = false
39
59
 
@@ -53,7 +73,76 @@ module Event
53
73
  @writable.delete(io) if remove_writable
54
74
  end
55
75
 
76
+ if IO.const_defined?(:Buffer)
77
+ def io_read(fiber, io, buffer, length)
78
+ offset = 0
79
+
80
+ while length > 0
81
+ # The maximum size we can read:
82
+ maximum_size = buffer.size - offset
83
+
84
+ case result = io.read_nonblock(maximum_size, exception: false)
85
+ when :wait_readable
86
+ self.io_wait(fiber, io, READABLE)
87
+ when :wait_writable
88
+ self.io_wait(fiber, io, WRITABLE)
89
+ else
90
+ break if result.empty?
91
+
92
+ buffer.copy(result, offset)
93
+
94
+ offset += result.bytesize
95
+ length -= result.bytesize
96
+ end
97
+ end
98
+
99
+ return offset
100
+ end
101
+
102
+ def io_write(fiber, io, buffer, length)
103
+ offset = 0
104
+
105
+ while length > 0
106
+ # From offset until the end:
107
+ chunk = buffer.to_str(offset, length)
108
+ case result = io.write_nonblock(chunk, exception: false)
109
+ when :wait_readable
110
+ self.io_wait(fiber, io, READABLE)
111
+ when :wait_writable
112
+ self.io_wait(fiber, io, WRITABLE)
113
+ else
114
+ offset += result
115
+ length -= result
116
+ end
117
+ end
118
+
119
+ return offset
120
+ end
121
+ end
122
+
123
+ def process_wait(fiber, pid, flags)
124
+ r, w = IO.pipe
125
+
126
+ thread = Thread.new do
127
+ Process::Status.wait(pid, flags)
128
+ ensure
129
+ w.close
130
+ end
131
+
132
+ self.io_wait(fiber, r, READABLE)
133
+
134
+ return thread.value
135
+ ensure
136
+ r.close
137
+ w.close
138
+ thread&.kill
139
+ end
140
+
56
141
  def select(duration = nil)
142
+ while @ready.any?
143
+ @ready.pop.transfer
144
+ end
145
+
57
146
  readable, writable, _ = ::IO.select(@readable.keys, @writable.keys, nil, duration)
58
147
 
59
148
  ready = Hash.new(0)
@@ -69,7 +158,7 @@ module Event
69
158
  end
70
159
 
71
160
  ready.each do |fiber, events|
72
- fiber.transfer(events)
161
+ fiber.transfer(events) if fiber.alive?
73
162
  end
74
163
  end
75
164
  end
data/lib/event/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Event
2
- VERSION = "0.4.2"
2
+ VERSION = "0.7.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: event
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.2
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Williams
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-07 00:00:00.000000000 Z
11
+ date: 2021-07-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bake
@@ -73,16 +73,25 @@ extensions:
73
73
  - ext/event/extconf.rb
74
74
  extra_rdoc_files: []
75
75
  files:
76
+ - ext/event/Makefile
77
+ - ext/event/backend.o
78
+ - ext/event/backend/backend.c
76
79
  - ext/event/backend/backend.h
77
80
  - ext/event/backend/epoll.c
78
81
  - ext/event/backend/epoll.h
79
82
  - ext/event/backend/kqueue.c
80
83
  - ext/event/backend/kqueue.h
84
+ - ext/event/backend/pidfd.c
81
85
  - ext/event/backend/uring.c
82
86
  - ext/event/backend/uring.h
87
+ - ext/event/event.bundle
83
88
  - ext/event/event.c
84
89
  - ext/event/event.h
90
+ - ext/event/event.o
91
+ - ext/event/extconf.h
85
92
  - ext/event/extconf.rb
93
+ - ext/event/kqueue.o
94
+ - ext/event/mkmf.log
86
95
  - lib/event.rb
87
96
  - lib/event/backend.rb
88
97
  - lib/event/backend/select.rb
@@ -108,7 +117,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
108
117
  - !ruby/object:Gem::Version
109
118
  version: '0'
110
119
  requirements: []
111
- rubygems_version: 3.1.2
120
+ rubygems_version: 3.2.15
112
121
  signing_key:
113
122
  specification_version: 4
114
123
  summary: An event loop.