Skip to content
Newer
Older
100644 212 lines (164 sloc) 8.47 KB
ee99fa0 bump to 0.8.1; small fix for 32-bit windows under mingw
Chuck Remes authored May 5, 2011
1 == 0.8.1 / 20110504
2 * Fixed bug where Socket#setsockopt was using a size from the current
3 runtime to determine how many bytes to use for HWM, et al. This was
4 incorrect. All of those socket options require 8 bytes. Discovered
5 this while getting the code running under mingw on Windows using a
6 32-bit Ruby runtime.
7
8619828 bump to 0.8.0
Chuck Remes authored Apr 25, 2011
8 == 0.8.0 / 20110307
9 * API change!
10 Socket#send_message no longer automatically calls
11 Message#close on behalf of the user. The user is completely
12 responsible for the lifecycle management of all buffers associated
13 with the ZMQ::Message objects.
14 This is a breaking change.
15 If you want the old behavior (auto-close messages on send) then
16 use the new Socket#send_and_close method which does as its name
17 implies.
d3be3e6 merge remote master into local
Chuck Remes authored Apr 25, 2011
18 * Fixed bug with type :size_t on Windows (thank you to arvicco)
8619828 bump to 0.8.0
Chuck Remes authored Apr 25, 2011
19
20 == 0.7.3 / 20110304
21 * Fixed a bug where we had a small memory leak. When closing a socket
22 I forgot to release a small amount of native memory used as a cache
23 for doing #getsockopt calls.
24 * Util.minimum_api? didn't work. Fixed.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
25 * Added ROUTER/DEALER constants to reflect new naming for XREQ/XREP.
26 XREQ and XREP remain aliased for backward compatibility.
8619828 bump to 0.8.0
Chuck Remes authored Apr 25, 2011
27
35182d4 version bump 0.7.2
Chuck Remes authored Feb 24, 2011
28 == 0.7.2 / 20110224
29 * Several minor refactorings to make the code intent clearer and to allow
30 for better testing. In particular, the error condition checking for
31 a non-blocking send/recv is much clearer.
32
c4730f2 @andrewvc Bumped to 0.7.1
andrewvc authored Jan 30, 2011
33 == 0.7.1 / 20110130
34 * Fixed 1.9.1 Binary Encoding bug when UTF8 set as default (Thanks schmurfy)
35 * Improved rubinius compat for specs
36 * Improved spec compatibility on linux
35182d4 version bump 0.7.2
Chuck Remes authored Feb 24, 2011
37
a21b6ec bump version to 0.7.0
Chuck Remes authored Dec 22, 2010
38 == 0.7.0 / 20101222
39 * Improved performance of calls to Socket#getsockopt. There are usually
40 a lot of calls passing RCVMORE, so we now cache those buffers instead
41 of reallocating them every time.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
42
a21b6ec bump version to 0.7.0
Chuck Remes authored Dec 22, 2010
43 * Updated the docs on Poller#poll to warn about a possible busy-loop
44 condition.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
45
a21b6ec bump version to 0.7.0
Chuck Remes authored Dec 22, 2010
46 * Fixed some more specs to conform with the 0mq 2.1 requirement that
47 all sockets must be closed explicitly otherwise the program may
48 hang on exit.
49
50 == 0.6.1 / 20101127
51 * API Change!
52 Moved the #version method from the Util module and made it a class
53 method instead. Invoke as ZMQ::Util.version. Used for conditionally
54 enabling certain features based upon the 0mq version that is loaded.
55
56 * Preliminary support for the Windows platform. Patches supplied
57 by arvicco.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
58
a21b6ec bump version to 0.7.0
Chuck Remes authored Dec 22, 2010
59 * Added support for FD and EVENTS socket options. These were added
60 in 0mq 2.1.0. Patches + specs supplied by andrewvc.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
61
a21b6ec bump version to 0.7.0
Chuck Remes authored Dec 22, 2010
62 * Added support for LINGER, RECONNECT_IVL, BACKLOG and
63 RECOVERY_IVL_MSEC socket options.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
64
a21b6ec bump version to 0.7.0
Chuck Remes authored Dec 22, 2010
65 * Conditionally re-enable the socket finalizer when we are running
66 with 0mq 2.1.0 or later.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
67
a21b6ec bump version to 0.7.0
Chuck Remes authored Dec 22, 2010
68 * Drop support for MRI 1.8.x since the 'ffi' gem has dropped it as a
69 supported Ruby runtime with its 1.0 release. No action is taken to
70 prevent running with MRI 1.8.x but it won't be supported.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
71
a21b6ec bump version to 0.7.0
Chuck Remes authored Dec 22, 2010
72 * Misc. spec fixes. Need more specs!
73
4358e58 bump to 0.6.0
Chuck Remes authored Sep 21, 2010
74 == 0.6.0 / 20100911
75 * API Change! Modified ZMQ::Message by removing automatic memory
76 management. While doing some performance tests I saw that
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
77 defining/undefining the finalizer added 15-30% processing
4358e58 bump to 0.6.0
Chuck Remes authored Sep 21, 2010
78 overhead on the latency test. So, I split this functionality
79 out to a subclass called ZMQ::ManagedMemory. Any existing code
80 that relies on the default Message class to clean up after itself
81 will now have a memory leak. Explicitly call #close on these
82 received messages *unless* they are sent out again. The #send
83 method automatically closes call on your behalf.
84
85 * Rubinius/rbx compatibility! Requires an rbx code pull from git
86 from 20100911 or later to get the necessary code fixes.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
87
4358e58 bump to 0.6.0
Chuck Remes authored Sep 21, 2010
88 * Modify Message to use the @pointer directly rather than indirectly
89 via the @struct object. Provides better compatibility for rbx
90 since rbx does not yet support the FFI pointer protocol for structs
91 like the FFI gem.
92
93 * Modify Message to pass libC's free function for disposing of message
94 data buffers rather than trying to callback into ruby code to
95 do the same thing. External thread callbacks into ruby code will
96 never be supported in rbx; this also improves compatibility and
97 performance with MRI and JRuby. (In particular, MRI enqueues these
98 kinds of callbacks and spawns a *new* thread to execute each one.
99 Avoiding the ruby callback entirely eliminates this extra work
100 for MRI.)
101
102 * Modify FFI wrapper to capture the libC dynamic library to fetch
103 a pointer to the free function.
104
105 * Modify FFI wrapper to remove the FFI::Function callback used
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
106 by Message. It's no longer necessary since we now use free
4358e58 bump to 0.6.0
Chuck Remes authored Sep 21, 2010
107 directly.
108
d832e09 0.5.1 release
Chuck Remes authored Aug 30, 2010
109 == 0.5.1 / 20100830
110 * Works with 0mq 2.0.8 release.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
111
d832e09 0.5.1 release
Chuck Remes authored Aug 30, 2010
112 * Removed the socket finalizer. The current 0mq framework cannot
113 handle the case where zmq_close is called on a socket that was
114 created from another thread. Therefore, the garbage collection
115 thread causes the framework to break. Version 2.1 (or later)
116 should fix this 0mq limitation.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
117
d832e09 0.5.1 release
Chuck Remes authored Aug 30, 2010
118 * Misc fixes. See commits.
119
72b0a41 bump to 0.5.0
Chuck Remes authored Jun 6, 2010
120 == 0.5.0 / 20100606
121 * Updated the bindings to conform to the 0mq 2.0.7 release.
122 Several parts of the API changed.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
123
72b0a41 bump to 0.5.0
Chuck Remes authored Jun 6, 2010
124 * Updated all examples to use the new Context api.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
125
72b0a41 bump to 0.5.0
Chuck Remes authored Jun 6, 2010
126 * Added Socket#getsockopt.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
127
72b0a41 bump to 0.5.0
Chuck Remes authored Jun 6, 2010
128 * Added a Socket#identity and Socket#identity= method pair to
129 allow for easy get/put on socket identities. Useful for async
130 request/reply using XREQ/XREP sockets.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
131
72b0a41 bump to 0.5.0
Chuck Remes authored Jun 6, 2010
132 * Added more specs (slowly but surely).
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
133
72b0a41 bump to 0.5.0
Chuck Remes authored Jun 6, 2010
134 * Support multi-part messages (new as of 2.0.7). I am unsure how
135 to best support multi-part messages so the Message (and related)
136 API may change in the future. Added Socket#more_parts?.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
137
72b0a41 bump to 0.5.0
Chuck Remes authored Jun 6, 2010
138 * Lots of fixes. Many classes use finalizers to deallocate native
139 memory when they go out of scope; be sure to use JRuby 1.5.1 or
140 later to get important finalizer fixes.
141
9a30d52 bump to 0.4.1
Chuck Remes authored May 11, 2010
142 == 0.4.1 / 20100511
143 * I was misusing all of the FFI memory allocator classes. I now
144 wrap libc and use malloc/free directly for creating buffers
145 used by libzmq.
146
32708ef bump to version 0.4.0
Chuck Remes authored May 10, 2010
147 == 0.4.0 / 20100510
148 * Changed the Socket#recv method signature to take an optional
149 message object as its first argument. This allows the library
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
150 user to allocate and pass in their own message object for the
32708ef bump to version 0.4.0
Chuck Remes authored May 10, 2010
151 purposes of zero-copy. Original behavior was for the library to
152 *always* allocate a new message object to receive a message into.
153 Hopefully this is the last change required.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
154
32708ef bump to version 0.4.0
Chuck Remes authored May 10, 2010
155 * Modified the Socket constructor to take an optional hash as its
156 final argument. It honors two keys; :receiver_klass and
157 :sender_klass. Passing in a new constant for either (or both) keys
158 will override the class used by Socket for allocating new
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
159 Message objects.
32708ef bump to version 0.4.0
Chuck Remes authored May 10, 2010
160
1ebec91 bump to 0.3.1
Chuck Remes authored May 9, 2010
161 == 0.3.1 / 20100509
162 * Modified ZMQ::Message so we have both an UnmanagedMessage where
163 memory management is manual via the #close method, and Message where
164 memory management is automated via a finalizer method run during
165 garbage collection.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
166
1ebec91 bump to 0.3.1
Chuck Remes authored May 10, 2010
167 * Updated ZMQ::Message docs to make it clearer how to use a subclass
168 and FFI::Struct to lazily access the message buffer. This gets us as
169 close to zero-copy as possible for performance.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
170
1ebec91 bump to 0.3.1
Chuck Remes authored May 10, 2010
171 * Fixed a memory leak in Message where the FFI::Struct backing the
172 C struct was not being freed.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
173
1ebec91 bump to 0.3.1
Chuck Remes authored May 10, 2010
174 * Tested the FFI code against MRI 1.8.x and 1.9.x. It works!
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
175
1ebec91 bump to 0.3.1
Chuck Remes authored May 10, 2010
176 * Patched a potential problem in LibZMQ::MessageDeallocator. It was
177 crashing under MRI because it complained that FFI::Pointer did not
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
178 have a free method. It now checks for :free before calling it.
1ebec91 bump to 0.3.1
Chuck Remes authored May 10, 2010
179 Need to investigate this further because it never happened under
180 JRuby.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
181
1ebec91 bump to 0.3.1
Chuck Remes authored May 10, 2010
182 * Modified the Socket constructor slightly to allow for using
183 unmanaged or managed messages.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
184
1ebec91 bump to 0.3.1
Chuck Remes authored May 10, 2010
185 * Changed the /examples to print a throughput (msgs/s) number upon
186 completion.
187
890dff8 updated docs and bumped version to 0.3.0
Chuck Remes authored May 8, 2010
188 == 0.3.0 / 20100507
189 * ZMQ::Socket#send and ZMQ::Socket#recv semantics changed
190 * The official 0mq ruby bindings utilize strings for #send and #recv.
191 However, to do so requires lots of copying to and from buffers which
192 greatly impacts performance. These methods now return a ZMQ::Message
193 object which can be subclassed to do lazy evaluation of the buffer.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
194
890dff8 updated docs and bumped version to 0.3.0
Chuck Remes authored May 8, 2010
195 * Added ZMQ::Socket#send_string and ZMQ::Socket#recv_string. They
196 automatically convert the messages to strings just like the official
197 0mq ruby bindings.
198
199 * Fixed bug in ZMQ::Util#error_string
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
200
890dff8 updated docs and bumped version to 0.3.0
Chuck Remes authored May 8, 2010
201 * Split the ZMQ::Message class into two classes. The base class called
202 UnmanagedMessage requires manual memory management. The Message
203 class (used by default by Socket) has a finalizer defined to
204 automatically release memory when the message object gets garbage
205 collected.
8e44cee @bmabey adds ROUTER/DEALER constants to reflect new naming for XREQ/XREP
bmabey authored Apr 21, 2011
206
207
890dff8 updated docs and bumped version to 0.3.0
Chuck Remes authored May 8, 2010
208 == 0.2.0 / 20100505
ae5e456 first commit
Chuck Remes authored May 6, 2010
209
210 * 1 major enhancement
211 * Birthday!
Something went wrong with that request. Please try again.