cool.io 1.5.2 → 1.7.0

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: 15f50eb78f315679f49cce2521c2c45bc74c000a4a3dde609b4cb2f1d2ddd9df
4
- data.tar.gz: 16e0a1db03380e5bf4bd781a92b2e92ad89f1cb1fe1690c51b654dbc1673d7b4
3
+ metadata.gz: 8ed51c0fcb16152e1701478f796fcfa8a02bfb17b913ec3398fad6845fdc405d
4
+ data.tar.gz: 9ee69e4eaebc4ea779817a0212a1cc2de3ddaa455a7b881757e0a0df5574b0ab
5
5
  SHA512:
6
- metadata.gz: 1556fe818c5ed22208ae010cb41d9554ce4d2d30137e971f64d8f69180e91eb2827ee82785c31192140807b6f348a08eb22a827e1643dba7348ce847f3fc5631
7
- data.tar.gz: f0ff8484dfe2b731b41fa2eafb57c8cd7fb958befa772e5aafd0edfd75f2d83269d956ac8640d7b20d5cb23eaab365ebf1b6d09679194fefd14f55e42fc5c0d1
6
+ metadata.gz: a0c8c358607429e50d2f65e54792f31b60b81137b543e62fe6add5e02412d736bd2f38d6b17088e82de3efa6edb22965b67b7272de711089064632823aee6ce6
7
+ data.tar.gz: '098896359667045cbee494f2efa0bb440b925df84c116143273f37cebd89049d053061fe9e9c76f07664c905c7ed7eed79cb9585f3147503c701b638c9064e87'
@@ -3,12 +3,10 @@ language: ruby
3
3
  sudo: false
4
4
 
5
5
  rvm:
6
- - 1.9.3
7
- - 2.0
8
- - 2.1
9
- - 2.2
10
- - 2.3.0
11
- - 2.4.1
6
+ - 2.4.10
7
+ - 2.5
8
+ - 2.6
9
+ - 2.7
12
10
  - ruby-head
13
11
  - rbx
14
12
 
data/CHANGES.md CHANGED
@@ -1,7 +1,33 @@
1
+ 1.7.0
2
+ -----
3
+
4
+ * Fix extension build failure for ruby3
5
+
6
+ 1.6.1
7
+ -----
8
+
9
+ * Fix warning for recent compilers
10
+
11
+ 1.6.0
12
+ -----
13
+
14
+ * Add ruby 2.6/2.7 to windows gem
15
+ * Drop ruby 2.1/2.2/2.3 from windows gem
16
+
17
+ 1.5.4
18
+ -----
19
+
20
+ * Add ruby 2.5 to windows gem
21
+
22
+ 1.5.3
23
+ -----
24
+
25
+ * Fix invalid IOWatcher's rb_funcall that causes ArgumentError with ruby 2.5 and clang
26
+
1
27
  1.5.2
2
28
  -----
3
29
 
4
- * Fix invalid rb_funcall that causes ArgumentError with ruby 2.5 and clang
30
+ * Fix invalid TimerWatcher's rb_funcall that causes ArgumentError with ruby 2.5 and clang
5
31
 
6
32
  1.5.1
7
33
  -----
data/Rakefile CHANGED
@@ -48,8 +48,7 @@ namespace :build do
48
48
  task :windows do
49
49
  require 'rake_compiler_dock'
50
50
  RakeCompilerDock.sh <<-CROSS
51
- bundle
52
- rake cross native gem RUBY_CC_VERSION='2.0.0:2.1.6:2.2.2:2.3.0:2.4.0'
51
+ bundle && bundle exec rake cross native gem RUBY_CC_VERSION='2.7.0:2.6.0:2.5.0:2.4.0'
53
52
  CROSS
54
53
  end
55
54
  end
@@ -11,6 +11,7 @@ Gem::Specification.new do |s|
11
11
  s.summary = "A cool framework for doing high performance I/O in Ruby"
12
12
  s.description = "Cool.io provides a high performance event framework for Ruby which uses the libev C library"
13
13
  s.extensions = ["ext/cool.io/extconf.rb", "ext/iobuffer/extconf.rb"]
14
+ s.licenses = ["MIT"]
14
15
 
15
16
  s.files = `git ls-files`.split("\n")
16
17
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
@@ -18,7 +19,7 @@ Gem::Specification.new do |s|
18
19
  s.require_paths = ["lib"]
19
20
 
20
21
  s.add_development_dependency "rake-compiler", "~> 1.0"
21
- s.add_development_dependency "rake-compiler-dock", "~> 0.6.0"
22
+ s.add_development_dependency "rake-compiler-dock", "~> 1.0"
22
23
  s.add_development_dependency "rspec", ">= 2.13.0"
23
24
  s.add_development_dependency "rdoc", ">= 3.6.0"
24
25
  end
@@ -8,7 +8,11 @@
8
8
  #define COOLIO_H
9
9
 
10
10
  #include "ruby.h"
11
+ #if defined(HAVE_RUBY_IO_H)
12
+ #include "ruby/io.h"
13
+ #else
11
14
  #include "rubyio.h"
15
+ #endif
12
16
 
13
17
  #ifdef GetReadFile
14
18
  #define FPTR_TO_FD(fptr) (fileno(GetReadFile(fptr)))
@@ -56,4 +60,11 @@ struct Coolio_Watcher
56
60
 
57
61
  void Coolio_Loop_process_event(VALUE watcher, int revents);
58
62
 
