stomp 1.3.5 → 1.4.0
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.
- data/{CHANGELOG.rdoc → CHANGELOG.md} +57 -40
- data/README.md +708 -0
- data/Rakefile +10 -11
- data/adhoc/.gitignore +7 -0
- data/adhoc/README.md +16 -0
- data/adhoc/issue121_01.rb +129 -0
- data/adhoc/issue121_01_conn.rb +158 -0
- data/adhoc/issue121_02.rb +152 -0
- data/adhoc/issue121_03.rb +157 -0
- data/adhoc/payload_generator.rb +32 -0
- data/adhoc/payload_generator_adhoctest.rb +41 -0
- data/adhoc/stomp_adhoc_common.rb +99 -0
- data/examples/consume_file.rb +63 -0
- data/examples/contrib.sh +6 -0
- data/examples/contributors.rb +106 -0
- data/examples/lflogger.rb +316 -0
- data/examples/publish_file.rb +76 -0
- data/examples/publish_file_conn.rb +75 -0
- data/examples/stomp11_common.rb +7 -1
- data/lib/client/utils.rb +10 -2
- data/lib/connection/heartbeats.rb +1 -0
- data/lib/connection/netio.rb +384 -309
- data/lib/connection/utils.rb +1 -1
- data/lib/stomp/client.rb +30 -23
- data/lib/stomp/connection.rb +28 -23
- data/lib/stomp/constants.rb +4 -0
- data/lib/stomp/errors.rb +9 -0
- data/lib/stomp/version.rb +2 -2
- data/stomp.gemspec +23 -64
- data/test/.gitignore +3 -0
- data/test/test_anonymous.rb +4 -4
- data/test/test_client.rb +14 -11
- data/test/test_connection.rb +4 -4
- data/test/test_connection1p.rb +4 -4
- data/test/test_helper.rb +4 -2
- data/test/test_message.rb +16 -16
- data/test/test_ssl.rb +8 -8
- data/test/test_urlogin.rb +26 -10
- metadata +26 -67
- data/README.rdoc +0 -163
data/README.md
ADDED
@@ -0,0 +1,708 @@
|
|
1
|
+
# README
|
2
|
+
|
3
|
+
* [Project Information](https://github.com/stompgem/stomp)
|
4
|
+
|
5
|
+
## Overview
|
6
|
+
|
7
|
+
An implementation of the Stomp protocol for Ruby. See:
|
8
|
+
|
9
|
+
* [STOMP 1.0, 1.1, and 1.2] (http://stomp.github.com/index.html)
|
10
|
+
|
11
|
+
## Hash Login Example Usage (**this is the recommended login technique**):
|
12
|
+
|
13
|
+
```
|
14
|
+
hash = {
|
15
|
+
:hosts => [
|
16
|
+
# First connect is to remotehost1
|
17
|
+
{:login => "login1", :passcode => "passcode1", :host => "remotehost1", :port => 61612, :ssl => true},
|
18
|
+
# First failover connect is to remotehost2
|
19
|
+
{:login => "login2", :passcode => "passcode2", :host => "remotehost2", :port => 61613, :ssl => false},
|
20
|
+
],
|
21
|
+
# These are the default parameters and do not need to be set
|
22
|
+
:reliable => true, # reliable (use failover)
|
23
|
+
:initial_reconnect_delay => 0.01, # initial delay before reconnect (secs)
|
24
|
+
:max_reconnect_delay => 30.0, # max delay before reconnect
|
25
|
+
:use_exponential_back_off => true, # increase delay between reconnect attpempts
|
26
|
+
:back_off_multiplier => 2, # next delay multiplier
|
27
|
+
:max_reconnect_attempts => 0, # retry forever, use # for maximum attempts
|
28
|
+
:randomize => false, # do not radomize hosts hash before reconnect
|
29
|
+
:connect_timeout => 0, # Timeout for TCP/TLS connects, use # for max seconds
|
30
|
+
:connect_headers => {}, # user supplied CONNECT headers (req'd for Stomp 1.1+)
|
31
|
+
:parse_timeout => 5, # IO::select wait time on socket reads
|
32
|
+
:logger => nil, # user suplied callback logger instance
|
33
|
+
:dmh => false, # do not support multihomed IPV4 / IPV6 hosts during failover
|
34
|
+
:closed_check => true, # check first if closed in each protocol method
|
35
|
+
:hbser => false, # raise on heartbeat send exception
|
36
|
+
:stompconn => false, # Use STOMP instead of CONNECT
|
37
|
+
:usecrlf => false, # Use CRLF command and header line ends (1.2+)
|
38
|
+
:max_hbread_fails => 0, # Max HB read fails before retry. 0 => never retry
|
39
|
+
:max_hbrlck_fails => 0, # Max HB read lock obtain fails before retry. 0 => never retry
|
40
|
+
:fast_hbs_adjust => 0.0, # Fast heartbeat senders sleep adjustment, seconds, needed ...
|
41
|
+
# For fast heartbeat senders. 'fast' == YMMV. If not
|
42
|
+
# correct for your environment, expect unnecessary fail overs
|
43
|
+
:connread_timeout => 0, # Timeout during CONNECT for read of CONNECTED/ERROR, secs
|
44
|
+
:tcp_nodelay => true, # Turns on the TCP_NODELAY socket option; disables Nagle's algorithm
|
45
|
+
:start_timeout => 0, # Timeout around Stomp::Client initialization
|
46
|
+
:sslctx_newparm => nil, # Param for SSLContext.new
|
47
|
+
}
|
48
|
+
|
49
|
+
# for a client
|
50
|
+
client = Stomp::Client.new(hash)
|
51
|
+
|
52
|
+
# for a connection
|
53
|
+
connection = Stomp::Connection.new(hash)
|
54
|
+
```
|
55
|
+
|
56
|
+
### Positional Parameter Usage:
|
57
|
+
|
58
|
+
```
|
59
|
+
client = Stomp::Client.new("user", "pass", "localhost", 61613)
|
60
|
+
client.publish("/queue/mine", "hello world!")
|
61
|
+
client.subscribe("/queue/mine") do |msg|
|
62
|
+
p msg
|
63
|
+
end
|
64
|
+
```
|
65
|
+
|
66
|
+
### Stomp URL Usage:
|
67
|
+
|
68
|
+
A Stomp URL must begin with 'stomp://' and can be in one of the following forms:
|
69
|
+
|
70
|
+
```
|
71
|
+
stomp://host:port
|
72
|
+
stomp://host.domain.tld:port
|
73
|
+
stomp://login:passcode@host:port
|
74
|
+
stomp://login:passcode@host.domain.tld:port
|
75
|
+
|
76
|
+
# e.g. c = Stomp::Client.new(urlstring)
|
77
|
+
```
|
78
|
+
|
79
|
+
### Failover + SSL Example URL Usage:
|
80
|
+
|
81
|
+
```
|
82
|
+
options = "initialReconnectDelay=5000&randomize=false&useExponentialBackOff=false"
|
83
|
+
# remotehost1 uses SSL, remotehost2 doesn't
|
84
|
+
client = Stomp::Client.new("failover:(stomp+ssl://login1:passcode1@remotehost1:61612,stomp://login2:passcode2@remotehost2:61613)?#{options}")
|
85
|
+
client.publish("/queue/mine", "hello world!")
|
86
|
+
client.subscribe("/queue/mine") do |msg|
|
87
|
+
p msg
|
88
|
+
end
|
89
|
+
```
|
90
|
+
|
91
|
+
### New:
|
92
|
+
|
93
|
+
See _CHANGELOG.rdoc_ for details.
|
94
|
+
|
95
|
+
* Gem version 1.4.0. Note: Change sementics of :parse_timeout, see CHANGELOG.md for details.
|
96
|
+
* Gem version 1.3.5. Miscellaneous fixes, see CHANGELOG.rdoc for details.
|
97
|
+
* Gem version 1.3.4. Miscellaneous fixes, see CHANGELOG.rdoc for details.
|
98
|
+
* Gem version 1.3.3. Miscellaneous fixes, see CHANGELOG.rdoc for details.
|
99
|
+
* Gem version 1.3.2. Miscellaneous fixes, see changelog for details.
|
100
|
+
* Gem version 1.3.1. Bugfix for logging.
|
101
|
+
* Gem version 1.3.0. Added ERROR frame raising as exception, added anonymous connections, miscellaneous other fixes.
|
102
|
+
|
103
|
+
For changes in older versions see CHANGELOG.rdoc for details.
|
104
|
+
|
105
|
+
### Historical Information:
|
106
|
+
|
107
|
+
Up until March 2009 the project was maintained and primarily developed by Brian McCallister.
|
108
|
+
|
109
|
+
### Source Code and Project URLs:
|
110
|
+
|
111
|
+
[Source Code and Project](https://github.com/stompgem/stomp)
|
112
|
+
|
113
|
+
### Stomp Protocol Information:
|
114
|
+
|
115
|
+
[Protocol Information](http://stomp.github.com/index.html)
|
116
|
+
|
117
|
+
#### Contributors (by first author date) ####
|
118
|
+
|
119
|
+
Contribution information:
|
120
|
+
|
121
|
+
<table border="1" style="width:100%;border: 1px solid black;">
|
122
|
+
<tr>
|
123
|
+
<th style="border: 1px solid black;padding-left: 10px;" >
|
124
|
+
First Author Date
|
125
|
+
</th>
|
126
|
+
<th style="border: 1px solid black;padding-left: 10px;" >
|
127
|
+
(Commit Count)
|
128
|
+
</th>
|
129
|
+
<th style="border: 1px solid black;padding-left: 10px;" >
|
130
|
+
Name / E-mail
|
131
|
+
</th>
|
132
|
+
</tr>
|
133
|
+
<tr>
|
134
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
135
|
+
2005-08-26
|
136
|
+
</td>
|
137
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
138
|
+
(0023)
|
139
|
+
</td>
|
140
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
141
|
+
<span style="font-weight: bold;" >
|
142
|
+
brianm
|
143
|
+
</span>
|
144
|
+
/ brianm@fd4e7336-3dff-0310-b68a-b6615a75f13b
|
145
|
+
</td>
|
146
|
+
</tr>
|
147
|
+
<tr>
|
148
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
149
|
+
2006-03-16
|
150
|
+
</td>
|
151
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
152
|
+
(0005)
|
153
|
+
</td>
|
154
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
155
|
+
<span style="font-weight: bold;" >
|
156
|
+
jstrachan
|
157
|
+
</span>
|
158
|
+
/ jstrachan@fd4e7336-3dff-0310-b68a-b6615a75f13b
|
159
|
+
</td>
|
160
|
+
</tr>
|
161
|
+
<tr>
|
162
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
163
|
+
2006-04-19
|
164
|
+
</td>
|
165
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
166
|
+
(0001)
|
167
|
+
</td>
|
168
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
169
|
+
<span style="font-weight: bold;" >
|
170
|
+
chirino
|
171
|
+
</span>
|
172
|
+
/ chirino@fd4e7336-3dff-0310-b68a-b6615a75f13b
|
173
|
+
</td>
|
174
|
+
</tr>
|
175
|
+
<tr>
|
176
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
177
|
+
2007-05-09
|
178
|
+
</td>
|
179
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
180
|
+
(0003)
|
181
|
+
</td>
|
182
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
183
|
+
<span style="font-weight: bold;" >
|
184
|
+
kookster
|
185
|
+
</span>
|
186
|
+
/ kookster@fd4e7336-3dff-0310-b68a-b6615a75f13b
|
187
|
+
</td>
|
188
|
+
</tr>
|
189
|
+
<tr>
|
190
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
191
|
+
2008-05-08
|
192
|
+
</td>
|
193
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
194
|
+
(0016)
|
195
|
+
</td>
|
196
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
197
|
+
<span style="font-weight: bold;" >
|
198
|
+
Glenn Rempe
|
199
|
+
</span>
|
200
|
+
/ glenn@rempe.us
|
201
|
+
</td>
|
202
|
+
</tr>
|
203
|
+
<tr>
|
204
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
205
|
+
2009-02-03
|
206
|
+
</td>
|
207
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
208
|
+
(0001)
|
209
|
+
</td>
|
210
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
211
|
+
<span style="font-weight: bold;" >
|
212
|
+
Tony Garnock-Jones
|
213
|
+
</span>
|
214
|
+
/ tonyg@lshift.net
|
215
|
+
</td>
|
216
|
+
</tr>
|
217
|
+
<tr>
|
218
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
219
|
+
2009-02-09
|
220
|
+
</td>
|
221
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
222
|
+
(0003)
|
223
|
+
</td>
|
224
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
225
|
+
<span style="font-weight: bold;" >
|
226
|
+
Marius Mathiesen
|
227
|
+
</span>
|
228
|
+
/ marius.mathiesen@gmail.com
|
229
|
+
</td>
|
230
|
+
</tr>
|
231
|
+
<tr>
|
232
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
233
|
+
2009-02-13
|
234
|
+
</td>
|
235
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
236
|
+
(0004)
|
237
|
+
</td>
|
238
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
239
|
+
<span style="font-weight: bold;" >
|
240
|
+
Johan Sørensen
|
241
|
+
</span>
|
242
|
+
/ johan@johansorensen.com
|
243
|
+
</td>
|
244
|
+
</tr>
|
245
|
+
<tr>
|
246
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
247
|
+
2009-11-17
|
248
|
+
</td>
|
249
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
250
|
+
(0022)
|
251
|
+
</td>
|
252
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
253
|
+
<span style="font-weight: bold;" >
|
254
|
+
Thiago Morello
|
255
|
+
</span>
|
256
|
+
/ thiago.morello@locaweb.com.br
|
257
|
+
</td>
|
258
|
+
</tr>
|
259
|
+
<tr>
|
260
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
261
|
+
2009-11-22
|
262
|
+
</td>
|
263
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
264
|
+
(0001)
|
265
|
+
</td>
|
266
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
267
|
+
<span style="font-weight: bold;" >
|
268
|
+
unknown
|
269
|
+
</span>
|
270
|
+
/ katy@.(none)
|
271
|
+
</td>
|
272
|
+
</tr>
|
273
|
+
<tr>
|
274
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
275
|
+
2009-12-18
|
276
|
+
</td>
|
277
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
278
|
+
(0052)
|
279
|
+
</td>
|
280
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
281
|
+
<span style="font-weight: bold;" >
|
282
|
+
Thiago Morello
|
283
|
+
</span>
|
284
|
+
/ morello@queroinfra32.fabrica.locaweb.com.br
|
285
|
+
</td>
|
286
|
+
</tr>
|
287
|
+
<tr>
|
288
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
289
|
+
2009-12-25
|
290
|
+
</td>
|
291
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
292
|
+
(0344)
|
293
|
+
</td>
|
294
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
295
|
+
<span style="font-weight: bold;" >
|
296
|
+
gmallard
|
297
|
+
</span>
|
298
|
+
/ allard.guy.m@gmail.com
|
299
|
+
</td>
|
300
|
+
</tr>
|
301
|
+
<tr>
|
302
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
303
|
+
2010-01-07
|
304
|
+
</td>
|
305
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
306
|
+
(0007)
|
307
|
+
</td>
|
308
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
309
|
+
<span style="font-weight: bold;" >
|
310
|
+
Rafael Rosa
|
311
|
+
</span>
|
312
|
+
/ rafael.rosa@locaweb.com.br
|
313
|
+
</td>
|
314
|
+
</tr>
|
315
|
+
<tr>
|
316
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
317
|
+
2010-03-23
|
318
|
+
</td>
|
319
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
320
|
+
(0024)
|
321
|
+
</td>
|
322
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
323
|
+
<span style="font-weight: bold;" >
|
324
|
+
Guy M. Allard
|
325
|
+
</span>
|
326
|
+
/ allard.guy.m@gmail.com
|
327
|
+
</td>
|
328
|
+
</tr>
|
329
|
+
<tr>
|
330
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
331
|
+
2010-04-01
|
332
|
+
</td>
|
333
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
334
|
+
(0001)
|
335
|
+
</td>
|
336
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
337
|
+
<span style="font-weight: bold;" >
|
338
|
+
Dmytro Shteflyuk
|
339
|
+
</span>
|
340
|
+
/ kpumuk@kpumuk.info
|
341
|
+
</td>
|
342
|
+
</tr>
|
343
|
+
<tr>
|
344
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
345
|
+
2010-10-22
|
346
|
+
</td>
|
347
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
348
|
+
(0001)
|
349
|
+
</td>
|
350
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
351
|
+
<span style="font-weight: bold;" >
|
352
|
+
Neil Wilson
|
353
|
+
</span>
|
354
|
+
/ neil@aldur.co.uk
|
355
|
+
</td>
|
356
|
+
</tr>
|
357
|
+
<tr>
|
358
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
359
|
+
2011-02-09
|
360
|
+
</td>
|
361
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
362
|
+
(0001)
|
363
|
+
</td>
|
364
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
365
|
+
<span style="font-weight: bold;" >
|
366
|
+
Dinesh Majrekar
|
367
|
+
</span>
|
368
|
+
/ dinesh.majrekar@advantage-interactive.com
|
369
|
+
</td>
|
370
|
+
</tr>
|
371
|
+
<tr>
|
372
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
373
|
+
2011-04-15
|
374
|
+
</td>
|
375
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
376
|
+
(0002)
|
377
|
+
</td>
|
378
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
379
|
+
<span style="font-weight: bold;" >
|
380
|
+
Kiall Mac Innes
|
381
|
+
</span>
|
382
|
+
/ kiall@managedit.ie
|
383
|
+
</td>
|
384
|
+
</tr>
|
385
|
+
<tr>
|
386
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
387
|
+
2011-04-29
|
388
|
+
</td>
|
389
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
390
|
+
(0002)
|
391
|
+
</td>
|
392
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
393
|
+
<span style="font-weight: bold;" >
|
394
|
+
Rob Skaggs
|
395
|
+
</span>
|
396
|
+
/ rob@pivotal-it.com
|
397
|
+
</td>
|
398
|
+
</tr>
|
399
|
+
<tr>
|
400
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
401
|
+
2011-08-23
|
402
|
+
</td>
|
403
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
404
|
+
(0003)
|
405
|
+
</td>
|
406
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
407
|
+
<span style="font-weight: bold;" >
|
408
|
+
Tom May
|
409
|
+
</span>
|
410
|
+
/ tom@gist.com
|
411
|
+
</td>
|
412
|
+
</tr>
|
413
|
+
<tr>
|
414
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
415
|
+
2011-08-24
|
416
|
+
</td>
|
417
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
418
|
+
(0002)
|
419
|
+
</td>
|
420
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
421
|
+
<span style="font-weight: bold;" >
|
422
|
+
Thiago Morello
|
423
|
+
</span>
|
424
|
+
/ morellon@gmail.com
|
425
|
+
</td>
|
426
|
+
</tr>
|
427
|
+
<tr>
|
428
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
429
|
+
2011-09-11
|
430
|
+
</td>
|
431
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
432
|
+
(0003)
|
433
|
+
</td>
|
434
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
435
|
+
<span style="font-weight: bold;" >
|
436
|
+
Lucas Hills
|
437
|
+
</span>
|
438
|
+
/ info@lucashills.com
|
439
|
+
</td>
|
440
|
+
</tr>
|
441
|
+
<tr>
|
442
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
443
|
+
2011-11-20
|
444
|
+
</td>
|
445
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
446
|
+
(0002)
|
447
|
+
</td>
|
448
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
449
|
+
<span style="font-weight: bold;" >
|
450
|
+
Chris Needham
|
451
|
+
</span>
|
452
|
+
/ chrisn303@gmail.com
|
453
|
+
</td>
|
454
|
+
</tr>
|
455
|
+
<tr>
|
456
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
457
|
+
2011-12-11
|
458
|
+
</td>
|
459
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
460
|
+
(0003)
|
461
|
+
</td>
|
462
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
463
|
+
<span style="font-weight: bold;" >
|
464
|
+
R.I.Pienaar
|
465
|
+
</span>
|
466
|
+
/ rip@devco.net
|
467
|
+
</td>
|
468
|
+
</tr>
|
469
|
+
<tr>
|
470
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
471
|
+
2011-12-13
|
472
|
+
</td>
|
473
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
474
|
+
(0001)
|
475
|
+
</td>
|
476
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
477
|
+
<span style="font-weight: bold;" >
|
478
|
+
tworker
|
479
|
+
</span>
|
480
|
+
/ tworker@onyx.ove.com
|
481
|
+
</td>
|
482
|
+
</tr>
|
483
|
+
<tr>
|
484
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
485
|
+
2012-03-16
|
486
|
+
</td>
|
487
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
488
|
+
(0001)
|
489
|
+
</td>
|
490
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
491
|
+
<span style="font-weight: bold;" >
|
492
|
+
James Pearson
|
493
|
+
</span>
|
494
|
+
/ james@fearmediocrity.co.uk
|
495
|
+
</td>
|
496
|
+
</tr>
|
497
|
+
<tr>
|
498
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
499
|
+
2012-05-10
|
500
|
+
</td>
|
501
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
502
|
+
(0001)
|
503
|
+
</td>
|
504
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
505
|
+
<span style="font-weight: bold;" >
|
506
|
+
Tommy Bishop
|
507
|
+
</span>
|
508
|
+
/ bishop.thomas@gmail.com
|
509
|
+
</td>
|
510
|
+
</tr>
|
511
|
+
<tr>
|
512
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
513
|
+
2012-06-18
|
514
|
+
</td>
|
515
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
516
|
+
(0002)
|
517
|
+
</td>
|
518
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
519
|
+
<span style="font-weight: bold;" >
|
520
|
+
Jeremy Gailor
|
521
|
+
</span>
|
522
|
+
/ jeremy@infinitecube.com
|
523
|
+
</td>
|
524
|
+
</tr>
|
525
|
+
<tr>
|
526
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
527
|
+
2013-02-20
|
528
|
+
</td>
|
529
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
530
|
+
(0002)
|
531
|
+
</td>
|
532
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
533
|
+
<span style="font-weight: bold;" >
|
534
|
+
JP Hastings-Spital
|
535
|
+
</span>
|
536
|
+
/ jphastings@gmail.com
|
537
|
+
</td>
|
538
|
+
</tr>
|
539
|
+
<tr>
|
540
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
541
|
+
2013-03-14
|
542
|
+
</td>
|
543
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
544
|
+
(0003)
|
545
|
+
</td>
|
546
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
547
|
+
<span style="font-weight: bold;" >
|
548
|
+
glennr
|
549
|
+
</span>
|
550
|
+
/ glenn@siyelo.com
|
551
|
+
</td>
|
552
|
+
</tr>
|
553
|
+
<tr>
|
554
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
555
|
+
2013-07-29
|
556
|
+
</td>
|
557
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
558
|
+
(0021)
|
559
|
+
</td>
|
560
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
561
|
+
<span style="font-weight: bold;" >
|
562
|
+
Ian Smith
|
563
|
+
</span>
|
564
|
+
/ ian.smith@mylookout.com
|
565
|
+
</td>
|
566
|
+
</tr>
|
567
|
+
<tr>
|
568
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
569
|
+
2013-08-07
|
570
|
+
</td>
|
571
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
572
|
+
(0001)
|
573
|
+
</td>
|
574
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
575
|
+
<span style="font-weight: bold;" >
|
576
|
+
Hiram Chirino
|
577
|
+
</span>
|
578
|
+
/ hiram@hiramchirino.com
|
579
|
+
</td>
|
580
|
+
</tr>
|
581
|
+
<tr>
|
582
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
583
|
+
2013-08-15
|
584
|
+
</td>
|
585
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
586
|
+
(0005)
|
587
|
+
</td>
|
588
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
589
|
+
<span style="font-weight: bold;" >
|
590
|
+
Ian Smith
|
591
|
+
</span>
|
592
|
+
/ ian.smith@lookout.com
|
593
|
+
</td>
|
594
|
+
</tr>
|
595
|
+
<tr>
|
596
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
597
|
+
2013-08-22
|
598
|
+
</td>
|
599
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
600
|
+
(0007)
|
601
|
+
</td>
|
602
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
603
|
+
<span style="font-weight: bold;" >
|
604
|
+
Ian Smith
|
605
|
+
</span>
|
606
|
+
/ ismith@mit.edu
|
607
|
+
</td>
|
608
|
+
</tr>
|
609
|
+
<tr>
|
610
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
611
|
+
2013-09-26
|
612
|
+
</td>
|
613
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
614
|
+
(0001)
|
615
|
+
</td>
|
616
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
617
|
+
<span style="font-weight: bold;" >
|
618
|
+
Orazio Cotroneo
|
619
|
+
</span>
|
620
|
+
/ orazio@we7.com
|
621
|
+
</td>
|
622
|
+
</tr>
|
623
|
+
<tr>
|
624
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
625
|
+
2013-10-22
|
626
|
+
</td>
|
627
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
628
|
+
(0001)
|
629
|
+
</td>
|
630
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
631
|
+
<span style="font-weight: bold;" >
|
632
|
+
OrazioWE7
|
633
|
+
</span>
|
634
|
+
/ orazio@we7.com
|
635
|
+
</td>
|
636
|
+
</tr>
|
637
|
+
<tr>
|
638
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
639
|
+
2014-03-13
|
640
|
+
</td>
|
641
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
642
|
+
(0001)
|
643
|
+
</td>
|
644
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
645
|
+
<span style="font-weight: bold;" >
|
646
|
+
Richard Clamp
|
647
|
+
</span>
|
648
|
+
/ richardc@unixbeard.net
|
649
|
+
</td>
|
650
|
+
</tr>
|
651
|
+
<tr>
|
652
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
653
|
+
2014-12-08
|
654
|
+
</td>
|
655
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
656
|
+
(0001)
|
657
|
+
</td>
|
658
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
659
|
+
<span style="font-weight: bold;" >
|
660
|
+
m4rCsi
|
661
|
+
</span>
|
662
|
+
/ m4rCsi@gmail.com
|
663
|
+
</td>
|
664
|
+
</tr>
|
665
|
+
<tr>
|
666
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
667
|
+
2015-09-05
|
668
|
+
</td>
|
669
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
670
|
+
(0001)
|
671
|
+
</td>
|
672
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
673
|
+
<span style="font-weight: bold;" >
|
674
|
+
Michael Klishin
|
675
|
+
</span>
|
676
|
+
/ michael@novemberain.com
|
677
|
+
</td>
|
678
|
+
</tr>
|
679
|
+
<tr>
|
680
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
681
|
+
2015-11-10
|
682
|
+
</td>
|
683
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
684
|
+
(0002)
|
685
|
+
</td>
|
686
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
687
|
+
<span style="font-weight: bold;" >
|
688
|
+
Patrick Sharp
|
689
|
+
</span>
|
690
|
+
/ psharp@numerex.com
|
691
|
+
</td>
|
692
|
+
</tr>
|
693
|
+
<tr>
|
694
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
695
|
+
2016-02-03
|
696
|
+
</td>
|
697
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
698
|
+
(0001)
|
699
|
+
</td>
|
700
|
+
<td style="border: 1px solid black;padding-left: 10px;" >
|
701
|
+
<span style="font-weight: bold;" >
|
702
|
+
Wayne Robinson
|
703
|
+
</span>
|
704
|
+
/ wayne.robinson@gmail.com
|
705
|
+
</td>
|
706
|
+
</tr>
|
707
|
+
</table>
|
708
|
+
|