kgio 2.9.0 → 2.9.0.2.gf33a

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: a20888642038e335617b76c1c02240031e39e80e
4
+ data.tar.gz: 5c5e03c15913587c7316333fbcc718c14a838918
5
+ SHA512:
6
+ metadata.gz: 98e1cd7d8ad346fcea8e09606e7f1e36d990e3026b63a1bb615f47b00acbe80595d3dc1ca231fa1b092efb014d724dbb092b4c3f36c1763f60d6762342563d7c
7
+ data.tar.gz: 4d03954d25061918ecc9e868cab594f9784ef10842b1f9cdba1e6a709fc20c2283b662f8bc71ce4283e5733577ff61ac12182bc8856d10cf8b68732d75d73896
data/ext/kgio/kgio.h CHANGED
@@ -96,4 +96,10 @@ static inline void kgio_autopush_write(VALUE io) { }
96
96
  #else
97
97
  static inline void kgio_autopush_write(VALUE io) { kgio_autopush_send(io); }
98
98
  #endif
99
+
100
+ /* prefer rb_str_subseq because we don't use negative offsets */
101
+ #ifndef HAVE_RB_STR_SUBSEQ
102
+ #define rb_str_subseq rb_str_substr
103
+ #endif
104
+
99
105
  #endif /* KGIO_H */
data/ext/kgio/write.c CHANGED
@@ -4,11 +4,6 @@
4
4
  #include "nonblock.h"
5
5
  static VALUE sym_wait_writable;
6
6
 
7
- /* prefer rb_str_subseq because we don't use negative offsets */
8
- #ifndef HAVE_RB_STR_SUBSEQ
9
- #define rb_str_subseq rb_str_substr
10
- #endif
11
-
12
7
  struct wr_args {
13
8
  VALUE io;
14
9
  VALUE buf;
@@ -261,7 +256,7 @@ void init_kgio_write(void)
261
256
  rb_define_method(mSocketMethods, "kgio_write", kgio_send, 1);
262
257
  rb_define_method(mSocketMethods, "kgio_trywrite", kgio_trysend, 1);
263
258
 
264
- #ifdef USE_MSG_DONTWAIT
259
+ #if defined(KGIO_HAVE_THREAD_CALL_WITHOUT_GVL)
265
260
  rb_define_method(mSocketMethods, "kgio_syssend", kgio_syssend, 2);
266
261
  #endif
267
262
  }
data/ext/kgio/writev.c CHANGED
@@ -19,6 +19,17 @@ static ssize_t assert_writev(int fd, void* iov, int len)
19
19
  }
20
20
  # define writev assert_writev
21
21
  #endif
22
+
23
+ #ifndef HAVE_RB_ARY_SUBSEQ
24
+ static inline VALUE my_ary_subseq(VALUE ary, long idx, long len)
25
+ {
26
+ VALUE args[2] = { LONG2FIX(idx), LONG2FIX(len) };
27
+
28
+ return rb_ary_aref(2, args, ary);
29
+ }
30
+ #define rb_ary_subseq my_ary_subseq
31
+ #endif
32
+
22
33
  static VALUE sym_wait_writable;
23
34
 
24
35
  #ifndef HAVE_WRITEV
data/test/test_syssend.rb CHANGED
@@ -40,4 +40,4 @@ class TestKgioSyssend < Test::Unit::TestCase
40
40
  ensure
41
41
  [ srv, acc, client ].each { |io| io.close if io }
42
42
  end
43
- end if RUBY_PLATFORM =~ /linux/
43
+ end if RUBY_PLATFORM =~ /linux/ && Socket.const_defined?(:MSG_MORE)
metadata CHANGED
@@ -1,23 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kgio
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.9.0
5
- prerelease:
4
+ version: 2.9.0.2.gf33a
6
5
  platform: ruby
7
6
  authors:
8
7
  - kgio hackers
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-02-04 00:00:00.000000000 Z
11
+ date: 2014-02-05 00:00:00.000000000 Z
13
12
  dependencies: []
14
- description: ! 'kgio provides non-blocking I/O methods for Ruby without raising
15
-
13
+ description: |-
14
+ kgio provides non-blocking I/O methods for Ruby without raising
16
15
  exceptions on EAGAIN and EINPROGRESS. It is intended for use with the
17
-
18
16
  Unicorn and Rainbows! Rack servers, but may be used by other