63
+ void Init_coolio_loop();
64
+ void Init_coolio_watcher();
65
+ void Init_coolio_iowatcher();
66
+ void Init_coolio_timer_watcher();
67
+ void Init_coolio_stat_watcher();
68
+ void Init_coolio_utils();
69
+
59
70
  #endif
@@ -10,6 +10,14 @@ have_func('rb_thread_alone')
10
10
  have_func('rb_str_set_len')
11
11
  have_library('rt', 'clock_gettime')
12
12
 
13
+ if have_header('ruby/io.h')
14
+ $defs << '-DHAVE_RUBY_IO_H'
15
+ end
16
+
17
+ if have_header('ruby/thread.h')
18
+ $defs << '-DHAVE_RUBY_THREAD_H'
19
+ end
20
+
13
21
  if have_header('sys/select.h')
14
22
  $defs << '-DEV_USE_SELECT'
15
23
  end
@@ -5,7 +5,11 @@
5
5
  */
6
6
 
7
7
  #include "ruby.h"
8
+ #if defined(HAVE_RUBY_IO_H)
9
+ #include "ruby/io.h"
10
+ #else
8
11
  #include "rubyio.h"
12
+ #endif
9
13
 
10
14
  #include "ev_wrap.h"
11
15
 
@@ -181,9 +185,9 @@ static void Coolio_IOWatcher_libev_callback(struct ev_loop *ev_loop, struct ev_i
181
185
  static void Coolio_IOWatcher_dispatch_callback(VALUE self, int revents)
182
186
  {
183
187
  if(revents & EV_READ)
184
- rb_funcall(self, rb_intern("on_readable"), 0, 0);
188
+ rb_funcall(self, rb_intern("on_readable"), 0);
185
189
  else if(revents & EV_WRITE)
186
- rb_funcall(self, rb_intern("on_writable"), 0, 0);
190
+ rb_funcall(self, rb_intern("on_writable"), 0);
187
191
  else
188
192
  rb_raise(rb_eRuntimeError, "unknown revents value for ev_io: %d", revents);
189
193
  }
@@ -6,7 +6,6 @@
6
6
 
7
7
  #include <assert.h>
8
8
  #include "ruby.h"
9
- #include "rubysig.h"
10
9
  #include "ev_wrap.h"
11
10
 
12
11
  #include "cool.io.h"
@@ -15,6 +15,11 @@
15
15
  #include <sys/sysctl.h>
16
16
  #endif
17
17
 
18
+ #ifdef HAVE_SYSCTLBYNAME
19
+ #include <sys/sysctl.h>
20
+ #include <sys/types.h>
21
+ #endif
22
+
18
23
  static VALUE mCoolio = Qnil;
19
24
  static VALUE cCoolio_Utils = Qnil;
20
25
 
@@ -2,8 +2,8 @@ require 'mkmf'
2
2
 
3
3
  dir_config("iobuffer")
4
4
  have_library("c", "main")
5
- if have_macro("HAVE_RB_IO_T", "rubyio.h")
6
- have_struct_member("rb_io_t", "fd", "rubyio.h")
5
+ if have_macro("HAVE_RB_IO_T", "ruby/io.h")
6
+ have_struct_member("rb_io_t", "fd", "ruby/io.h")
7
7
  end
8
8
 
9
9
  create_makefile("iobuffer_ext")
@@ -39,6 +39,9 @@
39
39
 
40
40
  /* ########## COOLIO PATCHERY HO! ########## */
41
41
  #include "ruby.h"
42
+ #if defined(HAVE_RUBY_THREAD_H)
43
+ #include "ruby/thread.h"
44
+ #endif
42
45
  /* ######################################## */
43
46
 
44
47
  /* this big block deduces configuration from config.h */
@@ -1,5 +1,5 @@
1
1
  module Coolio
2
- VERSION = "1.5.2"
2
+ VERSION = "1.7.0"
3
3
 
4
4
  def self.version
5
5
  VERSION
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cool.io
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.2
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tony Arcieri
8
8
  - Masahiro Nakagawa
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-11-20 00:00:00.000000000 Z
12
+ date: 2020-09-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake-compiler
@@ -31,14 +31,14 @@ dependencies:
31
31
  requirements:
32
32
  - - "~>"
33
33
  - !ruby/object:Gem::Version
34
- version: 0.6.0
34
+ version: '1.0'
35
35
  type: :development
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - "~>"
40
40
  - !ruby/object:Gem::Version
41
- version: 0.6.0
41
+ version: '1.0'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: rspec
44
44
  requirement: !ruby/object:Gem::Requirement
@@ -154,9 +154,10 @@ files:
154
154
  - spec/unix_listener_spec.rb
155
155
  - spec/unix_server_spec.rb
156
156
  homepage: http://coolio.github.com
157
- licenses: []
157
+ licenses:
158
+ - MIT
158
159
  metadata: {}
159
- post_install_message:
160
+ post_install_message:
160
161
  rdoc_options: []
161
162
  require_paths:
162
163
  - lib
@@ -171,9 +172,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
171
172
  - !ruby/object:Gem::Version
172
173
  version: '0'
173
174
  requirements: []
174
- rubyforge_project:
175
- rubygems_version: 2.7.2
176
- signing_key:
175
+ rubygems_version: 3.2.0.rc.1
176
+ signing_key:
177
177
  specification_version: 4
178
178
  summary: A cool framework for doing high performance I/O in Ruby
179
179
  test_files: