ichannel 5.1.0 → 5.1.1

Sign up to get free protection for your applications and to get access to all the features.
data/ChangeLog.txt CHANGED
@@ -1,20 +1,19 @@
1
- == HEAD
2
-
1
+ == v5.1.1
2
+ * Change socket type to use TCP.
3
+ The use of UDP could result in bugs because of its unordered nature.
4
+
3
5
  == v5.1.0
4
6
  * Remove restriction on size of message.
5
-
6
7
  IChannel#get can read a message of any size(before hand it was limited to
7
8
  1MB in size). Thanks to @quezacoatl.
8
9
 
9
10
  * IChannel#readable? no longer blocks.
10
-
11
11
  IChannel#readable? no longer blocks for 0.1 seconds on IO.select call.
12
12
  Thanks to quezacoatl(https://github.com/quezacoatl) for the initial
13
13
  implementation.
14
14
 
15
15
  == v5.0.0
16
16
  * Remove IChannel#empty?
17
-
18
17
  I think the #readable? method is all you need, and is a much more
19
18
  accurate description of what the method is asking. We cannot determine
20
19
  if the channel is really empty, but we can ask if it is readable at the
@@ -22,24 +21,20 @@
22
21
 
23
22
  == v4.1.0
24
23
  * Add IChannel#readable?
25
-
26
24
  A method that can tell you whether or not a read would block.
27
25
  When it returns true, a read shouldn't block, on the other hand
28
26
  if it were false it'd likely block by the time you call #get.
29
27
 
30
28
  == v4.0.0
31
29
  * Modify IChannel#empty?
32
-
33
30
  It now returns true in case the underlying UNIXSocket being used as a
34
31
  reader is closed.
35
32
 
36
33
  == v3.1.0
37
34
  * Add IChannel#empty?.
38
-
39
35
  IChannel#empty? returns true when the channel is empty(nothing to read).
40
36
 
41
37
  * Micro speed improvement on #write!, & #recv! operations.
42
-
43
38
  By passing nil instead of creating two empty arrays for every read/write
44
39
  operation we should see a very small improvement in their performance.
45
40
 
@@ -1,3 +1,3 @@
1
1
  class IChannel
2
- VERSION = "5.1.0"
2
+ VERSION = "5.1.1"
3
3
  end
data/lib/ichannel.rb CHANGED
@@ -2,14 +2,14 @@ require 'socket'
2
2
  class IChannel
3
3
  SEP = '_$_'
4
4
  if respond_to? :private_constant
5
- private_constant :SEP
5
+ private_constant :SEP
6
6
  end
7
7
  #
8
8
  # @param [#dump,#load] serializer
9
9
  # Any object that implements dump, & load.
10
10
  #
11
11
  def initialize(serializer)
12
- @reader, @writer = UNIXSocket.pair Socket::SOCK_DGRAM
12
+ @reader, @writer = UNIXSocket.pair :STREAM
13
13
  @serializer = serializer
14
14
  end
15
15
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ichannel
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.1.0
4
+ version: 5.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-01-01 00:00:00.000000000 Z
12
+ date: 2013-01-12 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: ! "A modern and easy-to-use interprocess communication \n primitive."
15
15
  email:
@@ -46,7 +46,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
46
46
  version: '0'
47
47
  segments:
48
48
  - 0
49
- hash: 2123576931550022235
49
+ hash: -4510016947679308105
50
50
  required_rubygems_version: !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
@@ -55,7 +55,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
55
55
  version: '0'
56
56
  segments:
57
57
  - 0
58
- hash: 2123576931550022235
58
+ hash: -4510016947679308105
59
59
  requirements: []
60
60
  rubyforge_project:
61
61
  rubygems_version: 1.8.23