posix_mq 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +38 -0
- data/GIT-VERSION-FILE +1 -1
- data/GIT-VERSION-GEN +1 -1
- data/NEWS +11 -0
- data/Rakefile +2 -2
- data/ext/posix_mq/posix_mq.c +1 -1
- data/lib/posix_mq.rb +2 -2
- data/test/test_posix_mq.rb +8 -0
- metadata +2 -2
data/ChangeLog
CHANGED
@@ -1,5 +1,43 @@
|
|
1
1
|
ChangeLog from git://git.bogomips.org/ruby_posix_mq.git ()
|
2
2
|
|
3
|
+
commit 05e577616b74bea99a0e43e07f28823ddda1aaf9
|
4
|
+
Author: Eric Wong <normalperson@yhbt.net>
|
5
|
+
Date: Sat Feb 13 03:39:17 2010 -0800
|
6
|
+
|
7
|
+
posix_mq 0.3.1
|
8
|
+
|
9
|
+
This fixes a misuse of the Ruby API leading to memory leaks in
|
10
|
+
cases where message queues are continually opened and closed
|
11
|
+
throughout the lifetime of the application.
|
12
|
+
|
13
|
+
Fortunately applications have little reason to repeatedly open
|
14
|
+
and close message queue descriptors: they are
|
15
|
+
multi-thread/multi-process-safe in every way imaginable and also
|
16
|
+
capable of non-blocking operation.
|
17
|
+
|
18
|
+
commit 9adbee0ab71bf408db5c3befb43b2bab0d86ebb2
|
19
|
+
Author: Eric Wong <normalperson@yhbt.net>
|
20
|
+
Date: Sat Feb 13 03:30:44 2010 -0800
|
21
|
+
|
22
|
+
use GC correctly and avoid memory leaks
|
23
|
+
|
24
|
+
We still need to explicitly free the pointer we're given, and
|
25
|
+
not just close the associated file descriptor. Fortunately most
|
26
|
+
people to not spend all day opening/closing message queue
|
27
|
+
descriptors so this leak may not be noticeable.
|
28
|
+
|
29
|
+
commit c07cf2979036b9550566d59d6d4899be98f3e553
|
30
|
+
Author: Eric Wong <normalperson@yhbt.net>
|
31
|
+
Date: Thu Jan 21 20:44:22 2010 -0800
|
32
|
+
|
33
|
+
add #shift test with destination buffer
|
34
|
+
|
35
|
+
commit 1d0bf6f1d39e085948008c2c6d381ed929ac109e
|
36
|
+
Author: Eric Wong <normalperson@yhbt.net>
|
37
|
+
Date: Sat Jan 9 15:16:40 2010 -0800
|
38
|
+
|
39
|
+
Rakefile: fix raa_update task
|
40
|
+
|
3
41
|
commit 2e420820d3b3fb228c810937539f95a618a2c271
|
4
42
|
Author: Eric Wong <normalperson@yhbt.net>
|
5
43
|
Date: Sat Jan 9 22:52:27 2010 +0000
|
data/GIT-VERSION-FILE
CHANGED
@@ -1 +1 @@
|
|
1
|
-
GIT_VERSION = 0.3.
|
1
|
+
GIT_VERSION = 0.3.1
|
data/GIT-VERSION-GEN
CHANGED
data/NEWS
CHANGED
@@ -1,3 +1,14 @@
|
|
1
|
+
=== 0.3.1 / 2010-02-13 12:05 UTC
|
2
|
+
|
3
|
+
This fixes a misuse of the Ruby API leading to memory leaks in
|
4
|
+
cases where message queues are continually opened and closed
|
5
|
+
throughout the lifetime of the application.
|
6
|
+
|
7
|
+
Fortunately applications have little reason to repeatedly open
|
8
|
+
and close message queue descriptors: they are
|
9
|
+
multi-thread/multi-process-safe in every way imaginable and also
|
10
|
+
capable of non-blocking operation.
|
11
|
+
|
1
12
|
=== 0.3.0 / 2010-01-09 23:11 UTC
|
2
13
|
|
3
14
|
This release adds a few new API methods, fixes MRI 1.8.6
|
data/Rakefile
CHANGED
@@ -125,7 +125,7 @@ task :raa_update do
|
|
125
125
|
require 'rubygems'
|
126
126
|
require 'net/http'
|
127
127
|
require 'net/netrc'
|
128
|
-
rc = Net::Netrc.locate('
|
128
|
+
rc = Net::Netrc.locate('posix_mq-raa') or abort "~/.netrc not found"
|
129
129
|
password = rc.password
|
130
130
|
|
131
131
|
s = Gem::Specification.load('posix_mq.gemspec')
|
@@ -147,7 +147,7 @@ task :raa_update do
|
|
147
147
|
:category_minor => 'System',
|
148
148
|
:url => s.homepage,
|
149
149
|
:download => 'http://rubyforge.org/frs/?group_id=5626',
|
150
|
-
:license => '
|
150
|
+
:license => 'LGPL', # LGPLv3, actually, but RAA is ancient...
|
151
151
|
:description_style => 'Plain',
|
152
152
|
:description => desc,
|
153
153
|
:pass => password,
|
data/ext/posix_mq/posix_mq.c
CHANGED
data/lib/posix_mq.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
# -*- encoding: binary -*-
|
2
2
|
class POSIX_MQ
|
3
3
|
|
4
|
-
# version of POSIX_MQ, currently 0.3.
|
5
|
-
VERSION = '0.3.
|
4
|
+
# version of POSIX_MQ, currently 0.3.1
|
5
|
+
VERSION = '0.3.1'
|
6
6
|
|
7
7
|
# An analogous Struct to "struct mq_attr" in C.
|
8
8
|
# This may be used in arguments for POSIX_MQ.new and
|
data/test/test_posix_mq.rb
CHANGED
@@ -96,6 +96,14 @@ class Test_POSIX_MQ < Test::Unit::TestCase
|
|
96
96
|
assert_equal "hello", @mq.shift
|
97
97
|
end
|
98
98
|
|
99
|
+
def test_shift_buf
|
100
|
+
buf = ""
|
101
|
+
@mq = POSIX_MQ.new @path, IO::CREAT|IO::RDWR, 0666
|
102
|
+
@mq << "hello"
|
103
|
+
assert_equal "hello", @mq.shift(buf)
|
104
|
+
assert_equal "hello", buf
|
105
|
+
end
|
106
|
+
|
99
107
|
def test_send_receive
|
100
108
|
@mq = POSIX_MQ.new @path, IO::CREAT|IO::RDWR, 0666
|
101
109
|
assert_nil @mq.send("hello", 0)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: posix_mq
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ruby POSIX MQ hackers
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2010-
|
12
|
+
date: 2010-02-13 00:00:00 +00:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|