From 2cb5313d0d5bf3e2b912ebbcc653cedcac22336d Mon Sep 17 00:00:00 2001 From: Dan Scott Date: Tue, 30 Oct 2012 23:39:25 -0400 Subject: [PATCH] Bump release numbers, create 2.1.1 change log Signed-off-by: Dan Scott Conflicts: ChangeLog --- ChangeLog | 1244 ++++++++++++++++++++++++++++++++++++++++++++++- src/perl/lib/OpenSRF.pm | 4 +- version.m4 | 2 +- 3 files changed, 1246 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3323187..870dcfe 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1 +1,1243 @@ -#ChangeLog +ChangeLog +========= + +OpenSRF 2.1.1 +------------- + +commit e93c7c932b144aac2633fe5d058f298a29909f02 +Author: Dan Scott +Date: Tue Oct 30 23:34:04 2012 -0400 + + Release notes for 2.1.1: input log redaction + + Signed-off-by: Dan Scott + +12 3 doc/RELEASE_NOTES.txt + +commit fd367d0a978cd85d2726a1ea2bd0412abf57fb12 +Author: Dan Scott +Date: Tue Oct 30 23:27:34 2012 -0400 + + Purge the wildly out-of-date Roadmap document + + Signed-off-by: Dan Scott + +0 51 doc/Roadmap.txt + delete mode 100644 doc/Roadmap.txt + +commit 97a520bce382c8806ad1772f98e1e9169a2297b9 +Author: Dan Scott +Date: Tue Nov 6 12:32:48 2012 -0500 + + Bump libopensrf version-info revision and age + + The log redaction functionality changed the source files (thus 'age' + gets bumped) and is backwards-compatible (thus 'revision' gets bumped) + but maintains the same interface (thus 'current' stays the same). + + Signed-off-by: Dan Scott + +1 1 src/libopensrf/Makefile.am + +commit b81a8c2ada734fe8c47e758c681e2bb952f29c39 +Author: Dan Wells +Date: Wed Oct 31 10:21:14 2012 -0400 + + Protect against empty/invalid log_protect sections + + Connectivity would fail if the log_protect section of opensrf_core.xml + was empty, or contained only comments, as it does in the default + example. Add a simple guard against this potential problem. This fix + will also protect against cases where the 'log_protect' section + contains text rather than separate configuration elements. + + Credit to Dan Scott for finding the bug and working out how to fix it. + + Signed-off-by: Dan Wells + Signed-off-by: Dan Scott + +6 4 src/perl/lib/OpenSRF/Application.pm + +commit a2a286ef7fbf70e695ab23289fe9f131a9037922 +Author: Bill Erickson +Date: Wed Oct 17 15:57:14 2012 -0400 + + Consolidate duplicate osrfMethodVerifyContext handler + + Log redaction was not occuring in some cases because the code was using + the OSRF_METHOD_VERIFY_CONTEXT macro instead of the similarly named + function which does the same thing. This change points the macro at the + function so that all code uses the same underlying code. + + Note this change turns on CALL param logging unconditionally, whereas + users of the macro would previously have been able to avoid CALL logging + via the OSRF_LOG_PARAMS variable. In practice, little code uses the + macro and all code enables OSRF_LOG_PARAMS. If we need to add this + control back, it can be added directly to osrfMethodVerifyContext(). + For now, it's one less env variable we need to define. + + Signed-off-by: Bill Erickson + Signed-off-by: Dan Scott + +2 36 include/opensrf/osrf_application.h + +commit 157ad5d6553b29585afd4b2180db91e2d13b5961 +Author: Dan Wells +Date: Fri Oct 12 09:45:35 2012 -0400 + + Log redaction for sensitive input values, Perl side + + This commit attempts to do the same as the C log redaction fix, + but now at the Perl level. The Perl configuration code was a + little more crufty than the C side, so an additional feature was + added to Config.pm to support the new 'shared' section. At some + point we should consider a ground-up rewrite of Config.pm, as the + code seems to suffer some from its INI file roots. + + Signed-off-by: Dan Wells + Signed-off-by: Dan Scott + +3 3 examples/opensrf_core.xml.example +21 1 src/perl/lib/OpenSRF/Application.pm +9 0 src/perl/lib/OpenSRF/System.pm +48 12 src/perl/lib/OpenSRF/Utils/Config.pm + +commit fe9617eda262cc3a3890d068e938ef0ffb99d07a +Author: Dan Wells +Date: Wed Oct 10 17:28:07 2012 -0400 + + Log redaction for sensitive input values, C side + + Some service/methods deal with sensitive information (passwords, + financial, etc.). All input values (e.g. gateway method params) + are currently logged in the activity log regardless of your log + level. This commit will allow you to redact the params of any + method which matches a configurable set of left-anchored string + values. + + This commit adds the initial config, and covers redaction of method + parameters sent through the gateway, the translator, and more general + OpenSRF C applications. + + Signed-off-by: Dan Wells + Signed-off-by: Dan Scott + +12 0 examples/opensrf_core.xml.example +1 0 include/opensrf/osrf_application.h +2 0 include/opensrf/osrf_system.h +25 10 src/gateway/osrf_http_translator.c +22 7 src/gateway/osrf_json_gateway.c +23 4 src/libopensrf/osrf_application.c +6 0 src/libopensrf/osrf_system.c + +commit cd24bb1c94c95027310f63909b692e4dbb05507f +Author: Dan Scott +Date: Mon Oct 22 11:50:21 2012 -0400 + + Use apt-get instead of aptitude on Debian / Ubuntu + + Reports from the field state that aptitude is not installed by default on + Ubuntu any longer; thus go with the sure thing. + + Signed-off-by: Dan Scott + +1 1 README +1 1 src/extras/Makefile.install + +commit 20a115a421c56b56968accc27b63da7656a70ee8 +Author: Dan Scott +Date: Mon Oct 22 11:53:24 2012 -0400 + + Remove the reference to Evergreen in the README + + Stephen Wills reported problems installing Evergreen because of missing + dependencies, and reading the OpenSRF README shows that it refers to the + Evergreen prerequisite installer in a confusing way that might lead to + users using only the Evergreen Makefile.install, rather than using the + OpenSRF Makefile.install. + + In addition, Fedora 16 is going to be out of support soon, and Fedora 17 + and 18 are well-tested targets now. + + Signed-off-by: Dan Scott + +2 2 README + +commit 83dd58abfca26418f8bdaecb73dbd2c177cc0093 +Author: Jason Stephenson +Date: Tue Nov 6 09:16:18 2012 -0500 + + Fix installation on Ubuntu Precise. + + Remove libreadline5-dev and replace with libreadline-dev for Ubuntu + and Debian. This installs libreadline6, but everything still works + since there's nothing version specific in our use of libreadline. + + Signed-off-by: Jason Stephenson + Signed-off-by: Dan Scott + +2 3 src/extras/Makefile.install + +OpenSRF 2.1.0 +------------- + +commit 79694c390e0350a199be409ceadb19945ddf2b5c +Author: Dan Scott +Date: Wed May 30 23:12:32 2012 -0400 + + No, Ubuntu Hardy is not well-tested for 2.1.0 + + One more reference to Ubuntu Hardy that we can remove from the + README/INSTALL. + + Signed-off-by: Dan Scott + +0 1 README + +commit 885a4d87cd06f31071ff9b2f728fd7aa1c83d7be +Author: Dan Scott +Date: Wed May 30 23:11:14 2012 -0400 + + Generate ChangeLog for 2.1.0 release + + Signed-off-by: Dan Scott + +821 59 ChangeLog + +commit 3eb7c54a734369a7bffc4a3c30bef2e65573be52 +Author: Dan Scott +Date: Sun May 27 22:52:23 2012 -0400 + + 2.1.0 release notes + + A summary of some of the highlights of the new release, for + functionality that has been added and deleted. Does not address bug + fixes such as the much more robust Perl child handling; perhaps + we should focus on those as well? + + Signed-off-by: Dan Scott + +89 0 doc/RELEASE_NOTES.txt + create mode 100644 doc/RELEASE_NOTES.txt + +commit cdd0816c624ff0843ee5ab201346521ae91f474a +Author: Dan Scott +Date: Wed May 30 22:33:17 2012 -0400 + + Bump version numbers to help with library compatibility + + By bumping the OpenSRF version numbers for Perl libs, Python libraries, + and the libtool versioning for the libopensrf library, projects that + build on OpenSRF will be able to flag the minimum required version and + bail out early if an older version of OpenSRF has been installed. + + Signed-off-by: Dan Scott + +2 2 src/libopensrf/Makefile.am +1 1 src/perl/lib/OpenSRF.pm +1 1 src/python/setup.py +1 1 version.m4 + +commit ee2c79929aa63ff8d6749da7d10c15ab967d9fd5 +Author: Dan Scott +Date: Tue May 22 16:45:33 2012 -0400 + + Add "tar" to base prereqs to appease autotools + + On a minimal install of Fedora 17, I was running into the perplexing + error message whilst running 'autoreconf -i': + + libtoolize: can not copy `/usr/share/libtool/config/ltmain.sh' to `./' + + This was confusing because a manual copy would, in fact, copy the file + just fine. + + http://lists.gnu.org/archive/html/libtool/2009-07/msg00030.html finally + lead to enlightenment: autotools uses "tar" to copy files, not "cp". + Thus, to avoid similar head-scratching install problems in the future, + add "tar" to the base prerequisites for building OpenSRF (both to the + DEBs list and the RPMs list). + + Signed-off-by: Dan Scott + +3 1 src/extras/Makefile.install + +commit 788a396a2b380c5950c09368f85e8d4a79ec2ca8 +Author: Dan Scott +Date: Tue May 22 02:26:04 2012 -0400 + + Update OS support in README / Makefile.install + + Kick Debian Lenny, Ubuntu Hardy, and RHEL 5 / CentOS 5 to the curb. + + Also change the name of the README to the more generic & instructive + "Installing OpenSRF" rather than "README for OpenSRF #.#.#". + + Signed-off-by: Dan Scott + + Conflicts: + + README + + Signed-off-by: Dan Scott + +3 9 README +3 243 src/extras/Makefile.install + +commit 3dd57f268b8b5d39f85139e4c4e5246bd9e2cda5 +Author: Thomas Berezansky +Date: Wed May 23 10:13:41 2012 -0400 + + Nagios Example Plugin for monitoring services + + Does not check that all drones in a brick are fully up, just that the + entire brick will respond to each service, even if only one drone happens + to be running the listener properly (and said listener is responding). + + Signed-off-by: Thomas Berezansky + Signed-off-by: Dan Scott + +219 0 examples/nagios/check_osrf_services + create mode 100755 examples/nagios/check_osrf_services + +commit e7431d6fa114c35d3dc5b430fbb4bdae99edaa88 +Author: Bill Erickson +Date: Mon Apr 2 14:55:56 2012 -0400 + + Detect and repair multipart/mixed message delivery errors + + For unknown reasons, the Content-Type header will occasionally be + included in the XHR.responseText for multipart/mixed messages. When + this happens, strip the header and newlines from the message body and + re-parse. + + Signed-off-by: Bill Erickson + Signed-off-by: Dan Scott + +33 1 src/javascript/opensrf.js + +commit 832f166b38acc9c68c9c1fcea1432d2ca881316b +Author: Galen Charlton +Date: Mon May 21 17:29:05 2012 -0400 + + fix up index/position type for calls of various osrfList* functions + + osrfListSet, osrfListRemove, osrfListGetIndex, and osrfListExtract + all expect unsigned ints for the index/position parameter. + + src/jserver is ignored by this commit as its removal is pending. + + Signed-off-by: Galen Charlton + Signed-off-by: Dan Scott + +1 1 src/gateway/osrf_http_translator.c +2 2 src/libopensrf/osrf_json_tools.c +1 1 src/libopensrf/osrf_list.c +1 1 src/libopensrf/string_array.c +1 1 src/router/osrf_router.c + +commit bdc4cfe354051e4132d6ffa2da3e0942acb3f780 +Author: Dan Scott +Date: Sat May 5 01:58:22 2012 -0400 + + Remove comparisons that can never evaluate to true + + Using clang as the compiler results in 4 warnings like the following: + + osrf_list.c:106:23: warning: comparison of unsigned expression < 0 is + always false [-Wtautological-compare] + if(!list || position < 0) return NULL; + ~~~~~~~~ ^ ~ + + (Explanation: "position" is an unsigned int; thus the comparison to < 0 + can never evaluate to true). + + Signed-off-by: Dan Scott + Signed-off-by: Galen Charlton + +4 4 src/libopensrf/osrf_list.c + +commit 3aabf1932f93bc6e1e6693001734a1f1bcdbdce0 +Author: Dan Scott +Date: Sat May 5 01:32:25 2012 -0400 + + LP954059: Silence uninitialized var warning + + Compiling osrf_utf8.c generates the following warning: + + osrf_utf8.c:510:29: warning: utf8_char may be used uninitialized in this + function [-Wuninitialized] + + So... initialize utf8_char when we declare it, and make the compiler + happy. + + Signed-off-by: Dan Scott + Signed-off-by: Galen Charlton + +1 1 src/libopensrf/osrf_utf8.c + +commit 4fe1fdc7d4561e04212444786fd61d95eae69eb0 +Author: Galen Charlton +Date: Mon May 21 17:02:34 2012 -0400 + + LP# 953299 - defend against null and zero-length cache keys + + Ignore undefined and zero-length (after key normalization) cache + keys. + + Signed-off-by: Galen Charlton + Signed-off-by: Dan Scott + +9 2 src/perl/lib/OpenSRF/Utils/Cache.pm + +commit 3e97b0f69be04957eefa149d06e05111f3ad4291 +Author: Dan Scott +Date: Mon May 21 12:18:41 2012 -0400 + + LP# 953299 - Prevent get/set of invalid cache keys + + Clients of OpenSRF::Utils::Cache occasionally request cache keys that + contain invalid characters (a particular case is ISBNs that contain + spaces), so strip those out of incoming get/set requests to avoid ugly + memcached errors. + + Signed-off-by: Dan Scott + Signed-off-by: Galen Charlton + +25 0 src/perl/lib/OpenSRF/Utils/Cache.pm +3 1 src/perl/t/09-Utils-Cache.t + +commit c6cf4d9b6530f5b8b6bdf95c26db9986656fcce8 +Author: Dan Scott +Date: Mon May 21 12:41:25 2012 -0400 + + .gitignore - ignore more built stuff in fewer lines + + Use the power of glob to catch more built files that we want to ignore, + while simplifying the .gitignore file significantly. + + Signed-off-by: Dan Scott + +23 108 .gitignore + +commit 2c0fb3a9f6aeea9c93846c573ced8d235ec03c7c +Author: Dan Scott +Date: Mon May 21 11:48:26 2012 -0400 + + Revert inadvertently introduced debugging code + + In commit 91b8790c, several debugging lines were accidentally committed + to the OpenSRF caching utility. Revert that change. + + Signed-off-by: Dan Scott + +0 3 src/perl/lib/OpenSRF/Utils/Cache.pm + +commit f6d38086a42cd6a60d7ed45461d99076cf4d9e5e +Author: Dan Scott +Date: Tue May 1 22:11:00 2012 -0400 + + Minor cleanups to Java dependency build process + + While configure.ac still hardcodes the expected location of the Java + dependencies (JSON and Memcached classes), we can clean up some of the + lower-level challenges with the Java build. + + * StAX and WSTX were rolled into the core Java environment long ago, + so there's no need to download them and even less need to verify + that the downloaded version exist. + * The Memcached class is now up to 2.0.1, per deps.sh, but the deps.inc + file was pointing at 1.5.1. + * Speaking of the deps.inc file, nothing seems to use it; delete it. + * The Makefile was dying because the variables for the Memcached and + JSON classes weren't defined. Define those at the top of the Makefile. + + Signed-off-by: Dan Scott + +4 3 src/java/Makefile.am +0 5 src/java/deps.inc + delete mode 100644 src/java/deps.inc + +commit d9487c42a1e3432be9fa3da9b2fad2b42d24a645 +Author: Dan Scott +Date: Tue May 1 22:08:23 2012 -0400 + + Clean up root directory: INSTALL, .gitignore, autoreconf + + * Update the README to avoid running autoreconf with the "-f" flag. + * Make the INSTALL file a symbolic link to the README to avoid + creating a generic INSTALL file each time autoreconf is run. + * Add a .gitignore file that ignores all of the built files. + + Signed-off-by: Dan Scott + +181 0 .gitignore +1 0 INSTALL +1 1 README + create mode 100644 .gitignore + create mode 120000 INSTALL + +commit c4c2d62cdf47ee7e5d02fac44cce5515a77c362c +Author: Dan Scott +Date: Tue May 1 21:31:38 2012 -0400 + + Change Java deps.sh to include . in CLASSPATH + + Following the directions given by running deps.sh was a little bit + frustrating; we need to work in some documentation on how to use the + Java bits of OpenSRF - and perhaps look at a more standard option like + maven for dependencies. + + Signed-off-by: Dan Scott + +1 1 src/java/deps.sh + +commit d7d8923e98a91c070668a529957d7ee7033529a7 +Author: Bill Erickson +Date: Fri Mar 16 09:56:13 2012 -0400 + + Java Gateway interface improved exception handling + + Handle any exceptions that should not reasonably occur in normal + operation under the covers. Bubble the rest up. Update test code with + examples. + + Signed-off-by: Bill Erickson + Signed-off-by: Dan Scott + +57 51 src/java/org/opensrf/net/http/GatewayRequest.java +16 8 src/java/org/opensrf/net/http/HttpConnection.java +41 12 src/java/org/opensrf/net/http/HttpRequest.java +5 2 src/java/org/opensrf/net/http/HttpRequestHandler.java +50 30 src/java/org/opensrf/test/TestGateway.java + +commit ad253eb0d67098b69c71141061563b1802f33f97 +Author: Bill Erickson +Date: Thu Mar 15 17:26:16 2012 -0400 + + Java gateway interface test class + + Signed-off-by: Bill Erickson + Signed-off-by: Dan Scott + +58 0 src/java/org/opensrf/test/TestGateway.java + create mode 100644 src/java/org/opensrf/test/TestGateway.java + +commit 5b5e28f16be77d9b23a98579d10173103dd907ed +Author: Bill Erickson +Date: Mon Feb 27 18:05:07 2012 -0500 + + Java HTTP gateway interface + + Supports sync and async requests. Async requests support onResponse, + onComplete, and onError handlers. + + Supports a max-threads value to limit the number of activately + communicating threads over any connection. When max-threads is reached, + requests are queued and delivered as soon as there is room. + + Note that since this is talking to the OpenSRF gateway and not the + translater, responses are simply collected and passed one at a time to + onResponse. They are not streamed. The goal of supporting onResponse + is to provide the same client API for both the gateway and translator. + + Signed-off-by: Bill Erickson + Signed-off-by: Dan Scott + +129 0 src/java/org/opensrf/net/http/GatewayRequest.java +97 0 src/java/org/opensrf/net/http/HttpConnection.java +66 0 src/java/org/opensrf/net/http/HttpRequest.java +25 0 src/java/org/opensrf/net/http/HttpRequestHandler.java + create mode 100644 src/java/org/opensrf/net/http/GatewayRequest.java + create mode 100644 src/java/org/opensrf/net/http/HttpConnection.java + create mode 100644 src/java/org/opensrf/net/http/HttpRequest.java + create mode 100644 src/java/org/opensrf/net/http/HttpRequestHandler.java + +commit 85830ce301654e2dfefcd186a2bd63bd3785a967 +Author: Dan Scott +Date: Mon Apr 23 14:17:35 2012 -0400 + + Remove GNU default INSTALL file + + GNU autotools generate an INSTALL file that is generic and which + conflicts with the instructions given in the README. Installation is + already hard enough without conflicting instructions, so delete the + INSTALL file. + + Signed-off-by: Dan Scott + +0 237 INSTALL + delete mode 100644 INSTALL + +commit bc36b120e78f9fa995856a144b9054e2a0ab1f3e +Author: Dan Scott +Date: Mon Apr 23 14:13:37 2012 -0400 + + autotools - do not explicitly include m4 directory + + Some versions of autotools complain bitterly if an m4 include directory + is specified that does not exist. + + Signed-off-by: Dan Scott + +0 2 Makefile.am +0 1 configure.ac + +commit 2bdd580e2bcc6660b073b6853dc1544d5c68a6fd +Author: Dan Scott +Date: Mon Apr 23 13:45:14 2012 -0400 + + Name the bootstrapping steps in buildbot + + Signed-off-by: Dan Scott + +10 6 examples/buildbot.cfg + +commit f21b0a5aa647e7303cc0d6d3fb70cadf0e8fc812 +Author: Dan Scott +Date: Mon Apr 23 13:16:25 2012 -0400 + + Fix buildbot configuration + + Need to define our tests before they're called; also, can't blindly + invoke a step out of the proper scope. Duh. + + Signed-off-by: Dan Scott + + Conflicts: + + examples/buildbot.cfg + +55 18 examples/buildbot.cfg + +commit 4d58c3d24b65f96e0648e37a3f4da82051a58917 +Author: Dan Scott +Date: Mon Apr 23 12:52:57 2012 -0400 + + Switch to autoreconf instead of autogen.sh + + Update the buildbot config accordingly to avoid erroneous errors of + erroneosity. + + Signed-off-by: Dan Scott + +1 1 README +0 43 autogen.sh +12 4 examples/buildbot.cfg + delete mode 100755 autogen.sh + +commit 5849a119bd363b152b41ed7a39c787f009412572 +Author: Dan Scott +Date: Mon Apr 2 16:48:15 2012 -0400 + + Bump version numbers for 2.1.0-RC1 release + + Also update the ChangeLog with relevant entries. + + Signed-off-by: Dan Scott + +21 0 ChangeLog +1 1 src/perl/lib/OpenSRF.pm +1 1 version.m4 + +commit 0ed34101e67dc04292f906945dd5752c73985412 +Author: Dan Scott +Date: Fri Mar 23 13:05:31 2012 -0400 + + Add trailing period, "localhost" to ejabberd.cfg example + + Thanks to Yamil Suarez for noticing a discrepancy between the older wiki + instructions and the README. + + Signed-off-by: Dan Scott + +1 1 README + +commit cf4d4798c5949abaf6bc9a4c3a62bf9a6533977b +Author: Bill Erickson +Date: Wed Mar 14 11:38:18 2012 -0400 + + Prevent undef warnings on perl socket read nbytes test + + Signed-off-by: Bill Erickson + Signed-off-by: Dan Scott + +1 1 src/perl/lib/OpenSRF/Transport/SlimJabber/XMPPReader.pm + +commit fff96812ff55cc50374d5a16e7c803fac2c2f2a5 +Author: Dan Scott +Date: Sun Mar 11 11:22:14 2012 -0400 + + Prepare 2.1.0-alpha1 for release + + Signed-off-by: Dan Scott + +555 0 ChangeLog +2 2 README +2 2 src/perl/lib/OpenSRF.pm +1 1 version.m4 + +commit f470b55b86fd59f31dd142d8cb55fe812265892e +Author: Bill Erickson +Date: Mon Feb 20 14:40:30 2012 -0500 + + Detect remote disconnect in Perl XMPP reader + + When the jabber server severs the connection, it leaves the Perl libs + with a socket that perpetually appears ready for reading, but always + returns 0 bytes. This produces a loop in the client code. This change + detects this situation, logs an error, and throws an exception. + + Signed-off-by: Bill Erickson + Signed-off-by: Dan Scott + +13 2 src/perl/lib/OpenSRF/Transport/SlimJabber/XMPPReader.pm + +commit 974d3a0dd4ddd134033b16bcd9e2fde34302ffd5 +Author: Dan Wells +Date: Tue Mar 6 15:08:33 2012 -0500 + + Protect gateway from format-string crashes in data + + As a common security measure, printf-style formatting codes are + not allowed to be directly interpreted from a writable segment. + The gateway code currently has the following function call: + + osrfLogActivity( OSRF_LOG_MARK, act->buf ); + + This is a variadic function which expects the 'act->buf' position + to contain a format string and any trailing arguments to be the + values passed to the formatter. Since act->buf is the value of + what we passed in, some data inadvertantly contains format strings, + and since it is a writable segment, the program crashes. Here is + an example of a crash-causing call: + + http://localhost/osrf-gateway-v1?service=test&method=test¶m=%22%251n%22 + + The param is interpreted as "%1n" and abruptly fails. + + The simple solution is to include a formatter so that our param gets + demoted to being mere data, i.e.: + + osrfLogActivity( OSRF_LOG_MARK, "%s", act->buf ); + + Signed-off-by: Dan Wells + Signed-off-by: Dan Scott + +1 1 src/gateway/osrf_json_gateway.c + +commit fd92a859e2ba3eeeaafe4904cd04973eb8cd572b +Author: Thomas Berezansky +Date: Wed Mar 7 16:42:21 2012 -0500 + + Stop warning about missing parentheses... + + ...by adding them. + + Signed-off-by: Thomas Berezansky + +1 1 src/perl/lib/OpenSRF/Application/Validator.pm + +commit 8cfa0ae50935176a1574e8f233c8d4d88442c0ad +Author: Bill Erickson +Date: Thu Feb 16 17:31:29 2012 -0500 + + Refresh child file handles on status read + + If a child process dies while the parent is attempting to read status + information from the child, the pipe connecting the two will be cleaned + up. The parent mustn't attempt to read from the dead pipe or it will + result in a bad file descriptor error, culminating in a high-cpu + infinite loop on the parent (Listener) process. + + Signed-off-by: Bill Erickson + Signed-off-by: Thomas Berezansky + Signed-off-by: Jason Stephenson + +4 3 src/perl/lib/OpenSRF/Server.pm + +commit 37606bf64f2829258cc612e730782e081e2ac6bb +Author: Bill Erickson +Date: Fri Jan 13 10:57:59 2012 -0500 + + Python libs for OpenSRF ingress tracking + + osrf.ses.Session.ingress(ingress) + + This also set the "srfsh" ingress value for srfsh.py. + + Signed-off-by: Bill Erickson + Signed-off-by: Mike Rylander + +11 1 src/python/osrf/ses.py +2 0 src/python/osrf/stack.py +1 0 src/python/srfsh.py + +commit 26c31a9d5728adbd884a1369034caff41471130b +Author: Bill Erickson +Date: Fri Jan 13 09:35:18 2012 -0500 + + Set OpenSRF ingress value for srfsh/gateways + + Sets the "srfsh", "gateway-v1", and "translator-v1" ingress values + accordingly. + + For the translater, it's necessary to stamp the unpacked messages with + the updated ingress, then re-serialize before sending the messages along. + + Signed-off-by: Bill Erickson + Signed-off-by: Mike Rylander + +18 21 src/gateway/osrf_http_translator.c +1 0 src/gateway/osrf_json_gateway.c +1 0 src/srfsh/srfsh.c + +commit 7ec92808fea116ead923e475ad5242a54b688798 +Author: Bill Erickson +Date: Fri Jan 13 09:15:05 2012 -0500 + + C libs for OpenSRF ingress tracking + + osrfAppSessionSetIngress(); + + Signed-off-by: Bill Erickson + Signed-off-by: Mike Rylander + +5 0 include/opensrf/osrf_app_session.h +5 0 include/opensrf/osrf_message.h +26 0 src/libopensrf/osrf_app_session.c +32 0 src/libopensrf/osrf_message.c +4 0 src/libopensrf/osrf_stack.c + +commit b12de37f9480c68b1c8b033da18c3cc0d0ebc8f0 +Author: Bill Erickson +Date: Thu Jan 12 16:36:16 2012 -0500 + + Perl libs for OpenSRF ingress tracking + + Ingress is a free-form text value which represents the entry point for + the client into the opensrf network. The value is passed within opensrf + messages, similar to "locale". Clients should specify the ingress + before any opensrf communication occurs. + + OpenSRF::AppSession->ingress($ingress); + + Stock values include the following: + + opensrf (default) + srfsh + translator-v1 + gateway-v1 + + Signed-off-by: Bill Erickson + Signed-off-by: Mike Rylander + +9 0 src/perl/lib/OpenSRF/AppSession.pm +20 1 src/perl/lib/OpenSRF/DomainObject/oilsMessage.pm +2 0 src/perl/lib/OpenSRF/Transport.pm + +commit 67d4d5de8656128f32b20f4c04dbf81a1028e929 +Author: Dan Scott +Date: Wed Feb 29 10:48:38 2012 -0500 + + Copy opensrf_core.xml.example to a clean opensrf_core.xml file + + Ben Shum with the assist again. + + Also, add ~/.srfsh.xml to the definition list of interesting OpenSRF + configuration files. + + Signed-off-by: Dan Scott + +6 3 README + +commit 68025993b01cc95f66a0ca723841e1abb406709f +Author: Dan Scott +Date: Wed Feb 29 10:42:58 2012 -0500 + + Include explicit instructions to copy the opensrf config files + + Also noted by the sharp-eyed Ben Shum, we didn't tell people to actually + copy opensrf.xml.example / opensrf_core.xml.example, which could lead to + failure. + + Signed-off-by: Dan Scott + +35 17 README + +commit 75f27021d4b45eebbf52a89a35f96e775f92a207 +Author: Dan Scott +Date: Wed Feb 29 10:27:36 2012 -0500 + + Update max_user_sessions suggestion to 10000 to match wiki + + Ben Shum noticed that the README still specified 1000 for + max_user_sessions in the ejabberd.cfg file, whereas current larger + OpenSRF systems with many services may blow past that limit. Update to + match the current wiki specification of 10000. + + Signed-off-by: Dan Scott + +1 1 README + +commit 61fdb582dc918a1003351ff25842a23aaff24f71 +Author: Dan Scott +Date: Wed Jan 4 15:21:36 2012 -0500 + + Remove reference to Fedora specific version in prereq installer + + Fedora changes every 6 months, so it's probably silly to have a make + target of "fedora14" when that is no longer supported by the Fedora + project itself. As Fedora has packaged all of the OpenSRF dependencies + (thanks, Ben Webb!), in theory it should be supported by the latest + releases of Fedora in the future... as long as we don't introduce any + dependencies on deprecated versions of packages. + + Signed-off-by: Dan Scott + +2 2 src/extras/Makefile.install + +commit ba6d4c7cc2988dafb6ca8de2d1f2f93194dcf3b3 +Author: Dan Scott +Date: Wed Jan 4 15:17:48 2012 -0500 + + Update README to match Evergreen's format + + Reference the various accounts in use consistently. + + Correct reference to "fedora" target in Makefile.install. + + Put the developer preamble up front. + + Provide more Fedora examples. + + Do not include leading "#" and "$" in bash examples, to make it easier + for people to copy and paste. + + Include source highlighting instructions and titles for example + commands. + + Signed-off-by: Dan Scott + +152 98 README + +commit cc7a12f74a9ce4555d5abd8989dfab43290fb41c +Author: Bill Erickson +Date: Fri Feb 24 16:28:27 2012 -0500 + + Java dependencies update + + As of Java 6, XML Stax parsing is natively supported. This change + removes the external Stax dependencies and updates how the JSON libs are + fetched (in deps.sh), which now come from github. + + Signed-off-by: Bill Erickson + Signed-off-by: Dan Scott + +17 20 src/java/deps.sh +1 4 src/java/org/opensrf/net/xmpp/XMPPReader.java +1 4 src/java/org/opensrf/util/XMLFlattener.java + +commit 07b2eff0a7dfc492afd8e67788eae159c5ab96b7 +Author: Dan Scott +Date: Tue Feb 21 09:55:57 2012 -0500 + + We're not in Subversion anymore, Dorothy + + We're in git now, make the README reflect that accordingly. Thanks to + Warren Layton for the tip! + + Signed-off-by: Dan Scott + +2 2 README + +commit aeeb4acdc8695a640021dbc6902ab3279652583d +Author: Bill Erickson +Date: Tue Feb 14 09:10:58 2012 -0500 + + Perl parent/child write improvements + + * Updated variable names for clarity + * Added more inline comments + * Added additional error logging + * For severe read errors, allow the child to gracefully skip the request + + Signed-off-by: Bill Erickson + Signed-off-by: Jason Stephenson + Signed-off-by: Mike Rylander + +25 19 src/perl/lib/OpenSRF/Server.pm + +commit 08ee4f993fe773e37233b139961cbcdae2fe93b8 +Author: Bill Erickson +Date: Mon Feb 13 16:53:59 2012 -0500 + + Perl pipe reading overhaul : data size header + + The lockfile mechanism for preventing premature end of reads on child + processes suffers from one serious flaw: if the data to write exceeds + the pipe buffer size, the parent will block on syswrite and the service + will lock up. It's also not as effecient (for the normal case) as the + code was without the lockfile, becasue the writes and reads are + serialized. + + This commit replaces the lockfile mechanism with a protocol header in + the data. The first X (currently 12) bytes of data written to the child + process will contain the full length of the data to be written (minus + the header size). The child now reads the data in parallel with the parent as + data is available. If the child reads all available data (in the pipe) + but not all of the expected data, the child will go back into a select() + wait pending more data from the parent. The process continues until all + data is read. + + This same mechanism is already used to commicate status info from child + processes to the parent. + + Signed-off-by: Bill Erickson + Signed-off-by: Jason Stephenson + Signed-off-by: Mike Rylander + +49 73 src/perl/lib/OpenSRF/Server.pm +1 2 src/perl/lib/OpenSRF/System.pm + +commit 04558f38c1c1d314acb978a37193dacb4a6eba31 +Author: Lebbeous Fogle-Weekley +Date: Fri Jan 27 09:05:07 2012 -0500 + + JSON_v0 has been superseded, and it has insidious bugs anyway. + + For example, you cannot round-trip this through JSON2js() and js2JSON() + in IE8: http://paste.lisp.org/display/127338 + + This will make Evergreen's build fail until the change specified in + LP #922609 is applied. + + Signed-off-by: Lebbeous Fogle-Weekley + Signed-off-by: Bill Erickson + +1 1 src/Makefile.am +0 135 src/javascript/JSON_v0.js + delete mode 100644 src/javascript/JSON_v0.js + +commit 89f41c82798dbac56716fdd5beeb6c0de3e4ce2e +Author: Bill Erickson +Date: Mon Nov 7 17:30:44 2011 -0500 + + Sync parent/child write/read with lock file + + Wrap parent writes to child socket and initial child reads of the + socket in file lock (via flock()) to prevent rare race condition + where child process reads to the end of the data before the parent + has written all bytes. + + This create a new lock file on the system, which resides in the same + directory as the pid files. The lock file is created and destroyed by + the opensrf perl mods at service start up and shutdown. + + See also https://bugs.launchpad.net/opensrf/+bug/883155 + + Signed-off-by: Bill Erickson + Signed-off-by: Dan Scott + +1 1 bin/opensrf-perl.pl.in +60 8 src/perl/lib/OpenSRF/Server.pm +3 2 src/perl/lib/OpenSRF/System.pm + +commit 3d089bdfd067676f99807f7cb2014e122c4dbf72 +Author: Dan Scott +Date: Mon Dec 12 13:09:13 2011 -0500 + + Update Perl OpenSRF build and tests for O:A:Validator + + Kickstarted by wanting to bring OpenSRF::Application::Validator into the + MANIFEST and testing coverage, I noticed a few other files that needed + to be added to the MANIFEST as well. This gets us closer to acceptable + according to "./Build distcheck" + + Signed-off-by: Dan Scott + +1 0 src/perl/Build.PL +22 0 src/perl/MANIFEST +6 1 src/perl/t/01-Application.t + +commit 5e1fbcc1c8ae2f969dbeac93fe1da80c008ca42b +Author: Thomas Berezansky +Date: Fri Dec 9 15:19:12 2011 -0500 + + OpenSRF Validator Service + + Add a new Validator service, and EmailAddress validators. + + The service runs a chain of one or more validators, each one being fed the + normalized output of the previous one. + + The return from each validator should be a hash of valid (0 or 1), the new + normalized output (the untouched input if invalid or nothing needed to be + changed), and if invalid an error string. Optionally, a validator can also + include an "additionals" hash of extra information to be included in the + final response. + + The complete list of validators included is: + + OpenSRF::Application::Validator::Base + The base validator. Always returns valid. + OpenSRF::Application::Validator::Invalid + Always returns invalid for testing purposes. + OpenSRF::Application::Validator::EmailAddress::Regex + Does a very basic regular expression check on email addresses. + OpenSRF::Application::Validator::EmailAddress::DNS + Uses Net::DNS to look up the domain on an email address + + Signed-off-by: Thomas Berezansky + Signed-off-by: Dan Scott + +40 0 examples/opensrf.xml.example +3 0 src/extras/Makefile.install +50 0 src/perl/lib/OpenSRF/Application/Validator.pm +12 0 src/perl/lib/OpenSRF/Application/Validator/Base.pm +96 0 src/perl/lib/OpenSRF/Application/Validator/EmailAddress/DNS.pm +23 0 src/perl/lib/OpenSRF/Application/Validator/EmailAddress/Regex.pm +16 0 src/perl/lib/OpenSRF/Application/Validator/Invalid.pm + create mode 100644 src/perl/lib/OpenSRF/Application/Validator.pm + create mode 100644 src/perl/lib/OpenSRF/Application/Validator/Base.pm + create mode 100644 src/perl/lib/OpenSRF/Application/Validator/EmailAddress/DNS.pm + create mode 100644 src/perl/lib/OpenSRF/Application/Validator/EmailAddress/Regex.pm + create mode 100644 src/perl/lib/OpenSRF/Application/Validator/Invalid.pm + +commit b6b64deb16ed3f005d64f99365b0220a82d72431 +Author: Jason Stephenson +Date: Wed Dec 7 15:08:42 2011 -0500 + + Support installation for Ubuntu 12.04 Precise Pangolin. + + Update the README to include Precise Pangolin as a supported release. + + Update src/extras/Makefile.install to install two new debs required on + Ubuntu 12.04 alpha1. + + Signed-off-by: Jason Stephenson + Signed-off-by: Chris Sharp + +1 0 README +15 1 src/extras/Makefile.install + +commit 3a4ae77be13349fae180fdc81bcc23e5a93032b4 +Author: Dan Scott +Date: Fri Nov 4 09:42:50 2011 -0400 + + Add explicit chown command to README + + Warren Layton noticed that there was no explicit command to change the + ownership of the files in the / directory to be owned by + "opensrf", although there was a statement that the files needed to be + owned by "opensrf". To reduce the chance of failure, add the explicit + command. + + TODO (for a willing volunteer): teach the installer to change the + ownership at the time the files are installed! + + Signed-off-by: Dan Scott + +1 0 README + +commit a7be31f137ccf6e2f4522c9a4c690a23b5636db8 +Author: Bill Erickson +Date: Fri Oct 28 11:33:24 2011 -0400 + + Add SIGPIPE retry handling to child data sysread + + Similar to the SIGPIPE retry logic wrapped around the parent process' + syswrite call (for sending data to a child process), protect the child's + sysread call (as it reads data from the parent). In pre-2.0, the + sysread step was handled by Net::Server, but now we need to protect it + ourselves. + + Signed-off-by: Bill Erickson + Signed-off-by: Galen Charlton + +10 0 src/perl/lib/OpenSRF/Server.pm + +commit 40a753b10a3db58baa9179d75a76df1266589ea1 +Author: Dan Scott +Date: Wed Oct 19 11:39:41 2011 -0400 + + LP878284: stop_osrf action should stop, not start, Perl + + As reported by Vicent Mas to the Evergreen + developer's mailing list: + + """ + It seems I've found a small bug in the + /openils/bin/osrf_ctl.sh script. The line for the osrf_stop action is: + + "stop_osrf") stop_python; stop_c; start_perl;; + + but should be: + + "stop_osrf") stop_python; stop_c; stop_perl;; + """ + + Signed-off-by: Dan Scott + +1 1 bin/osrf_ctl.sh.in + +commit 07b5a335656be741353ab70c1d4717dacdbebc1b +Author: Bill Erickson +Date: Tue Oct 18 09:17:10 2011 -0400 + + Warn when sending very large messages + + Depending on configuration, messages of a certain size sent through a + Jabber server will cause the jabber server to disconnect the client. + This change allows admins to configure a message size warning threshold. + When a message meets or exceeds the size threshold, a warning is issued + to the logs with the message size (in bytes) and the message recipient. + It does not prevent the message from being delivered. It's purely + informational. + + Use 1 800 000 as the default threhold. + + Signed-off-by: Bill Erickson + Signed-off-by: Galen Charlton + +3 0 examples/opensrf_core.xml.example +11 1 src/perl/lib/OpenSRF/Transport/SlimJabber/Client.pm + +commit ffb8bb73a2f505cfda9d8b97fab1f82aa3fb7097 +Author: Dan Scott +Date: Sat Sep 10 12:22:08 2011 -0400 + + Fix README typo: 'mod_offlinex' + + mod_offline is not that x-treme. + + Signed-off-by: Dan Scott + +1 1 README + +commit 0725d1ddced0f16c351a5953f5fd3c14714cda1a +Author: Dan Scott +Date: Thu Aug 25 11:41:19 2011 -0400 + + Don't define a variable inside a conditional block + + ./configure --disable-core --enable-javascript was dying with an error + due to CHECK_TESTS not being defined; move it outside the conditional + block so that we can ensure that it is defined as either yes or no. + + Signed-off-by: Dan Scott + +8 9 configure.ac + +commit b24e90f1a1b1f2309ca3cdf0728cdd54f7822597 +Author: Dan Scott +Date: Mon Aug 22 09:49:45 2011 -0400 + + Make distro targets in README match Makefile.install + + Swap ubuntu-karmic for ubuntu-lucid and pull fedora14 as it is really + close to end of life. + + Signed-off-by: Dan Scott + +2 2 README diff --git a/src/perl/lib/OpenSRF.pm b/src/perl/lib/OpenSRF.pm index 1319f33..4b1bab3 100644 --- a/src/perl/lib/OpenSRF.pm +++ b/src/perl/lib/OpenSRF.pm @@ -14,11 +14,11 @@ OpenSRF - Top level class for OpenSRF perl modules. =head1 VERSION -Version 2.1.0 +Version 2.1.1 =cut -our $VERSION = "2.10"; +our $VERSION = "2.11"; =head1 METHODS diff --git a/version.m4 b/version.m4 index bdb0dc9..0771fec 100644 --- a/version.m4 +++ b/version.m4 @@ -1 +1 @@ -m4_define([VERSION_NUMBER],[2.1.0]) +m4_define([VERSION_NUMBER],[2.1.1]) -- 2.11.0