update ChangeLog for 3.1.0-beta
[OpenSRF.git] / ChangeLog
1 commit b74533255c61937b96fb4326b9f94c18aaa37d4d
2 Author: Galen Charlton <gmc@equinoxinitiative.org>
3 Date:   Wed Jan 9 17:18:48 2019 -0500
4
5     bump up version numbers for 3.1.0-beta release
6     
7     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
8
9 6       6       README
10 3       3       doc/RELEASE_NOTES.txt
11 2       2       src/perl/lib/OpenSRF.pm
12 1       1       src/python/setup.py
13 1       1       version.m4
14
15 commit 0ed43a65d9f814540a9b0ec087ca29bf8090f7b2
16 Author: Galen Charlton <gmc@equinoxinitiative.org>
17 Date:   Wed Jan 9 17:04:24 2019 -0500
18
19     draft 3.1.x release notes for 3.1-beta
20     
21     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
22
23 154     0       doc/RELEASE_NOTES.txt
24  create mode 100644 doc/RELEASE_NOTES.txt
25
26 commit d7e9df6838f1c9a72db3fd41556d178cfe7f6700
27 Author: Galen Charlton <gmc@equinoxinitiative.org>
28 Date:   Wed Dec 12 14:35:56 2018 -0500
29
30     LP#1729610: extend backlog queue to C apps
31     
32     This patch extends the notion of a backlog queue to C apps and
33     offers the same functionality as the Perl side of the patch series:
34     
35     - max_backlog_queue configuration setting
36     - ability to queue messages up to the configured limit
37     - ability to drop requests that would overflow the backlog
38       queue and send status 503 exceptions back to the client.
39     
40     This patch also adds a new service, opensrf.cslow, that implements
41     a opensrf.cslow.wait method similar to the Perl opensrf.slooooooow
42     service.
43     
44     To test
45     -------
46     [1] Set a low max_backlog_queue for opensrf.cslow and a low
47         max_children.
48     [2] Arrange for srfsh to fire off a bunch of opensrf.cslow.wait
49         requests.
50     [3] Verify that requests that come in after the backlog queue fills
51         up immediately get 503 exceptions.
52     
53     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
54     Signed-off-by: Bill Erickson <berickxx@gmail.com>
55     Signed-off-by: Mike Rylander <mrylander@gmail.com>
56
57 19      0       examples/opensrf.xml.example
58 5       1       src/c-apps/Makefile.am
59 58      0       src/c-apps/osrf_cslow.c
60 117     40      src/libopensrf/osrf_prefork.c
61  create mode 100644 src/c-apps/osrf_cslow.c
62
63 commit efa9b713d5341458a3afaa26d1cf9e750fa78654
64 Author: Galen Charlton <gmc@equinoxinitiative.org>
65 Date:   Wed Nov 7 12:03:17 2018 -0500
66
67     LP#1729610: return new OpenSRF status if backlog queue fills up
68     
69     This patch teaches Perl services how to return a new OpenSRF status,
70     OSRF_STATUS_SERVICEUNAVAILABLE (code 503) if the backlog queue
71     for a service gets full.
72     
73     To test
74     -------
75     [1] Set a low max_backlog_queue for opensrf.sloooow and a low
76         max_children.
77     [2] Arrange for srfsh to fire off a bunch of opensrf.sloooow.wait
78         requests.
79     [3] Verify that requests that come in after the backlog queue fills
80         up immediately get 503 exceptions.
81     
82     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
83     Signed-off-by: Bill Erickson <berickxx@gmail.com>
84     Signed-off-by: Mike Rylander <mrylander@gmail.com>
85
86 1       0       include/opensrf/osrf_message.h
87 1       0       src/javascript/opensrf.js
88 3       0       src/perl/lib/OpenSRF/DomainObject/oilsResponse.pm
89 42      2       src/perl/lib/OpenSRF/Server.pm
90 1       0       src/python/osrf/const.py
91
92 commit 848843b1cda6d79d3aec589746abf7a8efdc313d
93 Author: Galen Charlton <gmc@equinoxinitiative.org>
94 Date:   Tue Nov 6 15:14:55 2018 -0500
95
96     LP#1729610: make it possible to set max_backlog_queue in opensrf.xml
97     
98     This patch adds a new service configuration option, max_backlog_queue,
99     to allow controlling the size of the backlog queue.
100     
101     If not otherwise specified in opensrf.xml, max_backlog_queue defaults
102     to 1000.
103     
104     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
105     Signed-off-by: Bill Erickson <berickxx@gmail.com>
106     Signed-off-by: Mike Rylander <mrylander@gmail.com>
107
108 1       0       examples/opensrf.xml.example
109 1       0       src/perl/lib/OpenSRF/System.pm
110
111 commit 60bcf74ecc5a5c7d0740d7054e829eef19828091
112 Author: Remington Steed <rjs7@calvin.edu>
113 Date:   Wed Jan 31 16:05:52 2018 -0500
114
115     LP#1729610: Fix incorrect param description
116     
117     Mike confirmed that the code expects "pause" to be an integer. This
118     commit changes the description to reflect that, and to mention the
119     default value.
120     
121     Signed-off-by: Remington Steed <rjs7@calvin.edu>
122     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
123     Signed-off-by: Bill Erickson <berickxx@gmail.com>
124     Signed-off-by: Mike Rylander <mrylander@gmail.com>
125
126 1       1       src/perl/lib/OpenSRF/Application/Slooooooow.pm
127
128 commit a9da9c7b25ef90276d41ba84ba8ccf0ea856da1b
129 Author: Mike Rylander <mrylander@gmail.com>
130 Date:   Tue Oct 24 16:45:09 2017 -0400
131
132     LP#1729610: Add some debug/internal logging to backlog queue
133     
134     Signed-off-by: Mike Rylander <mrylander@gmail.com>
135     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
136     Signed-off-by: Bill Erickson <berickxx@gmail.com>
137     Signed-off-by: Mike Rylander <mrylander@gmail.com>
138
139 7       0       src/perl/lib/OpenSRF/Server.pm
140
141 commit 1abec0da61a46fa5a4a881c29a2e95a51e9013fa
142 Author: Mike Rylander <mrylander@gmail.com>
143 Date:   Wed Nov 1 11:11:08 2017 -0400
144
145     LP#1729610: Add a service useful for testing behavior in slow response conditions
146     
147     This service, opensrf.slooooooow, offers a opensrf.slooooooow.wait method
148     that waits for the number of seconds specified in its sole parameter.
149     
150     Signed-off-by: Mike Rylander <mrylander@gmail.com>
151     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
152     Signed-off-by: Bill Erickson <berickxx@gmail.com>
153     Signed-off-by: Mike Rylander <mrylander@gmail.com>
154
155 19      0       examples/opensrf.xml.example
156 48      0       src/perl/lib/OpenSRF/Application/Slooooooow.pm
157  create mode 100644 src/perl/lib/OpenSRF/Application/Slooooooow.pm
158
159 commit 0201ca954002eb241d277c3068659bb1f8100bab
160 Author: Mike Rylander <mrylander@gmail.com>
161 Date:   Tue Oct 24 13:27:37 2017 -0400
162
163     LP#1729610: Allow queuing (for a while) during child backlog
164     
165     This patch teaches OpenSRF listeners for Perl services how to maintain
166     a queue of requests in case no drone process is immediately available
167     to process a requeust.
168     
169     Signed-off-by: Mike Rylander <mrylander@gmail.com>
170     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
171     Signed-off-by: Bill Erickson <berickxx@gmail.com>
172     Signed-off-by: Mike Rylander <mrylander@gmail.com>
173
174 35      5       src/perl/lib/OpenSRF/Server.pm
175 2       3       src/perl/lib/OpenSRF/Transport/SlimJabber/XMPPReader.pm
176
177 commit f3eab1715079243d541dc12fd90db005630ffec9
178 Author: Bill Erickson <berickxx@gmail.com>
179 Date:   Tue Nov 13 17:21:18 2018 -0500
180
181     LP#1803182 Websocketd graceful shutdown support
182     
183     Give websocketd clients a chance to complete any requests that are
184     in-process at time of shutdown.
185     
186     Graceful shutdown is initiated by sending a SIGUSR1 signal to the
187     websocket-osrf child processes or to the parent process group.
188     
189     This can be done directly via:
190     
191     $ kill -s USR1 -$websocketd_parent_pid
192     
193     Or via systemd for systemd users:
194     
195     $ sudo systemctl kill -s USR1 websocketd-osrf
196     
197     Note the websocketd parent process ignores SIGUSR1.
198     
199     Once initiated, the websocketd backend goes into shutdown mode polling
200     for a graceful shutdown window, which occurs when all request up to now
201     have been completed.  Once that moment arrives, the client is kicked off
202     and must connect to a new websocketd instance to issue any new requests.
203     
204     The polling period lasts for SHUTDOWN_MAX_GRACEFUL_SECONDS seconds (in
205     osrf-websocket-stdio.c), which currently defaults to 2 minutes.
206     
207     Signed-off-by: Bill Erickson <berickxx@gmail.com>
208     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
209
210 91      13      src/websocket-stdio/osrf-websocket-stdio.c
211
212 commit 304365165e7ba0cc08bb6c5f0ba25f0b541fd27d
213 Author: Bill Erickson <berickxx@gmail.com>
214 Date:   Mon Jul 24 12:08:56 2017 -0400
215
216     LP#1706147 Perl Force-Recycle drone option
217     
218     Creates an API-level option to inform the OpenSRF drone management code
219     that the running drone should be recycled upon completion of the current
220     OpenSRF session.  This allows for quicker release of resources consumed
221     by the drone.
222     
223     To use:
224     
225     sub some_api_method {
226         my ($self, $client, ...) = @_;
227         $self->session->force_recycle(1);
228         ...
229     }
230     
231     Signed-off-by: Bill Erickson <berickxx@gmail.com>
232     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
233
234 10      0       src/perl/lib/OpenSRF/AppSession.pm
235 15      1       src/perl/lib/OpenSRF/Server.pm
236
237 commit 51a4651186c94686051262a9255d165eadd4f049
238 Author: Bill Erickson <berickxx@gmail.com>
239 Date:   Mon Aug 27 10:12:57 2018 -0400
240
241     LP#1684970 Translator compatible with mod_remoteip
242     
243     Teach the OSRF Translator to request the IP address of the user agent
244     (e.g. web browser) instead of the IP address of the up stream client,
245     which may be a proxy, using the Apache 2.4 request_rec->useragent_ip
246     value.
247     
248     http://httpd.apache.org/docs/2.4/developer/new_api_2_4.html
249     
250     This make is possible for the translator to access the client IP with
251     Apache's mod_remoteip enabled and configured.
252     
253     Includes sample config and install documentation.
254     
255     Signed-off-by: Bill Erickson <berickxx@gmail.com>
256     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
257
258 17      0       README
259 1       1       src/gateway/osrf_http_translator.c
260
261 commit 1423787b6076daeb18176e907b1ed307255ffbcb
262 Author: Bill Erickson <berickxx@gmail.com>
263 Date:   Thu Sep 13 13:08:37 2018 -0400
264
265     LP#1711145 NGINX sample websocketd configs
266     
267     Signed-off-by: Bill Erickson <berickxx@gmail.com>
268     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
269
270 20      3       examples/nginx/osrf-ws-http-proxy
271
272 commit 3db305ba4329b4c93d16b03800755d5807de4de0
273 Author: Bill Erickson <berickxx@gmail.com>
274 Date:   Wed Jul 11 12:27:05 2018 -0400
275
276     LP#1711145 NGINX sample config security improvements
277     
278     * Adds security recommendations from
279     https://mozilla.github.io/server-side-tls/ssl-config-generator/
280     * Enables http2
281     * Apply a 5-minute proxy read timeout to avoid too-short timeouts on
282       long API calls.
283     * Adds a (commented) section on sending nginx logs to syslog
284     
285     Includes INSTALL notes on generating the dhparam file.
286     
287     Signed-off-by: Bill Erickson <berickxx@gmail.com>
288     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
289
290 10      2       README
291 30      2       examples/nginx/osrf-ws-http-proxy
292
293 commit 5c803ae4550bf0e4a992c217baeaffabee30c45a
294 Author: Jason Stephenson <jason@sigio.com>
295 Date:   Mon Nov 5 10:42:32 2018 -0500
296
297     Reorder Ejabberd configuration steps for Ubuntu 18.04.
298     
299     Rearrange the steps for modifying /etc/ejabberd/ejabberd.yml on Ubuntu
300     18.04 so that they are in the same order that they appear in the file.
301     
302     Signed-off-by: Jason Stephenson <jason@sigio.com>
303
304 6       6       README
305
306 commit 705599ff6aa29857e8ed1b3da11e6e8ba05e9aa9
307 Author: Bill Erickson <berickxx@gmail.com>
308 Date:   Tue Jun 12 12:12:45 2018 -0400
309
310     LP#1776510 JS libs handle transport errors
311     
312     Teach the websocket client code to look for the transport_error flag
313     applied to the websocket wrapper message by the websocket gateway when a
314     request for an unavilable service is made.
315     
316     When encountered, fire the transport or generic error handler callbacks,
317     if available.  Avoid any attempts to further process the message.
318     
319     Signed-off-by: Bill Erickson <berickxx@gmail.com>
320     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
321
322 23      0       src/javascript/opensrf.js
323
324 commit 884e00c41abd33ed8785acc1bc5958fd027a0807
325 Author: Ben Shum <ben@evergreener.net>
326 Date:   Thu Sep 20 11:34:45 2018 -0400
327
328     Update README to include Bionic steps
329     
330     Note the use of mod_legacy_auth in ejabberd 18.x version for Ubuntu Bionic
331     
332     Signed-off-by: Ben Shum <ben@evergreener.net>
333     Signed-off-by: Jason Stephenson <jason@sigio.com>
334     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
335
336 29      2       README
337
338 commit f234372cb5f175c79ad9fe8279ae445b78fdaeb5
339 Author: Chris Sharp <csharp@georgialibraries.org>
340 Date:   Tue Aug 7 19:43:45 2018 -0400
341
342     Add support for Ubuntu 18.04 Bionic Beaver to Makefile.install
343     
344     Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
345     Signed-off-by: Ben Shum <ben@evergreener.net>
346     Signed-off-by: Jason Stephenson <jason@sigio.com>
347     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
348
349 13      0       src/extras/Makefile.install
350
351 commit 9682d15475485522812ac73ac10e283d11176f7e
352 Author: Bill Erickson <berickxx@gmail.com>
353 Date:   Thu Sep 20 18:04:09 2018 -0400
354
355     LP#1703411 XMPP opensrf element make check repairs
356     
357     Update the transport_message unit tests to check for the new <opensrf/>
358     element for relaying custom commands.
359     
360     Signed-off-by: Bill Erickson <berickxx@gmail.com>
361     Signed-off-by: Jason Stephenson <jason@sigio.com>
362     Signed-off-by: Mike Rylander <mrylander@gmail.com>
363
364 3       2       tests/check_transport_message.c
365
366 commit 744f0d1f2775bd5c51bfbf47d4d89a29001aafcf
367 Author: Bill Erickson <berickxx@gmail.com>
368 Date:   Wed Sep 19 15:34:49 2018 -0400
369
370     LP#1703411 XMPP opensrf sub-element repairs
371     
372     * Message template typo repair -- missing "'"
373     * XPath repair on path to opensrf sub-element for Perl
374     * Move 'type' attribute get/set back up to the <message> for Perl.
375     * Clean up code duplication in the C message building libs.
376     * Squash a centuries-old memory leak where xmlFree(sender) was only
377       called if a router_from was not supplied.
378     
379     Signed-off-by: Bill Erickson <berickxx@gmail.com>
380     Signed-off-by: Jason Stephenson <jason@sigio.com>
381     Signed-off-by: Mike Rylander <mrylander@gmail.com>
382
383 17      54      src/libopensrf/transport_message.c
384 3       3       src/perl/lib/OpenSRF/Transport/SlimJabber/XMPPMessage.pm
385 2       2       src/perl/lib/OpenSRF/Transport/SlimJabber/XMPPReader.pm
386
387 commit b44fb8675a3b9983d3d3c1f2586006520b6f7281
388 Author: Mike Rylander <mrylander@gmail.com>
389 Date:   Tue Aug 28 14:32:02 2018 -0400
390
391     LP#1703411: Move OpenSRF XMPP attrs to subelement
392     
393     Modern versions of Ejabberd strip custom XML attributes which appear
394     outside of custom elements.  To support OpenSRF's custom router and
395     osrf_xid commands, move these attributes into a new custom XML element
396     <opensrf>.
397     
398     Signed-off-by: Mike Rylander <mrylander@gmail.com>
399     Signed-off-by: Bill Erickson <berickxx@gmail.com>
400     Signed-off-by: Jason Stephenson <jason@sigio.com>
401
402 8       0       src/java/org/opensrf/net/xmpp/XMPPReader.java
403 70      8       src/libopensrf/transport_message.c
404 13      8       src/libopensrf/transport_session.c
405 9       4       src/perl/lib/OpenSRF/Transport/SlimJabber/XMPPMessage.pm
406 7       2       src/perl/lib/OpenSRF/Transport/SlimJabber/XMPPReader.pm
407
408 commit 265aa9f8cc12472b347e34a62a8f2655dfb1c51b
409 Author: Jason Stephenson <jason@sigio.com>
410 Date:   Wed Sep 20 11:56:34 2017 -0400
411
412     Lp#1718459: Remove Debian 7 Wheezy installation support.
413     
414     Remove references to Debian 7 Wheezy in the README.
415     
416     Remove src/extras/Makefile.install targets for Wheezy.
417     
418     Remove the examples/apache2 directory, since none of the supported
419     distros come with Apache 2.2 any longer.
420     
421     To test: Simply install on a supported distribution other than Debian
422     7 Wheezy and do the usual tests.
423     
424     Signed-off-by: Jason Stephenson <jason@sigio.com>
425     Signed-off-by: Ben Shum <ben@evergreener.net>
426
427 6       22      README
428 0       49      examples/apache2/opensrf.conf
429 0       64      examples/apache2/websockets/apache2.conf
430 1       13      src/extras/Makefile.install
431  delete mode 100644 examples/apache2/opensrf.conf
432  delete mode 100644 examples/apache2/websockets/apache2.conf
433
434 commit da7e927c350c3c098b081f432b53cfb3a24ab480
435 Author: Ben Shum <ben@evergreener.net>
436 Date:   Wed Sep 12 13:07:18 2018 -0400
437
438     LP#1777180: Add zip/unzip to prerequisites
439     
440     Need unzip for new websocketd unpackaging. Also get zip just because.
441     
442     Signed-off-by: Ben Shum <ben@evergreener.net>
443     Signed-off-by: Jason Stephenson <jason@sigio.com>
444
445 2       0       src/extras/Makefile.install
446
447 commit d1c33b4b1e2305c4dbb9a54dec22f04f665a7a2c
448 Author: Jason Stephenson <jason@sigio.com>
449 Date:   Wed Sep 12 10:58:58 2018 -0400
450
451     LP#1777180 Update README for websocketd
452     
453     Add optional command to run websocketd without using a proxy.
454     
455     Signed-off-by: Jason Stephenson <jason@sigio.com>
456     Signed-off-by: Ben Shum <ben@evergreener.net>
457
458 19      1       README
459
460 commit 21c9c76332b8a4b591e443d098a0fc78b6db0e9d
461 Author: Bill Erickson <berickxx@gmail.com>
462 Date:   Sat Jun 9 19:05:25 2018 -0400
463
464     LP#1777180 Websocketd gateway and test scripts
465     
466     Adds a new OpenSRF binary/program for relaying websockets messages
467     to and from a websocketd instance.  The new binary
468     (osrf-websocket-stdio) performs the same tasks as the
469     osrf_websocket_translator.c Apache module, minus the Apache module glue
470     and the extra threading required to run within the Apache module.
471     
472     Commit includes 2 test scripts (tester.pl and test-stateful.pl) for
473     generating large series of test messages to send to a websockets
474     instance. tester.pl sends echo requests only, test-stateful.pl sends
475     connect->echo-request->disconnect batches across a configurable number
476     of forked processes.
477     
478     INSTALL document updated to include websocketd setup as an alternative
479     to Apache websockets.
480     
481     Signed-off-by: Bill Erickson <berickxx@gmail.com>
482     Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
483     Signed-off-by: Jason Stephenson <jason@sigio.com>
484     Signed-off-by: Ben Shum <ben@evergreener.net>
485
486 4       0       .gitignore
487 32      2       README
488 1       0       configure.ac
489 1       1       src/Makefile.am
490 22      0       src/websocket-stdio/Makefile.am
491 609     0       src/websocket-stdio/osrf-websocket-stdio.c
492 148     0       src/websocket-stdio/test-stateful.pl
493 87      0       src/websocket-stdio/tester.pl
494  create mode 100644 src/websocket-stdio/Makefile.am
495  create mode 100644 src/websocket-stdio/osrf-websocket-stdio.c
496  create mode 100755 src/websocket-stdio/test-stateful.pl
497  create mode 100755 src/websocket-stdio/tester.pl
498
499 commit 6414c2527f6b6857d9f163bdba6f071b09f710a3
500 Author: Mike Rylander <mrylander@gmail.com>
501 Date:   Fri Jul 7 15:22:21 2017 -0400
502
503     LP#1702978: memcache Get methods use key as va_list format
504     
505     And, when a key (composed of, say, a username or barcode) has a % in it,
506     bad things happen.  We will stop acting as if these are variadic functions
507     now, and also update Evergreen so that it does not do that either.
508     
509     TODO: Make these actually non-variadic, but that breaks ABI.
510     
511     Signed-off-by: Mike Rylander <mrylander@gmail.com>
512     Signed-off-by: Cesar Velez <cesar.velez@equinoxinitiative.org>
513     Signed-off-by: Jason Stephenson <jason@sigio.com>
514
515 13      17      src/libopensrf/osrf_cache.c
516
517 commit 71720f639e00d0e457bc8f967f8060b579bc2882
518 Author: Galen Charlton <gmc@equinoxinitiative.org>
519 Date:   Mon May 7 16:03:16 2018 -0400
520
521     LP#1243841: quiet a misleading indentation warning
522     
523     Adjusts a spaces-vs-tabs issue to fix the following compilation
524     warning:
525     
526     osrf_prefork.c: In function ‘check_children’:
527     osrf_prefork.c:1067:5: warning: this ‘if’ clause does not
528     guard... [-Wmisleading-indentation]
529          if( select_ret <= 0 ) // we're done here
530          ^~
531     osrf_prefork.c:1072:2: note: ...this statement, but the latter is
532     misleadingly indented as if it is guarded by the ‘if’
533       cur_child = forker->first_child;
534       ^~~~~~~~~
535     
536     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
537
538 1       1       src/libopensrf/osrf_prefork.c
539
540 commit 0f0a2281767a47c0ab4971d2b0dba5da10c6907b
541 Author: Jason Stephenson <jason@sigio.com>
542 Date:   Tue Nov 7 16:39:39 2017 -0500
543
544     LP#1243841 - Quiet remaining Make install warnings.
545     
546     We silence the following warnings:
547     
548     apachetools.c:179:15: warning: initialization discards 'const' qualifier
549     from pointer target type [enabled by default]
550     
551     apachetools.c:181:8: warning: assignment discards 'const' qualifier from
552     pointer target type [enabled by default]
553     
554     apachetools.c:183:8: warning: assignment discards 'const' qualifier from
555     pointer target type [enabled by default]
556     
557     ./osrf_websocket_translator.c:541:9: warning: return makes integer from
558     pointer without a cast [enabled by default]
559     
560     ./osrf_http_translator.c:300:25: warning: passing argument 1 of 'free'
561     discards 'const' qualifier from pointer target type [enabled by default]
562     
563     Signed-off-by: Jason Stephenson <jason@sigio.com>
564     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
565
566 1       1       src/gateway/apachetools.c
567 1       1       src/gateway/osrf_http_translator.c
568 1       1       src/gateway/osrf_websocket_translator.c
569
570 commit f47f108e7a2af04360c872313978be6ce71c5c25
571 Author: Jason Stephenson <jason@sigio.com>
572 Date:   Tue Nov 7 15:58:05 2017 -0500
573
574     LP#1243841 - Quiet additional Make warnings and some code cleanup.
575     
576     We make the following warnings go away:
577     
578     osrf_legacy_json.c:607:6: warning: variable ‘fourth_dash’ set but
579     not used [-Wunused-but-set-variable]
580     
581     osrf_legacy_json.c:836:5: warning: passing argument 3 of ‘makeNode’
582     discards ‘const’ qualifier from pointer target type [enabled by
583     default]
584     
585     utils.c:133:2: warning: format not a string literal and no format
586     arguments [-Wformat-security]
587     
588     We also cleanup the while block nested in a do while block around line
589     63 of osrf_cache.c to be more readable by adding braces and breaking
590     it across 3 lines.
591     
592     Signed-off-by: Jason Stephenson <jason@sigio.com>
593     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
594
595 3       1       src/libopensrf/osrf_cache.c
596 4       6       src/libopensrf/osrf_legacy_json.c
597 6       3       src/libopensrf/utils.c
598
599 commit 9dd65c72e5bd114eb1e1d6c2b1388e01df02bbb8
600 Author: Chris Sharp <csharp@georgialibraries.org>
601 Date:   Tue Sep 19 21:25:12 2017 -0400
602
603     LP#1243841 - Quiet wrong format warnings during make install.
604     
605     During make install, the compiler warns that %d expects an int when the
606     actual value is a long int.  Changing %d to %ld fixes the issue.
607     
608     Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
609     Signed-off-by: Jason Stephenson <jason@sigio.com>
610     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
611
612 3       3       src/gateway/osrf_websocket_translator.c
613
614 commit f8f1813bf17f745719c9dabbdfc5c7bed05c7138
615 Author: Chris Sharp <csharp@georgialibraries.org>
616 Date:   Tue Sep 19 20:46:28 2017 -0400
617
618     LP#1243841 - Quiet unused return value warning in srfsh.c
619     
620     Using the technique described here: https://stackoverflow.com/a/13999461.
621     
622     Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
623     Signed-off-by: Jason Stephenson <jason@sigio.com>
624     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
625
626 1       1       src/srfsh/srfsh.c
627
628 commit 6aedae0b42434c95f22924ed4b93ba726353f034
629 Author: Chris Sharp <csharp@georgialibraries.org>
630 Date:   Tue Sep 19 20:37:13 2017 -0400
631
632     LP#1243841 - Quiet unused return value warnings.
633     
634     Using advice given here: https://stackoverflow.com/a/13999461, "The
635     only good (if ugly) way to suppress these is to convert the return
636     value into something that the compiler agrees that you can ignore."
637     
638     Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
639     Signed-off-by: Jason Stephenson <jason@sigio.com>
640     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
641
642 4       4       src/libopensrf/utils.c
643
644 commit 2e5c11c04c4db962aebf4b8632ce35a46434cd12
645 Author: Chris Sharp <csharp@georgialibraries.org>
646 Date:   Tue Sep 19 18:10:00 2017 -0400
647
648     LP#1243841 - Wrap truth test using "=" in an extra set of parens.
649     
650     Referring to https://stackoverflow.com/questions/5476759/compiler-warning-suggest-parentheses-around-assignment-used-as-truth-value,
651     it is recommended to wrap variable assignments that are used as a truth
652     test within an extra set of parentheses.
653     
654     Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
655     Signed-off-by: Jason Stephenson <jason@sigio.com>
656     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
657
658 1       1       src/libopensrf/osrf_cache.c
659
660 commit e72473d9c43a579ea64cb79fd410d37df23c3445
661 Author: Jason Stephenson <jason@sigio.com>
662 Date:   Sun Feb 18 12:12:13 2018 -0500
663
664     LP1340982: Ignore both 'comment' and '#comment' nodes in Settings Parse.
665     
666     Modify the XML2perl helper function in OpenSRF::Utils::SettingsParser
667     to ignore comment nodes that have names of comment and #comment.
668     
669     To reproduce the bug:
670     
671     1. Stop OpenSRF services.
672     
673     2. Add a XML comment, any text betwen <!-- and -->, in the list of
674     MARC templates in the opensrf.xml file.
675     
676     3. Restart OpenSRF services.
677     
678     4. In the staff client, go to Cataloging->Create New MARC Record.
679     
680     5. In the list of templates, you will #comment where you added the
681     comment. (NOTE: I only tested with 1 comment.  Things may get worse
682     with more than 1 comment.)
683     
684     6. There will be an error like the following in the
685     open-ils.cat_stderr.log if you attempt to choose the #comment entry:
686     
687        Caught error from 'run' method: Exception: OpenSRF::EX::ERROR
688        2018-02-18T11:24:30 OpenSRF::Application
689        /usr/local/share/perl/5.22.1/OpenSRF/Application.pm:240 System
690        ERROR: Unable to open MARC template file: HASH(0x2249928) :
691     
692     To test the fix:
693     
694     1. Leave the comments in the opensrf.xml file from before.
695     
696     2. Apply this commit, do make and make install for OpenSRF.
697     
698     3. Just to make sure, do make and make install for Evergreen.
699     
700     4. Repeat steps 3 and 4 from above.
701     
702     5. You should NOT see any templates named #comment.
703     
704     Signed-off-by: Jason Stephenson <jason@sigio.com>
705     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
706
707 1       1       src/perl/lib/OpenSRF/Utils/SettingsParser.pm
708
709 commit f8dfa10b7613799190524ae1bf635d6c90a97b98
710 Author: Bill Erickson <berickxx@gmail.com>
711 Date:   Tue Apr 10 15:06:56 2018 -0400
712
713     LP#1762815 Empty client TZ defaults to server TZ (Perl)
714     
715     Fixes an issue in the Perl client time zone handling that resulted in
716     the server defaulting to UTC time instead of the server time zone when
717     no time zone value was received from the client.
718     
719     Signed-off-by: Bill Erickson <berickxx@gmail.com>
720     Signed-off-by: Jason Stephenson <jason@sigio.com>
721
722 1       0       src/perl/lib/OpenSRF/DomainObject/oilsMessage.pm
723
724 commit 4163499191dfb511ba8646ae1c4748d88996558e
725 Author: Bill Erickson <berickxx@gmail.com>
726 Date:   Wed Jan 24 15:16:14 2018 -0500
727
728     LP#1744158 Websocket proc exits on ejabberd disconnect
729     
730     Any errors relaying websocket messages to OpenSRF now result in the WS
731     client being disconnected, allowing the WS process to exit.  This
732     prevents the WS gateway from accepting requests it cannot process and
733     allows the client to connect to a new WS process.
734     
735     Signed-off-by: Bill Erickson <berickxx@gmail.com>
736     Signed-off-by: Jason Stephenson <jason@sigio.com>
737
738 17      4       src/gateway/osrf_websocket_translator.c
739
740 commit 50a6bcad0b6d94e8edd15ee460b84466bc55c941
741 Author: Bill Erickson <berickxx@gmail.com>
742 Date:   Wed Jan 31 13:07:41 2018 -0500
743
744     LP#1746577 Websocket responder exits on jabber disconnect
745     
746     Regularly check for Jabber socket disconnects in the websocket gateway
747     "responder" thread (that relays messages from opensrf to the WS client)
748     and force a client disconnect when a broken jabber socket is detected.
749     
750     Signed-off-by: Bill Erickson <berickxx@gmail.com>
751     Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
752     Signed-off-by: Jason Stephenson <jason@sigio.com>
753
754 18      2       src/gateway/osrf_websocket_translator.c
755
756 commit a90a1d9a99e510423b9fdc43afcb128ace79a24a
757 Author: Galen Charlton <gmc@equinoxinitiative.org>
758 Date:   Thu Sep 21 09:51:20 2017 -0400
759
760     and continue to bump up version numbers
761     
762     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
763
764 1       1       version.m4
765
766 commit f3775e2c750ce0119c1bb5c2bd286d356bca8467
767 Author: Galen Charlton <gmc@equinoxinitiative.org>
768 Date:   Wed Sep 20 10:57:09 2017 -0400
769
770     bump up version numbers in master to reflect 3.0 as next major release branch
771     
772     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
773
774 2       2       src/perl/lib/OpenSRF.pm
775 1       1       src/python/setup.py
776
777 commit cace46d9acd653234ffc298d8ea483ce3c08c54d
778 Author: Jason Stephenson <jason@sigio.com>
779 Date:   Tue Sep 12 11:29:41 2017 -0400
780
781     LP#1708048: Fix ld problems by renaming libraries.
782     
783     We add the lib... prefix to all C library names as expected by most
784     linkers.  This necessitates changes to the opensrf.xml configuration
785     file.
786     
787     Signed-off-by: Jason Stephenson <jason@sigio.com>
788     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
789
790 2       2       examples/opensrf.xml.example
791 10      10      src/c-apps/Makefile.am
792
793 commit a85132ecc7760106a317fdd967236cef99835771
794 Author: Ben Shum <ben@evergreener.net>
795 Date:   Tue Aug 1 16:07:16 2017 -0400
796
797     LP#1708048: Add support for Debian 9 Stretch
798     
799       - Add new make target "debian-stretch"
800       - Add Stretch instructions to README
801     
802     Signed-off-by: Ben Shum <ben@evergreener.net>
803     Signed-off-by: Jason Stephenson <jason@sigio.com>
804     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
805
806 8       7       README
807 12      0       src/extras/Makefile.install
808
809 commit 1f38166249e9f8fbb58ad21d1a00b935200a9278
810 Author: Galen Charlton <gmc@equinoxinitiative.org>
811 Date:   Thu Sep 14 17:36:40 2017 -0400
812
813     LP#1717350: fix chunking messages sent from Perl services
814     
815     The chunk size adjustments introduced by the patches for bug 1709710
816     could result in calculating non-integral chunk sizes for Perl services.
817     This in turn led to fractional offsets and lengths being passed to
818     Perl's substr() function; rounding in turn can lead to characters
819     in the response getting silently dropped, which in turn broke
820     parsing the reconstituted response.
821     
822     To test
823     -------
824     The problem can be reproduced by invoking
825     
826       open-ils.storage open-ils.storage.actor.org_unit.descendants.atomic 1, 0
827     
828     in Evergreen databases with org unit trees large enough that the
829     response gets chunked.
830     
831     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
832     Signed-off-by: Jason Stephenson <jason@sigio.com>
833
834 2       1       src/perl/lib/OpenSRF/AppSession.pm
835
836 commit be2b2645f7da0907366eb0c99b5d6c231c366b30
837 Author: Bill Erickson <berickxx@gmail.com>
838 Date:   Fri Sep 8 17:53:52 2017 -0400
839
840     LP#1709710 Count Perl chunk/bundle sizes in bytes
841     
842     For the purposes of bundling/chunking, count the number of bytes in each
843     affected string instead of the number of characters.
844     
845     See also https://perldoc.perl.org/bytes.html and 'perldoc -f length'
846     
847     Signed-off-by: Bill Erickson <berickxx@gmail.com>
848     Signed-off-by: Jason Stephenson <jason@sigio.com>
849     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
850
851 6       3       src/perl/lib/OpenSRF/AppSession.pm
852
853 commit 3d91aeb066c52213f2c82f04bdfc84b87ec8d1d0
854 Author: Galen Charlton <gmc@equinoxinitiative.org>
855 Date:   Fri Sep 8 15:34:29 2017 -0400
856
857     LP#1709710: write unit tests for osrfXmlEscapingLength()
858     
859     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
860     Signed-off-by: Bill Erickson <berickxx@gmail.com>
861     Signed-off-by: Jason Stephenson <jason@sigio.com>
862     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
863
864 6       2       tests/Makefile.am
865 43      0       tests/check_osrf_utils.c
866  create mode 100644 tests/check_osrf_utils.c
867
868 commit cb4587be75bf9294d65c7173ff41c275a14e0f04
869 Author: Mike Rylander <miker@esilibrary.com>
870 Date:   Fri Aug 18 11:43:31 2017 -0400
871
872     LP#1709710: Make chunk sizing smart about XML quoting
873     
874     XML inside JSON as a quoted string that's itself inside XML causes quite the
875     pile up of nested excaping of certain characters in OpenSRF PARTIAL_RESPONSE
876     messages.  Here we check for the worst offenders (<, >, &, and ") and account
877     for the cost of escaping them in chunked response stanzas.
878     
879     Signed-off-by: Mike Rylander <mrylander@gmail.com>
880     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
881     Signed-off-by: Bill Erickson <berickxx@gmail.com>
882     Signed-off-by: Jason Stephenson <jason@sigio.com>
883     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
884
885 6       0       include/opensrf/utils.h
886 11      4       src/libopensrf/osrf_app_session.c
887 8       3       src/libopensrf/osrf_application.c
888 23      0       src/libopensrf/utils.c
889 21      3       src/perl/lib/OpenSRF/AppSession.pm
890
891 commit af4ab2355707083a22a2828202a541bf0e718bc0
892 Author: Chris Sharp <csharp@georgialibraries.org>
893 Date:   Thu May 11 14:47:32 2017 -0400
894
895     LP#1690206 - remove check of httpd.conf from OpenSRF Makefile.install
896     
897     The original src/extras/Makefile.install included a grep of the
898     file /etc/apache2/httpd.conf, which is no longer installed by default
899     on supported Debian and Ubuntu releases.  As this check results in
900     an error message, it makes sense to remove the check altogether.
901     
902     Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
903     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
904
905 0       6       src/extras/Makefile.install
906
907 commit ea72acaf798f3fc6cc0aae8d93771c6dc2a21a57
908 Author: Bill Erickson <berickxx@gmail.com>
909 Date:   Fri Jun 9 13:01:46 2017 -0400
910
911     LP#1697029 Log and exit on write to dead child
912     
913     Confirm that a child process is alive just before attempting to write to
914     its pipe.  If the child process is dead, log the error, then drop the
915     message and move on.  This allows the parent to continue servicing
916     future requests.
917     
918     Signed-off-by: Bill Erickson <berickxx@gmail.com>
919     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
920
921 13      0       src/perl/lib/OpenSRF/Server.pm
922
923 commit 53e7f82b534eef2b513fe31bcb2a9c719a7ee746
924 Author: Galen Charlton <gmc@equinoxinitiative.org>
925 Date:   Fri Aug 18 11:11:29 2017 -0400
926
927     LP#1711194: avoid division by zero errors
928     
929     Under some circumstances, osrf_control --diagnostic may not
930     be able to deduce the correct max_children setting for a service,
931     e.g., if it's run without --localhost on a system that doesn't
932     have a opensrf.xml config section specifying active apps for a
933     specific hostname. When that happens, just display the count
934     of running drones rather than displaying error messages about
935     undefined $dmax values and divisions by zero.
936     
937     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
938     Signed-off-by: Bill Erickson <berickxx@gmail.com>
939
940 6       2       bin/opensrf-perl.pl.in
941
942 commit b198681669ed28a510fd0d18d3a89d4dd0837ebe
943 Author: Bill Erickson <berickxx@gmail.com>
944 Date:   Wed Aug 16 14:10:13 2017 -0400
945
946     LP#1711194 osrf_config --diagnostic reports max-children
947     
948     --diagnostic output shows the maximum number of allowed drones per
949     service along with the active drone count.  Additionally, a usage
950     percentage value is displayed.
951     
952     E.g.
953     
954     $ /openils/bin/osrf_control -l --diagnostic
955     
956     * open-ils.acq   [1581] uptime=00:35 cputime=00:00:00 #drones=1/15 6%
957     * open-ils.actor [1629] uptime=00:35 cputime=00:00:00 #drones=2/15 13%
958     
959     Signed-off-by: Bill Erickson <berickxx@gmail.com>
960     Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
961     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
962
963 9       1       bin/opensrf-perl.pl.in
964
965 commit e88891bcdd9781c2d291057a802e4f751202fee9
966 Author: Graham Billiau <graham@geeksinthegong.net>
967 Date:   Mon Jul 31 11:00:25 2017 -0400
968
969     LP#1704090: ensure make install respects DESTDIR
970     
971     This patch ensures that 'make install' uses DESTDIR consistently,
972     making life easier for packagers.
973     
974     Signed-off-by: Graham Billiau <graham@geeksinthegong.net>
975     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
976
977 3       3       src/Makefile.am
978 7       2       src/gateway/Makefile.am
979
980 commit 716b674a5197f9ec70091c9f3dfa3eabca3bbe9d
981 Author: Mike Rylander <mrylander@gmail.com>
982 Date:   Mon Jul 31 15:15:09 2017 -0400
983
984     Revert "LP#1635737 Add optional context to interval_to_seconds"
985     
986     This reverts commit a481100ef9d5bd9eaad5a87ce29776cb07a8687c.
987
988 17      48      src/perl/lib/OpenSRF/Utils.pm
989
990 commit 0484c673577c49a552af861364caac03ef187f5e
991 Author: Mike Rylander <mrylander@gmail.com>
992 Date:   Mon Jul 31 15:15:02 2017 -0400
993
994     Revert "LP#1635737: Unit tests for DST and date math"
995     
996     This reverts commit 316f58375c40087bfae32234c4dd3817260831e5.
997
998 2       13      src/perl/t/09-Utils-interval_to_seconds.t
999
1000 commit 316f58375c40087bfae32234c4dd3817260831e5
1001 Author: Mike Rylander <mrylander@gmail.com>
1002 Date:   Mon Jul 31 12:53:59 2017 -0400
1003
1004     LP#1635737: Unit tests for DST and date math
1005     
1006     Signed-off-by: Mike Rylander <mrylander@gmail.com>
1007
1008 13      2       src/perl/t/09-Utils-interval_to_seconds.t
1009
1010 commit a481100ef9d5bd9eaad5a87ce29776cb07a8687c
1011 Author: Dan Wells <dbw2@calvin.edu>
1012 Date:   Fri Jul 21 14:17:34 2017 -0400
1013
1014     LP#1635737 Add optional context to interval_to_seconds
1015     
1016     Any given interval (e.g. "1 month") can be a different amount of
1017     seconds depending on the context (i.e. "1 month" after February 1 is
1018     March 1, but "1 month" after March 1 is April 1, yet March is longer
1019     than February).  This affects months all the time, but also can affect
1020     days, hours, and even seconds once you consider DST and "leap" times.
1021     
1022     By giving an optional context to interval_to_seconds, you can find the
1023     true number of seconds in, for example, "1 month", when starting from
1024     "February 1" (the context).
1025     
1026     Signed-off-by: Dan Wells <dbw2@calvin.edu>
1027     Signed-off-by: Mike Rylander <mrylander@gmail.com>
1028
1029 48      17      src/perl/lib/OpenSRF/Utils.pm
1030
1031 commit 66acf02b800b6bb9b128c591e7ce480dc111b99d
1032 Author: Jason Stephenson <jason@sigio.com>
1033 Date:   Wed Jul 12 15:24:48 2017 -0400
1034
1035     LP 1703958: Update Websockets Intructions for Debian Jessie
1036     
1037     Modify the Websockets installation instructions so that users will
1038     have a working installation on Debian Jessie.  We change the "Debian"
1039     instructions to say "Debian Wheezy" and add "Debian Jessie" to the
1040     list with "Ubuntu Trusty / Xenial" where necessary.
1041     
1042     Signed-off-by: Jason Stephenson <jason@sigio.com>
1043     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
1044
1045 4       4       README
1046
1047 commit 740e725fbb02d7d3476d39efbed0b382f13b880d
1048 Author: Graham Billiau <graham@geeksinthegong.net>
1049 Date:   Thu Jul 13 11:29:43 2017 -0400
1050
1051     LP#1704116: fix intermittant failure of parallel building
1052     
1053     Running make to do a parallel build (e.g., 'make -j 4' or
1054     the like) could fail because of an undeclared dependency; this
1055     patch fixes the issue.
1056     
1057     The issue can be reproduced by repeating "make clean; make -j 4"
1058     until the build fails.
1059     
1060     Signed-off-by: Graham Billiau <graham@geeksinthegong.net>
1061     Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
1062
1063 1       0       src/libopensrf/Makefile.am