19
-
20
- applications (that run on Unix-like platforms).'
17
+ applications (that run on Unix-like platforms).
21
18
  email: kgio@librelist.org
22
19
  executables: []
23
20
  extensions:
@@ -40,10 +37,10 @@ extra_rdoc_files:
40
37
  - ext/kgio/wait.c
41
38
  - ext/kgio/tryopen.c
42
39
  files:
43
- - .document
44
- - .gitignore
45
- - .manifest
46
- - .wrongdoc.yml
40
+ - ".document"
41
+ - ".gitignore"
42
+ - ".manifest"
43
+ - ".wrongdoc.yml"
47
44
  - COPYING
48
45
  - ChangeLog
49
46
  - GIT-VERSION-FILE
@@ -112,57 +109,56 @@ files:
112
109
  - test/test_unix_server_read_client_write.rb
113
110
  homepage: http://bogomips.org/kgio/
114
111
  licenses: []
112
+ metadata: {}
115
113
  post_install_message:
116
114
  rdoc_options:
117
- - -t
115
+ - "-t"
118
116
  - kgio - kinder, gentler I/O for Ruby
119
- - -W
117
+ - "-W"
120
118
  - http://bogomips.org/kgio.git/tree/%s
121
119
  require_paths:
122
120
  - lib
123
121
  required_ruby_version: !ruby/object:Gem::Requirement
124
- none: false
125
122
  requirements:
126
- - - ! '>='
123
+ - - ">="
127
124
  - !ruby/object:Gem::Version
128
125
  version: '0'
129
126
  required_rubygems_version: !ruby/object:Gem::Requirement
130
- none: false
131
127
  requirements:
132
- - - ! '>='
128
+ - - ">"
133
129
  - !ruby/object:Gem::Version
134
- version: '0'
130
+ version: 1.3.1
135
131
  requirements: []
136
132
  rubyforge_project: rainbows
137
- rubygems_version: 1.8.23
133
+ rubygems_version: 2.2.0
138
134
  signing_key:
139
- specification_version: 3
135
+ specification_version: 4
140
136
  summary: kinder, gentler I/O for Ruby
141
137
  test_files:
142
- - test/test_poll.rb
143
- - test/test_peek.rb
144
- - test/test_socket.rb
145
- - test/test_default_wait.rb
146
- - test/test_no_dns_on_tcp_connect.rb
147
- - test/test_unix_connect.rb
148
- - test/test_syssend.rb
149
- - test/test_pipe_read_write.rb
150
- - test/test_unix_server.rb
151
- - test/test_accept_flags.rb
152
- - test/test_socketpair_read_write.rb
138
+ - test/test_tryopen.rb
153
139
  - test/test_tfo.rb
140
+ - test/test_tcp_server_read_client_write.rb
141
+ - test/test_poll.rb
154
142
  - test/test_tcp_server.rb
155
- - test/test_unix_server_read_client_write.rb
156
- - test/test_cross_thread_close.rb
157
- - test/test_tcp_connect.rb
143
+ - test/test_pipe_popen.rb
144
+ - test/test_unix_server.rb
145
+ - test/test_tcp6_client_read_server_write.rb
146
+ - test/test_kgio_addr.rb
147
+ - test/test_no_dns_on_tcp_connect.rb
148
+ - test/test_peek.rb
158
149
  - test/test_autopush.rb
159
- - test/test_connect_fd_leak.rb
150
+ - test/test_unix_server_read_client_write.rb
160
151
  - test/test_singleton_read_write.rb
161
- - test/test_kgio_addr.rb
162
- - test/test_tryopen.rb
163
- - test/test_tcp6_client_read_server_write.rb
164
- - test/test_tcp_server_read_client_write.rb
152
+ - test/test_tcp_connect.rb
153
+ - test/test_socketpair_read_write.rb
165
154
  - test/test_unix_client_read_server_write.rb
155
+ - test/test_default_wait.rb
156
+ - test/test_syssend.rb
166
157
  - test/test_tcp_client_read_server_write.rb
167
- - test/test_pipe_popen.rb
158
+ - test/test_connect_fd_leak.rb
159
+ - test/test_unix_connect.rb
160
+ - test/test_pipe_read_write.rb
161
+ - test/test_accept_flags.rb
162
+ - test/test_socket.rb
168
163
  - test/test_accept_class.rb
164
+ - test/test_cross_thread_close.rb