[open-ils-commits] [GIT] Evergreen ILS branch tags/rel_2_4_0 created. 48070df7815821ee3e3ef8914113085ca005dbda

Evergreen Git git at git.evergreen-ils.org
Thu May 2 17:05:13 EDT 2013


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Evergreen ILS".

The branch, tags/rel_2_4_0 has been created
        at  48070df7815821ee3e3ef8914113085ca005dbda (commit)

- Log -----------------------------------------------------------------
commit 48070df7815821ee3e3ef8914113085ca005dbda
Author: Mike Rylander <mrylander at gmail.com>
Date:   Thu May 2 18:51:00 2013 +0000

    Bumping version numbers, adding Upgrade Script and Changelog
    
    Signed-off-by: Mike Rylander <mrylander at gmail.com>

diff --git a/ChangeLog b/ChangeLog
index 1f72b2c..0eaff14 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15195 @@
-Evergreen doesn't keep a GNU-style ChangeLog except in release tarballs.
-Those seeking a change log are encouraged to run 'git log -v', or read
-it online at: http://git.evergreen-ils.org/?p=Evergreen.git;a=log
+commit 898787e88986f2f7104f5f701c6fad5c50e9bb9c
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu May 2 18:49:53 2013 +0000
+
+    Updating OpenILS module version
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS.pm
+
+commit da2c4333c9473ec39249bb813f2f7a672dc79b20
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu May 2 18:48:35 2013 +0000
+
+    Correcting Finnish translator info
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	build/i18n/po/AutoFieldWidget.js/fi-FI.po
+1	1	build/i18n/po/Searcher.js/fi-FI.po
+1	1	build/i18n/po/TranslatorPopup.js/fi-FI.po
+1	1	build/i18n/po/User.js/fi-FI.po
+1	1	build/i18n/po/XULTermLoader.js/fi-FI.po
+1	1	build/i18n/po/admin.properties/fi-FI.po
+1	1	build/i18n/po/auth.properties/fi-FI.po
+1	1	build/i18n/po/authority.js/fi-FI.po
+1	1	build/i18n/po/capture.js/fi-FI.po
+1	1	build/i18n/po/cat.properties/fi-FI.po
+1	1	build/i18n/po/circ.properties/fi-FI.po
+1	1	build/i18n/po/common.properties/fi-FI.po
+1	1	build/i18n/po/conify.js/fi-FI.po
+1	1	build/i18n/po/db.seed/fi-FI.po
+1	1	build/i18n/po/fm_IDL.dtd/fi-FI.po
+1	1	build/i18n/po/ils_events.xml/fi-FI.po
+1	1	build/i18n/po/lang.dtd/fi-FI.po
+1	1	build/i18n/po/offline.properties/fi-FI.po
+1	1	build/i18n/po/opac.dtd/fi-FI.po
+1	1	build/i18n/po/opac.js/fi-FI.po
+1	1	build/i18n/po/patron.properties/fi-FI.po
+1	1	build/i18n/po/pickup_and_return.js/fi-FI.po
+1	1	build/i18n/po/pull_list.js/fi-FI.po
+1	1	build/i18n/po/register.js/fi-FI.po
+1	1	build/i18n/po/reports.dtd/fi-FI.po
+1	1	build/i18n/po/reports.js/fi-FI.po
+1	1	build/i18n/po/reservation.js/fi-FI.po
+1	1	build/i18n/po/selfcheck.js/fi-FI.po
+1	1	build/i18n/po/serial.properties/fi-FI.po
+
+commit e73714615927ced46b1099a9282e270712d2e76b
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu May 2 18:47:11 2013 +0000
+
+    Updating POT files changed since RC
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+7	5	build/i18n/po/lang.dtd/lang.dtd.pot
+40	39	build/i18n/po/tpac/tpac.pot
+
+commit 5962b2c5e46557a7f2b695665cf398abd79ebfa0
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Wed May 1 17:35:30 2013 -0400
+
+    adjust release notes references to refer to 2.4.0
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2	2	docs/RELEASE_NOTES_2_4.txt
+1	1	docs/root.txt
+
+commit 208ed5a02cdace09b1ac55be7267d078b8b5d76d
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Wed May 1 17:34:02 2013 -0400
+
+    update upgrade instructions for 2.4.0 release
+    
+    - specify minimum supported PostgreSQL version as 9.1
+    - specify minimum supported OpenSRF version as 2.2.0
+    - update schema upgrade instructions and miscellaneous
+      references to 2.3
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+24	23	docs/installation/server_upgrade.txt
+
+commit ded301d57d61b368e1bde5776168869ca59c0478
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Wed May 1 17:02:57 2013 -0400
+
+    revisions to installation instructions
+    
+    - Remove references to PostgreSQL 9.0; 9.1 is recommended
+      for Evergreen 2.4.
+    - Clarify that the latest version of OpenSRF now means 2.2
+      or later.
+    - Increase chances that somebody following the instructions
+      precisely doesn't run into a problem during the configure step.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+6	22	docs/installation/server_installation.txt
+
+commit ddb2c93d3c1d3cfbf8443649b251c44734cfb741
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Tue Apr 30 11:26:00 2013 -0400
+
+    Make sure the "running" indicator goes away
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+8	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm
+
+commit 536f7b5d2b0e04b889686cb378de0a366c24e9ee
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Apr 26 11:28:38 2013 -0400
+
+    Add a $cache_timeout-based backstop for infinite loops
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm
+
+commit 53a31615742505e9fe5d453359b297b713a5290c
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Apr 26 10:49:17 2013 -0400
+
+    "Queue Compression" -- let one do the work for all identical, concurrent searches
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+17	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm
+
+commit 4c3ffb7d7952337e5327644c9f518690c4f750aa
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Wed May 1 15:01:30 2013 -0400
+
+    LP#1174359: follow-up on dropping the reporter.classic_item_list view
+    
+    Add note for the benefit of any Evergreen admin who may
+    need to recreate that view.  Also, update the point schema
+    update script.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+5	0	Open-ILS/src/sql/Pg/upgrade/0743.schema.remove_tsearch2.sql
+4	0	Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4.0RC-upgrade-db.sql
+
+commit 818d75d905bd17dd558c3e31ff8f4b0749d83554
+Author: Michael Peters <mpeters at emeralddata.net>
+Date:   Mon Apr 29 11:14:39 2013 -0400
+
+    LP#1174359 Need to drop reporter.classic_item_list
+    
+    ERROR: cannot drop view metabib.full_rec because other objects depend on it
+    DETAIL: view reporter.classic_item_list depends on view metabib.full_rec
+    HINT: Use DROP ... CASCADE to drop the dependent objects too.
+    
+    Beginning at line 55 of the upgrade script, several views and functions are dropped
+    so metabib.full_rec can be dropped. One of them is missing.
+    
+    We need to drop reporter.classic_item_list as well, for the script to work.
+    
+    Signed-off-by: Michael Peters <mpeters at emeralddata.net>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+1	0	Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4.0RC-upgrade-db.sql
+
+commit a2da96edb9d4f22c6d2a1582a77002c5a2023497
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Wed May 1 12:08:29 2013 -0400
+
+    Improved AC socket fix
+    
+    This provides better coverage for socket shutdown needs, but intends
+    to fix the same issue as the previous commit.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2	2	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
+
+commit 15af9254759d55ea4cad2f36d1d7bbcdb56bfc0b
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Tue Apr 30 13:23:24 2013 -0400
+
+    Shutdown added content sockets to prevent hung connections.
+    
+    We were getting several thousand sockets hanging around in a
+    CLOSE_WAIT state on our server.  The connections were from our
+    server and to our server.  Further investigation showed it to be
+    caused by the stage2 added content lookup not closing the request
+    sockets when it was done reading data.  This branch fixes that.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
+
+commit 7b2e637358f399982656f23289ac00f137274ad9
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Mar 29 09:41:44 2013 -0400
+
+    LP1076411 Return updated circ object from checkin
+    
+    Retrieve an updated copy of the circulation object to return to the
+    caller during checkin.  This ensures the data in the circ object, in
+    particular date fields, are consistent with the database.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+11	5	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+
+commit b68b8688b21b53939dd432d45f82a81a952de9b4
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Apr 3 15:31:09 2013 -0400
+
+    When adding errors from failed processing to acq.edi_message, set error_time
+    
+    This has obvious benefits in facilitating log analysis after a problem.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/EDI.pm
+
+commit 54e426967fef96f90d750ffff0dda61c2da92aa3
+Author: Remington Steed <rjs7 at calvin.edu>
+Date:   Thu Mar 14 14:37:17 2013 -0400
+
+    Add accepting_usr to IDL to fix reporter field
+    
+    In the reporter interface, the view 'Payments: Brick-and-mortar' is
+    missing the 'Accepting User' field, which is present in the similar view
+    'Payments: Desk'. This field is already present in the database view and
+    is simply missing from the IDL.  Since it is needed for certain kinds of
+    reports, this commit adds the missing IDL fields. It also adds the
+    missing 'reporter:datatype' to an existing instance of the IDL field.
+    
+    Signed-off-by: Remington Steed <rjs7 at calvin.edu>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+3	1	Open-ILS/examples/fm_IDL.xml
+
+commit e2c837e95dcf1d310948684bb5a56429d16fbfa1
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Apr 23 11:47:37 2013 -0400
+
+    LP1170861 Remove unused lineitem alert field
+    
+    Remove extraneous field from the IDL field list for acq lineitem alerts.
+    The extra field prevented new alerts from getting saved.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+0	1	Open-ILS/examples/fm_IDL.xml
+
+commit 1417e7c1d48d7835deaf5ed4585f38eef7c21d97
+Author: Kyle Tomita <ktomita at catalystitservices.com>
+Date:   Tue Apr 9 13:51:14 2013 -0700
+
+    LP1104823 - OPAC search results "Limit to available items" toggles
+    off "Show more details"
+    
+    Added a hidden input to the form when "Show more details" is selected
+    so that when the form is reloaded, "Show more details" will be still
+    selected.
+    
+    Signed-off-by: Kyle Tomita <ktomita at catalystitservices.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+3	0	Open-ILS/src/templates/opac/results.tt2
+
+commit 9d7baef623ceef01daa261eb5819065e9b52848a
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Apr 25 11:54:40 2013 -0400
+
+    LP#1172893: fix query for retrieving available holds
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit c0ccd004cb5f105ccb0ad537f5a0280728b457a7
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Tue Apr 23 10:39:55 2013 -0400
+
+    Add 2.4 release notes for Novelist Select changes.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+18	0	docs/RELEASE_NOTES_2_4.txt
+
+commit 51b28490d80d8a2ee7f078dfddffe0fb1c2ed3e7
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Apr 22 15:04:07 2013 -0400
+
+    Adding 2.3-2.4RC upgrade script
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+3989	0	Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4.0RC-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4.0RC-upgrade-db.sql
+
+commit 4f022d3e784aaa23133f2a01f6411e4f8726c8ee
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Apr 22 13:00:05 2013 -0400
+
+    Unbreak make install for apache config files
+    
+    The new install process installs the Apache sample configs into the
+    DOCDIR for Evergreen, with the expectation that packagers will pick up
+    the examples from the doc directory and that users will eventually be
+    expected to copy them from there, rather than from the source tree.
+    
+    However, currently the Apache 2.2 and 2.4 sample configs have the same
+    names, and that causes a conflict at "make install" time. Kudos to Jason
+    Stephenson for catching this. The temporary solution is to rename the
+    Apache 2.4 files to avoid the conflict; longer term, we need to teach
+    make install to only make & install the files that are pertinent to the
+    environment on which it was built (either Apache 2.2, or Apache 2.4).
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+4	4	Open-ILS/src/Makefile.am
+
+commit b98fdee97fa6962e7bf2d901e1019b115ebbafea
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Apr 22 10:17:46 2013 -0400
+
+    Updating PO files from LaunchPad
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	build/i18n/po/AutoFieldWidget.js/fi-FI.po
+1	1	build/i18n/po/Searcher.js/fi-FI.po
+1	1	build/i18n/po/TranslatorPopup.js/fi-FI.po
+1	1	build/i18n/po/User.js/fi-FI.po
+3	3	build/i18n/po/XULTermLoader.js/cs-CZ.po
+3	3	build/i18n/po/XULTermLoader.js/de-DE.po
+3	3	build/i18n/po/XULTermLoader.js/en-CA.po
+3	3	build/i18n/po/XULTermLoader.js/en-GB.po
+3	3	build/i18n/po/XULTermLoader.js/es-ES.po
+4	4	build/i18n/po/XULTermLoader.js/fi-FI.po
+3	3	build/i18n/po/XULTermLoader.js/fr-CA.po
+3	3	build/i18n/po/XULTermLoader.js/hy-AM.po
+3	3	build/i18n/po/XULTermLoader.js/oc-FR.po
+3	3	build/i18n/po/XULTermLoader.js/pt-BR.po
+3	3	build/i18n/po/XULTermLoader.js/ru-RU.po
+3	3	build/i18n/po/XULTermLoader.js/tr-TR.po
+1	1	build/i18n/po/admin.properties/fi-FI.po
+1	1	build/i18n/po/auth.properties/fi-FI.po
+7	7	build/i18n/po/authority.js/fi-FI.po
+3	3	build/i18n/po/capture.js/cs-CZ.po
+3	3	build/i18n/po/capture.js/de-DE.po
+3	3	build/i18n/po/capture.js/en-CA.po
+3	3	build/i18n/po/capture.js/en-GB.po
+3	3	build/i18n/po/capture.js/es-ES.po
+6	6	build/i18n/po/capture.js/fi-FI.po
+3	3	build/i18n/po/capture.js/fr-CA.po
+3	3	build/i18n/po/capture.js/hy-AM.po
+3	3	build/i18n/po/capture.js/oc-FR.po
+3	3	build/i18n/po/capture.js/pt-BR.po
+3	3	build/i18n/po/capture.js/ru-RU.po
+5	5	build/i18n/po/cat.properties/en-GB.po
+83	83	build/i18n/po/cat.properties/fi-FI.po
+4	4	build/i18n/po/cat.properties/pt-BR.po
+15	6	build/i18n/po/circ.properties/cs-CZ.po
+10	4	build/i18n/po/circ.properties/de-DE.po
+14	5	build/i18n/po/circ.properties/en-CA.po
+28	15	build/i18n/po/circ.properties/en-GB.po
+15	6	build/i18n/po/circ.properties/es-ES.po
+69	58	build/i18n/po/circ.properties/fi-FI.po
+14	5	build/i18n/po/circ.properties/fr-CA.po
+17	6	build/i18n/po/circ.properties/hy-AM.po
+10	4	build/i18n/po/circ.properties/oc-FR.po
+21	10	build/i18n/po/circ.properties/pt-BR.po
+15	6	build/i18n/po/circ.properties/ru-RU.po
+10	4	build/i18n/po/circ.properties/tr-TR.po
+17	17	build/i18n/po/common.properties/fi-FI.po
+5	5	build/i18n/po/common.properties/pt-BR.po
+11	11	build/i18n/po/conify.dtd/fi-FI.po
+26	6	build/i18n/po/conify.js/cs-CZ.po
+25	5	build/i18n/po/conify.js/de-DE.po
+26	6	build/i18n/po/conify.js/en-CA.po
+28	8	build/i18n/po/conify.js/en-GB.po
+26	6	build/i18n/po/conify.js/es-ES.po
+37	16	build/i18n/po/conify.js/fi-FI.po
+26	6	build/i18n/po/conify.js/fr-CA.po
+27	7	build/i18n/po/conify.js/hy-AM.po
+25	5	build/i18n/po/conify.js/oc-FR.po
+26	6	build/i18n/po/conify.js/pt-BR.po
+26	6	build/i18n/po/conify.js/ru-RU.po
+25	5	build/i18n/po/conify.js/tr-TR.po
+738	730	build/i18n/po/db.seed/cs-CZ.po
+733	725	build/i18n/po/db.seed/de-DE.po
+737	729	build/i18n/po/db.seed/en-CA.po
+741	733	build/i18n/po/db.seed/en-GB.po
+733	725	build/i18n/po/db.seed/es-ES.po
+769	759	build/i18n/po/db.seed/fi-FI.po
+737	729	build/i18n/po/db.seed/fr-CA.po
+740	732	build/i18n/po/db.seed/hy-AM.po
+735	727	build/i18n/po/db.seed/oc-FR.po
+756	748	build/i18n/po/db.seed/pt-BR.po
+736	728	build/i18n/po/db.seed/ru-RU.po
+733	725	build/i18n/po/db.seed/tr-TR.po
+2597	2506	build/i18n/po/fm_IDL.dtd/cs-CZ.po
+2588	2497	build/i18n/po/fm_IDL.dtd/de-DE.po
+2598	2507	build/i18n/po/fm_IDL.dtd/en-CA.po
+2601	2510	build/i18n/po/fm_IDL.dtd/en-GB.po
+2586	2495	build/i18n/po/fm_IDL.dtd/es-ES.po
+2754	2665	build/i18n/po/fm_IDL.dtd/fi-FI.po
+2588	2497	build/i18n/po/fm_IDL.dtd/fr-CA.po
+2599	2508	build/i18n/po/fm_IDL.dtd/hy-AM.po
+2586	2495	build/i18n/po/fm_IDL.dtd/oc-FR.po
+2596	2505	build/i18n/po/fm_IDL.dtd/pt-BR.po
+2596	2505	build/i18n/po/fm_IDL.dtd/ru-RU.po
+2586	2495	build/i18n/po/fm_IDL.dtd/tr-TR.po
+28	19	build/i18n/po/ils_events.xml/cs-CZ.po
+16	16	build/i18n/po/ils_events.xml/de-DE.po
+29	20	build/i18n/po/ils_events.xml/en-CA.po
+44	28	build/i18n/po/ils_events.xml/en-GB.po
+16	16	build/i18n/po/ils_events.xml/es-ES.po
+53	36	build/i18n/po/ils_events.xml/fi-FI.po
+29	20	build/i18n/po/ils_events.xml/fr-CA.po
+32	20	build/i18n/po/ils_events.xml/hy-AM.po
+19	16	build/i18n/po/ils_events.xml/pt-BR.po
+19	16	build/i18n/po/ils_events.xml/ru-RU.po
+152	15	build/i18n/po/lang.dtd/ar-AR.po
+165	29	build/i18n/po/lang.dtd/cs-CZ.po
+158	18	build/i18n/po/lang.dtd/de-DE.po
+165	29	build/i18n/po/lang.dtd/en-CA.po
+171	28	build/i18n/po/lang.dtd/en-GB.po
+152	15	build/i18n/po/lang.dtd/es-ES.po
+353	209	build/i18n/po/lang.dtd/fi-FI.po
+165	25	build/i18n/po/lang.dtd/fr-CA.po
+165	29	build/i18n/po/lang.dtd/hy-AM.po
+158	18	build/i18n/po/lang.dtd/oc-FR.po
+156	16	build/i18n/po/lang.dtd/pt-BR.po
+156	16	build/i18n/po/lang.dtd/ru-RU.po
+152	15	build/i18n/po/lang.dtd/tr-TR.po
+7	3	build/i18n/po/offline.properties/cs-CZ.po
+7	3	build/i18n/po/offline.properties/de-DE.po
+7	3	build/i18n/po/offline.properties/en-CA.po
+21	17	build/i18n/po/offline.properties/en-GB.po
+7	3	build/i18n/po/offline.properties/es-ES.po
+34	30	build/i18n/po/offline.properties/fi-FI.po
+7	3	build/i18n/po/offline.properties/fr-CA.po
+8	4	build/i18n/po/offline.properties/hy-AM.po
+7	3	build/i18n/po/offline.properties/oc-FR.po
+7	3	build/i18n/po/offline.properties/pt-BR.po
+7	3	build/i18n/po/offline.properties/ru-RU.po
+7	3	build/i18n/po/offline.properties/tr-TR.po
+16	4	build/i18n/po/opac.dtd/en-GB.po
+19	16	build/i18n/po/opac.dtd/fi-FI.po
+16	3	build/i18n/po/opac.dtd/pt-BR.po
+3	3	build/i18n/po/opac.js/cs-CZ.po
+3	3	build/i18n/po/opac.js/de-DE.po
+3	3	build/i18n/po/opac.js/en-CA.po
+3	3	build/i18n/po/opac.js/en-GB.po
+3	3	build/i18n/po/opac.js/es-ES.po
+8	8	build/i18n/po/opac.js/fi-FI.po
+3	3	build/i18n/po/opac.js/fr-CA.po
+3	3	build/i18n/po/opac.js/hy-AM.po
+3	3	build/i18n/po/opac.js/oc-FR.po
+3	3	build/i18n/po/opac.js/pt-BR.po
+3	3	build/i18n/po/opac.js/ru-RU.po
+3	3	build/i18n/po/opac.js/sv-SE.po
+3	3	build/i18n/po/opac.js/tr-TR.po
+7	3	build/i18n/po/patron.properties/cs-CZ.po
+7	3	build/i18n/po/patron.properties/de-DE.po
+7	3	build/i18n/po/patron.properties/en-CA.po
+11	7	build/i18n/po/patron.properties/en-GB.po
+7	3	build/i18n/po/patron.properties/es-ES.po
+56	52	build/i18n/po/patron.properties/fi-FI.po
+7	3	build/i18n/po/patron.properties/fr-CA.po
+8	4	build/i18n/po/patron.properties/hy-AM.po
+7	3	build/i18n/po/patron.properties/oc-FR.po
+7	3	build/i18n/po/patron.properties/pt-BR.po
+7	3	build/i18n/po/patron.properties/ru-RU.po
+7	3	build/i18n/po/patron.properties/tr-TR.po
+1	1	build/i18n/po/pickup_and_return.js/fi-FI.po
+1	1	build/i18n/po/pull_list.js/fi-FI.po
+25	25	build/i18n/po/reports.dtd/fi-FI.po
+1	1	build/i18n/po/reports.js/fi-FI.po
+3	3	build/i18n/po/reservation.js/cs-CZ.po
+3	3	build/i18n/po/reservation.js/de-DE.po
+3	3	build/i18n/po/reservation.js/en-CA.po
+6	6	build/i18n/po/reservation.js/en-GB.po
+3	3	build/i18n/po/reservation.js/es-ES.po
+4	4	build/i18n/po/reservation.js/fi-FI.po
+4	4	build/i18n/po/reservation.js/fr-CA.po
+3	3	build/i18n/po/reservation.js/hy-AM.po
+3	3	build/i18n/po/reservation.js/oc-FR.po
+3	3	build/i18n/po/reservation.js/pt-BR.po
+3	3	build/i18n/po/reservation.js/ru-RU.po
+3	3	build/i18n/po/selfcheck.js/cs-CZ.po
+3	3	build/i18n/po/selfcheck.js/de-DE.po
+3	3	build/i18n/po/selfcheck.js/en-CA.po
+3	3	build/i18n/po/selfcheck.js/en-GB.po
+3	3	build/i18n/po/selfcheck.js/es-ES.po
+7	7	build/i18n/po/selfcheck.js/fi-FI.po
+3	3	build/i18n/po/selfcheck.js/fr-CA.po
+3	3	build/i18n/po/selfcheck.js/hy-AM.po
+3	3	build/i18n/po/selfcheck.js/oc-FR.po
+3	3	build/i18n/po/selfcheck.js/pt-BR.po
+3	3	build/i18n/po/selfcheck.js/ru-RU.po
+15	3	build/i18n/po/serial.properties/cs-CZ.po
+15	3	build/i18n/po/serial.properties/de-DE.po
+15	3	build/i18n/po/serial.properties/en-CA.po
+17	5	build/i18n/po/serial.properties/en-GB.po
+15	3	build/i18n/po/serial.properties/es-ES.po
+53	40	build/i18n/po/serial.properties/fi-FI.po
+15	3	build/i18n/po/serial.properties/fr-CA.po
+16	4	build/i18n/po/serial.properties/hy-AM.po
+15	3	build/i18n/po/serial.properties/oc-FR.po
+19	7	build/i18n/po/serial.properties/pt-BR.po
+15	3	build/i18n/po/serial.properties/tr-TR.po
+471	0	build/i18n/po/vandelay.dtd/cs-CZ.po
+469	0	build/i18n/po/vandelay.dtd/de-DE.po
+469	0	build/i18n/po/vandelay.dtd/en-CA.po
+475	0	build/i18n/po/vandelay.dtd/en-GB.po
+473	0	build/i18n/po/vandelay.dtd/es-ES.po
+469	0	build/i18n/po/vandelay.dtd/fi-FI.po
+481	0	build/i18n/po/vandelay.dtd/fr-CA.po
+475	0	build/i18n/po/vandelay.dtd/hy-AM.po
+469	0	build/i18n/po/vandelay.dtd/oc-FR.po
+481	0	build/i18n/po/vandelay.dtd/pt-BR.po
+467	0	build/i18n/po/vandelay.dtd/ru-RU.po
+469	0	build/i18n/po/vandelay.dtd/tr-TR.po
+ create mode 100644 build/i18n/po/vandelay.dtd/cs-CZ.po
+ create mode 100644 build/i18n/po/vandelay.dtd/de-DE.po
+ create mode 100644 build/i18n/po/vandelay.dtd/en-CA.po
+ create mode 100644 build/i18n/po/vandelay.dtd/en-GB.po
+ create mode 100644 build/i18n/po/vandelay.dtd/es-ES.po
+ create mode 100644 build/i18n/po/vandelay.dtd/fi-FI.po
+ create mode 100644 build/i18n/po/vandelay.dtd/fr-CA.po
+ create mode 100644 build/i18n/po/vandelay.dtd/hy-AM.po
+ create mode 100644 build/i18n/po/vandelay.dtd/oc-FR.po
+ create mode 100644 build/i18n/po/vandelay.dtd/pt-BR.po
+ create mode 100644 build/i18n/po/vandelay.dtd/ru-RU.po
+ create mode 100644 build/i18n/po/vandelay.dtd/tr-TR.po
+
+commit 2f78b18c080f349b18ace56c77e6c3c712e8f8b3
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Sat Apr 20 09:49:27 2013 -0400
+
+    Fix version number in 0793.data.best-hold-order-traditional-approx.sql
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/upgrade/0793.data.best-hold-order-traditional-approx.sql
+
+commit d9332ad960832a9d7ccdaf44041c307d025bfe15
+Author: Jason Stephenson <jason at sigio.com>
+Date:   Sat Apr 20 09:28:37 2013 -0400
+
+    Add missing [% in prefs_settings.tt2.
+    
+    Signed-off-by: Jason Stephenson <jason at sigio.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/myopac/prefs_settings.tt2
+
+commit e39cf3076218dd7d1e13bdbb0eb50d2d60600dc9
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Thu Apr 4 23:45:14 2013 -0400
+
+    LP#1162907: install RPC::XML as Evergreen dependency
+    
+    RPC::XML used to be installed as part of installing
+    the OpenSRF deps, but since OpenSRF itself doesn't
+    use it, this belongs in Evergreen.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+14	3	Open-ILS/src/extras/Makefile.install
+
+commit fa8bdbecb4ebb7662e17aa020ee46907ea76cb04
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Fri Apr 19 15:23:05 2013 -0400
+
+    Repair too-timid hold targeter (it misses copies at other org units)
+    
+    The patch to address bug 1162989 overreached.  Whereas before that
+    patch, the hold targeter was wont to target copies with unholdable
+    statuses, after the patch the hold targeter got the statuses right but
+    undesirably filtered out copies whose circ_lib doesn't match the hold
+    pickup lib.  This again probably stems from the differences between
+    FulfILLment's hold targeter and Evergreen's in the context of merging
+    the calculated proximity code.
+    
+    This patch should resolve the issue.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+
+commit d46585ed0e2816cd641242bfb292f0869f01950c
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Apr 19 16:19:11 2013 -0400
+
+    Stamping best-hold-order update script
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+67	0	Open-ILS/src/sql/Pg/upgrade/0793.data.best-hold-order-traditional-approx.sql
+0	67	Open-ILS/src/sql/Pg/upgrade/XXXX.data.best-hold-order-traditional-approx.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0793.data.best-hold-order-traditional-approx.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.best-hold-order-traditional-approx.sql
+
+commit 036232ce17a3ff957cd33e77f664e02f61f2c80d
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Apr 3 16:35:51 2013 -0400
+
+    Fix various Traditional and holds-go-home best-hold sort orders
+    
+    Use copy's call number's owning_lib instead of copy's circ_lib
+    
+        Should compare checkin lib to copy's (call number's) owning_lib, not
+        hold request lib.
+    
+        You might think the comparison should be to acp.circ_lib, but that
+        doesn't work with floating copies (for non-floaters, acp.circ_lib
+        should be equal to acp.call_number.owning_lib).
+    
+    approx is a more correct first determinant to give the behavior sites
+    are used to.
+    
+        hprox can cause copies to be too eager to go home when
+        there are holds with that copy's circ lib as its request lib (if that's
+        what you want, then you do pick or create a sort-order with hprox near
+        the top).
+    
+    Address a problem in the copy_has_not_been_home CTE.
+        This expression was always meant to provide a TRUE or FALSE value as its
+        lone result, but would return NULL in cases where copies had no transit
+        history.
+    
+    Use pickup_lib, not request_lib, as the determinant of
+        nearness-to-home.  request_lib was used with the thinking that an item's
+        "owning" patrons should have their wishes favored at holds-go-home time,
+        even if where they wanted to send the copy was not actually home, but
+        that's neither necessarily desired nor very intuitive.
+    
+    Clear up holds-go-home logic with better code AND add TechRef
+    documentation with diagram in attempt to be as clear as possible.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+4	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+95	60	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+4	4	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+67	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.best-hold-order-traditional-approx.sql
+93	0	docs/TechRef/Circ/holds-go-home.txt
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.best-hold-order-traditional-approx.sql
+ create mode 100644 docs/TechRef/Circ/holds-go-home.txt
+
+commit ec205de7f1c4d703331ac5deb1401e45b9b2f020
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Apr 19 11:45:32 2013 -0400
+
+    Confirm URL_VERIFY_UPDATE_SETTINGS permission code is fixed
+    
+    Jeff Davis spotted, and fixed, a problem with upgrade script 0754. If
+    someone has already applied that, this will address.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+4	0	Open-ILS/src/sql/Pg/upgrade/0792.schema.verify-0754-fix.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0792.schema.verify-0754-fix.sql
+
+commit 2c781a7510e3f51a9882c06d3960bc0a3f483c19
+Author: Jeff Davis <jdavis at sitka.bclibraries.ca>
+Date:   Thu Apr 18 16:09:40 2013 -0700
+
+    Use correct perm code in upgrade scripts for SQL update 0754
+    
+    Signed-off-by: Jeff Davis <jdavis at sitka.bclibraries.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/upgrade/0754.data.url_verify.sql
+1	1	Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4.alpha1-upgrade-db.sql
+
+commit 0c5f126d441b0d3966af37413990eb85ebc656f8
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Apr 19 11:06:27 2013 -0400
+
+    Merge changes to Apache 2.4 example config files
+    
+    Not only do we need the JSPAC->TPAC changes that went into the base
+    Apache example configs, we should also move to generating these files
+    instead of having hardcoded values. Longer term, we should probably just
+    generate the right example configs from one common base until Apache 2.2
+    is dead and gone, but this improves the Apache 2.4 experience greatly.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+0	147	Open-ILS/examples/apache_24/eg.conf
+147	0	Open-ILS/examples/apache_24/eg.conf.in
+0	731	Open-ILS/examples/apache_24/eg_vhost.conf
+775	0	Open-ILS/examples/apache_24/eg_vhost.conf.in
+9	1	Open-ILS/src/Makefile.am
+ delete mode 100644 Open-ILS/examples/apache_24/eg.conf
+ create mode 100644 Open-ILS/examples/apache_24/eg.conf.in
+ delete mode 100644 Open-ILS/examples/apache_24/eg_vhost.conf
+ create mode 100644 Open-ILS/examples/apache_24/eg_vhost.conf.in
+
+commit bdc5fd42a9f816928860e049caf285adbd58d651
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu Apr 18 15:45:15 2013 -0400
+
+    Stamping upgrade for #deleted search modifier (and friends) fix
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+509	0	Open-ILS/src/sql/Pg/upgrade/0791.schema.deleted-search-fts.sql
+0	509	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.deleted-search-fts.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0791.schema.deleted-search-fts.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.deleted-search-fts.sql
+
+commit 22ad7ca55b4a3a5b1bc94a55c6eef4fb9647bbbc
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Apr 17 18:16:09 2013 -0400
+
+    QP: Repair edit_date, create_date, and bib_source filters
+    
+    And also make records undeletable, where reingestion at undelete time
+    formerly balked in this manner:
+    
+    > ERROR: duplicate key value violates unique constraint
+    > "record_attr_pkey" DETAIL: Key (id)=(1) already exists. CONTEXT: SQL
+    > statement "INSERT INTO metabib.record_attr (id, attrs) VALUES (NEW.id,
+    > new_attrs)" PL/pgSQL function "indexing_ingest_or_delete" line 129 at
+    > SQL statement
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+17	4	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+1	0	Open-ILS/src/sql/Pg/030.schema.metabib.sql
+171	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.deleted-search-fts.sql
+
+commit 58cdf67ae3a5787dfcf9f5b8e92aff83cf5855da
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Apr 17 17:24:59 2013 -0400
+
+    QP: Limit to deleted records for #deleted modifier at this level
+    
+    Down in the DB's query_parser_fts procedure, we also know whether we're
+    in a deleted_search, and in those cases we skip all visibility and
+    similar testing accordingly.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+4	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+1	3	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.deleted-search-fts.sql
+
+commit 1fe59bd9b407012bad144c4af33d08af0d6a170e
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Apr 5 16:46:21 2013 -0400
+
+    Bring back #deleted modifier post-revive-qp-fts
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/metabib.pm
+144	139	Open-ILS/src/sql/Pg/300.schema.staged_search.sql
+340	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.deleted-search-fts.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.deleted-search-fts.sql
+
+commit d87a117dab9abe66fe1106a3ccdd7199af0c916a
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sun Apr 7 18:14:58 2013 -0400
+
+    TPAC schema.org: Add Organization types for contributors
+    
+    Given a 110 / 710 field, when generating the record details for authors
+    and contributors we can declare an http://schema.org/Organization
+    itemtype rather than just jamming the name under the "contributor"
+    property. This is more in accordance with schema.org directions.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+8	2	Open-ILS/src/templates/opac/parts/record/authors.tt2
+
+commit 647c014f8c2f2e3e2a9cfc95ddcd6b1fb65319df
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Apr 5 16:10:01 2013 -0400
+
+    TPAC: Fix schema.org name / dates for authors
+    
+    Per http://schema.org/Person, the birth date and death date are not
+    supposed to be part of the name of a Person. We can separate these out
+    correctly based on subfield d for 100 fields.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+22	3	Open-ILS/src/templates/opac/parts/record/authors.tt2
+
+commit c670e8426c2a0e48d57be32194c0fa799f4f3320
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Apr 5 13:21:47 2013 -0400
+
+    Fix schema.org mapping for MusicAlbum, add Map
+    
+    We had set LDR[06] = j to MusicRecording, but that is really meant for
+    individual songs. Use MusicAlbum instead, and per
+    http://schema.org/MusicAlbum, use a new MusicGroup itemtype with a
+    'byArtist' property for the primary artist rather than the generic
+    'accountablePerson'.
+    
+    Also map LDR[06] = e to Map, because that seems like a safe bet.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2	1	Open-ILS/src/templates/opac/parts/misc_util.tt2
+10	2	Open-ILS/src/templates/opac/parts/record/authors.tt2
+
+commit b83e736ab52d4c35cf770e9143661898831d509c
+Author: Ben Shum <bshum at biblio.org>
+Date:   Thu Apr 18 13:45:54 2013 -0400
+
+    Stamping upgrade script for optional combined search by class
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+8	0	Open-ILS/src/sql/Pg/upgrade/0790.schema.optional_combined_search.sql
+0	4	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.optional_combined_search.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0790.schema.optional_combined_search.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.optional_combined_search.sql
+
+commit 6a79670ff595cf21737a62024f8fb154c488fbd3
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Tue Apr 16 15:08:10 2013 -0400
+
+    Allow combined search to be optional per class
+    
+    Relevance is thrown off for, in paticular, the keyword class when combined
+    search is used.  This is because the effect of an opaque blob of data, such
+    as the keyword|keyword index definition, is to applify the inclusion of spurious
+    (to the user) data in matching attempts.
+    
+    This commit adds the ability to specify, per class, whether combined FTS should
+    be used, and turns this on for only the subject class by default.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	0	Open-ILS/examples/fm_IDL.xml
+29	6	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+1	0	Open-ILS/src/sql/Pg/002.schema.config.sql
+4	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.optional_combined_search.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.optional_combined_search.sql
+
+commit 3eb7f405e80743167163f94036e0ef9f38f945d7
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Feb 20 09:41:03 2013 -0500
+
+    Acq: re-use more code for two ways of creating invoices (EDI and manual)
+    
+    This solves two problems.
+    
+     1) With EDI invoices, we had been failing to disencumber fund debits
+        related to the invoiced lineitems, although that worked for manual
+        invoices.
+     2) With manual invoices, we would not automatically uncancel copies
+        when the user decided to invoice them despite their canceled status.
+        This was already working in EDI invoices though.  This is especially
+        important since our schema lumps "backordered" in with "canceled,"
+        and in theory backordered things do show up eventually.
+    
+    There were earlier version of this commit out there with bugs that
+    prevented the EDI workflow from working correctly (the manual invoice
+    flow worked and still should).
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+14	92	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/EDI.pm
+177	65	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Invoice.pm
+
+commit 144dc798cafb4773201c1a3b625618f1822e23d0
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Sun Apr 14 00:38:53 2013 -0400
+
+    Approximate number of search results
+    
+    The number of results listed on the search results page is often an
+    estimate when working with a large set. Let's add the word "about" to
+    reflect the fact that it is indeed an estimate.
+    
+    At the same time, I moved the <strong> tags out of the code, adding a CSS
+    class in its place, moved the HTML tags out of the translatable
+    string (as recommended by Pasi Kallinen), and fixed a typo in the
+    stylesheet.
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+6	2	Open-ILS/src/templates/opac/css/style.css.tt2
+9	4	Open-ILS/src/templates/opac/parts/result/paginate.tt2
+
+commit bfa4b6e5d07fd3941119b7070babe06d23c3624b
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Thu Apr 18 10:49:06 2013 -0400
+
+    Minor change to chrome/content/util/list.js.
+    
+    Change the initializer of this.count_for_display from 0 to 1 in
+    order to match the counting of other lists in the client and to
+    provide something that staff are likely to prefer.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	1	Open-ILS/xul/staff_client/chrome/content/util/list.js
+
+commit b0d81ef45f92f6dcd4db7af01f82e8faba5a7361
+Author: Dmitry Nechai <nechai.dmitry at gmail.com>
+Date:   Wed Apr 17 00:33:57 2013 +0300
+
+    Fixed bug in staff client offline mode.
+    
+    https://bugs.launchpad.net/evergreen/+bug/1089657
+    
+    In list.js at start you create obj.columns for lineno, but later
+    you don`t process this value so it`s return default render
+    function.  This code repairs this.
+    
+    Signed-off-by: Dmitry Nechai <nechai.dmitry at gmail.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+20	4	Open-ILS/xul/staff_client/chrome/content/util/list.js
+
+commit 4f1549c263dd94724f205d710158fc20d13da058
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Apr 5 01:53:55 2013 -0400
+
+    Prevent compiler warning about unused numtype var
+    
+    There was a dangling variable left around that was making noise in the
+    compiler. Credit to Jeff Godin for the heads-up.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	2	Open-ILS/src/c-apps/oils_sql.c
+
+commit 34c0a980a1a17b1d1649ede361533a9bcfc6e020
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Apr 5 01:52:16 2013 -0400
+
+    Address SQL injection vulnerability in SQL ORM layer
+    
+    If the user-supplied value and the db column are both numbers
+    (jsonObject->type == JSON_NUMBER, get_primitive(field) == "number") then
+    don't quote. Otherwise, quote.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+4	18	Open-ILS/src/c-apps/oils_sql.c
+
+commit bfce3c12aac881209093dbf4ce30c084329e3a19
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Tue Apr 16 22:24:07 2013 -0400
+
+    2.2.7-2.2.8 database upgrade script
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+124	0	Open-ILS/src/sql/Pg/version-upgrade/2.2.7-2.2.8-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.2.7-2.2.8-upgrade-db.sql
+
+commit 6756bb4595e0a0ad1a04d7590798d0d3280279cc
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Apr 17 15:47:59 2013 -0400
+
+    2.3.5 -> 2.3.6 SQL upgrade
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+124	0	Open-ILS/src/sql/Pg/version-upgrade/2.3.5-2.3.6-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.3.5-2.3.6-upgrade-db.sql
+
+commit ab489beb66184572005a739aa975553bb3736073
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Wed Apr 17 14:33:48 2013 -0400
+
+    Stamping upgrade script for reinstate tsconfigs.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+8	0	Open-ILS/src/sql/Pg/upgrade/0789.schema.reinstate-tsconfigs.sql
+0	8	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.reinstate-tsconfigs.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0789.schema.reinstate-tsconfigs.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.reinstate-tsconfigs.sql
+
+commit 495257a54739b619c95477843746a597128a7b71
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Apr 17 14:04:11 2013 -0400
+
+    Reinstate required TEXT SEARCH CONFIGURATION data
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+5	5	Open-ILS/src/sql/Pg/000.english.pg91.fts-config.sql
+8	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.reinstate-tsconfigs.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.reinstate-tsconfigs.sql
+
+commit e4e8dda3b09ce11acc85cb526c22c1c99b0d8589
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Apr 17 12:08:41 2013 -0400
+
+    Address hash/list thinko; Ensure initialization
+    
+    Two cascading defects were identified after being reported by users. The
+    first, which was only a potential issue, was an apparent lack of mod_perl
+    initialization for the item-age record feed.  While not the direct cause
+    of the error message, a lack of initialization here would manifest in the
+    same way.  So, we check that initialization.
+    
+    Feed-generating callbacks were not being constructed properly due to a
+    simple thinko in the construction of the default record format list provided
+    by the SuperCat backend.  We need a list of two hashes, not a hash of two
+    keys.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm
+2	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm
+
+commit 2fb125be8ae168cef03c947cedcc9c7db9ba4e28
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Apr 9 13:45:24 2013 -0400
+
+    TPAC bucket item retrieval operates in streaming mode
+    
+    TPAC bucket item retreive fleshes bib records with large blobs of MARC
+    data.  When a bucket contains a few thousand items, the size of the
+    data passed around in atomic retreival mode will exceed the typical jabber
+    max stanza size and result in a failure.  Retrieve the records in
+    streaming mode instead.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	1	Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm
+
+commit 3288d77eab0ea26ed5a8d2be11140316fec10615
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Apr 11 05:56:50 2013 -0700
+
+    TPAC: Render record titles and authors consistently
+    
+    Yamil Suarez noticed that the titles and authors in the call number
+    browse results page were presented differently than the regular search
+    results. This change removes some of the hard-coded <em> tags and "bold"
+    classes, in favour of new "record_author" and "record_title" CSS
+    classes. Now sites can simply change the CSS in one place to keep things
+    consistent between the two search results pages.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Yamil Suarez <yamil at yamil.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+8	0	Open-ILS/src/templates/opac/css/style.css.tt2
+2	2	Open-ILS/src/templates/opac/parts/record/cnbrowse.tt2
+4	6	Open-ILS/src/templates/opac/parts/result/table.tt2
+
+commit 1d3452aafabd64bc6d1dac55eb13d7ca1a754926
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Mar 27 11:48:58 2013 -0400
+
+    Use inline-block for opac-multiline-button style
+    
+    Follow up for LP1102934 which introduced CSS for opac-multiline-button.
+    
+    The button appeared noticeably larger if using the english text for
+    "FAQs" on the login help button. Using inline-block for the style shrinks
+    it to fit more appropriately based on actual amount of text instead of
+    leaving it an unusually large looking button.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Kyle Tomita <ktomita at catalystitservices.com>
+
+1	1	Open-ILS/src/templates/opac/css/style.css.tt2
+
+commit e0749b6b80ac59cac4abc523bb876810dee9afff
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Apr 10 13:23:28 2013 -0400
+
+    TPAC Turn dashes into space in subject search links for better matching
+    
+    Thanks to Dan Wells for finding a bug and fixing it for demonstration
+    purposes.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+1	1	Open-ILS/src/templates/opac/parts/record/subjects.tt2
+
+commit 38411f209cb0b658f08d9040f2f04fdb3e1bc3b4
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Thu Apr 4 16:43:38 2013 -0400
+
+    Add summary creation to embedded alt dist editor
+    
+    In the Serial Control View, summaries are created automatically with
+    a new distribution. To avoid unhappy surprises, the embedded version
+    of the alt distribution editor should do the same.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+18	0	Open-ILS/web/js/ui/default/serial/subscription.js
+
+commit c14818bb399ddb2a3bcb94a61fe5070ca12ceb22
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Apr 3 16:21:25 2013 -0400
+
+    Ignore canceled holds during alt-queue generation
+    
+    When zero potential copies exist for a hold, the hold queue stats code
+    determines the size and shape of the queue by finding and sorting holds
+    that have the same type and target.  This patch forces the code to
+    ignore canceled holds when looking for similarly-shaped holds.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+7	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit aa8108f54651e496f7d2f84fdd2945b96cabe902
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Mon Apr 1 16:15:10 2013 -0400
+
+    Remove a search change and add an invoicing note
+    
+    With lp1161601, we lost one of the new features from the qp work. Also, we
+    missed one new feature with invoices.
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+3	1	docs/RELEASE_NOTES_2_4.txt
+
+commit 200b7ff99999400af989220f7dd9b7443a60e143
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Fri Mar 29 22:09:48 2013 -0400
+
+    Release Note Additions
+    
+    We should probably add the removal of JSPAC to the Release Notes. Also
+    added the following new features that were missing from the original
+    notes.
+    
+    - Options to hide some user preferences from TPAC
+    - New fields for acq distribution formulas
+    - Public copy notes
+    - Direct access to item attribute editor
+    - Setting staff client search preferences
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+46	0	docs/RELEASE_NOTES_2_4.txt
+
+commit 9761be4a42b6a658d3290b2219593e0c51bb6b5d
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Mar 20 09:51:22 2013 -0400
+
+    More typo fixing
+    
+    Change CVS to CSV as noticed by Remington Steed.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	docs/RELEASE_NOTES_2_4.txt
+
+commit 9c2102a0633e0ca9ba30c44e45656664f9c4533f
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Wed Mar 20 00:05:27 2013 -0400
+
+    Minor edit
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	docs/RELEASE_NOTES_2_4.txt
+
+commit 2e957eab5c8ef295bb4cb78b6dda14dde218be6a
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Tue Mar 19 23:50:48 2013 -0400
+
+    Minor edits to release notes and addition of new permissions
+    
+    There are some new permissions that didn't get added to the original
+    release notes. Also, some minor edits.
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+39	6	docs/RELEASE_NOTES_2_4.txt
+
+commit 45a2394fd544d807b02378693a05389f3949d42a
+Author: Ben Shum <bshum at biblio.org>
+Date:   Tue Mar 19 16:59:41 2013 -0400
+
+    Fix some typos in the 2.4 release notes
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+9	9	docs/RELEASE_NOTES_2_4.txt
+
+commit 7b9d9190acae30d4299f1cd49bd2999ba5ad4afb
+Author: Ben Shum <bshum at biblio.org>
+Date:   Tue Mar 19 12:32:13 2013 -0400
+
+    Update for 2.4 beta1 release notes
+    
+    - Move more release notes into 2.4 notes.
+    - Move notify_csv.txt into TechRef directory.
+    - Include entry for Linkchecker in 2.4 notes.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+233	4	docs/RELEASE_NOTES_2_4.txt
+0	33	docs/RELEASE_NOTES_NEXT/acq-interface-improvements.txt
+0	8	docs/RELEASE_NOTES_NEXT/acq_default_copy_count.txt
+0	22	docs/RELEASE_NOTES_NEXT/acq_lineitem_order_ident.txt
+0	12	docs/RELEASE_NOTES_NEXT/acq_po_detail_view.txt
+0	28	docs/RELEASE_NOTES_NEXT/marc-import-tag-stripping.txt
+0	8	docs/RELEASE_NOTES_NEXT/marc21-feeds.txt
+0	78	docs/RELEASE_NOTES_NEXT/notify_csv.txt
+0	11	docs/RELEASE_NOTES_NEXT/search-deleted.txt
+0	11	docs/RELEASE_NOTES_NEXT/search-record-date-filters.txt
+0	13	docs/RELEASE_NOTES_NEXT/serial_control_embedded_alt_interfaces.txt
+0	7	docs/RELEASE_NOTES_NEXT/serial_control_special_statuses.txt
+0	7	docs/RELEASE_NOTES_NEXT/show_holds_on_bib.txt
+0	15	docs/RELEASE_NOTES_NEXT/tpac_bookbag_callnumbers.txt
+0	13	docs/RELEASE_NOTES_NEXT/z39_source_credentials.txt
+78	0	docs/TechRef/notify_csv.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/acq-interface-improvements.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/acq_default_copy_count.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/acq_lineitem_order_ident.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/acq_po_detail_view.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/marc-import-tag-stripping.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/marc21-feeds.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/notify_csv.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/search-deleted.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/search-record-date-filters.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/serial_control_embedded_alt_interfaces.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/serial_control_special_statuses.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/show_holds_on_bib.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/tpac_bookbag_callnumbers.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/z39_source_credentials.txt
+ create mode 100644 docs/TechRef/notify_csv.txt
+
+commit 7ab4ea645000249d056e8134b438fb39d2193075
+Author: Ben Shum <bshum at biblio.org>
+Date:   Tue Mar 19 22:49:49 2013 -0400
+
+    Initial cut of 2.4 release notes.
+    
+    Basically, the contents of RELEASE_NOTES_NEXT organized into
+    RELEASE_NOTES_2_4.txt and removed from RELEASE_NOTE_NEXT.
+    
+    Move copy of alternate_graphic_fields to TechRef.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+229	0	docs/RELEASE_NOTES_2_4.txt
+0	13	docs/RELEASE_NOTES_NEXT/about_about.txt
+0	7	docs/RELEASE_NOTES_NEXT/acq_marc_upload_defaults.txt
+0	67	docs/RELEASE_NOTES_NEXT/alternate_graphic_fields.txt
+0	10	docs/RELEASE_NOTES_NEXT/calculated-proximity-adjustments.txt
+0	9	docs/RELEASE_NOTES_NEXT/circulation_patron_expiry_warning.txt
+0	6	docs/RELEASE_NOTES_NEXT/clickable_patron_indicators.txt
+0	16	docs/RELEASE_NOTES_NEXT/custom-best-hold-selection.txt
+0	7	docs/RELEASE_NOTES_NEXT/hold_patron_name.txt
+0	24	docs/RELEASE_NOTES_NEXT/loading_sample_data.txt
+0	25	docs/RELEASE_NOTES_NEXT/queryparser_changes.txt
+0	12	docs/RELEASE_NOTES_NEXT/toolbar_perms.txt
+0	20	docs/RELEASE_NOTES_NEXT/tpac-ou-hiding.txt
+0	12	docs/RELEASE_NOTES_NEXT/tpac_google_books_preview.txt
+0	11	docs/RELEASE_NOTES_NEXT/vandelay_default_match_set.txt
+67	0	docs/TechRef/alternate_graphic_fields.txt
+ create mode 100644 docs/RELEASE_NOTES_2_4.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/about_about.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/acq_marc_upload_defaults.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/alternate_graphic_fields.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/calculated-proximity-adjustments.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/circulation_patron_expiry_warning.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/clickable_patron_indicators.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/custom-best-hold-selection.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/hold_patron_name.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/loading_sample_data.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/queryparser_changes.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/toolbar_perms.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/tpac-ou-hiding.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/tpac_google_books_preview.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/vandelay_default_match_set.txt
+ create mode 100644 docs/TechRef/alternate_graphic_fields.txt
+
+commit e776d61ec5377cfd84ca5df23e8186650e1565b1
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Apr 1 13:28:48 2013 -0400
+
+    Release note template
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+18	0	docs/RELEASE_NOTES_NEXT/RELEASE_NOTE_TEMPLATE
+ create mode 100644 docs/RELEASE_NOTES_NEXT/RELEASE_NOTE_TEMPLATE
+
+commit 797726a61461c5043634160b6eda7bb20223dc86
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Apr 1 13:27:28 2013 -0400
+
+    Updated README to reflect the future
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+10	6	docs/RELEASE_NOTES_NEXT/README
+
+commit 8d7d513ce361e98b3a877783dd35ba7abed411d2
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Apr 1 13:20:26 2013 -0400
+
+    proto-script for release note generation
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+60	0	docs/RELEASE_NOTES_NEXT/create_release_notes.sh
+ create mode 100755 docs/RELEASE_NOTES_NEXT/create_release_notes.sh
+
+commit a843d94c14d603023d5a687eade674ca61376dd9
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Apr 1 13:20:00 2013 -0400
+
+    release notes FS structure
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+0	0	docs/RELEASE_NOTES_NEXT/Acquisitions/DONOTREMOVE
+0	0	docs/RELEASE_NOTES_NEXT/Administration/DONOTREMOVE
+0	0	docs/RELEASE_NOTES_NEXT/Cataloging/DONOTREMOVE
+0	0	docs/RELEASE_NOTES_NEXT/Circulation/DONOTREMOVE
+0	0	docs/RELEASE_NOTES_NEXT/Client/DONOTREMOVE
+0	0	docs/RELEASE_NOTES_NEXT/OPAC/DONOTREMOVE
+0	0	docs/RELEASE_NOTES_NEXT/Serials/DONOTREMOVE
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Acquisitions/DONOTREMOVE
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Administration/DONOTREMOVE
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Cataloging/DONOTREMOVE
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Circulation/DONOTREMOVE
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Client/DONOTREMOVE
+ create mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/DONOTREMOVE
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Serials/DONOTREMOVE
+
+commit 04bc99d2c0ff0e854ea77776fc5737e564dc6b31
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Wed Apr 3 15:30:40 2013 -0400
+
+    stamping upgrade for field 264 reporter view
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+37	0	Open-ILS/src/sql/Pg/upgrade/0788.schema.reporter_264_pubinfo.sql
+0	37	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.reporter_264_pubinfo.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0788.schema.reporter_264_pubinfo.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.reporter_264_pubinfo.sql
+
+commit 0d01f443d7cd37061780028e3347c2bf93f9fa57
+Author: Ben Shum <bshum at biblio.org>
+Date:   Thu Jan 31 12:20:20 2013 -0500
+
+    LP1071505 - Add 264 RDA tag to reporter views
+    
+    Some reports draw from reporter.materialized_simple_record table and these
+    were not made aware of the new 264 tag which contains publisher related
+    information.
+    
+    Change the view for reporter.old_super_simple_record, which feeds into the
+    other reporter table.
+    
+    The included upgrade SQL will update this view and then update the table using
+    the new view.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2	2	Open-ILS/src/sql/Pg/reporter-schema.sql
+37	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.reporter_264_pubinfo.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.reporter_264_pubinfo.sql
+
+commit 26ff7685cc2744424ea8c5e74dd7e62f0cfcf6e3
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Wed Apr 3 12:44:23 2013 -0400
+
+    Populate variable needed for batch item receive
+    
+    In the integrated alt editor, we load the sub. grid differently, so
+    'sub' was not being populated.  Since we should only ever have one
+    subscription showing at a time (in this view), we can simply assign
+    the item to 'sub' as it is received.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+3	0	Open-ILS/web/js/ui/default/serial/subscription.js
+
+commit bb847f7bc0872002e38fe914c94211dc18ddc36f
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Wed Apr 3 12:03:25 2013 -0400
+
+    Small fixes for alt sub editor integration
+    
+    This commit applies some polish to the alt sub editor integration:
+    
+     - Prevent spinner from displaying continuously when adding a
+       subscription
+     - Hide the editor when changing subscriptions to limit confusion
+       about what is loaded
+     - Dynamically add a node to the tree view when adding a subscription
+     - Make sure the 'View/Edit' tab gets populated when backing out of
+       the stream or item view
+     - Apply some default link styles
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+8	0	Open-ILS/src/templates/serial/list_item.tt2
+8	0	Open-ILS/src/templates/serial/list_stream.tt2
+11	2	Open-ILS/src/templates/serial/subscription.tt2
+6	0	Open-ILS/web/js/ui/default/serial/subscription.js
+6	1	Open-ILS/xul/staff_client/server/serial/manage_subs.js
+
+commit 25da3f9f972e9b7869e3fb7f727c11824f26539a
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Apr 3 13:19:18 2013 -0400
+
+    Bash script to be used after the main 2.3-2.4 db upgrade
+    
+    This script, originally offered by Thomas Berezansky and tested by others,
+    and augmented by me to include more parallizable SQL, will reduce the
+    time spent upgrading a large Evergreen 2.3 database to 2.4 by several hours.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+35	0	Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4-supplemental.sh
+ create mode 100755 Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4-supplemental.sh
+
+commit d5d03ce3fde6a59d895cd5cc3739d1299529591b
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Apr 3 10:50:22 2013 -0400
+
+    Repair an issue in search filter group UI about filtering on owner OU
+    
+    What was intended to be a filter against filter groups' owner field was
+    instead turned into a filter on filter group ID.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/templates/conify/global/actor/search_filter_group.tt2
+
+commit 95648cf735843510079d0b3477927170531e014f
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Apr 2 16:02:26 2013 -0400
+
+    QP copy location group filter repair
+    
+    Remove reference to nonexistent location group filter callback function.
+    Copy locations for filters are loaded inline.  No callback needed.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 096ccb58572377bc12a8cef7fefcb362af19a748
+Author: ESI <info at esilibrary.com>
+Date:   Tue Apr 2 15:24:57 2013 -0400
+
+    Documentation: Add link checker documentation.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+84	0	docs/cataloging/link_checker.txt
+-	-	docs/media/Link_Checker1.jpg
+-	-	docs/media/Link_Checker2.jpg
+-	-	docs/media/Link_Checker6.jpg
+2	0	docs/root.txt
+ create mode 100644 docs/cataloging/link_checker.txt
+ create mode 100644 docs/media/Link_Checker1.jpg
+ create mode 100644 docs/media/Link_Checker2.jpg
+ create mode 100644 docs/media/Link_Checker6.jpg
+
+commit 22aad90045c9d747f0315594e373f1d4df147e60
+Author: Kyle Tomita <ktomita at catalystitservices.com>
+Date:   Wed Mar 27 15:31:17 2013 -0700
+
+    Update LP1159768 - Client: Holds Client Controls Confusing
+    
+    The new string "Are you sure you want to cancel the hold(s)?"
+    has been added as the following variable,
+    staff.hold_list.cancel_hold_dialog.confirmation.
+    
+    The string also needs to be translated to all supported languages.
+    
+    Signed-off-by: Kyle Tomita <ktomita at catalystitservices.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+1	1	Open-ILS/xul/staff_client/server/patron/hold_cancel.xul
+
+commit b41a615328721bfe1e1e2836e69bac3d1f2e8621
+Author: Kyle Tomita <ktomita at catalystitservices.com>
+Date:   Wed Mar 27 13:31:03 2013 -0700
+
+    LP1159768 - Client: Holds Client Controls Confusing
+    
+    The buttons were updated per Jason's suggestions to "No" and "Yes" with
+    a question added, "Are you sure you want to cancel the hold(s)?"
+    
+    Signed-off-by: Kyle Tomita <ktomita at catalystitservices.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+4	4	Open-ILS/web/opac/locale/en-US/lang.dtd
+1	0	Open-ILS/xul/staff_client/server/patron/hold_cancel.xul
+
+commit ce9131a32ad5c19b126f189c76b20c0c65d4aebd
+Author: Kyle Tomita <ktomita at catalystitservices.com>
+Date:   Wed Mar 27 12:50:59 2013 -0700
+
+    LP1159768 - Client: Holds Client Controls Confusing
+    
+    Changed the language from "Cancel" to "Cancel Action" and
+    "Apply" to "Apply Cancellation".  These need to be translated
+    to other supported languages.
+    
+    Signed-off-by: Kyle Tomita <ktomita at catalystitservices.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+2	2	Open-ILS/web/opac/locale/en-US/lang.dtd
+
+commit 0f567f749c1ea74227f5e03ddff60dc3bd4c8e67
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Tue Apr 2 09:40:07 2013 -0400
+
+    stamping upgrade script for authority validation fix
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+84	0	Open-ILS/src/sql/Pg/upgrade/0787.schema.authority_normalize_heading.sql
+0	84	Open-ILS/src/sql/Pg/upgrade/xxxx.schema.authority_normalize_heading.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0787.schema.authority_normalize_heading.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/xxxx.schema.authority_normalize_heading.sql
+
+commit e61e3dbfaa2306e119c15cd34a81c570f41e6069
+Author: Steven Callender <stevecallender at esilibrary.com>
+Date:   Fri Jun 15 13:27:33 2012 -0400
+
+    Avoid problems when auth recs are missing the 901c
+    
+    Fixed the authority.normalize_heading function to better handle
+    INT's when there is no 901 present. Now we look for the best-fit
+    control set instead of throwing a db-level error.
+    
+    Signed-off-by: Steven Callender <stevecallender at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/011.schema.authority.sql
+84	0	Open-ILS/src/sql/Pg/upgrade/xxxx.schema.authority_normalize_heading.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/xxxx.schema.authority_normalize_heading.sql
+
+commit ba5cb36e165c8274a8a1ed5ad74bd16cf44936e0
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Tue Mar 19 16:13:35 2013 -0400
+
+    Best hold selection: fix a checkin-busting bug affecting Holds-go-home
+    
+    Several subselects within SQL auxiliary queries can possibly return
+    multiple rows in situations where outer code requires that they return
+    only one or zero rows.
+    
+    When you're using a best-hold order that includes htime or shtime, (such
+    as those with Holds-go-home) and if there are mutiple circs or transits
+    related to the copy in hand with certain characteristics, you can
+    trigger this bug.  The end user at the staff client gets one of those
+    nasty "Network error" dialogs, and the error in the SQL logs is:
+    
+    > ERROR:  more than one row returned by a subquery used as an expression
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+3	3	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+
+commit 5a1ef757c880e931e88cf09c1c6e1234a524206e
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Thu Mar 28 15:08:37 2013 -0400
+
+    Fix bug in hold targeter introduced with Calculated Proximity Adjustments
+    
+    The Calculated Proximity Adjustments feature introduced a bug in the
+    hold targeter where holds would not discount those copies from the
+    potentials list that aren't in either the Available or Reshelving
+    status.
+    
+    This commit should restore the earlier, correct behavior.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+6	6	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+
+commit 09873f3feaa4a861716bf0470172c29d3783da8d
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Mon Apr 1 14:25:02 2013 -0400
+
+    Stamping upgrade script for revive-qp-fts (LP 1161601).
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+335	0	Open-ILS/src/sql/Pg/upgrade/0786.schema.qp_fts_stored_proc.sql
+0	329	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.qp_fts_stored_proc.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0786.schema.qp_fts_stored_proc.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.qp_fts_stored_proc.sql
+
+commit d17ff9c5b24208da34e374cb1c2e6110003a3470
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu Mar 28 17:12:16 2013 -0400
+
+    Upgrade script to bring back the stored proc
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+329	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.qp_fts_stored_proc.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.qp_fts_stored_proc.sql
+
+commit d589e0c1af415ce3d107d40b47b1b9ba4491ef6b
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Mar 25 14:51:21 2013 -0400
+
+    Revert "Remove search.query_parser_fts from schema"
+    
+    This reverts commit ab9fb958e387a20cfe9fafb6035fb72bc5f1fb3f.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	1	Open-ILS/src/sql/Pg/040.schema.asset.sql
+327	0	Open-ILS/src/sql/Pg/300.schema.staged_search.sql
+
+commit 8b0139a80a70b436fbe8a1b2d5f445431d36d6aa
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Mar 25 14:50:55 2013 -0400
+
+    Revert "Remove dependence on search.query_parser_fts proc"
+    
+    This reverts commit 6d8872cf120caf67ad6f65995b2c5155fa5ab652.
+    
+    Conflicts:
+    	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+21	2	Open-ILS/examples/opensrf.xml.example
+131	55	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm
+13	276	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+183	4	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/metabib.pm
+
+commit e0dba3994a3808ec8b4e2f54b23b162bc6c3e523
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Mar 29 13:36:17 2013 -0400
+
+    LP 1126545 repair staff 'return to results' tpac link
+    
+    Strip the extra "/" from the URL created by the "return to results"
+    button in the staff client TPAC view.  Havin the extra "/" in place
+    prevents the next/previous links from functioning.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+1	1	Open-ILS/web/js/ui/default/opac/staff.js
+
+commit 6dd7420c16074cac024d03dfd0f28fa2ba3a58de
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Fri Mar 15 14:47:53 2013 -0400
+
+    Allow access to public hold notes via hold "blob"
+    
+    If a hold note is marked as "public", it seems reasonable that it
+    should be visible to anyone who can see that hold, regardless of
+    who created the note.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Kyle Tomita <ktomita at catalystitservices.com>
+
+4	4	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit 1e8971b4c4cdbe395c5409064f1198a887dfe99d
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Fri Mar 15 14:42:24 2013 -0400
+
+    Fix reversed logic for hold "blob" notes
+    
+    Hold notes (at least at the data level) allow for both staff and
+    "private" notes to be attached. This code intended to show "private"
+    notes to the hold owner and staff notes to staff, but had the logic
+    reversed.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Kyle Tomita <ktomita at catalystitservices.com>
+
+3	3	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit d198705a3fe393a094cc626f428acd8ec096657f
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Mar 25 15:19:14 2013 -0400
+
+    tpac : honor page locale in record detail copy grid
+    
+    The query used to load the record detail copy grid now uses the same
+    locale value set as the default for all cstore-editor calls.  This
+    solves the issue where copy location names, statuses, etc. are not
+    properly translated.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
+
+commit 9f831d2a1120e2336aa66f1ea77405632907b49e
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Mar 27 15:50:40 2013 -0400
+
+    Stamping upgrade script for aoupa constraint fix
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+17	0	Open-ILS/src/sql/Pg/upgrade/0785.schema.aoupa-unique-constraint.sql
+0	17	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.aoupa-unique-constraint.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0785.schema.aoupa-unique-constraint.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.aoupa-unique-constraint.sql
+
+commit bd8e8002cdb6c0c9ee15f88120ef021e9bf8f3aa
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Thu Mar 14 13:58:47 2013 -0400
+
+    Org unit prox adjustment tweaks
+    
+    1) UI change - pre-select highest OU where user can edit
+    
+    There's a dropdown in the org unit proximity adjustment interface that
+    affects the scope of what you can see in the table below.  Before, that
+    dropdown would be set to the user's home UO (say, BR1 in the example org
+    tree).  But you might have the permission to make changes everywhere, so
+    you add a proximity adjustment that affects BR3 in some way.  As soon as
+    you'd refresh the interface, your new proximity adjustment would not be
+    visible, because your scope selector would default to BR1.
+    
+    So now the dropdown defaults to the first context where you have the
+    permission, which in all but eccentric setups should be the highest OU
+    (and therefore broadest scope) where you have the permission.
+    
+    This could also improve other interfaces in the future.  Anything that
+    invokes openils.User.buildPermOrgSelector() can pass -1 as the third
+    parameter to get the new behavior.
+    
+    2) Change UNIQUE index at DB layer.
+    
+    This prevents the creation of rows that would give the hold targeter
+    conflicting directives.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+9	1	Open-ILS/src/sql/Pg/005.schema.actors.sql
+17	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.aoupa-unique-constraint.sql
+1	1	Open-ILS/src/templates/conify/global/config/org_unit_proximity_adjustment.tt2
+8	4	Open-ILS/web/js/dojo/openils/User.js
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.aoupa-unique-constraint.sql
+
+commit f5a9d766097b939cc64b3338d5153fb47503be4b
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Mon Mar 25 17:39:19 2013 -0400
+
+    Undo holding lib to SRE linkage (alt dist editor)
+    
+    Since the legacy record dropdown piggy-backs on the OPAC display, it
+    doesn't work in the alt interface (which has no clear OPAC context).
+    
+    Worse, this leads to a Javascript error on the first editor load for
+    the distribution list, preventing subsequent editors.
+    
+    A better fix will require more consideration, but for now, let's
+    revert to the unformatted display used in 2.3.
+    
+    Also, this commit removes an unnecessary conditional (it was always
+    true).
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+3	2	Open-ILS/src/templates/serial/subscription.tt2
+
+commit ece99f6dda0bded73c6449ff0f60c2cebaa4ed72
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Mar 22 10:40:59 2013 -0400
+
+    More authority fixed-field cleanup
+    
+    Even with the efforts by many to add and harmonize the authority fixed-field
+    setup, and maintain functionality, there were some missing bits.  This commit
+    should take care of those by realigning the remaining field names and allwowing
+    those fields to be saved properly.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	Open-ILS/web/js/dojo/MARC/FixedFields.js
+18	18	Open-ILS/xul/staff_client/server/cat/marcedit.xul
+
+commit 710b3409c23358b99fcc7f2ce4cec08c54132b83
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Mar 21 09:45:39 2013 -0400
+
+    MARC strip fields for Acquisitions
+    
+    Added MARC strip field group selector to acquisitions upload interface
+    in the same manner as the group selector for non-acq Vandelay
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+12	0	Open-ILS/src/templates/acq/common/vlagent.tt2
+52	1	Open-ILS/web/js/ui/default/acq/common/vlagent.js
+
+commit aebfcb20799b9893723aadee121d5b3f3f4b4c89
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Tue Mar 26 11:20:18 2013 -0400
+
+    LP#1160343: remove unused open-ils.circ settings
+    
+    The circ_modifier and billing_types lists in the
+    open-ils.circ section of opensrf.xml are no longer
+    used.  This commit removes them from the opensrf.xml
+    example config.  It also removes the method
+    open-ils.circ.billing_type.retrieve.all, which has
+    not be used by any other code once in-DB billing types
+    were introduced.
+    
+    Any external clients that used the method that was
+    removed should instead use
+    open-ils.circ.billing_type.ranged.retrieve.all.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+0	58	Open-ILS/examples/opensrf.xml.example
+0	10	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ.pm
+
+commit bfd6f7871e608b39bb40bd768ff4fff480ac1120
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Mar 20 16:42:10 2013 -0400
+
+    LP 1150458 DB upgrade stamping
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+39	0	Open-ILS/src/sql/Pg/upgrade/0784.schema.axis_authority_tags_refs_aggregate.sql
+0	39	Open-ILS/src/sql/Pg/upgrade/XXXX.function.axis_authority_tags_refs_aggregate
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0784.schema.axis_authority_tags_refs_aggregate.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.function.axis_authority_tags_refs_aggregate
+
+commit 3ea041743c82f3eb9961f6929c1fa37d1562180e
+Author: Steven Callender <stevecallender at esilibrary.com>
+Date:   Thu Mar 7 09:28:08 2013 -0500
+
+    Changed the way authority tags were being pulled to specifically use an aggregate array.
+    
+    There appears to have been a change in postgres at some point between 9.0 and 9.1
+    to the aggregate method. Because of this, postgres was not returning the proper
+    results when pulling tags for authorities. This change will force postgres to do
+    a proper aggregate array call and return the correct results.
+    
+    Signed-off-by: Steven Callender <stevecallender at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+21	19	Open-ILS/src/sql/Pg/011.schema.authority.sql
+39	0	Open-ILS/src/sql/Pg/upgrade/XXXX.function.axis_authority_tags_refs_aggregate
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.function.axis_authority_tags_refs_aggregate
+
+commit 2acd2b5c8172692376a02069c70b512b7a420053
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Mar 20 13:58:09 2013 -0400
+
+    DB upgrade script for 2.2.7
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+481	0	Open-ILS/src/sql/Pg/version-upgrade/2.2.6-2.2.7-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.2.6-2.2.7-upgrade-db.sql
+
+commit 419c32f59341b386dc8a9f1c115d2663f0a73c4d
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Mar 20 10:21:22 2013 -0400
+
+    2.3.4 -> 2.3.5 DB upgrade script
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+619	0	Open-ILS/src/sql/Pg/version-upgrade/2.3.4-2.3.5-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.3.4-2.3.5-upgrade-db.sql
+
+commit 25c39f65c4e2bdc33b795fcab1978bf7043afba9
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Mar 20 11:35:30 2013 -0400
+
+    Placeholder DB upgrade for 2.3.4
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+5	0	Open-ILS/src/sql/Pg/version-upgrade/2.3.3-2.3.4-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.3.3-2.3.4-upgrade-db.sql
+
+commit 1646b85e1f9d8dd4a27e8d2651b7372d1ec00dac
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Mar 20 11:35:17 2013 -0400
+
+    Placeholder DB upgrade for 2.2.6
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+5	0	Open-ILS/src/sql/Pg/version-upgrade/2.2.5-2.2.6-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.2.5-2.2.6-upgrade-db.sql
+
+commit 306e47e4d1a55dfaa8e45d97c9cf02b8ae30f69a
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Tue Mar 19 14:42:11 2013 -0400
+
+    TPAC - Syntax error breaks place-hold page
+    
+    A recently introduced <label> tag had a ' mismatched with a ", breaking
+    the pickup library selector on the TPAC place-hold interface.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+1	1	Open-ILS/src/templates/opac/parts/place_hold.tt2
+
+commit c0cfe99201c0b5b2d0aeb68db1b2e5189ab4b691
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Mar 15 19:53:34 2013 +0000
+
+    Updating POT files
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+36	13	build/i18n/po/acq.js/acq.js.pot
+9	3	build/i18n/po/circ.properties/circ.properties.pot
+23	3	build/i18n/po/conify.js/conify.js.pot
+737	727	build/i18n/po/db.seed/db.seed.pot
+2584	2493	build/i18n/po/fm_IDL.dtd/fm_IDL.dtd.pot
+11	11	build/i18n/po/ils_events.xml/ils_events.xml.pot
+144	13	build/i18n/po/lang.dtd/lang.dtd.pot
+1	1	build/i18n/po/multiclass_search_help.html/multiclass_search_help.html.pot
+5	1	build/i18n/po/offline.properties/offline.properties.pot
+6	2	build/i18n/po/patron.properties/patron.properties.pot
+14	2	build/i18n/po/serial.properties/serial.properties.pot
+187	154	build/i18n/po/tpac/tpac.pot
+
+commit 2ca2b9113ef08eb25e3b3c70ab713676c4d3192a
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Mar 15 15:14:05 2013 -0400
+
+    Translation updates!
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+4	4	build/i18n/po/common.properties/en-CA.po
+783	778	build/i18n/po/db.seed/cs-CZ.po
+787	782	build/i18n/po/db.seed/de-DE.po
+782	777	build/i18n/po/db.seed/en-CA.po
+782	777	build/i18n/po/db.seed/en-GB.po
+782	777	build/i18n/po/db.seed/es-ES.po
+784	779	build/i18n/po/db.seed/fi-FI.po
+784	779	build/i18n/po/db.seed/fr-CA.po
+785	780	build/i18n/po/db.seed/hy-AM.po
+782	777	build/i18n/po/db.seed/oc-FR.po
+783	778	build/i18n/po/db.seed/pt-BR.po
+783	778	build/i18n/po/db.seed/ru-RU.po
+782	777	build/i18n/po/db.seed/tr-TR.po
+2694	2451	build/i18n/po/fm_IDL.dtd/cs-CZ.po
+2678	2435	build/i18n/po/fm_IDL.dtd/de-DE.po
+2686	2443	build/i18n/po/fm_IDL.dtd/en-CA.po
+2683	2440	build/i18n/po/fm_IDL.dtd/en-GB.po
+2680	2437	build/i18n/po/fm_IDL.dtd/es-ES.po
+2685	2442	build/i18n/po/fm_IDL.dtd/fi-FI.po
+2678	2435	build/i18n/po/fm_IDL.dtd/fr-CA.po
+2686	2443	build/i18n/po/fm_IDL.dtd/hy-AM.po
+2678	2435	build/i18n/po/fm_IDL.dtd/oc-FR.po
+2682	2439	build/i18n/po/fm_IDL.dtd/pt-BR.po
+2682	2439	build/i18n/po/fm_IDL.dtd/ru-RU.po
+2678	2435	build/i18n/po/fm_IDL.dtd/tr-TR.po
+8	4	build/i18n/po/ils_events.xml/cs-CZ.po
+9	9	build/i18n/po/lang.dtd/cs-CZ.po
+5	5	build/i18n/po/offline.properties/cs-CZ.po
+6	3	build/i18n/po/opac.dtd/cs-CZ.po
+
+commit 2574510ab28528a7f382889c218d83cd6791985b
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Mar 15 14:47:19 2013 -0400
+
+    Bumping OpenILS.pm version number
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS.pm
+
+commit 58d4b4aaf372a51d4cccc9d9d5b37aa0281a9aab
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 3 15:08:51 2012 -0400
+
+    SIP re-login fetches correct auth session
+    
+    After a login session expires and the SIP server logs in again to
+    acquire a new authtoken, be sure to use the new authtoken when fetching
+    the new session object.  Otherwise, the login_session is left undef and
+    you may see errors like this when checking in items:
+    
+    Can't call method "ws_ou" on an undefined value at
+    /usr/local/share/perl/5.10.1/OpenILS/SIP/Transaction/Checkin.pm line 77.
+    
+    Incidentally, the checkin code is the only code that references
+    $sip_handler->{login_session}.  And the problem listed above only occurs
+    when the login session expires just prior to a checkin call.  In any
+    other scenario, the login_session would ultimately get repaired.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+3	1	Open-ILS/src/perlmods/lib/OpenILS/SIP.pm
+
+commit c63d3edba42b2dfcecc96a1c5bff5a0564978083
+Author: Melissa Lefebvre <mlefebvre at biblio.org>
+Date:   Mon Feb 25 10:42:15 2013 -0500
+
+    TPAC - Account preferences headings
+    
+    Currently, all tabs in My Account show a heading once clicked(Items Checked
+    Out shows "Current Items Checked Out" heading when clicked); however,
+    under the Account Preferences for a change of username, password, and
+    email address no headings appear.
+    
+    Div classes were added to update_password.tt2, update_username.tt2, and
+    update_email.tt2 for consistancy in the My Account area.
+    
+    Signed-off-by: Melissa Lefebvre <mlefebvre at biblio.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+4	0	Open-ILS/src/templates/opac/myopac/update_email.tt2
+4	0	Open-ILS/src/templates/opac/myopac/update_password.tt2
+4	0	Open-ILS/src/templates/opac/myopac/update_username.tt2
+
+commit a83df5852ae1cf48f6f7804e8d319b4767d2880e
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Fri Mar 15 11:35:25 2013 -0400
+
+    LP#1155496: fix typo
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/web/js/dojo/openils/acq/nls/acq.js
+
+commit ae43ac22569aa60a1f651a8d4ceb2118aa123fa3
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Fri Mar 15 13:18:45 2013 -0400
+
+    add typo fix back
+    
+    I missed this when I was resolving a merge confict
+    with the previous patch.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+1	1	Open-ILS/examples/apache/eg_startup.in
+
+commit cb9b77d3ec2d226ea64fcd357aa5f1f24c370d8f
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Fri Mar 15 13:07:28 2013 -0400
+
+    Fix some typos
+    
+    Except for the typo in staff client's multiclass_search_help.html,
+    the rest are in comments.
+    
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    
+    Conflicts:
+    
+    	Open-ILS/examples/apache/startup.pl
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm
+1	1	Open-ILS/web/js/ui/default/acq/financial/claim_voucher.js
+1	1	Open-ILS/xul/staff_client/chrome/content/util/print.js
+1	1	Open-ILS/xul/staff_client/server/locale/en-US/multiclass_search_help.html
+
+commit cfa27b748346feadaca2c901ea2f56ab8d95f663
+Author: Jeff Godin <jgodin at tadl.org>
+Date:   Thu Mar 14 14:15:28 2013 -0400
+
+    Fix detection of empty Syndetics AC data elements
+    
+    Due to a change in how the vendor responds to requests for data
+    elements which are not present for a requested title, we need to
+    change how we detect "empty" data elements in the "data_exists"
+    function.
+    
+    First, we check for the new "No Data Available" title element, then
+    we check for the previously-used value of "error".
+    
+    This change resolves the symptom where the catalog would display
+    tabs for "Author Notes", "Excerpt", "Table of Contents", on every
+    record in the catalog, even when clicking each tab would show that
+    the content was not present / available.
+    
+    Signed-off-by: Jeff Godin <jgodin at tadl.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/Syndetic.pm
+
+commit 35917a63499c38032ef680c18c438555c5f408f1
+Author: Michael Peters <mrpeters at library.in.gov>
+Date:   Wed Nov 14 12:06:38 2012 -0500
+
+    LP#1078222 - Add transparency to newtab2.PNG
+    
+    Some users noted that this image looked bad with white
+    background when changing to a different colored "welcome"
+    screen.
+    
+    This simply converts the icon to a transparent PNG file.
+    
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+-	-	Open-ILS/xul/staff_client/server/skin/media/images/portal/newtab2.PNG
+
+commit 79232f54739f371331a3d9e573cffc8621d23035
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Fri Jun 22 12:41:20 2012 -0400
+
+    fix typo preventing transit abort error dialogs
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+3	3	Open-ILS/xul/staff_client/server/circ/util.js
+
+commit 73d20e99018fd4361813595cd43c7bf28a108ae4
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Mon Nov 26 15:04:59 2012 -0500
+
+    Rename "Search Preferences" tab to "Search and History Preferences".
+    
+    This change better reflects the complete meaning of the preference tab.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+3	3	Open-ILS/src/templates/opac/parts/myopac/prefs_base.tt2
+
+commit 70669a7a6689ab9a5cfd3d2360e51941b7b16511
+Author: Ben Shum <bshum at biblio.org>
+Date:   Fri Feb 22 00:46:17 2013 -0500
+
+    LP1054322 - libparent-perl not needed for Ubuntu Precise
+    
+    The newer version of Perl 5.14 which comes with Ubuntu Precise already
+    contains the contents of libparent-perl, which is now an obsolete package.
+    
+    Remove this dependency from the extra debs installed for Debian and Ubuntu
+    but then add to the extras for Debian Squeeze and create a new extras just
+    for Ubuntu Lucid so that it continues to be installed on those systems and
+    not on Ubuntu Precise.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+9	2	Open-ILS/src/extras/Makefile.install
+
+commit 508a0af14474b1298aacc0f11323aa1d422fbb75
+Author: Ben Shum <bshum at biblio.org>
+Date:   Thu Mar 14 17:40:04 2013 -0400
+
+    LP1103068 - Show titles and authors for pre-cat items
+    
+    As noted in LP1103068, TPAC does not currently show anything when viewing a
+    pre-cataloged item in the my account summary of items checked out.
+    
+    If the call number is -1 (pre-cat), then show the dummy title and dummy author
+    values, which fields are hopefully relevant as long as staff were good to put
+    something meaningful in those during creation of the pre-cat.
+    
+    Also, wrap the title in a check for attrs.title.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Michael Peters <mpeters at emeralddata.net>
+
+7	1	Open-ILS/src/templates/opac/myopac/circs.tt2
+
+commit 9c1d4b6e77758b0dfc22526802c9fadb83a08fd0
+Author: Ben Shum <bshum at biblio.org>
+Date:   Fri Mar 15 01:04:06 2013 -0400
+
+    LP1116258 - Hide download circ history if none to be found
+    
+    As noted in LP1116258, if there is no circ history for a patron, but they
+    click on the Download CSV button, it leads them to unhappy server errors.
+    
+    So, hide the Download CSV button unless the number of circs > 0.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+
+2	0	Open-ILS/src/templates/opac/myopac/circ_history.tt2
+
+commit ef4000cce538a9b57a8492be4e741c5323795a60
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Thu Jan 10 12:27:30 2013 -0500
+
+    LP#791881: make it possible to save copy location translations
+    
+    TranslatorPopup requires that the i18n fieldmapper class be loaded.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/xul/staff_client/server/admin/copy_locations.xhtml
+
+commit aaf2d7f5f4ecd7dd36d5aee5ced23de78712ff62
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Mar 14 17:52:09 2013 -0400
+
+    TPAC: Address severe accessibility issues
+    
+    Using the Chrome Accessibility Dev Tools extension to run accessibility
+    audits against the TPAC turned up some "severe" issues, such as input
+    widgets lacking labels. In most cases the text for the labels was
+    present, but it needed to be associated with a <label> element. In some
+    other cases, it was easier to use the aria-label attribute to give the
+    widget an accessible label. Finally, we can use the placeholder
+    attribute where warranted as an accessible label.
+    
+    These changes address the first set of accessibility issues I came
+    across via the audits and could address quickly.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+10	9	Open-ILS/src/templates/opac/myopac/holds.tt2
+25	17	Open-ILS/src/templates/opac/myopac/prefs_notify.tt2
+21	19	Open-ILS/src/templates/opac/myopac/prefs_settings.tt2
+9	8	Open-ILS/src/templates/opac/parts/advanced/expert.tt2
+6	5	Open-ILS/src/templates/opac/parts/advanced/numeric.tt2
+2	1	Open-ILS/src/templates/opac/parts/coded_value_selector.tt2
+7	5	Open-ILS/src/templates/opac/parts/org_selector.tt2
+15	13	Open-ILS/src/templates/opac/parts/place_hold.tt2
+2	1	Open-ILS/src/templates/opac/parts/qtype_selector.tt2
+11	5	Open-ILS/src/templates/opac/parts/searchbar.tt2
+
+commit a37cbf27389e5ba9b6b25e0937b18e0cc178a216
+Author: Michael Peters <mpeters at emeralddata.net>
+Date:   Fri Mar 15 09:57:55 2013 -0400
+
+    Fix spelling error of "Successfully" in ils_events.xml
+    
+    LP#1155495 "card transaction was processed successfuly" is
+    spelled incorrectly.   This corrects that misspelling.
+    
+    Signed-off-by: Michael Peters <mpeters at emeralddata.net>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+1	1	Open-ILS/src/extras/ils_events.xml
+
+commit 9a0c4082cd699eedda6159335d72eb114d048d98
+Author: Michael Peters <mpeters at emeralddata.net>
+Date:   Fri Mar 15 09:47:26 2013 -0400
+
+    Use a consistent spelling of "Pickup" throughout the code
+    
+    LP#1155494 In myopac/holds.tt2 the text "PickUp Location" is
+    used, and everywhere else it's "Pickup Location".
+    Pick one spelling and stick to it.
+    
+    Signed-off-by: Michael Peters <mpeters at emeralddata.net>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+1	1	Open-ILS/src/templates/opac/myopac/holds.tt2
+
+commit 22b50dccc96b6977febea1e2877b6a945a3bbef0
+Author: Ben Shum <bshum at biblio.org>
+Date:   Fri Feb 22 00:03:58 2013 -0500
+
+    Enable dojo in TPAC if using newer Novelist API
+    
+    Enable dojo if the apache variable for Novelist URL is set. This avoids
+    issues such as needing to have dojo enabled via either AutoSuggest or
+    Google Books preview, which may not be enabled by every TPAC.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+4	0	Open-ILS/src/templates/opac/parts/header.tt2
+
+commit 376978e2f507b22521d3ae03251e141b7e579323
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Oct 11 16:09:12 2012 -0400
+
+    Support new-style Novelist for TPAC.
+    
+    Updates the Novelist loading script to use the newer Novelist API.
+    
+    Includes minor change to example/apache/eg_vhost.conf for environment
+    variables.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6	0	Open-ILS/examples/apache_24/eg_vhost.conf
+19	2	Open-ILS/src/templates/opac/parts/acjs.tt2
+3	16	Open-ILS/src/templates/opac/parts/record/awards.tt2
+
+commit 314b1a5dcb13a67cf146ea8b4c9c9722c57ce78b
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Mar 15 09:24:45 2013 -0400
+
+    LP 1155611 - prevent unnecessary load of fm_IDL.xml
+    
+    Ensure fm_IDL.xml is loaded only when IDL2js has not been loaded.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+4	1	Open-ILS/web/js/dojo/fieldmapper/IDL.js
+
+commit 64bdb45d4ca0047f8573fd0f7f643a0df7c5a706
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Mar 15 10:22:13 2013 -0400
+
+    Wrap upgrade script for use ID as TCN value fix
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+112	0	Open-ILS/src/sql/Pg/upgrade/0783.schema.enforce_use_id_for_tcn.sql
+0	98	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.enforce_use_id_for_tcn.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0783.schema.enforce_use_id_for_tcn.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.enforce_use_id_for_tcn.sql
+
+commit 7ea1d71af1711081196a8fd6a0a0f8e7877c8878
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Thu Mar 14 17:17:54 2013 -0400
+
+    LP#1155329: better enforce cat.bib.use_id_for_tcn
+    
+    Restore previous behavior to the maintain_901() trigger
+    function so that bib records that are loaded without
+    explicitly setting the TCN have it set to the bib ID
+    when the cat.bib.use_id_for_tcn global flag is set, rather
+    than 'AUTOGENERATED-xxx'.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	0	Open-ILS/src/sql/Pg/002.functions.config.sql
+98	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.enforce_use_id_for_tcn.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.enforce_use_id_for_tcn.sql
+
+commit 4dee803ca182714c7bfd9f3cc82b8976c48fea38
+Author: Pasi Kallinen <pasi.kallinen at pttk.fi>
+Date:   Thu Mar 14 11:21:01 2013 +0200
+
+    Allow translating one final untranslatable error message in checkout interface
+    
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/xul/staff_client/server/circ/checkout.js
+1	0	Open-ILS/xul/staff_client/server/locale/en-US/circ.properties
+
+commit d4f6bf89576e470f16214f5848b0782e4bec8573
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Jan 16 22:13:41 2013 -0500
+
+    Support Apache 2.4 configuration directives
+    
+    Apache 2.4 uses a different server-side include syntax, but we can
+    direct it to use the old syntax via the SSILegacySyntax directive.
+    
+    2.4 also uses different access control syntax: "Require all granted"
+    instead of "Allow from all", for example.
+    
+    Accordingly, create a parallel examples/apache_24 directory that
+    contains sample Apache configuration files suitable for Apache 2.4 and
+    higher.
+    
+    Also, amend the README to reflect Apache 2.4 and higher.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+147	0	Open-ILS/examples/apache_24/eg.conf
+725	0	Open-ILS/examples/apache_24/eg_vhost.conf
+22	8	docs/installation/server_installation.txt
+ create mode 100644 Open-ILS/examples/apache_24/eg.conf
+ create mode 100644 Open-ILS/examples/apache_24/eg_vhost.conf
+
+commit 67fe98a9185ace222fe8051519cb23e4b5e42fd0
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Sun Oct 7 23:14:27 2012 -0400
+
+    Add "Show Holds on Bib" menu items
+    
+    Add a "Show holds on bibs" option from item checkin, item status, and patron
+    hold interfaces. This makes it quicker to flip to viewing who else has holds
+    on an item instead of having to click an option to see the bib, then clicking
+    in the menus for view holds. One less click.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+8	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+9	0	Open-ILS/xul/staff_client/server/circ/checkin.js
+3	0	Open-ILS/xul/staff_client/server/circ/checkin_overlay.xul
+9	0	Open-ILS/xul/staff_client/server/circ/copy_status.js
+1	0	Open-ILS/xul/staff_client/server/circ/copy_status.xul
+4	0	Open-ILS/xul/staff_client/server/circ/copy_status_overlay.xul
+9	0	Open-ILS/xul/staff_client/server/circ/renew.js
+1	0	Open-ILS/xul/staff_client/server/circ/renew.xul
+2	0	Open-ILS/xul/staff_client/server/circ/renew_overlay.xul
+77	56	Open-ILS/xul/staff_client/server/patron/holds.js
+3	0	Open-ILS/xul/staff_client/server/patron/holds_overlay.xul
+7	0	docs/RELEASE_NOTES_NEXT/show_holds_on_bib.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/show_holds_on_bib.txt
+
+commit a19259c23927490ab9a052d9edcdbae395d27f7d
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Mar 14 08:37:55 2013 -0400
+
+    Repair ACQ nls file synax
+    
+    Remove trailing comma, which breaks the PO building process.  Thanks to
+    Pasi Kallinen for spotting this.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/web/js/dojo/openils/acq/nls/acq.js
+
+commit ae5293cab29214e5a0473cfe4683e5a8363641af
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Tue Dec 11 16:58:33 2012 -0500
+
+    Serials: printing routing slips fails with Javascript error
+    
+    The symptom (an error in the Javascript console about dijit.form.Button
+    and an empty page for routing slips that you try to print at batch
+    recieve) may or may not be affected by whether you're in a production
+    environment with the pre-built dojo 1.3.3 package installed or a
+    development environment without it.
+    
+    This simple fix makes the problem go away in any case.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	0	Open-ILS/web/js/ui/default/serial/print_routing_list_users.js
+
+commit 652ec745a14f3c337f89647d14739aa96f1726b3
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Mar 13 22:50:35 2013 -0400
+
+    Stamping upgrade for new general indexes
+    
+    Note: Changed the commands in the upgrade to CREATE INDEX CONCURRENTLY to be
+    in all caps to satisfy my own small sense of consistency.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+49	0	Open-ILS/src/sql/Pg/upgrade/0782.schema.general-indexing-needs.sql
+0	49	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.general-indexing-needs.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0782.schema.general-indexing-needs.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.general-indexing-needs.sql
+
+commit e29bac21efa46736919f501d938c65149b3b0fd5
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu Feb 28 13:28:20 2013 -0500
+
+    Observed speed increases through judicious indexing
+    
+    These indexes drove high-cost queries down into the noise
+    at several sites.  They are more applicable for larger
+    installations, where "larger" can be defined as either "lots
+    of data in the db" or "has used Evergreen for a long time".
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	0	Open-ILS/src/sql/Pg/005.schema.actors.sql
+1	0	Open-ILS/src/sql/Pg/040.schema.asset.sql
+3	0	Open-ILS/src/sql/Pg/090.schema.action.sql
+2	0	Open-ILS/src/sql/Pg/200.schema.acq.sql
+1	0	Open-ILS/src/sql/Pg/400.schema.action_trigger.sql
+49	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.general-indexing-needs.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.general-indexing-needs.sql
+
+commit 5a7aaa6e832342b99eadca6c73ef7fc8c9d48867
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Aug 1 11:12:36 2012 -0400
+
+    TPAC: Add config options to hide phone / user prefs
+    
+    Libraries using centralized authentication (such as LDAP via
+    open-ils.auth_proxy) will not want to allow users to change their
+    passwords or email addresses.
+    
+    In addition, many libraries do not want to deal with phone
+    notifications.
+    
+    This commit adds preferences to config.tt2 that hide these options from
+    the user.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+11	3	Open-ILS/src/templates/opac/myopac/prefs.tt2
+2	0	Open-ILS/src/templates/opac/myopac/prefs_notify.tt2
+16	0	Open-ILS/src/templates/opac/parts/config.tt2
+2	0	Open-ILS/src/templates/opac/parts/place_hold.tt2
+
+commit 408a4e4106b62c328c3b558d536810bd0c9b12f8
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Wed Mar 13 17:05:43 2013 -0400
+
+    Preserve serial interface context, if present
+    
+    If the new 'context' URL parameter is present, we need to make sure
+    it sticks around for a couple of the "deeper" views (streams and
+    items).
+    
+    Also, preserve the tab when coming out of said views in 'scv'
+    context.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+10	1	Open-ILS/web/js/ui/default/serial/list_item.js
+10	1	Open-ILS/web/js/ui/default/serial/list_stream.js
+14	2	Open-ILS/web/js/ui/default/serial/subscription.js
+
+commit 43bc9c66ada9f8c14d071f2991f7e7949b226962
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Wed Mar 13 16:35:20 2013 -0400
+
+    Translation file entries for serial note editors
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+4	1	Open-ILS/web/js/dojo/openils/serial/nls/serial.js
+
+commit fc949080686b869bf120709bb1476d3cf8c36b7a
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Tue Mar 12 14:03:44 2013 -0400
+
+    Release notes for Serial Control with embedded Alt. Interface
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+13	0	docs/RELEASE_NOTES_NEXT/serial_control_embedded_alt_interfaces.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/serial_control_embedded_alt_interfaces.txt
+
+commit 0f6caa757861945f4ced5bb95608aabffed9316b
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Fri Mar 8 17:55:52 2013 -0500
+
+    Move serials interfaces closer together
+    
+    Back in (I believe) 2.2, we brought the dijit issuance editor into the
+    serial control interface with two goals: having less code in more places,
+    and easing the transition to an eventual unified interface which would
+    likely be more widget-based.
+    
+    That experiment was well received, so this commit takes things a large
+    step further in that direction.  Basically, we are embedding the
+    alternate subscription editing interface into the serial control
+    scaffolding, which ultimately amounts to giving you some of the
+    benefits of both.  You get the more modern and maintainable code from
+    the alternate interfaces, but keep the context-awareness and familiar
+    navigation of the non-alternate serial control.
+    
+    That said, this change is not meant to be the last word in serials,
+    but rather a way to at least come closer together while we still
+    continue to learn what structures provide the best experience.
+    
+    Finally, some feature additions were necessary to the alternate serials
+    code in order to make this change as seamless as possible.  In some
+    cases, the new feature only works in the embedded version, but a new
+    'context' variable makes that simple to adjust as we move forward.
+    Changes include:
+      - note editors on subscriptions and distributions
+      - labeled dropdown for distribution summary options
+      - and legacy record entry linkages
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+78	0	Open-ILS/src/templates/serial/subscription.tt2
+6	4	Open-ILS/src/templates/serial/subscription/distribution.tt2
+2	0	Open-ILS/src/templates/serial/subscription/issuance.tt2
+72	10	Open-ILS/web/js/ui/default/serial/subscription.js
+60	0	Open-ILS/web/js/ui/default/serial/subscription/distribution.js
+13	5	Open-ILS/xul/staff_client/server/serial/manage_subs.js
+3	24	Open-ILS/xul/staff_client/server/serial/ssub_editor.xul
+ create mode 100644 Open-ILS/web/js/ui/default/serial/subscription/distribution.js
+
+commit 3e9df23281892408c62fd610dfa124385eba2685
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Mar 13 16:47:11 2013 -0400
+
+    Numering upgrade scripts related to acq batch update
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+0	216	Open-ILS/src/sql/Pg/upgrade/0779.schema.acq.distribution_formula.expansion.sql
+216	0	Open-ILS/src/sql/Pg/upgrade/0780.schema.acq.distribution_formula.expansion.sql
+25	0	Open-ILS/src/sql/Pg/upgrade/0781.data.acq.distribution_formula.expansion.sql
+0	25	Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq.distribution_formula.expansion.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/0779.schema.acq.distribution_formula.expansion.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0780.schema.acq.distribution_formula.expansion.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0781.data.acq.distribution_formula.expansion.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq.distribution_formula.expansion.sql
+
+commit d959739a1f613e55d0f7cccd33daa86486d609af
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Mar 8 13:23:06 2013 -0500
+
+    Distribution formula fund rollover setting
+    
+    Adds an org unit setting (acq.fund.rollover_distrib_forms) which
+    controls whether the fund value on distribution formulae is updated to
+    use the newly created fund during fiscal year rollover.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+16	1	Open-ILS/src/sql/Pg/200.schema.acq.sql
+20	0	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+206	0	Open-ILS/src/sql/Pg/upgrade/0779.schema.acq.distribution_formula.expansion.sql
+25	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq.distribution_formula.expansion.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq.distribution_formula.expansion.sql
+
+commit f4d33b5a0054e30faf8a95a73c1359353dde4023
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Mar 13 16:16:50 2013 -0400
+
+    LP 1154150 : repair formula entry retrieval
+    
+    Repair code thinkos in distribution formula entry fleshing call /
+    traversal.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+15	7	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Lineitem/BatchUpdate.pm
+
+commit 5650ad93e94f2a58fbc5fd9b9f6249c364bb586c
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Mar 13 16:04:11 2013 -0400
+
+    LP 1154150 DB upgrade stamping
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+10	0	Open-ILS/src/sql/Pg/upgrade/0779.schema.acq.distribution_formula.expansion.sql
+0	10	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq.distribution_formula.expansion.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0779.schema.acq.distribution_formula.expansion.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq.distribution_formula.expansion.sql
+
+commit f09abe0bc615e79c2fca2afe6a97dba3e41df9e8
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Fri Mar 8 14:10:12 2013 -0500
+
+    Acq: Line item batch update UI
+    
+    This UI enhancement uses the API method in the previous commit to allow
+    users to apply changes to the copies on a selected set of line items.
+    
+    When successful, the updater just reloads the whole page, but it can be
+    made smarter later, i.e. by refreshing only the affected line items rows
+    in the display.
+    
+    The UI only appears on POs for now, and is partly disabled if the PO has
+    already been activated.  It could appear elsewhere if it seems sensible
+    to put it elsewhere.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	Open-ILS/examples/fm_IDL.xml
+106	66	Open-ILS/src/templates/acq/common/li_table.tt2
+4	0	Open-ILS/web/css/skin/default/acq.css
+4	2	Open-ILS/web/js/dojo/openils/acq/nls/acq.js
+168	16	Open-ILS/web/js/ui/default/acq/common/li_table.js
+2	0	Open-ILS/web/js/ui/default/acq/po/view_po.js
+33	0	docs/RELEASE_NOTES_NEXT/acq-interface-improvements.txt
+0	23	docs/RELEASE_NOTES_NEXT/acq_po_interface_improvements.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/acq-interface-improvements.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/acq_po_interface_improvements.txt
+
+commit 8780429c3a92e7c89ed4cb37527444104558c641
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Tue Feb 12 14:40:27 2013 -0500
+
+    Acq: Line item batch update API method
+    
+    This new method gives you a server-side way to make batch updates to
+    all the copies of a target set of lineitems.  Permissions are checked
+    for each target object.  The method returns OpenILS::Event instances
+    for all kinds of permission problems and other errors.  IDs of lineitems
+    affected are streamed back to the client in the successful case.
+    
+    This also expands distribution formulae to contain more (optional)
+    fields so that they can be used to make updates to copies on all the
+    same fields that you can just specify individually.  IDL and interface
+    changes to support the new fields are included.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+5	0	Open-ILS/examples/fm_IDL.xml
+1	1	Open-ILS/src/extras/ils_events.xml
+1	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Lineitem.pm
+457	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Lineitem/BatchUpdate.pm
+3	0	Open-ILS/src/sql/Pg/200.schema.acq.sql
+10	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq.distribution_formula.expansion.sql
+9	3	Open-ILS/src/templates/conify/global/acq/distribution_formula.tt2
+36	2	Open-ILS/web/js/ui/default/conify/global/acq/distribution_formula.js
+ create mode 100644 Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Lineitem/BatchUpdate.pm
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq.distribution_formula.expansion.sql
+
+commit 0d8f90b156fd5988a1f434911a971287472211d3
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Mar 13 16:39:15 2013 -0400
+
+    Stamping upgrade scripts for MARC import tag stripping
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+43	0	Open-ILS/src/sql/Pg/upgrade/0779.schema.strip-marc-tags.sql
+0	41	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.strip-marc-tags.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0779.schema.strip-marc-tags.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.strip-marc-tags.sql
+
+commit 3d078db8b15becc75dcd07c6720756b720afa107
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Mar 4 13:26:28 2013 -0500
+
+    Import bib trash fields : release notes
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+28	0	docs/RELEASE_NOTES_NEXT/marc-import-tag-stripping.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/marc-import-tag-stripping.txt
+
+commit 3335c54783c03cb6e6e31d26e79f22cd4adb0e0c
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Mar 4 10:48:12 2013 -0500
+
+    Import bib trash fields : XUL Z39.50 UI
+    
+    In the Z39.50 staff search interface, staff may now select from optional
+    MARC trash field groups (within the org unit range) to be applied to
+    incoming Z39.50 records.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+75	5	Open-ILS/xul/staff_client/server/cat/z3950.js
+4	0	Open-ILS/xul/staff_client/server/cat/z3950.xul
+
+commit d53538e7a19e4c3ae9265ac6a9ee32a1f8d89ec7
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Mar 1 14:55:15 2013 -0500
+
+    Import bib trash field Vandelay UI
+    
+    During bib record import, if any optional MARC trash field groups exist
+    (in the org unit range), a new multi-select option is displayed allowing
+    the user to specify which trash field groups should be applied to the
+    current record import/merge/overlay.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+13	0	Open-ILS/src/templates/vandelay/inc/queue.tt2
+9	0	Open-ILS/src/templates/vandelay/inc/upload.tt2
+84	9	Open-ILS/web/js/ui/default/vandelay/vandelay.js
+
+commit 0589eb32f6a6f0b933c5df45c55ce47113b336fd
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Mar 1 11:01:08 2013 -0500
+
+    Import bib trash field group admin UI
+    
+    Staff client admin UI for managing MARC import trash fields.
+    
+    Admin => Server Admin => MARC Import Remove Fields
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+104	0	Open-ILS/src/templates/conify/global/vandelay/import_bib_trash_group.tt2
+32	0	Open-ILS/web/js/ui/default/conify/global/vandelay/import_bib_trash_group.js
+1	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+4	0	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+4	0	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
+ create mode 100644 Open-ILS/src/templates/conify/global/vandelay/import_bib_trash_group.tt2
+ create mode 100644 Open-ILS/web/js/ui/default/conify/global/vandelay/import_bib_trash_group.js
+
+commit 79c30654fe76409c63db43d3a72ac0216e5e0f58
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Feb 28 15:43:08 2013 -0500
+
+    Strip configured fields during import/overlay II
+    
+    Support on-demand and always-apply strip groups.  Move stripping out to
+    shared util function.
+    
+    Specifically, this adds support for optional strip-groups to these APIs:
+    
+    open-ils.cat.biblio.record.xml.create
+    open-ils.cat.biblio.record.marc.replace
+    open-ils.cat.biblio.record.xml.import
+    open-ils.vandelay.bib_record.list.import
+    open-ils.vandelay.bib_queue.import
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+38	0	Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm
+6	11	Open-ILS/src/perlmods/lib/OpenILS/Application/Cat.pm
+7	28	Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/BibCommon.pm
+14	18	Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm
+
+commit f3b354dfcb048c8d68543699fc8ac6a25e1c8e04
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Feb 18 11:33:59 2013 -0500
+
+    Strip configured fields during import/overlay
+    
+    Records coming in from the staff client may contain junk tags, and
+    we have a mechanism (not yet exposed) for defining such junk tags
+    in an inheritable way.  This applies said junk-tag removal based on
+    said configuration.  The configuration interface is yet to come.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+5	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Cat.pm
+24	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/BibCommon.pm
+19	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm
+
+commit d4e881c77ab98065eaf40b523d0539edba28235f
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Feb 27 15:32:56 2013 -0500
+
+    MARC import tag stripping : SQL / IDL
+    
+    * Adds a new table vandelay.import_bib_trash_group for grouping "trash"
+      fields.  Groups may be optional or "always_apply".  Always-apply groups
+      contain MARC fields which are to be unconditionally removed during
+      import.
+    
+    * Updates vandelay.import_bib_trash_fields for putting them into groups.
+    
+    * IDL changes to accommodate the above
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+35	1	Open-ILS/examples/fm_IDL.xml
+12	4	Open-ILS/src/sql/Pg/012.schema.vandelay.sql
+41	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.strip-marc-tags.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.strip-marc-tags.sql
+
+commit 3ad39d5e661cf84001a2013a3a2f395e878fab71
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Mar 8 13:21:23 2013 -0500
+
+    MARC21 feed support
+    
+    Now you can get MARC21 feeds from OpenSearch, e.g.
+    http://<host>/opac/extras/opensearch/1.1/-/marc21?searchTerms=piano
+    
+    with the Concerto dataset.
+    
+    [LFW] Syntax corrections, utf-8 encoding, release note
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+5	3	Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm
+11	5	Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm
+28	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat/Feed.pm
+8	0	docs/RELEASE_NOTES_NEXT/marc21-feeds.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/marc21-feeds.txt
+
+commit f6ac572987d68c443e16998aeb633990c37e389b
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Mar 13 10:43:40 2013 -0400
+
+    Acq: two tweaks to UI improvements in previous commit
+    
+    Suggested by Bill Erickson:
+      * Prevent interface locking up with the Mark Received/Unreceived
+        actions when nothing is selected
+      * Make new lineitem batch receive/rollback API methods actually stream
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+2	1	Open-ILS/web/js/dojo/openils/acq/nls/acq.js
+12	1	Open-ILS/web/js/ui/default/acq/common/li_table.js
+
+commit 76d2e15b02e8c65659408e82c3ddfe7744ca24cc
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Tue Feb 26 14:28:40 2013 -0500
+
+    Acq: several interface improvements
+    
+    Several usability improvements throughout Acq, including:
+    
+      * A logical re-ordering of the main "actions" dropdown in several Acq
+        interfaces (selection lists, purchase orders, acq search results, MARC
+        federated search interface, etc).
+      * "Actions" dropdown also has its options enabled/disabled depending what
+        interface you're seeing it through, and redundant entries are
+        removed from the per-lineitem secondary dropdown.
+      * Add to Purchase Order dialog added to "actions" dropdown
+      * Middle layer support for adding many line items to a PO at once
+      * Create/add to Purchase Order operations can no longer steal line
+        items from current POs
+      * Create invoice from / link to invoice now work in new tab
+      * Receive/unreceive now by selected lineitem instead of whole PO
+      * Claim policy application works more simply now
+      * Invoices interface auto-populates "# Invoiced" column with number of
+        invoicable copies, and copies the "billed cost" column to the
+        "amount paid" column if the latter doesn't have anything in it yet.
+      * You can now only cancel specific lineitems when they're actually on
+        a PO and have the state of 'on-order'.
+      * Avoid double-activation of POs at UI level
+      * Disable invoice and cancel options for whole pending POs
+      * Disable zero-copy checkbox for activated POs
+      * Disable new misc charges (acq.invoice_item) for activated POs
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	Open-ILS/examples/fm_IDL.xml
+149	20	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+57	0	Open-ILS/src/templates/acq/common/add_to_po.tt2
+39	31	Open-ILS/src/templates/acq/common/li_table.tt2
+1	1	Open-ILS/src/templates/acq/invoice/receive.tt2
+4	4	Open-ILS/src/templates/acq/invoice/view.tt2
+2	13	Open-ILS/src/templates/acq/lineitem/related.tt2
+1	1	Open-ILS/src/templates/acq/po/item_table.tt2
+4	4	Open-ILS/src/templates/acq/po/view.tt2
+1	1	Open-ILS/src/templates/conify/global/acq/distribution_formula.tt2
+1	1	Open-ILS/src/templates/conify/global/acq/provider.tt2
+2	0	Open-ILS/web/css/skin/default/acq.css
+3	1	Open-ILS/web/js/dojo/openils/acq/nls/acq.js
+12	1	Open-ILS/web/js/ui/default/acq/common/inv_dialog.js
+107	91	Open-ILS/web/js/ui/default/acq/common/li_table.js
+24	3	Open-ILS/web/js/ui/default/acq/invoice/view.js
+8	37	Open-ILS/web/js/ui/default/acq/lineitem/related.js
+1	0	Open-ILS/web/js/ui/default/acq/picklist/bib_search.js
+3	0	Open-ILS/web/js/ui/default/acq/picklist/from_bib.js
+2	0	Open-ILS/web/js/ui/default/acq/picklist/view.js
+1	0	Open-ILS/web/js/ui/default/acq/po/search.js
+43	15	Open-ILS/web/js/ui/default/acq/po/view_po.js
+4	1	Open-ILS/web/js/ui/default/acq/search/unified.js
+23	0	docs/RELEASE_NOTES_NEXT/acq_po_interface_improvements.txt
+ create mode 100644 Open-ILS/src/templates/acq/common/add_to_po.tt2
+ create mode 100644 docs/RELEASE_NOTES_NEXT/acq_po_interface_improvements.txt
+
+commit 78b93b1e79d4139b2aefd52ab827dc37ed3133e8
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Mon Mar 11 15:27:30 2013 -0400
+
+    skip xulG.get_barcode if no barcode completion
+    
+    For Check In and Check Out interfaces, skip the xulG.get_barcode call if there
+    are no active Barcode Completion entries (under Admin->Local Administration->
+    Barcode Completion) at the time of the staff client login sequence.
+    
+    However, for Check Out, an exception is made if the "Load patron from Checkout"
+    library setting is in effect, since that functionality depends on
+    xulG.get_barcode.
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+21	0	Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js
+1	0	Open-ILS/xul/staff_client/chrome/content/main/constants.js
+9	7	Open-ILS/xul/staff_client/server/circ/checkin.js
+25	19	Open-ILS/xul/staff_client/server/circ/checkout.js
+
+commit 2e1e118a0342df3145b33b5f77d4f702e7272a39
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Mar 12 09:08:14 2013 -0400
+
+    ACQ inline copy display UI repairs
+    
+    * Callnumber => Call Number
+    
+    * Replace the potentially vague "✓ Expand" link with the more explicit
+      "Expand All"
+    
+    Thanks to kmlussier for the suggestions.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2	2	Open-ILS/src/templates/acq/common/li_table.tt2
+
+commit ccb8bdd010107ed52bb5d693dc4f42361f056470
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Jan 16 17:13:50 2013 -0500
+
+    ACQ PO inline details view
+    
+    Adds a new 'expand' lineitem option which produces a table inline below
+    the lineitem title, author, etc. containing copy information.  Each copy
+    linked to the lineitem is represented as a row in the table with owning
+    lib, copy location, fund, barcode, callnumber, and notes.  An option to
+    expand/collapse all is also present.
+    
+    Release notes included.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+41	0	Open-ILS/src/templates/acq/common/li_table.tt2
+14	0	Open-ILS/web/css/skin/default/acq.css
+154	1	Open-ILS/web/js/ui/default/acq/common/li_table.js
+12	0	docs/RELEASE_NOTES_NEXT/acq_po_detail_view.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/acq_po_detail_view.txt
+
+commit b11da34c3d94b25f2a3c5877849e9484d48c6a84
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Mar 13 15:09:31 2013 -0400
+
+    Upgrade script numbering for acq order indentifier selector
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+30	0	Open-ILS/src/sql/Pg/upgrade/0776.schema.acq-order-ident.sql
+374	0	Open-ILS/src/sql/Pg/upgrade/0777.data.acq-order-ident.sql
+105	0	Open-ILS/src/sql/Pg/upgrade/0778.schema.acq-multi-attrs.sql
+0	373	Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq-order-ident.sql
+0	29	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq-order-ident.sql
+0	104	Open-ILS/src/sql/Pg/upgrade/YYYY.schema.acq-multi-attrs.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0776.schema.acq-order-ident.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0777.data.acq-order-ident.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0778.schema.acq-multi-attrs.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq-order-ident.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq-order-ident.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/YYYY.schema.acq-multi-attrs.sql
+
+commit f1d923a0a492dace4b134ab5529af6bd19e27d0a
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Jan 23 15:10:42 2013 -0500
+
+    Teach ACQ EDI and print PO templates about order identifiers
+    
+    Update both templates to look for the preferred order identiier value
+    instead of the first reasonable it can find.
+    
+    ISSN identifiers are now correctly encoded in the EDI as well.
+    
+    [LFW] Fix permission numbering flub.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+30	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm
+24	14	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+373	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq-order-ident.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq-order-ident.sql
+
+commit 51c1ea70a1b4ffb9ae6253c466c7d6ec792ac8d6
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Mar 11 17:01:31 2013 -0400
+
+    ACQ order identifier release notes
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+22	0	docs/RELEASE_NOTES_NEXT/acq_lineitem_order_ident.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/acq_lineitem_order_ident.txt
+
+commit 80f7e135f610d4bad2df72c25d785e3d364b7fe8
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Jan 18 12:27:28 2013 -0500
+
+    ACQ order identifier UI
+    
+    In the lineitem table show the set of possible order identifier types
+    and values.  The user may enter new values when necessary.  When changes
+    are applied, the selected order identifier is applied to each lineitem.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+24	1	Open-ILS/src/templates/acq/common/li_table.tt2
+220	0	Open-ILS/web/js/ui/default/acq/common/li_table.js
+5	2	Open-ILS/web/js/ui/default/acq/picklist/view.js
+6	0	Open-ILS/web/js/ui/default/acq/po/view_po.js
+
+commit 0008979452c1f80ff31bb286043423270e9a8030
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Jan 21 14:51:48 2013 -0500
+
+    ACQ API for setting the lineitem order identifier
+    
+    API: open-ils.acq.lineitem.order_identifier.set
+    
+    Given an existing lineitem_attr (typically a marc_attr), this will
+    create a matching local_attr to store the name and value and mark
+    the attr as the order_ident.  Any existing local_attr marked as
+    order_ident is removed.  When necessary, the value (isbn, issn, upc) is
+    added to the record first to create the marc attribute.  If the lineitem
+    is linked to a bib record and the user has the correct permissions, any
+    new data will also be applied to the bib record.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+187	4	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+
+commit 78c557188c0da4dd93be367d95c4f02d36a68394
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Jan 18 12:27:20 2013 -0500
+
+    ACQ lineitem order identifier SQL/IDL
+    
+    New 'order_ident' column on acq.lineitem_attr to represent which
+    attribute should be considered the order identifier for the item.
+    
+    New permission ACQ_SET_LINEITEM_IDENTIFIER allowing staff to apply
+    lineitem identifiers.
+    
+    New permission ACQ_ADD_LINEITEM_IDENTIFIER is added for allowing staff
+    to update linked bib records when a order identifier is added to a
+    lineitem.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2	0	Open-ILS/examples/fm_IDL.xml
+2	1	Open-ILS/src/sql/Pg/200.schema.acq.sql
+5	1	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+29	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq-order-ident.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq-order-ident.sql
+
+commit 4ea5b3860bcc8cca6c477f42d8634760500de63d
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Jan 22 14:35:22 2013 -0500
+
+    Extract multiple like values from lineitem
+    
+    Make it possible to extract multiple values with the same MARC tag
+    during acquisitions lineitem ingest.  Prior to this, only one (e.g.)
+    ISBN for each record would be extracted as a lineitem attribute.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+23	0	Open-ILS/src/sql/Pg/002.functions.config.sql
+22	10	Open-ILS/src/sql/Pg/200.schema.acq.sql
+104	0	Open-ILS/src/sql/Pg/upgrade/YYYY.schema.acq-multi-attrs.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/YYYY.schema.acq-multi-attrs.sql
+
+commit aabc8ae3040d1b70369c865597c6f473afd70450
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Mar 13 14:52:16 2013 -0400
+
+    Stamping upgrade scripts for Z-source attr DELETE cascade (and repairing previous upgrade script id)
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+1	1	Open-ILS/src/sql/Pg/upgrade/0774.schema.z3950_credentials.sql
+15	0	Open-ILS/src/sql/Pg/upgrade/0775.schema.config_z3950_source_attr_cascade_delete.sql
+0	15	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.config_z3950_source_attr_cascade_delete.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0775.schema.config_z3950_source_attr_cascade_delete.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.config_z3950_source_attr_cascade_delete.sql
+
+commit 4454d116436ae9ed9e22cd3d127684cbc4ed2272
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Mar 13 14:26:48 2013 -0400
+
+    LP 849008 : Cascade delete Z39.50 attributes
+    
+    Force deletion of Z39.50 attributes within the database when the Z39.50
+    source to which the attributes refer is deleted.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+15	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.config_z3950_source_attr_cascade_delete.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.config_z3950_source_attr_cascade_delete.sql
+
+commit b973f1bb2006c06756ff75436ac2f3ab5986caf1
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Mar 13 14:47:16 2013 -0400
+
+    Stamping upgrade scripts for "Storing Z39.50 Passwords on the server"
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+62	0	Open-ILS/src/sql/Pg/upgrade/0774.schema.z3950_credentials.sql
+0	60	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.z3950_credentials.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0774.schema.z3950_credentials.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.z3950_credentials.sql
+
+commit 6f3ffe31008bcb73c10bde3894913d2ff55027a9
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Mar 13 14:45:22 2013 -0400
+
+    Add CASCADE and DEFERRABLE clauses to fkey
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+1	1	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.z3950_credentials.sql
+
+commit 19aa7ef17714cdf9c07b23ec90ac81c5ba6453d4
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Feb 27 13:08:07 2013 -0500
+
+    Z39.50 stored credentials
+    
+    * New non-IDL-accessible DB table for storing credentials
+    * API for applying credentials
+    * Additions to the Z39.50 configuration UI for applying and clearing
+      credentials.
+    * At Z39.50 search time, if no creds are provided by the caller, but
+      creds are configured in the database, creds from the DB are used to
+      make the Z39 search call.
+    * Release notes included
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	0	Open-ILS/examples/opensrf_core.xml.example
+52	6	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Z3950.pm
+9	0	Open-ILS/src/sql/Pg/002.schema.config.sql
+2	0	Open-ILS/src/sql/Pg/800.fkeys.sql
+48	0	Open-ILS/src/sql/Pg/999.functions.global.sql
+60	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.z3950_credentials.sql
+24	1	Open-ILS/src/templates/conify/global/config/z3950_source.tt2
+27	0	Open-ILS/web/js/ui/default/conify/global/config/z3950_source.js
+13	0	docs/RELEASE_NOTES_NEXT/z39_source_credentials.txt
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.z3950_credentials.sql
+ create mode 100644 docs/RELEASE_NOTES_NEXT/z39_source_credentials.txt
+
+commit e0623504fb0466ea4c121df3d124e082cb13762f
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Apr 25 11:55:42 2012 -0400
+
+    Default and force patrons to TPac
+    
+    May be incomplete, but better than nothing.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+45	1	Open-ILS/examples/apache/eg_vhost.conf.in
+
+commit f483d430ad87ddacce775322b48284087cd62ac1
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Mon Sep 17 10:02:13 2012 -0400
+
+    Disable JSPac in staff client
+    
+    This includes removing the toggle option for TPac usage.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+0	3	Open-ILS/web/opac/locale/en-US/lang.dtd
+2	9	Open-ILS/xul/staff_client/chrome/content/cat/opac.js
+5	21	Open-ILS/xul/staff_client/chrome/content/main/constants.js
+0	3	Open-ILS/xul/staff_client/defaults/preferences/prefs.js
+0	27	Open-ILS/xul/staff_client/server/index.xhtml
+
+commit ba4d0aeadbaab20763d665e2c8c1ad0c76be5256
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Mar 13 13:33:05 2013 -0400
+
+    LP 1134829 - stamping upgrade script
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+12	0	Open-ILS/src/sql/Pg/upgrade/0773.data.authority_thesaurus_update.sql
+0	12	Open-ILS/src/sql/Pg/upgrade/xxxx.data.authority_thesaurus_update.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0773.data.authority_thesaurus_update.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/xxxx.data.authority_thesaurus_update.sql
+
+commit 7c1cb9a04b4b9b9ff8d372126daf587b28142f95
+Author: Steven Callender <stevecallender at esilibrary.com>
+Date:   Wed Feb 27 16:42:18 2013 -0500
+
+    Added a second no attempt to code to the authority thesaurus for spaces.
+    
+    Signed-off-by: Steven Callender <stevecallender at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2	1	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+12	0	Open-ILS/src/sql/Pg/upgrade/xxxx.data.authority_thesaurus_update.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/xxxx.data.authority_thesaurus_update.sql
+
+commit d54eed44b4bd4db503c8dd032dfe5c3559dc441a
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Dec 26 10:29:30 2012 -0500
+
+    Return calculated value for SIP recall_ok test
+    
+    Determine the value for the "recall OK" testing for patron information
+    requests the same we we determine the value for ciruclations and holds.
+    Previously, the recall-OK test always returned false, presumably since
+    recalls are not currently supported in Evergreen SIP.
+    
+    Note that like holds and circs, we determine whether a user has good
+    standing based on the users penalties and whether the user is active /
+    non-barred.  Though we could in some cases, we are not checking whether
+    the user has the required permission to perform specific tasks.
+    
+    This feature is enabled via a new oils_sip.xml configuration option:
+    
+    <option name='patron_calculate_recal_ok' value='true' />
+    
+    This option is disabled by default.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+7	0	Open-ILS/examples/oils_sip.xml.example
+2	0	Open-ILS/src/perlmods/lib/OpenILS/SIP/Patron.pm
+
+commit e99fda5591a608b85276c221302ce1c416093259
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Mar 13 13:08:42 2013 -0400
+
+    Stamping upgrade script for #deleted modifier support
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+187	0	Open-ILS/src/sql/Pg/upgrade/0772.schema.search-deleted.sql
+0	187	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.search-deleted.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0772.schema.search-deleted.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.search-deleted.sql
+
+commit 2faa568ac6dd2ae0c21c75515fc2c48f79704508
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Mar 8 14:26:17 2013 -0500
+
+    QP search modifier '#deleted'
+    
+    These tweaks involve an internal flag that's off by default. If you
+    want '#deleted', you'll have to turn it on explicitly at your site (and
+    reingest existing records) to get the functionality. If you don't need
+    '#deleted', you may prefer to leave the setting off so that your system
+    will be purged (as before) of useless (to you) metarecord mappings
+    taking up room in the database for deleted bibs.
+    
+    [LFW] upgrade script; commit message; release note
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+21	6	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+1	0	Open-ILS/src/sql/Pg/002.schema.config.sql
+10	2	Open-ILS/src/sql/Pg/030.schema.metabib.sql
+6	1	Open-ILS/src/sql/Pg/800.fkeys.sql
+187	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.search-deleted.sql
+11	0	docs/RELEASE_NOTES_NEXT/search-deleted.txt
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.search-deleted.sql
+ create mode 100644 docs/RELEASE_NOTES_NEXT/search-deleted.txt
+
+commit f749f0bc16585a481e246b0326a8c22d97288e27
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Mar 13 12:52:45 2013 -0400
+
+    Stamping upgrade script for user-barred A/T hooks
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+46	0	Open-ILS/src/sql/Pg/upgrade/0771.data.user_barred_hook.sql
+0	44	Open-ILS/src/sql/Pg/upgrade/XXXX.data.user_barred_hook.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0771.data.user_barred_hook.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.user_barred_hook.sql
+
+commit 094172bec1a395eb747f62ca1777393932ecfaba
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Dec 20 16:38:16 2012 -0500
+
+    A/T aggregator --granularity option
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+27	2	Open-ILS/src/support-scripts/action_trigger_aggregator.pl
+ mode change 100644 => 100755 Open-ILS/src/support-scripts/action_trigger_aggregator.pl
+
+commit 1bebc3203acb4b2d481c7c30f8b089a5f2d680f4
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Dec 11 12:09:42 2012 -0500
+
+    Batch CSV notifications release notes
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+78	0	docs/RELEASE_NOTES_NEXT/notify_csv.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/notify_csv.txt
+
+commit af56c5c5cf0fde61544175edbf901b5313498ea2
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Dec 11 12:07:37 2012 -0500
+
+    Script to collect CSV notification status responses
+    
+    For 3rd-party services which provide batch notifications status updates
+    via CSV file.  The script assumes the action/trigger event definition ID
+    is included in the response and, from there, applyes the "status" value
+    to the async_output of the event definition in question.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+198	0	Open-ILS/src/support-scripts/csv_notify_fetcher.pl
+ create mode 100755 Open-ILS/src/support-scripts/csv_notify_fetcher.pl
+
+commit 9ba7516ab4195b940e9d1eb49d51133082770b93
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Jan 10 12:25:09 2013 -0500
+
+    Support FTP/SCP delete operation in RemoteAccount
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+37	3	Open-ILS/src/perlmods/lib/OpenILS/Utils/RemoteAccount.pm
+
+commit 19a144fb990564f8278ca7640c7abc91767f464c
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Dec 11 12:03:27 2012 -0500
+
+    Action/Trigger template output aggregator
+    
+    Script to collect template output data from action-trigger events,
+    potentially spanning multiple event definitions, and stitching the
+    output together into a single file / output.  The file may then be
+    delivered to a 3rd party via sFTP/SCP using config.remote_account.
+    
+    The primary use case of the script is for aggregating CSV, XML, etc.
+    output to deliver to a 3rd party for notification purposes (e.g. phone,
+    print notices).  This is useful because a) no one event definition can
+    cover all notification types and b) template output files can become too
+    large to practically store in the DB and deliver to/from opensrf
+    services.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+179	0	Open-ILS/src/support-scripts/action_trigger_aggregator.pl
+ create mode 100644 Open-ILS/src/support-scripts/action_trigger_aggregator.pl
+
+commit 2076647ce42c417a4d6b5efcce75c2edbc2885b0
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Dec 11 11:59:50 2012 -0500
+
+    Seed data for CSV notification export
+    
+    Full set of seed data for CSV action/trigger notification batch exports.
+    The seed data is added to its own file and not automatically loaded into
+    new installs (or via upgrade script) since it adds a significant number
+    of new event definitions, probably more than most installs need by
+    default.
+    
+    Review the event defs. and their parameters prior to loading this seed
+    data, as it only represents one possible set of CSV notification
+    options.  For example, it assumes one type of "notify media" for all
+    created notices.  It may necessary to add additional event defs to cover
+    additional media, etc.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+342	0	Open-ILS/src/sql/Pg/notify-csv-action-trigger.sql
+ create mode 100644 Open-ILS/src/sql/Pg/notify-csv-action-trigger.sql
+
+commit ffb1d58274054fb56e1a4dcdd877beecca350f7d
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Dec 27 10:58:01 2012 -0500
+
+    Action/trigger user barred/unbarred hooks
+    
+    New active A/T hooks 'au.barred' and 'au.unbarred', plus PatronBarred
+    and PatronNotBarred validators, plus code to make the hooks dance.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    
+    Conflicts:
+    	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+7	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm
+10	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Validator.pm
+40	0	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+44	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.user_barred_hook.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.user_barred_hook.sql
+
+commit 39fbd09f6121c5dc9014c52bc47b8e74c31461aa
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Dec 11 11:57:42 2012 -0500
+
+    Additional action/trigger helper functions
+    
+    Added to the 'helpers' environment for action/trigger templates
+    
+     * get_org_unit -- get org object from id
+     * escape_csv -- escapes strings ia csv values
+     * get_user_setting
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+21	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm
+
+commit 8aea98c37f73c6b2b58c79d48cb0e2d13134b2df
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Tue Mar 12 13:47:41 2013 -0400
+
+    Release notes for Serial Control special statuses
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+7	0	docs/RELEASE_NOTES_NEXT/serial_control_special_statuses.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/serial_control_special_statuses.txt
+
+commit f9441fad3a8c7fb7d67fed2b59b499acb94bfa78
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Fri Dec 14 14:22:20 2012 -0500
+
+    Serials special status support for Items tab
+    
+    The Serial Control interface prevents direct editing of item status, as
+    some status changes require additional updates and/or can create data
+    conflicts.
+    
+    In the current state, though, we have no way to set three important
+    statuses: claimed, not held, and not published.  At some point, claims in
+    particular should be more than a simple status, but in the meantime, the
+    ability to set these should not be overlooked.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+3	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+3	0	Open-ILS/xul/staff_client/server/locale/en-US/serial.properties
+82	1	Open-ILS/xul/staff_client/server/serial/manage_items.js
+6	0	Open-ILS/xul/staff_client/server/serial/manage_items.xul
+3	0	Open-ILS/xul/staff_client/server/serial/serctrl_main.xul
+9	0	Open-ILS/xul/staff_client/server/skin/serial.css
+
+commit 41aa2f0441ae40ac91d4d30c6b3d3de96542849e
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Tue Mar 12 16:01:25 2013 -0400
+
+    Allow nesting of create_date and edit_date filters
+    
+    As gently suggested by tsbere, this commit allows nesting of said
+    filters.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+36	39	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 51f251a618fc2cb35a8203d2b87de1e8958ff287
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Mar 8 15:13:11 2013 -0500
+
+    Two new QP filters: create_date and edit_date
+    
+    These filter on the fields of the same name in biblio.record_entry.
+    
+    e.g.
+        create_date(,2013-02-01)  =>  records created before 2013-02-01
+        create_date(2013-02-01)   =>  records created since 2013-02-01
+        create_date(2013-02-01,2013-02-28)  =>  records created in Feb 2013
+        create_date(yesterday)    =>  records since created yesterday
+    
+    [LFW] Reviewed and added a single missing 'use' line; rewrote commit
+    message; release note.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+43	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+11	0	docs/RELEASE_NOTES_NEXT/search-record-date-filters.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/search-record-date-filters.txt
+
+commit 3fd72b199329ea1a310e58beb6e86b66a8218b5f
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Thu Feb 28 15:32:07 2013 -0500
+
+    Fix holding lib for certain distribution svrs
+    
+    On a serial virtual record (svr), the holding lib is expected to be
+    just an ID.  In one logic branch, Search/Serial.pm was attaching the
+    entire aou object, and we should instead attach just the ID of this
+    object.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Serial.pm
+
+commit cc7ed07e0517fe51e7354e36aec27a9d01bb39e9
+Author: Ben Shum <bshum at biblio.org>
+Date:   Tue Mar 12 17:22:36 2013 -0400
+
+    Stamping upgrade for inactive barcode retrieval
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+89	0	Open-ILS/src/sql/Pg/upgrade/0770.function.allow_inactive_barcode_retrieve.sql
+0	83	Open-ILS/src/sql/Pg/upgrade/XXXX.function.allow_inactive_barcode_retrieve.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0770.function.allow_inactive_barcode_retrieve.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.function.allow_inactive_barcode_retrieve.sql
+
+commit d52e125f3c471a608851875744495e0ed344c0a5
+Author: Michael Peters <mpeters at emeralddata.net>
+Date:   Tue Mar 12 16:14:23 2013 -0400
+
+    LP#1154235 Allow inactive patron barcode to be loaded
+    
+    This addresses LP#1154235 by modifying the evergreen.get_barcodes
+    function to allow users to retrieve patrons in barcode retrieve
+    who have inactive barcodes.
+    
+    This returns to functionality in versions prior to around 2.2.x
+    series.
+    
+    End result is staff receiving an alert that the patron was
+    accessed with an invalid barcode.
+    
+    Signed-off-by: Michael Peters <mpeters at emeralddata.net>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	1	Open-ILS/src/sql/Pg/020.schema.functions.sql
+83	0	Open-ILS/src/sql/Pg/upgrade/XXXX.function.allow_inactive_barcode_retrieve.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.function.allow_inactive_barcode_retrieve.sql
+
+commit b985f0be980990b19ff738e27ed2abc169b8e6bc
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Mon Mar 11 15:09:51 2013 -0400
+
+    Escape barcode completion button labels
+    
+    Some characters piss off the XML parser.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+
+commit be6e23f10b58ca7b2419eb8dd5e5493c105dd74f
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Mar 8 22:41:08 2013 -0500
+
+    Show OPAC-invisible copies in TPAC in staff context
+    
+    We were not calling the staff variation of the copy count method; thus,
+    the record details template was skipping the copy table in the event
+    that all copies for a given record were marked as OPAC-invisible via
+    either copy visibility or shelving location visibility.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6	2	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
+
+commit 0aeeb13cf175eb0a6b63dfc5053abcc0afed3934
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Thu Feb 28 14:49:16 2013 -0500
+
+    Don't populate the MFHD menu with distributions
+    
+    If a distribution has no legacy record, it shouldn't get a menu
+    entry in the MFHD menus. A magic id of '-1' is used to indicate
+    this case, so we need to check for that when populating
+    mfhdDetails via the TPAC.
+    
+    Also, entryNum must be an int, not a string, because it is
+    incremented prior to display. Removing the quotes solves this
+    display issue.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+3	1	Open-ILS/src/templates/opac/parts/js.tt2
+
+commit 8d86d3fe1d71797d671a13a9b10a6141936ed94e
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Wed Feb 27 09:34:58 2013 -0500
+
+    Tweak Google Book Preview Display, Take 2
+    
+    After some additional feedback, this commit makes three changes
+    to the Google Book preview link:
+    
+    1) As a solution offered by Dan Scott, rather than move the
+    button, we simply scroll to the preview when the button is clicked.
+    This effectively makes it impossible to miss. (In the current
+    code it sometimes loads off the screen.)
+    
+    2) Make the viewer display in the same style as other added
+    content.
+    
+    3) Allow the added content header to function as an additional
+    toggle to turn the viewer on and off.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+35	5	Open-ILS/src/templates/opac/parts/ac_google_books.tt2
+21	2	Open-ILS/src/templates/opac/parts/record/extras.tt2
+
+commit 5f166ed1fcbad1f3600965b4172047470aec391d
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Wed Feb 27 09:24:33 2013 -0500
+
+    Make Google Books Preview Honor Setting
+    
+    The new Google Book Preview was loading even if the setting was
+    off, provided some other 'want_dojo' feature was loaded. This
+    change will honor the setting regardless.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/parts/js.tt2
+
+commit cc6235e21c4ddb21671466bac74cd760db0a5b65
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Mar 6 13:10:21 2013 -0500
+
+    User seed data has (mostly) valid addresses
+    
+    Make all but 3 (2 patrons, 1 staff) user addresses in the sample SQL
+    seed data valid.  Prior to this, most addresses were marked as
+    non-valid.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+83	81	Open-ILS/tests/datasets/sql/users_patrons_100.sql
+98	97	Open-ILS/tests/datasets/sql/users_staff_134.sql
+
+commit a454ee5fa4938f60f60975e943db9433d52a3916
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Apr 6 14:39:28 2012 -0400
+
+    Error Checking for Hold Targeter
+    
+    Because having it leave lock files around is annoying.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+62	39	Open-ILS/src/support-scripts/hold_targeter.pl
+
+commit f93b9f4d5b8778993ceefc1b9163a2ec8bc28313
+Author: Ben Shum <bshum at biblio.org>
+Date:   Mon Mar 11 17:45:23 2013 -0400
+
+    Stamping upgrade for "exclude_invisible_acn" unapi holdings filter
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+145	0	Open-ILS/src/sql/Pg/upgrade/0769.schema.unapi_exclude_invisible_acn.sql
+0	143	Open-ILS/src/sql/Pg/upgrade/XXX.schema.unapi_exclude_invisible_acn.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0769.schema.unapi_exclude_invisible_acn.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXX.schema.unapi_exclude_invisible_acn.sql
+
+commit cad8ffe4fe66bf569c5f7030f677f12d9da046a8
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Mar 6 16:02:37 2013 -0500
+
+    TPAC my-list call number includes child orgs
+    
+    For my-list call number display, if the most relevant call number is a
+    child of any of the context org units (physical/pref/search), it is
+    considered relevant for purposes of call number display.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+8	6	Open-ILS/src/templates/opac/myopac/lists.tt2
+8	7	Open-ILS/src/templates/opac/parts/anon_list.tt2
+
+commit eca8d7fe2af431f28230385bfe185c48b6eaf16a
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Feb 12 12:19:58 2013 -0500
+
+    tpac avoid more org_unit template var leaks
+    
+    Avoid using the variable name 'org_unit' in misc_utils (when compiling
+    copy visibility info) since the value can leak into the org_selector
+    template, disrupting the rendering of the org selector.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	2	Open-ILS/src/templates/opac/parts/misc_util.tt2
+
+commit 415a3e98ab658f87f7ac72f62eb203cf17ec7583
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Jan 28 13:40:12 2013 -0500
+
+    Consistent response type from TPAC pref lib lookup
+    
+    In some contexts, the $user->home_ou field is fleshed with a real org
+    unit object.  Ensure that the response value from _get_pref_lib in the
+    TPAC takes this into consideration when finding the ID of the user's
+    home org unit.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm
+
+commit 0f4c2455b24774091dfb452a58ca7f653d73832a
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Jan 25 09:32:38 2013 -0500
+
+    TPAC My List Call-Number Release Notes
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+15	0	docs/RELEASE_NOTES_NEXT/tpac_bookbag_callnumbers.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/tpac_bookbag_callnumbers.txt
+
+commit 1aa9a8a6755aa6dc43b9c24a7d975eaa8084b860
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Dec 13 11:34:50 2012 -0500
+
+    Show local call number in TPAC My Lists display
+    
+    If an opac-visible call number exists that is owned by an org unit
+    relevant to the patron, show the (most relevant) call number label in
+    the My Lists display for each record in the list.  Call number is
+    displayed in both saved and temporary lists.
+    
+    A call number is considered relevant if its owner is one of:
+    
+    physical location library
+    preferred library (plib, home, etc.)
+    search library
+    
+    This code leverages the new "exclude_invisible_acn" unapi filter to
+    ensure that we are only required to retrieve 1 call number in the unapi
+    output instead of an arbitrarily large set of call numbers, against
+    which we may have to filter non-visible call numbers.
+    
+    This commit also addresses and outstanding TODO item in the tpac Perl:
+    Replace the last use of fetch_marc_xml_by_id with get_records_and_facets
+    and remove fetch_marc_xml_by_id
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+12	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm
+25	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm
+7	30	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm
+18	0	Open-ILS/src/templates/opac/myopac/lists.tt2
+18	2	Open-ILS/src/templates/opac/parts/anon_list.tt2
+3	2	Open-ILS/src/templates/opac/parts/misc_util.tt2
+
+commit f83878aa3cd91ef35665b5dde0a0dfe86c1ae737
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Dec 12 17:14:09 2012 -0500
+
+    "exclude_invisible_acn" unapi holdings filter
+    
+    When present in the unapi includes array, this filter ensures that no
+    call numbers with 0 opac-visible copies are included in the holdings_xml
+    output.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+8	8	Open-ILS/src/sql/Pg/990.schema.unapi.sql
+143	0	Open-ILS/src/sql/Pg/upgrade/XXX.schema.unapi_exclude_invisible_acn.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXX.schema.unapi_exclude_invisible_acn.sql
+
+commit 2f4f3405415751f3a61a4e40ca622cec25728923
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Dec 12 14:58:26 2012 -0500
+
+    unapi exclude_invisible_acn
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+8	1	Open-ILS/src/sql/Pg/990.schema.unapi.sql
+
+commit b42fa9068868c55b744cf9141627955ea90773d4
+Author: Ben Shum <bshum at biblio.org>
+Date:   Mon Mar 11 17:40:11 2013 -0400
+
+    Stamping upgrade for relaxing rank_ou sorting
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+31	0	Open-ILS/src/sql/Pg/upgrade/0768.schema.relax_rank_ou.sql
+0	29	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.relax_rank_ou.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0768.schema.relax_rank_ou.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.relax_rank_ou.sql
+
+commit 94813cbe6a061b95079a7a40375473e9c7914eaf
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Feb 7 13:43:19 2013 -0500
+
+    rank_ou() honors pref-lib in non-global context
+    
+    When determining how to sort an org unit (e.g. sorting copies by circ
+    lib for display in the catalog), allow the pref-lib to affect the sort
+    order in global and non-global searches.
+    
+    Org units are now sorted with the following criteria in the following
+    order.  For example, assume we are sorting a copy circ_lib:
+    
+    1. circ_lib matches the search_lib
+    2. circ_lib matches pref_lib
+    3. distance of circ_lib from pref_lib when pref_lib is a child of
+       search_lib, if circ_lib is a child of pref_lib.
+       (For example, searching CONS with pref_lib SYS1, items at BR1 will
+       sort ahead of items at BR3, since BR1 is a child of the pref_lib).
+    4. proximity of circ_lib to search_lib, when circ_lib is a child of
+       search_lib.
+    5. In all other cases, circ_lib is sorted to the bottom with the rest of
+       the riffraff.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+21	10	Open-ILS/src/sql/Pg/990.schema.unapi.sql
+29	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.relax_rank_ou.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.relax_rank_ou.sql
+
+commit 8b47e5eca74b1cbc78ad20db074136601648b5ca
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Nov 21 10:12:39 2012 -0500
+
+    extract PO name from picklist upload
+    
+    If a PO name is encoded in a lineitem (via provider attribute
+    definition), extract that PO name when creating a new purchase order
+    from lineitems that were previously only linked to a selection list.
+    This allows staff to create selection lists first, then orders second,
+    while retaining the encoded purchase order name.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+4	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+
+commit 6a48cea6545fcae474b95581eca2ef0b6c4572ad
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Mar 11 16:22:38 2013 -0400
+
+    Stamping upgrade for serials harmonization
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+38	0	Open-ILS/src/sql/Pg/upgrade/0767.schema.serials-holding-code-test-improved.sql
+0	38	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.serials-holding-code-test-improved.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0767.schema.serials-holding-code-test-improved.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.serials-holding-code-test-improved.sql
+
+commit 0e1335cab7cf7328d107c86b0cd237146bda38e2
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Tue Oct 23 12:25:18 2012 -0400
+
+    Fix divergence of stock serials schema and upgraded schema
+    
+    And additionally make a function used in a constraint on
+    serial.issuance.holding_code a little bit smarter.
+    
+    These issues were reported to me by Galen Charlton.
+    
+    The upgrade script included here will set serial.issuance.holding_code
+    to NULL in cases where the value doesn't validate, but in those cases
+    there is no part of Evergreen that could have made use of the data
+    anyway, and the data is just plain bad.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+19	0	Open-ILS/src/sql/Pg/000.functions.general.sql
+3	1	Open-ILS/src/sql/Pg/210.schema.serials.sql
+38	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.serials-holding-code-test-improved.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.serials-holding-code-test-improved.sql
+
+commit 1602d92b9ef4ac152722c136296230d1f20eb4d8
+Author: Steven Callender <stevecallender at esilibrary.com>
+Date:   Thu Oct 4 09:17:29 2012 -0400
+
+    Exclude copies that have been deleted from showing up on the browse holds shelf list.
+    
+    If an item had been deleted while it had a status of On Holds Shelf, it would permanently show up on
+    the browse holds list. This will exclude deleted copies from the results.
+    
+    Signed-off-by: Steven Callender <stevecallender at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit fd09be78adc3ea285dc4f2ad67ea4702faa8039d
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Dec 11 15:50:56 2012 -0500
+
+    Remote Account Conify UI
+    
+    Admin interface for config.remote_account.  To date, remote accounts
+    have been managed solely as EDI accounts, which have their own
+    interface.  If one wishes to add/manage non-EDI remote accounts, then
+    this new UI is needed.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    
+    Conflicts:
+    	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
+    
+    [minor, related to adjacent addition]
+
+44	0	Open-ILS/src/templates/conify/global/config/remote_account.tt2
+1	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+10	0	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+4	0	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
+1	0	Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties
+ create mode 100644 Open-ILS/src/templates/conify/global/config/remote_account.tt2
+
+commit 7a83889b103b989b3633d57e61069b764509747f
+Author: edoceo <code at edoceo.com>
+Date:   Wed Feb 20 18:21:29 2013 -0800
+
+    Pulls the Copy Notes for the records, shows in the table, introduces a new style
+    
+    Signed-off-by: edoceo <code at edoceo.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+10	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
+6	0	Open-ILS/src/templates/opac/css/style.css.tt2
+8	1	Open-ILS/src/templates/opac/parts/record/copy_table.tt2
+
+commit 01529e4464381cfb1867083c32158f64afa9320e
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Mar 11 15:41:00 2013 -0400
+
+    Stamping upgrade script for null SVF attribute value fix
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+104	0	Open-ILS/src/sql/Pg/upgrade/0766.function.handle_null_svf_during_import.sql
+0	104	Open-ILS/src/sql/Pg/upgrade/XXXX.handle_null_svf_during_import.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0766.function.handle_null_svf_during_import.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.handle_null_svf_during_import.sql
+
+commit 2f422efb600ed67eb086f3f4f130298a934f07ef
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Tue Feb 5 13:12:02 2013 -0500
+
+    LP#1116509: prevent null SVF attribute value from breaking record import
+    
+    Fix problem where a record could fail to be staged for import
+    with the following error:
+    
+    ERROR: query string argument of EXECUTE is null
+    CONTEXT: PL/pgSQL function "extract_rec_attrs" line 72 at EXECUTE statement
+    SQL function "extract_rec_attrs" statement 1
+    
+    This error would be triggered if at least one SVF attribute has a normalization
+    function defined that is applied to a null value during record import.
+    
+    Patch is based on a suggestion by Bob Wicksall.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/012.schema.vandelay.sql
+104	0	Open-ILS/src/sql/Pg/upgrade/XXXX.handle_null_svf_during_import.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.handle_null_svf_during_import.sql
+
+commit 369834f5ece9755a5a43d29f31afa70e2a4909c7
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Mar 11 13:40:46 2013 -0400
+
+    Reify required authority fixed field names
+    
+    Adam (and Art, by way of Adam's patch) added a goodly pile of fixed
+    field definitions that were lacking previously.  The change in this
+    commit simply changes the label of two (008/11 and 008/15) to those
+    in use by other parts of the code.  In particular, internally, we call
+    the field holding a thesaurus code value "Subj" and use that name during
+    ingest of authority records.  Therefore, that should not change.  This
+    required a subsequent change to the label of another, to SubjUse.
+    
+    I've included a duplication in the backend-only (probably deprecated)
+    version of this mapping to allow the front-end labels to work.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+10	0	Open-ILS/src/javascript/backend/catalog/fixed_fields.js
+2	2	Open-ILS/web/js/dojo/MARC/FixedFields.js
+
+commit df9268ec4e913b9ab9f4e62537edcbcb2dd66cf9
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Wed Dec 5 12:23:04 2012 -0500
+
+    lp1040381: match up Subj and SubjUse fixed labels
+    
+    Update the labels used in the fixed field editor for
+    authority records to match OCLC's labels specified at
+    
+    http://www.oclc.org/support/documentation/worldcat/authorities/authformat/default.htm
+    
+    This is consistent with commit's e675b854 change to the
+    OCLC labels, and also fixes a problem where changing the
+    008/11 and 008/15 was not reflected in the fixed field boxes.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+4	4	Open-ILS/xul/staff_client/server/cat/marcedit.xul
+
+commit 956699877cd0d352f9c199ed00ac83384937f78c
+Author: Adam Bowling <adbowling at library.in.gov>
+Date:   Fri Oct 26 10:59:54 2012 -0400
+
+    Add fixed fields missing from previous configuration, namely for MAP and SER record types.  Incoporate previous changes for AUT record types from 1040381.
+    
+    Signed-off-by: Adam Bowling <adbowling at library.in.gov>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1513	1368	Open-ILS/web/js/dojo/MARC/FixedFields.js
+
+commit a88a3194335448e10f0883cd181f92902ce1eaed
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Mar 11 09:12:43 2013 -0400
+
+    lp1110538: DB upgrade; default provider copies
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+8	0	Open-ILS/src/sql/Pg/upgrade/0765.schema.provider_copy_count.sql
+0	7	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.provider_copy_count.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0765.schema.provider_copy_count.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.provider_copy_count.sql
+
+commit c8f1aec1de9115106dffaff9c88d41821ff5695e
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Feb 4 15:46:20 2013 -0500
+
+    Default ACQ copies use workstation org as owning lib
+    
+    When creating default copies for new lineitems or lineitems added to
+    POs, use the workstation org unit as the owning lib for each copy.  With
+    this, it's possible to order items for "here" without having to edit any
+    single copies.  This also resolves a confusing issue where opening the
+    copies in the copies grid made it appear that each copy had an
+    owning_lib applied (via the autofieldwidget) when none was yet set.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Lineitem.pm
+4	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+
+commit b6425d785d603adb587affd7437f9289fb8cbc20
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Jan 30 09:36:17 2013 -0500
+
+    Default number of ACQ copies per provider
+    
+    Acquisitions providers have a new "Default # Copies" field.  When the value
+    is set, this number of copies will be automatically added to each lineitem
+    added to a purchase order for the provider.  This takes place during PO
+    creation from a selection list or existing bib record and when a lineitem is
+    added to an existing purchase order.  If a lineitem already has copies
+    attached, no default copies are added.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1	0	Open-ILS/examples/fm_IDL.xml
+15	3	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Lineitem.pm
+52	2	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+1	0	Open-ILS/src/sql/Pg/200.schema.acq.sql
+7	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.provider_copy_count.sql
+8	0	docs/RELEASE_NOTES_NEXT/acq_default_copy_count.txt
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.provider_copy_count.sql
+ create mode 100644 docs/RELEASE_NOTES_NEXT/acq_default_copy_count.txt
+
+commit cd28d0a15d63626e09e1577b1cc9db239bb0ffa8
+Author: Mark Cooper <markchristophercooper at gmail.com>
+Date:   Fri Oct 12 16:18:28 2012 -0700
+
+    LP#867691: Authority match sets are not working
+    
+    Authority match sets are not supported so hide the option for now.
+    It's confusing having it there.
+    
+    [with minor conflict resolution]
+    
+    Signed-off-by: Mark Cooper <markchristophercooper at gmail.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	Open-ILS/src/templates/conify/global/vandelay/match_set.tt2
+
+commit e1a6238a6611991ce0f28f3898c7ab55a21fd8b8
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Mon Oct 22 18:54:18 2012 -0400
+
+    Remove deprecated, old, unused GridColumnPicker
+    
+    Spotted by Joseph Lewis in LP #804462.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+0	228	Open-ILS/web/js/dojo/openils/GridColumnPicker.js
+ delete mode 100644 Open-ILS/web/js/dojo/openils/GridColumnPicker.js
+
+commit 41b7e1327541ce36f730c177c9a9ba7fd0d26138
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Mar 6 13:30:59 2013 -0500
+
+    .gitignore additions for (new) generated files
+    
+    Add these to Evergreen .gitignore:
+    
+    Open-ILS/examples/apache/eg.conf
+    Open-ILS/examples/apache/eg_startup
+    Open-ILS/examples/apache/eg_vhost.conf
+    Open-ILS/src/support-scripts/eg_db_config
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+4	0	.gitignore
+
+commit 703aa090502ef9c77f78dba931c976eb585716eb
+Author: Pasi Kallinen <pasi.kallinen at pttk.fi>
+Date:   Tue Mar 5 18:38:57 2013 +0200
+
+    LP1147286 - Allow translating more of the staff client portal page.
+    
+    Add translatable strings for image alt-tags and the Search button on
+    the staff client portal page.
+    
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+16	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+29	29	Open-ILS/xul/staff_client/server/index.xhtml
+
+commit f395b228f4e3f920fc26fde1b9483d3f9688fb05
+Author: Ben Shum <bshum at biblio.org>
+Date:   Thu Mar 7 01:48:46 2013 -0500
+
+    Stamping upgrade for LOC z39.50 target seed data
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+19	0	Open-ILS/src/sql/Pg/upgrade/0764.data.loc_z39_settings.sql
+0	18	Open-ILS/src/sql/Pg/upgrade/XXXX.data.loc_z39_settings.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0764.data.loc_z39_settings.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.loc_z39_settings.sql
+
+commit 4b78507904e4802964a14a685d12bb4697db7657
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Mar 6 13:54:35 2013 -0500
+
+    Upgrade script for LP#1105225: LOC z39.50 seed data
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+18	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.loc_z39_settings.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.loc_z39_settings.sql
+
+commit 3d9ddf0ab2669f7314a73d7716546d043cfa354d
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Fri Jan 25 11:35:27 2013 -0500
+
+    LP#1105225: update LOC z39.50 target seed data
+    
+    This patch updates the seed data from the target list at
+    http://www.loc.gov/z3950/lcserver.html#addr.  It also changes the
+    structure attribute for the 'lccn' search attribute to wordlist,
+    which means that LCCNs can be searched without having to enter
+    the leading spaces.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	2	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+
+commit b1e6cde521f6b83a5b91722893495ecc3772065b
+Author: Mark Cooper <markchristophercooper at gmail.com>
+Date:   Wed Oct 10 23:20:02 2012 -0700
+
+    LP#1022582: MARC Exporter includes deleted copies in holdings export
+    
+    Added check to filter out callnumbers/copies if deleted.
+    
+    Signed-off-by: Mark Cooper <markchristophercooper at gmail.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+3	2	Open-ILS/src/perlmods/lib/OpenILS/WWW/Exporter.pm
+3	3	Open-ILS/src/support-scripts/marc_export.in
+
+commit b5f791d08b4f3b17e1f93e64d6b3555dec27ea16
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Tue Mar 5 15:13:32 2013 -0500
+
+    Stamping upgrade for truncate-to-max-fine
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+15	0	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+15	0	Open-ILS/src/sql/Pg/upgrade/0763.data.truncate-to-max-fine-setting.sql
+0	15	Open-ILS/src/sql/Pg/upgrade/XXXX.data.truncate-to-max-fine-setting.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0763.data.truncate-to-max-fine-setting.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.truncate-to-max-fine-setting.sql
+
+commit e902bba4ca0dbb845abb7d7aac47cc5bb91d11f9
+Author: Jeff Davis <jdavis at sitka.bclibraries.ca>
+Date:   Mon Mar 4 13:42:08 2013 -0800
+
+    truncate fines to max fine amount (LP#1145284)
+    
+    When the max fine amount is not a multiple of the recurring fine amount,
+    fines will actually max out at an amount greater than the max fine
+    value.  This commit adds YAOUS and some simple functionality to
+    optionally truncate the final amount billed to the max fine amount.
+    
+    For example, if max fine is $5.00 and recurring fine is $0.30, the 17th
+    billing will bring the total amount billed to $5.10 (17 x $0.30),
+    thereby exceeding the max fine amount.  With this commit, if
+    circ.fines.truncate_to_max_fine is true, the final billing amount will
+    be reduced and the total amount billed will be $5.00.
+    
+    Signed-off-by: Jeff Davis <jdavis at sitka.bclibraries.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+14	3	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+15	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.truncate-to-max-fine-setting.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.truncate-to-max-fine-setting.sql
+
+commit 127baa9fc39d3b0587fe0f6b5c09bd16c3d0f414
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Thu Feb 28 12:39:40 2013 -0500
+
+    LP#1136084: drop silent dependency on 'bsdmainutils' Debian/Ubuntu package
+    
+    colrm is a perfectly good command, but isn't guaranteed to be
+    present on a minimal Ubuntu system.  This patch replaces ti with
+    with cut, which is more likely to be present (including on *BSD
+    servers).
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	1	Open-ILS/src/extras/autogen.sh
+
+commit c0489034bcafdd720e51ee828742a4607462fb06
+Author: Jason Stephenson <jason at sigio.com>
+Date:   Mon Mar 4 14:10:16 2013 -0500
+
+    Remove dependency on libreadline5-dev from Debian and Ubuntu.
+    
+    libreadline5-dev is old and superseded by libreadline-dev.
+    
+    Also OpenSRF installs libreadline-dev, so we should not have to
+    install it from Evergreen's Makefile.install.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+0	1	Open-ILS/src/extras/Makefile.install
+
+commit ca7d04bc908b964f2bcb1b849f1d402ee90f0931
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Feb 27 22:37:31 2013 -0500
+
+    LP#1086458: move up event listeners in place_hold.js
+    
+    The preceding two functions need the event listeners to be defined before
+    use. Move up to prevent errors.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2	1	Open-ILS/xul/staff_client/server/patron/place_hold.js
+
+commit 2f65adc476a629da56911370fe48eb25f9e7474f
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Wed Feb 20 15:00:55 2013 -0500
+
+    LP#1086458: fix typo
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	2	Open-ILS/xul/staff_client/server/patron/info_group.js
+
+commit 0876d97f6ff74157d2fecb5cf762573bad74acbb
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Wed Jan 30 11:38:33 2013 -0500
+
+    LP#1086458: add destructor to caption binding
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6	0	Open-ILS/xul/staff_client/chrome/content/main/bindings.xml
+
+commit 219d0cff7b4f49843cc73b423a2177d72b2b476e
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Wed Jan 30 11:24:21 2013 -0500
+
+    LP#1086458: add destructor to messagecatalog
+    
+    Based on patch by Jason Etheridge.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+12	0	Open-ILS/xul/staff_client/chrome/content/main/bindings.xml
+
+commit 0f074b31b4ded0c7db3565b3a51c216b92afeaf8
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Wed Jan 30 10:59:10 2013 -0500
+
+    LP#1086458: clean up event listener functions
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+4	1	Open-ILS/xul/staff_client/chrome/content/OpenILS/event_util.js
+
+commit f0f36a7b02e5dece844929aafdb135614732425c
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Thu Jan 24 17:30:26 2013 -0500
+
+    move EventListenerList out of global_util.js
+    
+    So that we can more easily pull it into main.xul (which we also do here)
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	0	Open-ILS/xul/staff_client/Makefile.am
+37	0	Open-ILS/xul/staff_client/chrome/content/OpenILS/event_util.js
+0	37	Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js
+1	0	Open-ILS/xul/staff_client/chrome/content/OpenILS/util_overlay_chrome.xul
+1	0	Open-ILS/xul/staff_client/chrome/content/OpenILS/util_overlay_offline.xul
+1	0	Open-ILS/xul/staff_client/chrome/content/main/main.xul
+1	0	Open-ILS/xul/staff_client/chrome/content/util/shell.html
+1	0	Open-ILS/xul/staff_client/server/OpenILS/util_overlay.xul
+1	0	Open-ILS/xul/staff_client/server/admin/printer_settings.xul
+1	0	Open-ILS/xul/staff_client/server/admin/upload_xacts.xhtml
+2	0	Open-ILS/xul/staff_client/server/index.xhtml
+ create mode 100644 Open-ILS/xul/staff_client/chrome/content/OpenILS/event_util.js
+
+commit 131da362381e8d9a53a3bbb68e46d6c7791294b0
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Thu Jan 24 15:25:47 2013 -0500
+
+    LP#1086458: remove references to windows during cleanup
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6	0	Open-ILS/xul/staff_client/server/patron/display.js
+
+commit 5e31934651e0aacc0c98f361e54fe3d8664134df
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Thu Jan 24 15:16:52 2013 -0500
+
+    LP#1086458: clear util.list lists and trees during cleanup
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	0	Open-ILS/xul/staff_client/server/patron/bill2.js
+2	0	Open-ILS/xul/staff_client/server/patron/bill_details.js
+2	0	Open-ILS/xul/staff_client/server/patron/bill_history.js
+1	0	Open-ILS/xul/staff_client/server/patron/hold_details.js
+1	0	Open-ILS/xul/staff_client/server/patron/holds.js
+1	0	Open-ILS/xul/staff_client/server/patron/info_group.js
+2	0	Open-ILS/xul/staff_client/server/patron/items.js
+1	0	Open-ILS/xul/staff_client/server/patron/search_result.js
+1	0	Open-ILS/xul/staff_client/server/patron/staged.js
+2	0	Open-ILS/xul/staff_client/server/patron/standing_penalties.js
+8	2	Open-ILS/xul/staff_client/server/patron/summary.js
+
+commit e6a56b322420fbed19d2bab59718a19f7374f57b
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Thu Jan 24 13:07:05 2013 -0500
+
+    LP#1086458: add missing cleanup call
+    
+    Thanks to Jason Etheridge for the catch.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	0	Open-ILS/xul/staff_client/server/circ/checkout.js
+
+commit 5bea275a8fbfb3d788ee3bc10867a9e45b0d9307
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Sat Jan 19 00:46:32 2013 -0500
+
+    LP#1086458: clean up after event listeners in circ/patron interface
+    
+    Upon window unload, now removes event listeners, both ones explicitly
+    created by the page JavsScript as well as ones created by
+    util.list, util.controller, and persist_helper().
+    
+    The same approach of defining cleanup fnctions used by unload
+    events can be applied to the rest of the staff client, but
+    this patch focuses on circulation first.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+8	1	Open-ILS/xul/staff_client/server/circ/checkout.js
+13	0	Open-ILS/xul/staff_client/server/circ/checkout.xul
+1	0	Open-ILS/xul/staff_client/server/locale/en-US/patron.properties
+13	1	Open-ILS/xul/staff_client/server/patron/barcode_entry.xul
+25	13	Open-ILS/xul/staff_client/server/patron/bill2.js
+1	0	Open-ILS/xul/staff_client/server/patron/bill2.xul
+1	0	Open-ILS/xul/staff_client/server/patron/bill_cc_info.xul
+1	0	Open-ILS/xul/staff_client/server/patron/bill_check_info.xul
+15	3	Open-ILS/xul/staff_client/server/patron/bill_details.js
+1	0	Open-ILS/xul/staff_client/server/patron/bill_details.xul
+19	5	Open-ILS/xul/staff_client/server/patron/bill_history.js
+1	0	Open-ILS/xul/staff_client/server/patron/bill_history.xul
+13	1	Open-ILS/xul/staff_client/server/patron/bill_wizard.js
+1	0	Open-ILS/xul/staff_client/server/patron/bill_wizard.xul
+23	16	Open-ILS/xul/staff_client/server/patron/display.js
+11	0	Open-ILS/xul/staff_client/server/patron/display.xul
+11	0	Open-ILS/xul/staff_client/server/patron/display_horiz.xul
+17	6	Open-ILS/xul/staff_client/server/patron/edit_standing_penalty.js
+1	0	Open-ILS/xul/staff_client/server/patron/edit_standing_penalty.xul
+13	2	Open-ILS/xul/staff_client/server/patron/hold_cancel.js
+1	0	Open-ILS/xul/staff_client/server/patron/hold_cancel.xul
+8	0	Open-ILS/xul/staff_client/server/patron/hold_details.js
+1	0	Open-ILS/xul/staff_client/server/patron/hold_details.xul
+9	1	Open-ILS/xul/staff_client/server/patron/holds.js
+11	0	Open-ILS/xul/staff_client/server/patron/holds.xul
+10	0	Open-ILS/xul/staff_client/server/patron/info_group.js
+1	0	Open-ILS/xul/staff_client/server/patron/info_group.xul
+15	2	Open-ILS/xul/staff_client/server/patron/info_notes.xul
+1	0	Open-ILS/xul/staff_client/server/patron/info_stat_cats.xul
+1	0	Open-ILS/xul/staff_client/server/patron/info_surveys.xul
+6	0	Open-ILS/xul/staff_client/server/patron/items.js
+11	0	Open-ILS/xul/staff_client/server/patron/items.xul
+17	6	Open-ILS/xul/staff_client/server/patron/new_standing_penalty.js
+1	0	Open-ILS/xul/staff_client/server/patron/new_standing_penalty.xul
+17	8	Open-ILS/xul/staff_client/server/patron/place_hold.js
+1	0	Open-ILS/xul/staff_client/server/patron/place_hold.xul
+11	4	Open-ILS/xul/staff_client/server/patron/search_form.js
+11	0	Open-ILS/xul/staff_client/server/patron/search_form.xul
+11	0	Open-ILS/xul/staff_client/server/patron/search_form_horiz.xul
+26	18	Open-ILS/xul/staff_client/server/patron/search_result.js
+11	0	Open-ILS/xul/staff_client/server/patron/search_result.xul
+15	4	Open-ILS/xul/staff_client/server/patron/staged.js
+1	0	Open-ILS/xul/staff_client/server/patron/staged.xul
+17	5	Open-ILS/xul/staff_client/server/patron/standing_penalties.js
+1	0	Open-ILS/xul/staff_client/server/patron/standing_penalties.xul
+10	1	Open-ILS/xul/staff_client/server/patron/summary.js
+13	1	Open-ILS/xul/staff_client/server/patron/summary.xul
+1	0	Open-ILS/xul/staff_client/server/patron/user_buckets.xul
+
+commit 5386af67d7be2926e85966e198525e35d5e76b81
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Thu Jan 24 12:27:34 2013 -0500
+
+    LP#1086458: add more event listener tracking
+    
+    util.list and util.controller now have cleanup()
+    methods that can be invoked to unregister the event
+    listeners they create.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+7	1	Open-ILS/xul/staff_client/chrome/content/util/controller.js
+55	25	Open-ILS/xul/staff_client/chrome/content/util/list.js
+
+commit e227c232fd8067177334be369a584af8497666dc
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Thu Jan 24 12:02:57 2013 -0500
+
+    LP#1086458: add way to clean up persist_helper event listeners
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+13	4	Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js
+
+commit df56b77591d1b4c4bd50dfc83d37f10117817b2e
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Thu Jan 24 11:56:30 2013 -0500
+
+    LP#1086458: add class to manage event listeners
+    
+    EventListenerList allows one to maintain a list
+    of event listeners, then remove them all when it's
+    time to clean up a window.
+    
+    Usage is:
+    
+    var list = new EventListenerList();
+    // attach an event listener
+    list.add(node, 'command', function(ev) { alert('BOO!'); }, false);
+    ...
+    // get rid of them
+    list.removeAll();
+    
+    Based on an idea by Jason Etheridge.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+37	0	Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js
+
+commit 0910a95da94800da094c81b2efd7fa394c34794c
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Mar 1 16:13:44 2013 -0500
+
+    Version upgrade script from 2.4-alpha1
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1677	0	Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4.alpha1-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4.alpha1-upgrade-db.sql
+
+commit 6947c7068f08ef1ad548f98530a85943561293be
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu Feb 28 15:17:12 2013 -0500
+
+    Updated translations for 2.4-alpha1
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+5	5	build/i18n/po/admin.properties/ru-RU.po
+102	0	build/i18n/po/authority.js/ru-RU.po
+6	6	build/i18n/po/circ.properties/cs-CZ.po
+6	6	build/i18n/po/circ.properties/en-CA.po
+6	6	build/i18n/po/circ.properties/hy-AM.po
+4	4	build/i18n/po/common.properties/hy-AM.po
+9	9	build/i18n/po/conify.js/de-DE.po
+103	87	build/i18n/po/ils_events.xml/cs-CZ.po
+102	86	build/i18n/po/ils_events.xml/de-DE.po
+104	88	build/i18n/po/ils_events.xml/en-CA.po
+104	88	build/i18n/po/ils_events.xml/en-GB.po
+102	86	build/i18n/po/ils_events.xml/es-ES.po
+105	89	build/i18n/po/ils_events.xml/fi-FI.po
+102	86	build/i18n/po/ils_events.xml/fr-CA.po
+109	89	build/i18n/po/ils_events.xml/hy-AM.po
+102	86	build/i18n/po/ils_events.xml/pt-BR.po
+100	84	build/i18n/po/ils_events.xml/ru-RU.po
+30	5	build/i18n/po/lang.dtd/ar-AR.po
+36	11	build/i18n/po/lang.dtd/cs-CZ.po
+30	5	build/i18n/po/lang.dtd/de-DE.po
+55	20	build/i18n/po/lang.dtd/en-CA.po
+30	5	build/i18n/po/lang.dtd/en-GB.po
+30	5	build/i18n/po/lang.dtd/es-ES.po
+33	8	build/i18n/po/lang.dtd/fi-FI.po
+33	8	build/i18n/po/lang.dtd/fr-CA.po
+56	20	build/i18n/po/lang.dtd/hy-AM.po
+30	5	build/i18n/po/lang.dtd/oc-FR.po
+30	5	build/i18n/po/lang.dtd/pt-BR.po
+30	5	build/i18n/po/lang.dtd/ru-RU.po
+30	5	build/i18n/po/lang.dtd/tr-TR.po
+7	3	build/i18n/po/offline.properties/cs-CZ.po
+7	3	build/i18n/po/offline.properties/de-DE.po
+12	8	build/i18n/po/offline.properties/en-CA.po
+7	3	build/i18n/po/offline.properties/en-GB.po
+7	3	build/i18n/po/offline.properties/es-ES.po
+8	4	build/i18n/po/offline.properties/fi-FI.po
+7	3	build/i18n/po/offline.properties/fr-CA.po
+12	8	build/i18n/po/offline.properties/hy-AM.po
+7	3	build/i18n/po/offline.properties/oc-FR.po
+7	3	build/i18n/po/offline.properties/pt-BR.po
+7	3	build/i18n/po/offline.properties/ru-RU.po
+7	3	build/i18n/po/offline.properties/tr-TR.po
+14	8	build/i18n/po/opac.dtd/cs-CZ.po
+18	12	build/i18n/po/opac.dtd/de-DE.po
+12	6	build/i18n/po/opac.dtd/en-CA.po
+12	6	build/i18n/po/opac.dtd/en-GB.po
+14	8	build/i18n/po/opac.dtd/es-ES.po
+14	8	build/i18n/po/opac.dtd/fi-FI.po
+14	8	build/i18n/po/opac.dtd/fr-CA.po
+5	4	build/i18n/po/opac.dtd/he-IL.po
+16	7	build/i18n/po/opac.dtd/hy-AM.po
+5	4	build/i18n/po/opac.dtd/oc-FR.po
+13	7	build/i18n/po/opac.dtd/pt-BR.po
+13	7	build/i18n/po/opac.dtd/ru-RU.po
+5	4	build/i18n/po/opac.dtd/tr-TR.po
+4	4	build/i18n/po/patron.properties/en-CA.po
+4	4	build/i18n/po/patron.properties/hy-AM.po
+13	13	build/i18n/po/register.js/cs-CZ.po
+13	13	build/i18n/po/register.js/de-DE.po
+13	13	build/i18n/po/register.js/en-CA.po
+13	13	build/i18n/po/register.js/en-GB.po
+13	13	build/i18n/po/register.js/es-ES.po
+14	14	build/i18n/po/register.js/fi-FI.po
+13	13	build/i18n/po/register.js/fr-CA.po
+13	13	build/i18n/po/register.js/hy-AM.po
+13	13	build/i18n/po/register.js/oc-FR.po
+13	13	build/i18n/po/register.js/pt-BR.po
+13	13	build/i18n/po/register.js/ru-RU.po
+13	13	build/i18n/po/register.js/tr-TR.po
+ create mode 100644 build/i18n/po/authority.js/ru-RU.po
+
+commit 8606f976ae96a203f96efca0587a87c5e10f8934
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu Feb 28 15:00:14 2013 -0500
+
+    Stamping upgrade scripts for ingest partitioning
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+90	0	Open-ILS/src/sql/Pg/upgrade/0762.schema.partitioned-ingest.sql
+0	90	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.partitioned-ingest.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0762.schema.partitioned-ingest.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.partitioned-ingest.sql
+
+commit bdcb51cde730810e706bdcf4b646f3db90fe4720
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Thu Feb 28 14:05:25 2013 -0500
+
+    LP#1066326: protect against flags being entirely missing from config.internal_flag
+    
+    Belt, meet suspenders.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+3	3	Open-ILS/src/sql/Pg/030.schema.metabib.sql
+3	3	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.partitioned-ingest.sql
+
+commit 19baefe1cd9f9ea76b9df29ab310ee28f08532bb
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Thu Feb 28 13:30:36 2013 -0500
+
+    LP#1066326: use internal flags; sync with master
+    
+    After discussion with Mike Rylander, moved the new flags
+    to internal flags, as exposing them to the staff client's
+    global flag admin page could lead to records getting incompletely
+    ingested without there being an easy way to rectify the problem
+    from the staff client.
+    
+    Also, sync up with other recent work on ingest.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+3	0	Open-ILS/src/sql/Pg/002.schema.config.sql
+1	1	Open-ILS/src/sql/Pg/030.schema.metabib.sql
+0	33	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+7	32	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.partitioned-ingest.sql
+
+commit 577909c863c4a9dc4cbacaba886cd08e0c9da624
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Sat Oct 13 11:38:55 2012 -0400
+
+    LP#1066326: Allow component partitioning of ingest
+    
+    The component parts of the indexing process are fairly flexible. In some
+    places they can be called with parameters that control the behavior, and
+    other places will respond to global and/or internal flags.  However, there
+    is some inconsistency to which parts will react to each mechanism.
+    
+    Previous to this commit, there was no way to cause ingest to skip specific
+    parts of the indexing process (search / facet / browse, in particular)
+    even though the stored procedure responsible for this had the ability to
+    perform, and parameters for the control of, this behavior.  Now, when any
+    of the parameters are false (the default, saying "do not skip") it will
+    check the value of a related global flag and, if enabled, skip that part
+    of the ingest.
+    
+    This will allow one to do perform massive, batch, parallel ingests of bib
+    records, something that was effectively blocked by the way browse ingest
+    is performed.  By disabling browse ingest during the main record loading,
+    and then performing only the browse ingest later, one can significantly
+    reduce the time required to load massive batches of records.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+14	6	Open-ILS/src/sql/Pg/030.schema.metabib.sql
+33	0	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+115	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.partitioned-ingest.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.partitioned-ingest.sql
+
+commit a189fca3210ec334979aea601758594118bea887
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Wed Jan 16 15:05:17 2013 -0500
+
+    TPAC: Don't display serial headers without content
+    
+    Currently, the TPAC serial display code will print a section
+    header, then see if there is any content to show.  This causes
+    headers to show up when they are unnecessary or unwanted.
+    
+    Now, we only show the header if we have content needing heading.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+20	17	Open-ILS/src/templates/opac/parts/record/issues-mfhd.tt2
+
+commit f1c1d0b0de3b170cc1cc6ec0b2b1800c9e01177c
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Jan 22 09:52:52 2013 -0500
+
+    Provide some level of support for legacy install locations
+    
+    If someone really wants to keep OpenSRF and Evergreen installed in
+    /openils, then enable the configure script to find the osrf_config
+    script and add the library location to the test to prevent it from
+    failing.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+13	2	configure.ac
+
+commit c2b4abf996a777dea9cd21d01ec940ae71e6e5d4
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Oct 19 17:24:50 2012 -0400
+
+    Clean-up unused Apache header/library config vars
+    
+    apxs is used to build the Apache modules, so there is no need to
+    configure the Apache / APR header and library paths.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+0	2	Makefile.am
+1	1	Open-ILS/src/apachemods/Makefile.am
+0	4	Open-ILS/src/extras/eg_config.in
+0	14	configure.ac
+
+commit eaa4c9f3e0bee322d56c3ca4f092744fce7d7f67
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Oct 19 17:05:53 2012 -0400
+
+    Reduce hard-coded configure defaults
+    
+    We can and should be smarter about how we set configuration variables.
+    Rather than using hard-coded defaults for the OpenSRF header and library
+    locations, ask osrf_config what values to use.
+    
+    Also be smarter about how we check for the OpenSRF library as a dependency.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+5	16	configure.ac
+
+commit 7f9efd7b1617e247737bf318fbf6047abedd63c9
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Oct 19 16:10:35 2012 -0400
+
+    eg_config should be installed
+    
+    We were not installing eg_config, which is a useful script for returning the
+    configured settings for an Evergreen installation.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	0	Open-ILS/src/Makefile.am
+
+commit fa20df0d807073840e7e392156d5ef1029336eb2
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Oct 19 15:23:28 2012 -0400
+
+    Generate Apache config files for increased portability
+    
+    Continue weaning ourselves off of hardcoded paths such as /openils in config
+    files. Also, install the Apache config example files into a docs directory
+    instead of just leaving them in the source tree. Similarly, remove some
+    hardcoded paths from eg_db_config.pl.
+    
+    At the same time, drop the '.pl' suffix from the scripts that we're touching,
+    and make the Apache startup script a little less generic in name.
+    
+    The change from "startup.pl" to "eg_startup" and from "eg_db_config.pl"
+    to "eg_db_config" also results in updates to installation and upgrading
+    documentation.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+0	151	Open-ILS/examples/apache/eg.conf
+151	0	Open-ILS/examples/apache/eg.conf.in
+29	0	Open-ILS/examples/apache/eg_startup.in
+0	719	Open-ILS/examples/apache/eg_vhost.conf
+719	0	Open-ILS/examples/apache/eg_vhost.conf.in
+0	29	Open-ILS/examples/apache/startup.pl
+25	2	Open-ILS/src/Makefile.am
+426	0	Open-ILS/src/support-scripts/eg_db_config.in
+0	426	Open-ILS/src/support-scripts/eg_db_config.pl
+7	7	docs/installation/server_installation.txt
+4	4	docs/installation/server_upgrade.txt
+ delete mode 100644 Open-ILS/examples/apache/eg.conf
+ create mode 100644 Open-ILS/examples/apache/eg.conf.in
+ create mode 100755 Open-ILS/examples/apache/eg_startup.in
+ delete mode 100644 Open-ILS/examples/apache/eg_vhost.conf
+ create mode 100644 Open-ILS/examples/apache/eg_vhost.conf.in
+ delete mode 100755 Open-ILS/examples/apache/startup.pl
+ create mode 100755 Open-ILS/src/support-scripts/eg_db_config.in
+ delete mode 100755 Open-ILS/src/support-scripts/eg_db_config.pl
+
+commit d81af6be77536b70da6af26a73aae4c6755ce642
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Aug 24 10:48:39 2012 -0400
+
+    Remove broken error message
+    
+    Checkout fills related hold causes an empty array sometimes, so don't throw
+    out errors for that.
+    
+    Also, the original error would itself fail, throwing an error that would
+    then fail as well, likely due to a copy/paste issue.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	1	Open-ILS/xul/staff_client/server/admin/transit_list.js
+
+commit 2f181e5acc7001cbf38dc0510bd9eeae35112a0e
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Oct 3 15:27:37 2012 -0400
+
+    Include barcode in pre-cat confirm dialog
+    
+    This allows staff to see what was scanned into the field as part of
+    the dialog window prior to confirming creating a pre-cat for it.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/xul/staff_client/server/circ/checkout.js
+1	1	Open-ILS/xul/staff_client/server/locale/en-US/circ.properties
+
+commit ace155abcb205352bb6e372aad9c21ed8bb95279
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Oct 3 15:25:53 2012 -0400
+
+    Reporter: Sort contents of remote selector widgets
+    
+    Simple sort based on the display value.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+8	0	Open-ILS/web/reports/oils_rpt_widget.js
+
+commit 38de53539a7d7469eed976546d2ed060956b173f
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Feb 27 21:15:06 2013 -0500
+
+    Stamping upgrade script for Bib Merge Ignore Deleted Call Numbers
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+264	0	Open-ILS/src/sql/Pg/upgrade/0761.function.merge_record_assets_deleted_call_numbers.sql
+0	264	Open-ILS/src/sql/Pg/upgrade/XXXX.function.merge_record_assets_deleted_call_numbers.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0761.function.merge_record_assets_deleted_call_numbers.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.function.merge_record_assets_deleted_call_numbers.sql
+
+commit d1f87d29d411c98ee813a6a8217a4320dbf0e8b5
+Author: Steven Callender <stevecallender at esilibrary.com>
+Date:   Fri Nov 2 16:20:32 2012 -0400
+
+    Changed bib merge to ignore deleted call numbers.
+    
+    The asset.merge_record_assets function was not checking for deleted call numbers
+    and merging items onto deleted call numbers that of course causes issues.
+    
+    Signed-off-by: Steve Callender <stevecallender at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	1	Open-ILS/src/sql/Pg/999.functions.global.sql
+264	0	Open-ILS/src/sql/Pg/upgrade/XXXX.function.merge_record_assets_deleted_call_numbers.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.function.merge_record_assets_deleted_call_numbers.sql
+
+commit 626df8689aee92badf6c4607aa023fa0fa3f8b07
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Thu Dec 20 13:40:41 2012 -0500
+
+    lp1092644 refresh row with Item Status Edit Volume
+    
+    Assuming the Trim List box is not selected, this simply refreshes selected rows
+    in the Item Status interface that were used to provide context for the Actions
+    for Catalogers -> Edit Volumes command. If Trim List is selected, then the items
+    are instead re-added to top of the list.
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+7	0	Open-ILS/xul/staff_client/server/circ/copy_status.js
+
+commit 75e400b05a51cec3f8560cf505d4094128ba659a
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Feb 26 14:33:58 2013 -0500
+
+    Repair clear holds shelf transaction timeout
+    
+    Initiate our cstore transaction after making the initial, potentially
+    long-running call to collect the clear-shelf holds to process.
+    Otherwise, the cstore transaction may time out while waiting on the
+    holds retrieval to complete.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+3	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit d350900176a2830061649877101390e44a8018d3
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Wed Jan 30 14:10:19 2013 -0500
+
+    set title during receipt/slip printing
+    
+    This is to workaround a bug in CUPS where long window titles will
+    cause the print job to fail.
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	2	Open-ILS/xul/staff_client/chrome/content/util/print.js
+
+commit 5fb92d384aeca7ed0e8b1c34d97447a35f00f256
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Feb 8 10:15:39 2013 -0500
+
+    Speed up sorted-related-holds query
+    
+    In several interfaces, we use a server side method which gathers statistics
+    about a hold: related holds, it's position in the (approximate) queue, the
+    estimated wait time, etc.  Within this method is a relatively complicated
+    json_query that returns the list of related, (FIFO-ish) sorted holds -- ones
+    that could be filled by a copy which could fill the hold in question.  This
+    commit restructures that query so as to make it faster when the list of
+    related holds is large, by removing duplicate (cartesian product, actually)
+    hold ids that were being fed into an INNER JOIN clause.
+    
+    Testing shows a speed increase of 4x for related-hold queue of around 675
+    holds [~2s -> ~0.5s] on a relatively large Evergreen installation,
+    appropriately tuned.  The speed improvement gets larger with longer queues.
+    There is no observed decrease in speed for smaller queue sizes.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+11	10	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit a605e9beb482bcdc8eee54c91b73125ebbde2f01
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Tue Feb 12 11:51:16 2013 -0500
+
+    Use LIMIT to speed EXISTS subqueries
+    
+    EXISTS without LIMIT is considered harmful in many cases.  Thus, we will
+    apply such an explicit planner hint in SuperCat.  This reduces the runtime
+    of URI lookups on some records from 1.2s+ to less than 1ms.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+11	4	Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm
+
+commit 51044386d3caafeafc4610c7bcd635e0d3d1c9dd
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Feb 27 11:57:45 2013 -0500
+
+    One more tiny i18n fix
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+
+1	1	Open-ILS/src/templates/conify/global/config/org_unit_proximity_adjustment.tt2
+
+commit e740b637956761de10e7cf3ccf1bef6998a8179e
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Feb 27 11:40:03 2013 -0500
+
+    Fix omissions of [% l(...) %] for i18n
+    
+    Spotted by Pasi Kallinen.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+3	3	Open-ILS/src/templates/conify/global/config/org_unit_proximity_adjustment.tt2
+
+commit c5d702faa3cacb6ebe4817a71e89d8ea957d9805
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Feb 27 11:04:24 2013 -0500
+
+    Fixing upgrade script version of the permission id
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+4	4	Open-ILS/src/sql/Pg/upgrade/0760.schema.custom-best-hold-selection.sql
+
+commit cbf3c8636645af6b5831a40ff3f75c2fc5cf987f
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Feb 27 11:02:47 2013 -0500
+
+    Stamping upgrade scripts for Org Unit Proximity Adjustment and Custom Best-Hold Sort Order
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+126	0	Open-ILS/src/sql/Pg/upgrade/0759.schema.org_prox_adjust.sql
+150	0	Open-ILS/src/sql/Pg/upgrade/0760.schema.custom-best-hold-selection.sql
+0	124	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.org_prox_adjust.sql
+0	148	Open-ILS/src/sql/Pg/upgrade/XXYY.schema.custom-best-hold-selection.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0759.schema.org_prox_adjust.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0760.schema.custom-best-hold-selection.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.org_prox_adjust.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXYY.schema.custom-best-hold-selection.sql
+
+commit 6b53189a9134d7366d4fd9bb7f0a8b29ee304df5
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Thu Dec 13 14:45:41 2012 -0500
+
+    Custom best-hold selection sort order
+    
+    The ranking algorithm that chooses the best hold to target a copy in
+    hand at a capture time used to be fairly simple.  It had two modes, FIFO
+    and not-FIFO, and that was it.
+    
+    This change allows full configuration of that algorithm.  In other
+    words, when the system captures a copy and sets out to evaluate what
+    hold, if any, that copy might best fulfull, site staff of sufficient
+    permission level are now empowered to choose exactly which comparisons
+    the systems makes in what order.  This gives said staff much greater
+    flexibililty than they have today over holds policy.
+    
+    For more information, see the included tech spec documents.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    
+    Conflicts:
+    	Open-ILS/src/sql/Pg/002.schema.config.sql
+    	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+26	0	Open-ILS/examples/fm_IDL.xml
+4	4	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+195	7	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+26	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+1	1	Open-ILS/src/sql/Pg/005.schema.actors.sql
+15	6	Open-ILS/src/sql/Pg/090.schema.action.sql
+1	0	Open-ILS/src/sql/Pg/800.fkeys.sql
+104	3	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+15	6	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.org_prox_adjust.sql
+148	0	Open-ILS/src/sql/Pg/upgrade/XXYY.schema.custom-best-hold-selection.sql
+119	0	Open-ILS/src/templates/conify/global/config/best_hold_order.tt2
+307	0	Open-ILS/web/js/dojo/openils/conify/BestHoldOrder.js
+6	1	Open-ILS/web/js/dojo/openils/conify/nls/conify.js
+1	0	Open-ILS/web/js/dojo/openils/widget/AutoFieldWidget.js
+1	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+4	0	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+4	0	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
+16	0	docs/RELEASE_NOTES_NEXT/custom-best-hold-selection.txt
+247	0	docs/TechRef/Circ/custom-best-hold-selection.txt
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXYY.schema.custom-best-hold-selection.sql
+ create mode 100644 Open-ILS/src/templates/conify/global/config/best_hold_order.tt2
+ create mode 100644 Open-ILS/web/js/dojo/openils/conify/BestHoldOrder.js
+ create mode 100644 docs/RELEASE_NOTES_NEXT/custom-best-hold-selection.txt
+ create mode 100644 docs/TechRef/Circ/custom-best-hold-selection.txt
+
+commit fc048034c0a45795057dcea75ad2e876b6d5785a
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Dec 12 12:12:12 2012 -0500
+
+    Calculated Proximity Adjustments, a new feature
+    
+    Allows customization to the way that Evergreen measures the distance
+    between org units for the purposes of 1) determining what copy at what
+    org unit is best suited for targeting a title-level hold, and 2)
+    determining what hold is best suited for fulfillment by a copy-in-hand
+    at capture (checkin) time.  The customization is based on a table
+    'actor.org_unit_proximity_adjustment', with certain matching criteria
+    that the system compares to properties of the holds and copies in
+    question.
+    
+    This feature is actually side-ported from the FulfILLment project, where
+    it was originally developed by Mike Rylander.  Lebbeous Fogle-Weekley
+    was responsible for integration into current Evergreen code, some
+    testing and bug-fixing, and minor refinement of documentation.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+31	0	Open-ILS/examples/fm_IDL.xml
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/action.pm
+39	32	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+31	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/asset.pm
+21	0	Open-ILS/src/sql/Pg/005.schema.actors.sql
+11	0	Open-ILS/src/sql/Pg/020.schema.functions.sql
+73	0	Open-ILS/src/sql/Pg/090.schema.action.sql
+2	0	Open-ILS/src/sql/Pg/800.fkeys.sql
+115	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.org_prox_adjust.sql
+85	0	Open-ILS/src/templates/conify/global/config/org_unit_proximity_adjustment.tt2
+1	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+4	0	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+2	0	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
+10	0	docs/RELEASE_NOTES_NEXT/calculated-proximity-adjustments.txt
+46	0	docs/TechRef/Circ/calculated-proximity-adjustments.txt
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.org_prox_adjust.sql
+ create mode 100644 Open-ILS/src/templates/conify/global/config/org_unit_proximity_adjustment.tt2
+ create mode 100644 docs/RELEASE_NOTES_NEXT/calculated-proximity-adjustments.txt
+ create mode 100644 docs/TechRef/Circ/calculated-proximity-adjustments.txt
+
+commit e1337996b6a6c743997be58f8070d49010845271
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Feb 27 10:46:00 2013 -0500
+
+    Stamping upgrade scripts for Vandelay default match set, with minor adjustments
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+2	2	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+11	0	Open-ILS/src/sql/Pg/upgrade/0758.data.vandelay-default-match-set.sql
+0	11	Open-ILS/src/sql/Pg/upgrade/XXXX.data.vandelay-default-match-set.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0758.data.vandelay-default-match-set.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.vandelay-default-match-set.sql
+
+commit 430c8474fe10a559b6fbd39515c0cb6c5168b7e4
+Author: Ben Shum <bshum at biblio.org>
+Date:   Thu Jan 31 18:15:28 2013 -0500
+
+    Add default Vandelay match set to schema
+    
+    Only had the upgrade SQL, need to actually make the change to the stock schema too.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+16	1	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+
+commit 06afa5d5a80cfa1c2f3a02bcd3ccbc6efca71e36
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Thu Jan 31 12:50:47 2013 -0500
+
+    Release notes entry for default Vandelay match set
+    
+    Adding a release notes entry for default Vandelay match set.
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+11	0	docs/RELEASE_NOTES_NEXT/vandelay_default_match_set.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/vandelay_default_match_set.txt
+
+commit a9811c7c63db9ca1c9c4303a63865a8bf2483312
+Author: Jeff Davis <jdavis at sitka.bclibraries.ca>
+Date:   Wed Oct 17 16:19:36 2012 -0700
+
+    Vandelay: default match set
+    
+    Adds an org unit setting to specify a default Record Match Set when
+    importing MARC records with Vandelay.  NB: If this is set, it will not
+    be possible to leave the Record Match Set field blank; it may be
+    necessary to define a default match set that replicates the current
+    default behavior.
+    
+    A new "Vandelay" settings group is also created.
+    
+    Signed-off-by: Jeff Davis <jdavis at sitka.bclibraries.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+11	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.vandelay-default-match-set.sql
+18	0	Open-ILS/web/js/ui/default/vandelay/vandelay.js
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.vandelay-default-match-set.sql
+
+commit 057b9f43316044ad5836825b31a5f3745977ee7b
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Feb 27 10:11:11 2013 -0500
+
+    TPac: Lookup hold patron after paste
+    
+    Because staff apparently don't like having to hit tab or enter after pasting a
+    patron barcode into the place hold interface.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/parts/place_hold.tt2
+
+commit 50951b430efbfe8b27972d965bc5f6725fc1b3a3
+Author: Ben Shum <bshum at biblio.org>
+Date:   Sun Feb 17 01:46:16 2013 -0500
+
+    Fix 0752 and 0756 upgrade scripts
+    
+    In 0752, change evergreen.is_json() to just is_json() since some
+    upgraded sites may still have this in their public schema.
+    
+    In 0756, drop some additional remnant functions if they exist. These
+    functions may still lurk in older Evergreen systems upgrading from
+    pre-2.0 times.
+    
+    See for reference these commits which drop the older functions from
+    the schema:
+    
+    415e0c40cf8ac0fbba91541f9ddf386d02f01fec
+    24007bf27d6f53073cfb45e4db43b88f651b971b
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	1	Open-ILS/src/sql/Pg/upgrade/0752.schema.url_verify.sql
+7	0	Open-ILS/src/sql/Pg/upgrade/0756.drop.query_parser_fts.sql
+
+commit d8d832489f054bfba51854354ae00d7a26edc237
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Feb 20 12:26:01 2013 -0500
+
+    QueryParser: Improve container searches
+    
+    Add a with/from set for containers for record limiting instead of using the
+    EXISTS methodology for better index usage.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+27	28	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 976b9a9eae2343e0557592ff10c00c308dc6b530
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Feb 19 11:42:08 2013 -0500
+
+    QueryParser: Check for URIs in staff visibility
+    
+    Specifically, don't show staff records with no copies but with URIs unless the
+    URIs are "in scope".
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+10	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit e9de82db81f674ba9b92a864a5cd17492dc1a01d
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Feb 19 11:39:40 2013 -0500
+
+    QueryParser: Adjust visibility order
+    
+    Checking call number URIs last gives us a faster return on average based on
+    finding copy information first.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+13	11	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 3a7baccb538efdf1ba6d5d7a13278a2716f5597b
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Sat Feb 16 19:03:27 2013 -0500
+
+    QueryParser: Provide null rank query as default
+    
+    If a given node contains only negative atoms the rank query was coming out as
+    an empty string, which was generating bad SQL. This causes the default to be a
+    null tsquery instead.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 4ec48609ef5eb82b571b82e8ab5dc83109b63401
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Feb 21 11:26:14 2013 -0500
+
+    Translation newpot
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2	4	build/i18n/po/XULTermLoader.js/XULTermLoader.js.pot
+11	33	build/i18n/po/acq.js/acq.js.pot
+2	4	build/i18n/po/capture.js/capture.js.pot
+7	19	build/i18n/po/conify.js/conify.js.pot
+783	777	build/i18n/po/db.seed/db.seed.pot
+2676	2433	build/i18n/po/fm_IDL.dtd/fm_IDL.dtd.pot
+123	171	build/i18n/po/ils_events.xml/ils_events.xml.pot
+29	4	build/i18n/po/lang.dtd/lang.dtd.pot
+6	2	build/i18n/po/offline.properties/offline.properties.pot
+4	3	build/i18n/po/opac.dtd/opac.dtd.pot
+4	11	build/i18n/po/opac.js/opac.js.pot
+10	11	build/i18n/po/register.js/register.js.pot
+2	5	build/i18n/po/reservation.js/reservation.js.pot
+3	8	build/i18n/po/selfcheck.js/selfcheck.js.pot
+81	81	build/i18n/po/tpac/tpac.pot
+
+commit 45399b8fe258e0b141aedf9453abe737ffb8b9af
+Author: Dan Scott <dan at coffeecode.net>
+Date:   Mon Feb 18 17:48:44 2013 -0500
+
+    TPAC: Avoid leading / trailing space on pages
+    
+    Use the [%- -%] whitespace-chomping directives to remove the leading
+    space on pages.
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/cnbrowse.tt2
+2	2	Open-ILS/src/templates/opac/home.tt2
+2	2	Open-ILS/src/templates/opac/login.tt2
+2	2	Open-ILS/src/templates/opac/mylist.tt2
+3	4	Open-ILS/src/templates/opac/password_reset.tt2
+2	2	Open-ILS/src/templates/opac/place_hold.tt2
+2	2	Open-ILS/src/templates/opac/record.tt2
+4	6	Open-ILS/src/templates/opac/results.tt2
+2	2	Open-ILS/src/templates/opac/sms_cn.tt2
+2	2	Open-ILS/src/templates/opac/temp_warn.tt2
+
+commit cb238428af6bf5d35994f66529d5cf31e71669cf
+Author: Dan Scott <dan at coffeecode.net>
+Date:   Mon Feb 18 17:44:28 2013 -0500
+
+    TPAC: Let there be HTML5
+    
+    Stop living the lie that we're pretending to be XHTML Transitional and
+    embrace HTML5. And save a whole bunch of bytes right off the bat!
+    
+    Also, use a valid language/locale identifier--we need hyphens instead of
+    underscores.
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+3	3	Open-ILS/src/templates/opac/parts/base.tt2
+
+commit dde1d0e14ef7d13eb66797208ff34917df926d44
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Feb 20 11:37:08 2013 -0500
+
+    TPAC: Make Google Books Preview depend on Dojo
+    
+    It would be possible, but painful, to do all of this in raw JavaScript,
+    so make the preview functionality depend on Dojo. Also, split out the
+    relevant JavaScript into its own file. Also, don't search for a preview
+    if no ISBNs have been gathered; I'm sure Google is never going to return
+    a result for ISBN:undefined.
+    
+    You can test this functionality in the sample record set using ISBN
+    4431287752.
+    
+    Thanks to Ben Shum for the review comments!
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+97	0	Open-ILS/src/templates/opac/parts/ac_google_books.tt2
+0	97	Open-ILS/src/templates/opac/parts/acjs.tt2
+4	0	Open-ILS/src/templates/opac/parts/header.tt2
+1	0	Open-ILS/src/templates/opac/parts/js.tt2
+ create mode 100644 Open-ILS/src/templates/opac/parts/ac_google_books.tt2
+
+commit 6c4c15cf710cae0bb7af2ff79fb768bb4347a54c
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Feb 5 12:25:24 2013 -0500
+
+    TPAC: Google Books preview loader
+    
+    Refinements should include checking more than just the first ISBN for
+    embeddability and passing more identifiers to the preview loader.
+    Roughly equivalent to what JSPAC had though.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+96	0	Open-ILS/src/templates/opac/parts/acjs.tt2
+5	0	Open-ILS/src/templates/opac/parts/config.tt2
+12	0	docs/RELEASE_NOTES_NEXT/tpac_google_books_preview.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/tpac_google_books_preview.txt
+
+commit 8cfad95dac348c1ae32477c3e9c3832adaeaaa8e
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Fri Nov 9 15:06:04 2012 -0500
+
+    Stop requiring unneeded/absent RPC::XML::Method
+    
+    It's not a thing in recent versions of RPC::XML
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+0	1	Open-ILS/src/perlmods/Build.PL
+0	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/XMLRPCGateway.pm
+
+commit 284f3ff0a1669b8562785beae74e51012eeb04b0
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Mon Oct 22 18:42:55 2012 -0400
+
+    In XML-RPC Gateway, substitute __ for - in method names
+    
+    Dashes have never actually been valid in XML-RPC method names, and some
+    clients (like newer versions of Perl's RPC::XML) enforce this rule on
+    their clients.  This way we give XML-RPC clients a way they can still reach
+    our methods.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+5	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/XMLRPCGateway.pm
+
+commit d16ff8e27e777de88cf09d47c6d01197b1cfd18f
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Mon Oct 22 18:19:03 2012 -0400
+
+    Stop requiring unneeded/absent RPC::XML::Function
+    
+    It's not a thing in recent versions of RPC::XML
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    
+    Conflicts:
+    	Open-ILS/src/extras/Makefile.install
+
+0	2	Open-ILS/src/extras/Makefile.install
+0	1	Open-ILS/src/perlmods/Build.PL
+0	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/XMLRPCGateway.pm
+
+commit e3e4c1de32553d74bd43a5ca4139c8ba2244bcaf
+Author: Chris Sharp <csharp at georgialibraries.org>
+Date:   Thu Feb 21 13:33:31 2013 -0500
+
+    Install CPAN on Fedora
+    
+    Fedora 18 split CPAN out into its own separate package, rather
+    bizarrely, and as we sadly still need to install some unpackaged
+    dependencies from CPAN we had better try to install it.
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+1	0	Open-ILS/src/extras/Makefile.install
+
+commit 12751e0cb7556a9dd23abdfddf1ad70bb3184c70
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Feb 13 10:34:17 2013 -0500
+
+    Serials: change more carp() to croak() to avoid infinite loops
+    
+    This addresses a problem very similar to that in LP #1075167, where
+    certain loops never end because problems with the data elicited calls to
+    carp(), which fills up log, but never gives our loops notice to end.
+    
+    Visible symptoms include 1) a greate volume of log spew and 2) an
+    open-ils.serial drone that ties up a CPU.
+    
+    The fault lies maybe in our loops rather than in the MFHD
+    package, but this fixes the problem fastest, and should not have
+    undesirable side-effects.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2	2	Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD/Caption.pm
+
+commit 22ecbbdb62926cb110f5a23526d889f7f2ffa776
+Author: Dan Scott <dan at coffeecode.net>
+Date:   Tue Jan 29 12:55:10 2013 +0200
+
+    LP1108867: i18n support for holds in record details
+    
+    Rather than constructing a string of "Place hold on " + "copy", etc,
+    just display more complete "Copy hold" / "Volume hold" / "Issue hold"
+    strings that have a chance of being translatable.
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+
+43	29	Open-ILS/src/templates/opac/parts/record/copy_table.tt2
+
+commit 7a08ca1430d29db1c6b542c06fc1bd368cb18078
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Fri Feb 1 14:39:23 2013 -0500
+
+    Standardize on 'My' for user pronoun labels
+    
+    The TPAC currently uses a mish-mash of 'My' and 'Your' when
+    labeling user elements (e.g. 'my list', 'your account', etc.).
+    This commit settles on the use of 'My', but only for labels, not
+    for "dialog" (e.g. 'Your payment has been approved') or for
+    imperative statements (e.g. 'Please change your password'). One
+    text which is borderline is 'Log in to Your Account', but I
+    decided to treat it as imperative and leave it alone for now.
+    
+    This commit also changes a heading on the list page which was
+    lacking title case, as the rest of the interface uses title
+    case for all headings.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    
+    Conflicts:
+    	Open-ILS/src/templates/opac/myopac/lists.tt2
+
+2	2	Open-ILS/src/templates/opac/myopac/lists.tt2
+1	1	Open-ILS/src/templates/opac/parts/myopac/base.tt2
+1	1	Open-ILS/src/templates/opac/parts/searchbar.tt2
+1	1	Open-ILS/src/templates/opac/parts/topnav.tt2
+
+commit 7093bd942640cd486bc57d9fa425560e4ec9f534
+Author: Pasi Kallinen <pasi.kallinen at pttk.fi>
+Date:   Tue Jan 22 12:53:46 2013 +0200
+
+    TPAC: Allow multiline buttons and other minor button work.
+    
+    Allows using multiline buttons; instead of using opac-button
+    -class in the a-tag, wrap the a-tag in a div with
+    opac-multiline-button -class.
+    
+    Changes the login help button so a longer button text
+    behaves properly and looks good.
+    
+    Unifies the green OPAC button behaviour when hovering
+    a mouse over them; the input and button -tag buttons
+    did not change their color.
+    
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    
+    Conflicts:
+    	Open-ILS/src/templates/opac/css/style.css.tt2
+
+9	2	Open-ILS/src/templates/opac/css/style.css.tt2
+3	1	Open-ILS/src/templates/opac/parts/login/help.tt2
+
+commit a8111340810ef8a28982c65f72470f307a2df901
+Author: Pasi Kallinen <pasi.kallinen at pttk.fi>
+Date:   Tue Jan 8 09:49:39 2013 +0200
+
+    Add Finnish to the enabled languages list
+    
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+3	0	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+
+commit fd5785cb9c65e10e775bd10088c0dbc29afd977f
+Author: Dan Scott <dan at coffeecode.net>
+Date:   Mon Feb 18 17:59:45 2013 -0500
+
+    Fix failing SIP unit test
+    
+    Per LP# 1099595, just copy the constant inline instead of requiring the
+    SIPServer code to be installed on every instance where you don't want
+    'make check' to fail. (Skipping the test in the absence of the SIPServer
+    code would be another option, but then you're skipping the test, and for
+    the sake of 1 constant, that seems like a bad trade.)
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+5	1	Open-ILS/src/perlmods/lib/OpenILS/SIP.pm
+
+commit 3e1d6e1e0f70e1f5bc0418906fad626411906450
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Mon Feb 18 17:42:11 2013 -0500
+
+    the first rule of fixing typos is that you don't talk about fixing typos
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+1	1	Open-ILS/src/extras/Makefile.install
+
+commit d59123f1e1804396971f40f807c90ed271258f7d
+Author: James Fournie <jfournie at sitka.bclibraries.ca>
+Date:   Mon Feb 18 12:41:20 2013 -0800
+
+    Let's inch towards valid XHTML by making POST and GET lowercase in our forms
+    
+    Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+1	1	Open-ILS/src/templates/opac/myopac/circ_history.tt2
+1	1	Open-ILS/src/templates/opac/myopac/circs.tt2
+1	1	Open-ILS/src/templates/opac/myopac/holds.tt2
+1	1	Open-ILS/src/templates/opac/myopac/holds/edit.tt2
+9	9	Open-ILS/src/templates/opac/myopac/lists.tt2
+1	1	Open-ILS/src/templates/opac/myopac/main.tt2
+2	2	Open-ILS/src/templates/opac/myopac/main_payment_form.tt2
+2	2	Open-ILS/src/templates/opac/myopac/main_payments.tt2
+1	1	Open-ILS/src/templates/opac/myopac/prefs.tt2
+1	1	Open-ILS/src/templates/opac/myopac/prefs_notify.tt2
+1	1	Open-ILS/src/templates/opac/myopac/prefs_settings.tt2
+1	1	Open-ILS/src/templates/opac/myopac/update_email.tt2
+1	1	Open-ILS/src/templates/opac/myopac/update_password.tt2
+1	1	Open-ILS/src/templates/opac/myopac/update_username.tt2
+1	1	Open-ILS/src/templates/opac/parts/advanced/expert.tt2
+1	1	Open-ILS/src/templates/opac/parts/advanced/numeric.tt2
+1	1	Open-ILS/src/templates/opac/parts/advanced/search.tt2
+2	2	Open-ILS/src/templates/opac/parts/anon_list.tt2
+1	1	Open-ILS/src/templates/opac/parts/login/form.tt2
+1	1	Open-ILS/src/templates/opac/parts/myopac/main_base.tt2
+1	1	Open-ILS/src/templates/opac/parts/place_hold.tt2
+1	1	Open-ILS/src/templates/opac/parts/place_hold_result.tt2
+1	1	Open-ILS/src/templates/opac/parts/searchbar.tt2
+1	1	Open-ILS/src/templates/opac/results.tt2
+1	1	Open-ILS/src/templates/opac/sms_cn.tt2
+1	1	Open-ILS/src/templates/opac/temp_warn.tt2
+
+commit d6326097ba2f6e9ddce99aefaa898ee33ce288f7
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Mon Feb 18 13:15:42 2013 -0500
+
+    typos be gone
+    
+    There is nothing like an old typo
+    reaching out and shaking one by the collar
+    when reviewing patches.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+1	1	Open-ILS/src/extras/Makefile.install
+
+commit 7ec824d70cc0171e6f23cc530c9b84ac6c2d03bf
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Mon Feb 18 11:07:23 2013 -0500
+
+    Add Rose::URI prerequisite for Ubuntu systems
+    
+    The Ubuntu parts of Makefile.install don't use the same list of CPAN
+    packages to install since for Ubuntu there are more distro packages
+    available than for Debian.
+    
+    Spotted by Ben Shum.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+4	2	Open-ILS/src/extras/Makefile.install
+
+commit 7224016bbfee87045710b584d9f343aba15ab5f6
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Mon Feb 18 12:44:50 2013 -0500
+
+    LP#1129318: fix exception thrown when printing circ receipts
+    
+    Because of a misplaced parenthesis in the patch introducing the
+    PATRON_EXPIRE_DATE_YMD receipt macro, attempting to print
+    various circ receipts would result in the following exception:
+    
+    Error in util.date.formatted_date:
+    location.href = oils://remote/xul/2.3_5/server/circ/checkin.xul
+    typeof orig_date = string orig_date = 2014-11-07T00:00:00-0500
+    typeof _date = object _date = Fri Nov 07 2014 00:00:00 GMT-0500 (Eastern Standard Time)
+    format = undefined
+    TypeError: s is undefined
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/xul/staff_client/chrome/content/util/print.js
+
+commit 5a41bcf322e1874a28b7b2ca85dcfb5b9b62cc27
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Mon Feb 18 10:11:34 2013 -0500
+
+    Document new dependency for standalone databases
+    
+    Rose::URI.  I had added this to Makefile.install, but I forgot about this
+    section of documentation that lists dependencies for standalone databases.
+    
+    Spotted by Ben Shum.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	0	docs/installation/server_installation.txt
+
+commit 44ca17bd129d3bc1429c7339ef4fa2a35a8677f1
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Jan 16 16:33:22 2013 -0500
+
+    LP 1092284 - Fix add to my list dropdown with ContentCafe links
+    
+    As noted in the bug ticket, the dropdown menu for Add to my list disappears
+    whenever hovering over the Reviews & More link for ContentCafe-enabled TPACs.
+    
+    Removing position:relative from .results_review seems to keep the two areas
+    from having any strange interactions.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+0	1	Open-ILS/src/templates/opac/css/style.css.tt2
+
+commit 433ffa2a57f0452f795484bfed96d74499407dc0
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Fri Feb 15 15:36:01 2013 -0500
+
+    qp_fix: number upgrade scripts, disable QP unit tests needing more attention
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+11	1	Open-ILS/src/perlmods/t/21-QueryParser.t
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+9	0	Open-ILS/src/sql/Pg/upgrade/0756.drop.query_parser_fts.sql
+434	0	Open-ILS/src/sql/Pg/upgrade/0757.schema.ts_configs.sql
+0	3	Open-ILS/src/sql/Pg/upgrade/XXXX.drop.query_parser_fts.sql
+0	432	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.ts_configs.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0756.drop.query_parser_fts.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0757.schema.ts_configs.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.drop.query_parser_fts.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.ts_configs.sql
+
+commit 7b8fc7b67a3c7cf3386df17950f686cef6ec5998
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Dec 18 15:53:28 2012 -0500
+
+    QueryParser: use combined metabib_field column
+    
+    Because I somehow forgot about it. Oops.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+20	19	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 0817eccf2a805034e2b8f0c358456c0ef93f4aa8
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Dec 18 15:12:10 2012 -0500
+
+    Add basic release notes and notes for docwriters
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+47	0	docs/QueryParser_Changes.txt
+25	0	docs/RELEASE_NOTES_NEXT/queryparser_changes.txt
+ create mode 100644 docs/QueryParser_Changes.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/queryparser_changes.txt
+
+commit 7da2227f1ee3c98b98b518fa2ca4f857b9173a88
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Dec 18 14:35:28 2012 -0500
+
+    Upgrade script for ts config use
+    
+    And the rest of that work
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+432	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.ts_configs.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.ts_configs.sql
+
+commit b3a485dd49266d7e6d26bf9c25d7fef9cdced164
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Dec 18 10:38:24 2012 -0500
+
+    Add config interfaces
+    
+    For metabib class, class ts maps, field, and field ts maps.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+25	0	Open-ILS/src/templates/conify/global/config/metabib_class.tt2
+29	0	Open-ILS/src/templates/conify/global/config/metabib_class_ts_map.tt2
+29	0	Open-ILS/src/templates/conify/global/config/metabib_field_ts_map.tt2
+3	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+12	0	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+9	0	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
+ create mode 100644 Open-ILS/src/templates/conify/global/config/metabib_class.tt2
+ create mode 100644 Open-ILS/src/templates/conify/global/config/metabib_class_ts_map.tt2
+ create mode 100644 Open-ILS/src/templates/conify/global/config/metabib_field_ts_map.tt2
+
+commit e1149c69cf994f9f04441056b7e0b0538ac3d0ce
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Oct 11 11:43:25 2012 -0400
+
+    QueryParser Driver: Much work
+    
+    Switch to configurable fts configs
+    Add "combined" index vectors
+    Add word boundary checks for phrase searches
+    Use combined rel_bump function
+    
+    And probably more I forgot about
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+66	0	Open-ILS/examples/fm_IDL.xml
+240	51	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+15	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/metabib.pm
+0	45	Open-ILS/src/sql/Pg/000.english.pg90.fts-config.sql
+57	1	Open-ILS/src/sql/Pg/000.english.pg91.fts-config.sql
+1	1	Open-ILS/src/sql/Pg/000.english.pg92.fts-config.sql
+48	70	Open-ILS/src/sql/Pg/002.schema.config.sql
+175	0	Open-ILS/src/sql/Pg/030.schema.metabib.sql
+32	0	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+21	0	Open-ILS/src/sql/Pg/999.functions.global.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/000.english.pg90.fts-config.sql
+ mode change 120000 => 100644 Open-ILS/src/sql/Pg/000.english.pg91.fts-config.sql
+
+commit 3249c78b060fb6bcf00964b825c3a77c332f73a4
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Oct 10 17:23:43 2012 -0400
+
+    QueryParser Driver: Remove Unphrases, add negates
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+7	7	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 6a90104750160b087a0252d6775ce5eb61d533d5
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Oct 10 16:51:36 2012 -0400
+
+    Use ][ instead of # to split facets
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2	2	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit bdbec2aadf744331c25c27983402acbdfbe8396a
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Sep 27 16:48:03 2012 -0400
+
+    QueryParser Driver: Add "lucky" modifier
+    
+    Forces to 1 result. Best used with redirect on single hit active.
+    
+    Because why not.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 0662b43a449f33fbb659b94a222da099d342a19c
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Sep 18 11:55:07 2012 -0400
+
+    QueryParser Driver: Improve format filter
+    
+    Allow multi-select in particular, and make negate more intuitive.
+    
+    -format(at-d) would previously generate:
+    -item_type(a,t) -item_form(d)
+    
+    Now it generates:
+    -(item_type(a,t) item_form(d))
+    
+    Multi-select allows for things like:
+    format(at-d,g)
+    
+    To generate:
+    ((item_type(a,t) item_form(d)) || item_type(g))
+    
+    Negating that results in:
+    -((item_type(a,t) item_form(d)) || item_type(g))
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+12	6	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit b4fb02f964b88d4848a2fb0e2d242ed8b3cb5fcf
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Sep 14 12:15:40 2012 -0400
+
+    QueryParser Driver: Long Line Cleanup
+    
+    Both in the code and in the generated where clause.
+    
+    The where clause we start a new line whenever:
+    
+    1 - We encounter an AND or OR
+    2 - We are building a complex subquery (including embedded newlines)
+    3 - We enter a subplan
+    
+    This makes for a nicely human-readable where clause.
+    
+    For the code we split many long lines into multiple. A number of those were
+    changed due to the where clause formatting.
+    
+    We also change all instances of multiple ${spc} being added to use the
+    ${spc} x #
+    method of doing things, as it tends to be shorter.
+    
+    Also, we move some conditionals from the ends of lines to the fronts, mainly
+    in those situations where we are moving something from single to multi line.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+152	58	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit c05bd342e188daa04972d31c00909b81d056e78c
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Sep 14 08:57:45 2012 -0400
+
+    QueryParser Driver: Remove Switch usage
+    
+    Because not all distros install it by default.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+67	83	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 0db54b56c88e540a44f1af2dbec126dd3c6409ba
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Sep 12 09:12:41 2012 -0400
+
+    QueryParser Driver: Improve anchored searches
+    
+    By checking individual atoms for ^ and $ anchors we can get better results,
+    without needing to have people quote individual terms.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+17	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit a4f5bc9dce8fb4065879db02559ef044d31ea888
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Sep 11 15:02:59 2012 -0400
+
+    QueryParser Driver: Protect against NULLs
+    
+    mrd.attrs->'value' can return NULL. If this happens:
+    
+    Checking that the value is within a range or list will work fine.
+    NEGATING that will not.
+    
+    This is because:
+    AND NULL returns NULL
+    AND NOT (NULL) also returns NULL
+    
+    The solution? Adjust things so we can wrap all the offending checks in a
+    COALESCE to false. Then if mrd.attrs->'value' is null we get a false.
+    
+    In the process we move any and all negations to outside the COALESCE.
+    
+    Also apply the same logic to the bib_source filter, not to mention
+    making it support being negated.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+7	8	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 5aa5e26f4053e7193f7cf8f9b6845f027ce34917
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Sep 11 09:48:39 2012 -0400
+
+    Add bib_source filter
+    
+    Because it would likely be very useful, if only for staff.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+7	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 60a420efd8e043439684af693ca331b023106924
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Sep 11 09:42:38 2012 -0400
+
+    Fix empty statuses filter
+    
+    By adding a check that was overlooked.
+    
+    Also remove a leftover TODO note and add another test query.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+1	0	Open-ILS/src/support-scripts/test-scripts/query_tests.pl
+
+commit f5a4c11716fbcf5a248dfa69533fbc660e646e0c
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Sep 11 09:21:36 2012 -0400
+
+    QueryParser Driver: Use proper table alias
+    
+    When all atoms are dummy atoms we need the correct table alias.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 52d16172cf8eed5b11086b01361cfe9def4dc8be
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Sep 11 09:11:29 2012 -0400
+
+    Add some more test queries to query_tester.pl
+    
+    At least one of which requires a follow-up change to the driver to resolve.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+4	0	Open-ILS/src/support-scripts/test-scripts/query_tests.pl
+
+commit ab9fb958e387a20cfe9fafb6035fb72bc5f1fb3f
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Mon Sep 10 16:47:15 2012 -0400
+
+    Remove search.query_parser_fts from schema
+    
+    Including an upgrade script to drop it.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/src/sql/Pg/040.schema.asset.sql
+0	327	Open-ILS/src/sql/Pg/300.schema.staged_search.sql
+3	0	Open-ILS/src/sql/Pg/upgrade/XXXX.drop.query_parser_fts.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.drop.query_parser_fts.sql
+
+commit 613a6da032ab0d177421c36fe07d1d1dd9c6922c
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Mon Sep 10 13:54:55 2012 -0400
+
+    Quick script for pushing queries into search
+    
+    Several of the defaults are designed to trigger bad SQL generation.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+82	0	Open-ILS/src/support-scripts/test-scripts/query_tests.pl
+ create mode 100755 Open-ILS/src/support-scripts/test-scripts/query_tests.pl
+
+commit 6d8872cf120caf67ad6f65995b2c5155fa5ab652
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Sep 7 16:07:26 2012 -0400
+
+    Remove dependence on search.query_parser_fts proc
+    
+    We do this by moving everything into the QueryParser driver, then telling
+    the metabib layer to not call it anymore.
+    
+    In the process we remove the "superpage" checks, instead just getting the
+    entire result set directly from the DB.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2	21	Open-ILS/examples/opensrf.xml.example
+55	131	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm
+225	19	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+4	183	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/metabib.pm
+
+commit c7c3d1bcfd7e394f5698ea0615ad126d71741693
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Sep 7 14:13:08 2012 -0400
+
+    Queryparser Driver: SQL Generation Tweaks
+    
+    Remove fwhere/where distinction due to issues with detecting where some
+    operators were supposed to go.
+    
+    Change format to a callback instead of forcing it to the top of the tree.
+    
+    Change date-based filters to work in nested situations.
+    
+    Change container and record_list to work in nested situations.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+120	150	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 7e2dd736ffe0dbc969ce4e365efe8834889a103a
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Sep 7 10:46:34 2012 -0400
+
+    QueryParser Driver: Adjust query whitespace
+    
+    Adjust spacing and newlines to make the resulting query more easily read.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+14	14	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 9626889ea9c693b2576593591417dcbf11306f93
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Sun Sep 16 16:46:43 2012 -0400
+
+    QueryParser: Expand negate and disallow operators
+    
+    Allow negate to act like disallow on phrases.
+    
+    Allow both to apply to groups.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+30	8	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit 1199e3835f8308ca5a9d9b5329a60594e4710ef5
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Sun Sep 16 15:21:07 2012 -0400
+
+    QueryParser: Add negate operator
+    
+    To replace the previous -atom behavior add a negate op, by default !.
+    
+    This acts identically to how - worked before it was changed to convert atoms
+    into unphrases.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+8	4	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit 9c2df12c20f73619f427fca20fa4b79e167df35c
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Sun Sep 16 15:08:06 2012 -0400
+
+    QueryParser: Treat Unphrases as negated phrases
+    
+    This should allow drivers to better check for negated phrases by using
+    indexes on the contained atoms.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+13	57	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit 56d46e45f58616ab831247f7c6858de55e35962e
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Sun Sep 16 13:53:16 2012 -0400
+
+    QueryParser: Protect phrase parsing
+    
+    Ensure that phrases don't get parsed as containing anything other than
+    individual atoms. This ensures that you can phrase-escape things that would
+    otherwise be treated as QP syntax.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+17	10	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit 8a709bf9ca16355d74f1791483e23a13aea03ed6
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Sep 14 14:28:20 2012 -0400
+
+    Convert negated words to unphrases, like we do with +d words to phrases
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2	2	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit efa0f86ee926d8f3e1068779b3e01eb0943c9a57
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Sep 12 13:12:12 2012 -0400
+
+    Lots ...
+    
+     * increase debugging amount and readability
+     * floating sections (push-to-top)
+     * force plan level setting
+     * fix several forms of auto-pushdown breakage (explicit bool precedence support)
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+154	75	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit 1cdbcb8eccbeec914aeeb05876cc44d164c2052c
+Author: Jared Camins-Esakov <jcamins at cpbibliography.com>
+Date:   Fri Sep 7 22:44:50 2012 -0400
+
+    QueryParser unit test
+    
+    Test that QueryParser can handle a variety of queries. This initial
+    unit test does the following:
+    
+    1) Test the configuration of QueryParser.
+    2) Test that various queries have stable canonical representations.
+    3) Test that a number of equivalent queries are correctly parsed as
+       equivalent.
+    4) Test that a number of non-equivalent queries are correctly parsed as
+       NOT being equivalent.
+    5) Several other tests relating to query parsing.
+    
+    This includes almost 100% subroutine coverage in the QueryParser class.
+    Other classes have somewhat lower test coverage.
+    
+    As of 2012-09-09, several outstanding bugs affect these tests:
+    1) QueryParser->superpage cannot be unset.
+    2) Explicit groups are not handled correctly by the abstract query
+       to string converter.
+    3) There is no defined precedence between explicit boolean connectors
+       and implicit boolean connectors.
+    4) Modifiers are silently dropped when not at the top level of the query.
+    
+    Signed-off-by: Jared Camins-Esakov <jcamins at cpbibliography.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+297	0	Open-ILS/src/perlmods/t/21-QueryParser.t
+ create mode 100644 Open-ILS/src/perlmods/t/21-QueryParser.t
+
+commit ba2ad7bda934b2184eba42dcd1eb1860bbcd6599
+Author: Jared Camins-Esakov <jcamins at cpbibliography.com>
+Date:   Sun Sep 9 10:52:06 2012 -0400
+
+    Start adding skeletal POD for subroutines
+    
+    Signed-off-by: Jared Camins-Esakov <jcamins at cpbibliography.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+341	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit be608c694172d6536b8d48efea5bae4c338fdca6
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Sep 10 15:31:05 2012 -0400
+
+    Move allow_nested_modifiers to the driver level, provide a wrapper for it, and add that to the Pg test setup as an example
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+11	2	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit 264a90828359118a3b736e8de4a14a450997b4eb
+Author: Jared Camins-Esakov <jcamins at cpbibliography.com>
+Date:   Fri Sep 7 23:36:36 2012 -0400
+
+    Allow nested modifiers
+    
+    Signed-off-by: Jared Camins-Esakov <jcamins at cpbibliography.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2	2	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit 1d5ed2a3a1d6eba163d6a92866b2cdeef8ad5165
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Sep 10 14:58:01 2012 -0400
+
+    Pretty-fy canonicalization
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+41	29	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit cdb64b8159ec7edf920bf86dfef2fad96fe12fdf
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Sep 10 13:21:30 2012 -0400
+
+    Teach QP about floating (force-to-top) subplans indicated by {{...}}
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+79	19	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit bdcfdfb259c33d11086e8732e1e689a60d2828cc
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Sep 7 15:51:43 2012 -0400
+
+    QP: OO-ize canonicalizer; remove extra nesting from canonicalized query; repair nested operator in bool nesting; updated (basis) test script
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+3	2	Open-ILS/src/extras/fts-replacement.pl
+39	18	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit 205ea5125eb0c22932ea5774d299d7cac2ba3301
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Fri Sep 7 14:15:21 2012 -0400
+
+    Automatic push-down of explicitly-bool-connected conditions
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+12	2	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.pm
+
+commit bea6cffd710e3f1e05803d8152f41dbe7635f328
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Oct 10 17:00:54 2012 -0400
+
+    LP1071505 - Add 264 RDA tag to TPAC pubinfo display
+    
+    Prior to this, TPAC only retrieved the 260 tag for publication info. Allow for
+    the possibility that the 264 tag might exist and contain relevant information.
+    Special note: the 264 tag must have a second indicator value of 1 to be meant
+    for publication statement.
+    
+    Also, this only picks out the first 260 or 264 tags in any given bib record.
+    
+    Approach inspired by Dan Scott's approach taken for finding edition statements.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+9	3	Open-ILS/src/templates/opac/parts/misc_util.tt2
+
+commit 3f30b4cfbd811dec7ed63f06089369a532fe4b71
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Feb 15 11:05:24 2013 -0500
+
+    Fix some issues that crept into the schema files
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+1	1	Open-ILS/src/sql/Pg/800.fkeys.sql
+4	3	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+
+commit cbb74f8211cf9ff892cabb838f37906c829bed3f
+Author: Ben Shum <bshum at biblio.org>
+Date:   Fri Feb 15 00:52:36 2013 -0500
+
+    Stamping upgrade script for ACQ upload defaults
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+214	0	Open-ILS/src/sql/Pg/upgrade/0755.data.acq_po_upload_defaults.sql
+0	214	Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq_po_upload_defaults.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0755.data.acq_po_upload_defaults.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq_po_upload_defaults.sql
+
+commit f75e86d796a4658d9a60a9f61ddbeb0119612fa7
+Author: Kyle Tomita <ktomita at catalystitservices.com>
+Date:   Thu Feb 14 14:42:10 2013 -0800
+
+    LP1100482 - Add max checked out indicator to patron interface
+    
+    Patron exceeds max checked out indicator is not being displayed on patron page.
+    
+    Created the indicator on the xul pages and the css to style it.  The js code
+    to hide and show indicator was there.
+    
+    Signed-off-by: Kyle Tomita <ktomita at catalystitservices.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+1	0	Open-ILS/xul/staff_client/server/circ/util.js
+1	0	Open-ILS/xul/staff_client/server/patron/display_horiz_overlay.xul
+1	0	Open-ILS/xul/staff_client/server/patron/display_overlay.xul
+1	0	Open-ILS/xul/staff_client/server/skin/patron_display.css
+
+commit c26ef914b2b460b4cbaaf2aa43f10f3efd3feb87
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Feb 14 15:55:49 2013 -0500
+
+    ACQ upload does not persist provider
+    
+    Do not persist upload provider.  The org unit setting for defining a
+    default provide is still available.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+3	2	Open-ILS/web/js/ui/default/acq/common/vlagent.js
+1	1	Open-ILS/web/js/ui/default/acq/picklist/upload.js
+
+commit 2b5fc07b79da80c5aaf25103db3df84d543b0a02
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Feb 13 15:20:37 2013 -0500
+
+    ACQ upload persists fiscal year
+    
+    Persist the last used value for the fiscal year selector.  As noted in
+    the code, this is a stop-gap for using the current org unit fiscal year
+    as a default, which requires additional UI components.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6	0	Open-ILS/web/js/ui/default/acq/picklist/upload.js
+
+commit e3909302e89cdbd4e3bd4de7ec42e3ab3ef1e4c5
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Feb 4 16:01:19 2013 -0500
+
+    Repair ACQ upload defaults settings labels
+    
+    LP 1109258
+    
+    Replace "Upoad" with "Upload".  Remove preceeding "ACQ..." from labels,
+    since it's redundant with the org unit settings group.
+    
+    Thanks to Ben Shum for finding these label errors.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+12	12	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+12	12	Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq_po_upload_defaults.sql
+
+commit d320b850c9b1637ba25b4c1f28383f26c8fcaaaf
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Jan 29 15:10:08 2013 -0500
+
+    ACQ upload form widget persistence release notes
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+7	0	docs/RELEASE_NOTES_NEXT/acq_marc_upload_defaults.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/acq_marc_upload_defaults.txt
+
+commit c447ff9e7b7740fd2cd1da7d19a145fa5883a726
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Jan 25 15:50:48 2013 -0500
+
+    ACQ upload form widget value persistence
+    
+    Provides a two-layer persistence mechanism for the ACQ MARC file upload
+    interface(s).  For most of the widgets in the upload form, there is now
+    a matching org unit setting for configuring values ahead of time.  When
+    such a value is configured, the value will be used.  When no org unit
+    setting value is configured for a field, the value selected by staff is
+    stored locally (at the workstation) and re-used for future loads of the
+    interface.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+109	8	Open-ILS/web/js/ui/default/acq/common/vlagent.js
+19	3	Open-ILS/web/js/ui/default/acq/picklist/upload.js
+
+commit afd6f560bb2e8e599b6dc33ab06b02a248f0c29f
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Jan 28 12:02:26 2013 -0500
+
+    ACQ MARC upload UI default values SQL
+    
+    Adds a series of org unit settings for configuring the default values to
+    use for the acquisistions MARC upload interface.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+211	0	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+214	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq_po_upload_defaults.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq_po_upload_defaults.sql
+
+commit 2317ed132b4db57973650569c23c3a31f1ead737
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Jan 25 15:46:39 2013 -0500
+
+    XUL localStorage interface
+    
+    localStorage is so much better than cookies.  To use it inside of
+    XUL-embedded web pages, we have to use the XUL localStorage interface,
+    since window.localStorage is not available within the oils:// protocol.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+22	1	Open-ILS/web/js/dojo/openils/XUL.js
+
+commit 4e48c4a25f54c4043e492792fde1a0fe6ed0c3da
+Author: James Fournie <jfournie at sitka.bclibraries.ca>
+Date:   Wed Jan 9 12:24:27 2013 -0800
+
+    LP1097928 - Better caps lock message
+    
+    The TPAC login failure message states "Ensure Caps-Lock is off" however
+    as was noted on IRC not long ago, passwords are case-sensitive.  So this
+    message may be misleading.
+    
+    Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/parts/login/form.tt2
+1	1	Open-ILS/web/opac/locale/en-US/opac.dtd
+
+commit e015fe2a01d1e929528c3b5242a4f9f7b94babbc
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Jan 23 13:07:33 2013 -0500
+
+    Acq: EDI omnibus bugfix package
+    
+    EDIReader bugfix - Process misc charges better
+        MOA+304 seems to be an encoding peculiar to Ingram for processing fees.
+    
+    Bubble up errors better from invoice processing
+        Errors were getting logged, but weren't linked on the related
+        acq.edi_message row in the database like they could have been to make
+        debugging easier.
+    
+        This incidentally elevates one possible message from warning level to
+        error, but even as a warning it was stopping the processing of the
+        invoice in question there.  So there's no meaningful difference.
+    
+    Try harder to associate incoming EDI messages with exact right account
+        Sites use many very nearly identical EDI accounts (same host and
+        credentials) with different values only for the label and the vendcode.
+        This allows mapping of an order to a profile on the vendor side.
+    
+        The problem with this is that the edi_fetcher and the processes it
+        kicks off did not know how to map incoming messages to the right
+        account based on vendcode.  That code simply iterated through
+        accounts, using host information and login credentials, and grabbing
+        what it can find, as if
+        there will be no other Evergreen-side EDI "accounts" with the same
+        hostname and loging credentials.
+    
+        This should help with that.
+    
+    Style and whitespace cleanups in O::A::Acq::EDI.pm
+        All I could stand before I just couldn't take it anymore.
+    
+    New PO template created malformed JSON in the INC_COPIES=0 case
+        And now it no longer should.
+    
+    Allow order responses and invoices to omit PO repetition in lineitem refs
+        Usually vendor documents have bits of EDI that look like:
+        RFF+LI:100/123
+        where 100 is a PO number and 123 is a lineitem number.
+    
+        Sometimes, for some documents, B&T at least will omit the '100/' part.
+        This is fine because we don't really need that number repeated for
+        every lineitem.  We do need this change so that our EDI reader code
+        can deal with the omission, though.
+    
+    Be more liberal reading EDIFACT message reference number
+        Spec, if I read it correctly, says that this is alphanumeric, not just
+        numeric, and ULS is one vendor I've seen taking advantage of letters
+        and numbers in that space.
+    
+        This commit makes the relevant regex in our EDIReader appropriately
+        more tolerant.
+    
+    Fixes to new vencode parsing for incoming EDI messages
+    
+    Prevent problem in preventing EDI re-retrieves
+        The query we were using before would needlessly transfer large objects,
+        potentially hitting Jabber message size limits.
+    
+        We're just testing for the existence of such objects, so we need no
+        more than a single ID in the result.
+    
+    Fix EDI invoices for ULS, improve troubleshootability
+        1) Taxes appear in different, but still valid way in ULS invoices than
+        in invoices from other vendors observed to date.
+    
+        2) Invoices from ULS use MOA 203 to indicate unit price instead of the
+        usual meaning of whole-lineitem price.
+    
+        3) Now abuse acq.invoice.note to leave better troubleshooting
+        breadcrumbs.
+    
+    Invoices from EDI had unsavable invoice_items attached
+        Deal with this by letting us create fund_debits a little later than in
+        the previous workflow. We have to, because the EDI-level stuff creating
+        the invoice doesn't know what fund we want to target for taxes and misc
+        charges.
+    
+        The problem we're fixing manifested by showing an alert() dialog about
+        ACQ_FUND_DEBIT_NOT_FOUND.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+278	132	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/EDI.pm
+34	8	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Invoice.pm
+44	6	Open-ILS/src/perlmods/lib/OpenILS/Utils/EDIReader.pm
+2	2	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+
+commit 13973bc1ce189b6ede2afde59b9f8c8487be75b0
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu Feb 14 14:24:00 2013 -0500
+
+    Stamping upgrades for Link Checker
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+96	0	Open-ILS/src/sql/Pg/upgrade/0752.schema.url_verify.sql
+100	0	Open-ILS/src/sql/Pg/upgrade/0753.functions.url_verify.sql
+195	0	Open-ILS/src/sql/Pg/upgrade/0754.data.url_verify.sql
+0	94	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.url_verify.sql
+0	98	Open-ILS/src/sql/Pg/upgrade/YYYY.functions.url_verify.sql
+0	193	Open-ILS/src/sql/Pg/upgrade/ZZZZ.data.url_verify.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0752.schema.url_verify.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0753.functions.url_verify.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0754.data.url_verify.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.url_verify.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/YYYY.functions.url_verify.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/ZZZZ.data.url_verify.sql
+
+commit a280708fe305cfcb746ee91662e0173ebc946864
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Tue Jan 8 18:54:10 2013 -0500
+
+    Link checker: URL extraction bugfix and usability improvements
+    
+    The database procedure for URL extraction did not correctly handle
+    URLs in repeating subfields in the same tag.  Now fixed.
+    
+    You now get a hint if you try to create a session with a name you have
+    used before.
+    
+    Some UI elements on the create session interface have been reordered to
+    be more logical.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+3	0	Open-ILS/src/extras/ils_events.xml
+7	0	Open-ILS/src/perlmods/lib/OpenILS/Application/URLVerify.pm
+7	0	Open-ILS/src/sql/Pg/076.functions.url_verify.sql
+7	0	Open-ILS/src/sql/Pg/upgrade/YYYY.functions.url_verify.sql
+13	12	Open-ILS/src/templates/url_verify/create_session.tt2
+2	0	Open-ILS/web/js/dojo/openils/URLVerify/CreateSession.js
+
+commit 5958b038b5a5d7e0a5b3296c486b71e10381f79d
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Nov 21 13:49:59 2012 -0500
+
+    Link checker: Some UI tweaks suggested by George Duimovich
+    
+      - Make the "Filter" link above FlattenerGrids a button and not a link.
+    
+      - Instead of IDs as links in some grid columns, have the ID show up in
+        plain text and have links with a more descriptive name sit next to the
+        ID.
+    
+      - Correct the settings for saving grid columns on the Select URLs and
+        Review Attempt interfaces.
+    
+      - Tiny i18n fixes (page titles)
+    
+      - Fix lack of horizontal scrollbar on Select URLs interface, and also
+        fix the way that if you clicked on said scrollbar in a case where
+        your grid was taller than your browser window, the page would
+        automatically scroll up to focus on your grid header row, and you
+        couldn't actually manipulate the horizontal scrollbar.  We sadly
+        pay for our horiz scrollbar with a doubled vertical scrollbar, but
+        possibly someone can figure the Right way to fix such layout
+        problems, which actually occur widely in similar interfaces in
+        Evergreen.
+    
+      - Add buttons to download CSV on Select URLs and Review Attempt
+        interfaces.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+8	8	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+8	8	Open-ILS/src/sql/Pg/upgrade/ZZZZ.data.url_verify.sql
+1	1	Open-ILS/src/templates/url_verify/create_session.tt2
+4	1	Open-ILS/src/templates/url_verify/review_attempt.tt2
+21	16	Open-ILS/src/templates/url_verify/select_urls.tt2
+1	1	Open-ILS/src/templates/url_verify/sessions.tt2
+26	64	Open-ILS/web/js/dojo/openils/FlattenerStore.js
+2	2	Open-ILS/web/js/dojo/openils/URLVerify/ReviewAttempt.js
+7	7	Open-ILS/web/js/dojo/openils/URLVerify/Sessions.js
+3	2	Open-ILS/web/js/dojo/openils/URLVerify/nls/URLVerify.js
+11	1	Open-ILS/web/js/dojo/openils/XUL.js
+81	9	Open-ILS/web/js/dojo/openils/widget/FlattenerGrid.js
+6	0	Open-ILS/web/js/dojo/openils/widget/nls/FlattenerGrid.js
+ create mode 100644 Open-ILS/web/js/dojo/openils/widget/nls/FlattenerGrid.js
+
+commit 7bbb842790fa7624890c69543d94cfc07ed9f21b
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Fri Oct 19 15:23:55 2012 -0400
+
+    Link checker: make bib ID visible by default in attempt review view
+    
+    Since a piece of workflow (opening the bib in the MARC editor) hangs
+    off of it, may as well not hide it.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/templates/url_verify/review_attempt.tt2
+
+commit 99d7cfa1ff96e45e6925f309768e047bf67fcbd4
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Fri Oct 19 14:34:49 2012 -0400
+
+    Link checker: Links to MARC Editor in verification review interface
+    
+    Now you can click on the number in the Record ID column on any row in
+    the verification review interface to launch the MARC Editor for that
+    record.
+    
+    This is only supports the most basic of possible mediation workflows to
+    follow a link checker run, but more could be done with future
+    development.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/templates/url_verify/review_attempt.tt2
+40	0	Open-ILS/web/js/dojo/openils/URLVerify/ReviewAttempt.js
+4	1	Open-ILS/web/js/dojo/openils/URLVerify/nls/URLVerify.js
+
+commit 2ef32ae20b71628bc6b913c3df70260223426629
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Sep 26 17:35:05 2012 -0400
+
+    Link checker: Allow configurable User Agent string
+    
+    Credit to Bill Erickson for noticing that tests were resulting in an
+    inordinate number of 403 Forbidden responses, which turned out to be
+    due to discrimination by sites against a libwww/* user agent string.
+    
+    We now use "Evergreen <version> Link Checker" by default, and it's
+    configurable in opensrf.xml (grep for user_agent).
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	0	Open-ILS/examples/opensrf.xml.example
+18	1	Open-ILS/src/perlmods/lib/OpenILS/Application/URLVerify.pm
+
+commit 6801cd2653aae17da606441a1d64fa7723faed4f
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Sep 26 14:34:17 2012 -0400
+
+    Link checker: technical overview (documentation)
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+113	0	docs/TechRef/LinkChecker.txt
+ create mode 100644 docs/TechRef/LinkChecker.txt
+
+commit b7a5f1040ffb678f2db0fb8c05321c9291414007
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Fri Aug 31 17:31:43 2012 -0400
+
+    Link checker: user interface and supporting fixes (part 2)
+    
+    Started verification review UI, also SCHEMA CHANGES
+        It just doesn't work for me to not have url_verify.url directly related
+        to url_verify.session.  When dealing with the "root" URL in a redirect
+        chain, you can get the related session through url_selector, but not when
+        you have any later URL in the chain.  The only way for IDL perms to work
+        would be to have a link to a view using a CTE to find the "root" URL.
+        That's too complex, so instead of that I've just added a session fkey on
+        url_verify.url.
+    Corrections to the preceding commit
+    Vertical scrolling UI glitches fixed
+    Fix broken display of verification attempt in progress
+    Implement the "process immediately" switch, hitherto unhooked up
+    Verify-all now means all-matching-my-search-terms, not necessarily all-in-uvs
+    let's do filter sets a little more generalized-like
+    Permission fixing
+    Filter set loading works.
+    Filter loading: gracefully skip unknown fields, remove inital empty row
+    Saving filter sets
+    Fix filter dialog for pkey fields, scrolliness issue, saved filters issue
+    Pretty start page for staff client menu to land on
+    Staff client menu entry
+    User settings for saved columns
+    Session cloning, working and rather tested
+    show name of session on url select page ...
+        ... and link back to that on review attempt page
+    IN / NOT IN for filter somewhat working, but doesn't save/load yet
+    Saving/loading filter rows for IN, NOT IN operators
+    Printing
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+61	38	Open-ILS/examples/fm_IDL.xml
+3	6	Open-ILS/src/perlmods/lib/OpenILS/Application/URLVerify.pm
+17	0	Open-ILS/src/sql/Pg/002.schema.config.sql
+1	10	Open-ILS/src/sql/Pg/075.schema.url_verify.sql
+2	2	Open-ILS/src/sql/Pg/076.functions.url_verify.sql
+13	0	Open-ILS/src/sql/Pg/800.fkeys.sql
+53	4	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+10	3	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.url_verify.sql
+2	2	Open-ILS/src/sql/Pg/upgrade/YYYY.functions.url_verify.sql
+62	0	Open-ILS/src/sql/Pg/upgrade/ZZZZ.data.url_verify.sql
+4	0	Open-ILS/src/templates/base.tt2
+10	5	Open-ILS/src/templates/url_verify/create_session.tt2
+78	0	Open-ILS/src/templates/url_verify/review_attempt.tt2
+27	22	Open-ILS/src/templates/url_verify/select_urls.tt2
+51	0	Open-ILS/src/templates/url_verify/sessions.tt2
+11	1	Open-ILS/web/js/dojo/openils/FlattenerStore.js
+115	28	Open-ILS/web/js/dojo/openils/URLVerify/CreateSession.js
+67	0	Open-ILS/web/js/dojo/openils/URLVerify/ReviewAttempt.js
+53	57	Open-ILS/web/js/dojo/openils/URLVerify/SelectURLs.js
+74	0	Open-ILS/web/js/dojo/openils/URLVerify/Sessions.js
+59	0	Open-ILS/web/js/dojo/openils/URLVerify/Verify.js
+13	7	Open-ILS/web/js/dojo/openils/URLVerify/nls/URLVerify.js
+19	1	Open-ILS/web/js/dojo/openils/widget/FlattenerFilterDialog.js
+33	14	Open-ILS/web/js/dojo/openils/widget/FlattenerGrid.js
+443	44	Open-ILS/web/js/dojo/openils/widget/PCrudFilterPane.js
+9	1	Open-ILS/web/js/dojo/openils/widget/nls/PCrudFilterPane.js
+2	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+23	5	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+3	0	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
+1	0	Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties
+ create mode 100644 Open-ILS/src/templates/url_verify/review_attempt.tt2
+ create mode 100644 Open-ILS/src/templates/url_verify/sessions.tt2
+ create mode 100644 Open-ILS/web/js/dojo/openils/URLVerify/ReviewAttempt.js
+ create mode 100644 Open-ILS/web/js/dojo/openils/URLVerify/Sessions.js
+ create mode 100644 Open-ILS/web/js/dojo/openils/URLVerify/Verify.js
+
+commit 3a2f6181daf37eeb4bb6b4357fad50762f4d1a92
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 31 09:59:58 2012 -0400
+
+    Link checker: URLVerify.pm; response throttling repairs
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+6	4	Open-ILS/src/perlmods/lib/OpenILS/Application/URLVerify.pm
+
+commit 61195ba35fbf3a5a557be81b03af3e70d7a938c1
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Fri Aug 17 12:17:00 2012 -0400
+
+    Link checker: user interface and supporting fixes (part 1)
+    
+    Add open-ils.url_verify service to example OpenSRF configs
+    ML methods to create sessions and do the searching/bucketing
+        We can't use PCRUD to create url_verify.session objects because a) you
+        couldn't trust the creator field if we allowed that, and b) the
+        container foreign key has a not-null constraint, so you have to create
+        that first, and you can't do that with PCRUD.
+        I've removed the C, U and D perms for PCRUD for url_verify.session, but
+        I left the R in case we wind up using that.
+    Beginnings for the big session kick-off UI.  Not yet functional.
+    Get all search results, not just first 10
+    Check for session ownership and for previous searchitude
+    Deal with moved publish_fieldmapper() method
+        This is a companion commit to
+        fac45ab9b1cb8924 / Move Fieldmapper API call to Application.pm
+        Without it, Flattener and Action/Trigger stop working with errors like
+        this:
+        [Mon Aug 20 13:50:18 2012] [error] [client XXX.XXX.XXX.XXX] Exception:
+        OpenSRF::EX::ERROR 2012-08-20T13:50:18 main -e:0 System ERROR:
+        Exception: OpenSRF::DomainObject::oilsMethodException
+        2012-08-20T13:50:18 OpenSRF::AppRequest
+        /usr/local/share/perl/5.10.1/OpenSRF/AppSession.pm:1064 <500>   *** Call
+        to [open-ils.fielder.flattened_search.execute.atomic] failed for session
+        [1345485018.767884163.96534353976], thread trace [1]:\nNo field by the
+        name publish_fieldmapper in Fieldmapper! at
+        /usr/local/share/perl/5.10.1/OpenILS/Utils/Fieldmapper.pm line
+        270.\n\n\n\n, referer:
+        http://XXXXXXX/eg/conify/global/actor/search_filter_group
+    Use a perm that actually exists
+    More UI work. Saved search selector & search scope OU selector & cosmetics
+    Fix subtle Perl issue
+        Not a syntax error that the compiler will catch, but see
+        "perldoc -f do" which will lead you do "perldoc perlsyn"
+    Buckets and their items aren't designed to be PCRUD accessible,
+        so we need a handy view to link URL Verify Sessions to the bib
+        contained.  We can leverage this in flattener queries.
+    Pretty much finished session create UI but for cloning
+    Permisison fixing
+    whitespace
+    Fix previously nonfunctional stored procedure url_verify.extract_urls(INT,INT)
+    Call URL extraction phase from UI
+    Fix xpath generation to match what works
+    Various fixes, largely UI
+    Refactor create_session as dojo module.
+    Fix IDL permissions that require jumps
+    Essentials for URL selecting interface
+    Verification sorta works
+    A note about open-ils.url_verify.verify_url for future reference
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+61	33	Open-ILS/examples/fm_IDL.xml
+21	0	Open-ILS/examples/opensrf.xml.example
+1	0	Open-ILS/examples/opensrf_core.xml.example
+7	0	Open-ILS/src/extras/ils_events.xml
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Flattener.pm
+3	3	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger.pm
+6	6	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Event.pm
+279	17	Open-ILS/src/perlmods/lib/OpenILS/Application/URLVerify.pm
+3	3	Open-ILS/src/sql/Pg/076.functions.url_verify.sql
+7	7	Open-ILS/src/sql/Pg/upgrade/YYYY.functions.url_verify.sql
+130	0	Open-ILS/src/templates/url_verify/create_session.tt2
+66	0	Open-ILS/src/templates/url_verify/select_urls.tt2
+352	0	Open-ILS/web/js/dojo/openils/URLVerify/CreateSession.js
+106	0	Open-ILS/web/js/dojo/openils/URLVerify/SelectURLs.js
+15	0	Open-ILS/web/js/dojo/openils/URLVerify/nls/URLVerify.js
+1	0	Open-ILS/web/js/dojo/openils/widget/FilteringTreeSelect.js
+24	4	Open-ILS/web/js/dojo/openils/widget/FlattenerGrid.js
+ create mode 100644 Open-ILS/src/templates/url_verify/create_session.tt2
+ create mode 100644 Open-ILS/src/templates/url_verify/select_urls.tt2
+ create mode 100644 Open-ILS/web/js/dojo/openils/URLVerify/CreateSession.js
+ create mode 100644 Open-ILS/web/js/dojo/openils/URLVerify/SelectURLs.js
+ create mode 100644 Open-ILS/web/js/dojo/openils/URLVerify/nls/URLVerify.js
+
+commit 9e1d009950edc1d2b9bea1aa11ff047d7f9c802d
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Aug 13 16:10:38 2012 -0400
+
+    Link checker: DB layer fixes
+    
+    Function for ingesting URLs from container item + session
+    New container type for url verification sessions
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+43	0	Open-ILS/src/sql/Pg/076.functions.url_verify.sql
+1	0	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+5	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.url_verify.sql
+42	0	Open-ILS/src/sql/Pg/upgrade/YYYY.functions.url_verify.sql
+
+commit 073bb779d7c11c6e74dba9a1f0023536cccd9872
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Aug 7 16:28:33 2012 -0400
+
+    Link checker: middle layer work, actual parallelized machinery to check links
+    
+    Added is_event check to AppUtils
+    URLVerify.pm getting started
+    URLVerify.pm; firing batch url verify calls
+    URLVerify.pm; docs / cleanup
+    Constraints need unique names
+    Liberalize res_code constraint
+    URLVerify.pm; resume options; docs
+    URLVerify.pm; initial testing tweaks
+    Move Fieldmapper API call to Application.pm
+    Move export of opensrf.open-ils.system.fieldmapper API call from
+        Fieldmapper.pm into Application.pm with the rest of the shared API
+        calls.  This allows us to remove the OpenSRF::Application base from
+        Fieldmapper, which was causing some method name collisions.  For
+        example, if a Fieldmapper object had a field called "session", which,
+        incidentally, is also a method of OpenSRF::Application, the version
+        from OpenSRF::Application would get called instead of the Fieldmapper
+        version, since Fieldmapper methods are defined during AUTOLOAD.
+        Hilarity was guaranteed to ensue.
+    URLVerify.pm; more testing tweaks
+    URLVerify.pm; redirects / error handling
+    url_verify perm/org setting seed data
+    url_verify perm/org setting seed data
+    url_verify perm/org setting seed data
+    url_verify seed data (trigger)
+    url verify seed data / null constraint repairs
+    URLVerify.pm; settings, tmp caching, cleanup / misc
+    url verify seed data repairs
+    url_verify seed data / sql manifest
+    url_verify schema repair / res-code constraint
+    Do the same thing I did to fix constrain names in upgr scripts to baseline
+    URLVerify.pm; move to lwp to support ftp and simplify
+    URLVerify.pm; apply timeout to lwp useragent; comments
+    URLVerify.pm; avoid re-processing same url within the same attempt
+    URLVerify.pm; avoid re-processing same url within the same attempt (thinko)
+    URLVerify.pm; avoid re-processing same url repairs; honor delay=0
+    URLVerify.pm; docs; url shuffling
+    URLVerify.pm; docs; url shuffling
+    URLVerify.pm; docs; url domain looping; cleanup
+    URLVerify.pm; docs; tested redirect max/loops and repairs
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+14	0	Open-ILS/src/perlmods/lib/OpenILS/Application.pm
+13	1	Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm
+587	0	Open-ILS/src/perlmods/lib/OpenILS/Application/URLVerify.pm
+0	14	Open-ILS/src/perlmods/lib/OpenILS/Utils/Fieldmapper.pm
+8	8	Open-ILS/src/sql/Pg/075.schema.url_verify.sql
+97	1	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+2	0	Open-ILS/src/sql/Pg/sql_file_manifest
+8	8	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.url_verify.sql
+27	0	Open-ILS/src/sql/Pg/upgrade/YYYY.functions.url_verify.sql
+131	0	Open-ILS/src/sql/Pg/upgrade/ZZZZ.data.url_verify.sql
+ create mode 100644 Open-ILS/src/perlmods/lib/OpenILS/Application/URLVerify.pm
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/ZZZZ.data.url_verify.sql
+
+commit 23101c610ccd606764e4f531ee2a9994c935f81f
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Aug 6 15:51:04 2012 -0400
+
+    Link checker: DB layer and similar changes for URL Verification
+    
+    Schema and IDL changes for URL Verification functionality
+    Start building URL-Validation related funcitons
+    Add Rose::URI to the CPAN_MODULES list
+    Add ON INSERT trigger to parse the URL as it is added
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+291	0	Open-ILS/examples/fm_IDL.xml
+2	1	Open-ILS/src/extras/Makefile.install
+102	0	Open-ILS/src/sql/Pg/075.schema.url_verify.sql
+64	0	Open-ILS/src/sql/Pg/076.functions.url_verify.sql
+82	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.url_verify.sql
+22	0	Open-ILS/src/sql/Pg/upgrade/YYYY.functions.url_verify.sql
+ create mode 100644 Open-ILS/src/sql/Pg/075.schema.url_verify.sql
+ create mode 100644 Open-ILS/src/sql/Pg/076.functions.url_verify.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.url_verify.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/YYYY.functions.url_verify.sql
+
+commit eccdd75a4a9a2b5b0ea73311586d352cd5f2aa5d
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Dec 6 10:19:00 2012 -0500
+
+    Repair tpac OU hiding test for copy counts display
+    
+    Ensure calls to ctx.org_hiding_disabled() are made against the context
+    (ctx) object, instead of the old-style in-template invocation without
+    the context.
+    
+    Thanks to Dale Rigney for spotting this.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/templates/opac/parts/record/copy_counts.tt2
+
+commit 0e4d2442b88986702a49217fa3fbfaa6b916c5df
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Sep 21 13:58:46 2012 -0400
+
+    TPAC Org unit hiding
+    
+    Adds support for the opac.org_unit_hiding.depth org unit setting to
+    TPAC, which makes out-of-scope org units disappear (except when
+    explicitly requested).
+    
+    Ui changes:
+    
+    All search org unit selectors
+    Holds pickup lib selector
+    Copy summary in search results page
+    Copy list in search results page
+    Copy summary in record detail page (which controls the copy grid).
+    Hold summary in record detail
+    
+    Org unit hiding is based on the physical_loc (Physical Location) param /
+    cookie, which is the closest analog to 'ol' (original location), from
+    which it was based in the JSPAC.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+22	2	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm
+11	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
+79	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm
+9	0	Open-ILS/src/templates/opac/parts/misc_util.tt2
+9	1	Open-ILS/src/templates/opac/parts/org_selector.tt2
+3	1	Open-ILS/src/templates/opac/parts/record/copy_counts.tt2
+14	2	Open-ILS/src/templates/opac/parts/record/summary.tt2
+9	4	Open-ILS/src/templates/opac/parts/result/copy_counts.tt2
+20	0	docs/RELEASE_NOTES_NEXT/tpac-ou-hiding.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/tpac-ou-hiding.txt
+
+commit 9ae4a8e104d554332301670632a50493e2da1ff2
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu Feb 14 11:00:42 2013 -0500
+
+    Don't sort filter group entries in the template
+    
+    They are now delivered sorted by 'pos', and the template sorting was
+    ascii-betical anyway, which is incorrect.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+3	8	Open-ILS/src/templates/opac/parts/filter_group_selector.tt2
+
+commit 0c49049db5ed43f263bc960b5da06900b699f73a
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu Feb 14 10:51:37 2013 -0500
+
+    Sort search filter group entries by 'pos'
+    
+    We use a fleshed cstore call to grab search filter groups and their entries,
+    but we don't currently sort them by their 'pos' field, which is it's purpose.
+    cstore will apply order_by expressions to the applicable tables in a fleshed
+    search/retrieve. This does that.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm
+
+commit cf1e67373238132f159c8edffcc5236a00ef6e8a
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Sep 26 10:42:41 2012 -0400
+
+    More receipt macros
+    
+    Patron/Staff Middle Name and patron expiration date.
+    
+    Including a YMD format variant of the latter.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+8	0	Open-ILS/xul/staff_client/chrome/content/util/print.js
+
+commit e4be604a1adafaae9bd05283a8fc4fdce3c87e99
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Feb 13 10:55:05 2013 -0500
+
+    Add release notes for hold patron name display
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+7	0	docs/RELEASE_NOTES_NEXT/hold_patron_name.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/hold_patron_name.txt
+
+commit 79720bbb0f5033f0a5dcae5ff86d75ea41d5e71d
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Feb 13 11:15:22 2013 -0500
+
+    Style barcode not found message, hide on empty
+    
+    The barcode not found message should stand out more, so make it a text alert.
+    
+    In addition, empty barcode isn't really "not found" but still invalid. Hide the
+    "barcode not found" message and disable submit on empty barcode.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+4	0	Open-ILS/src/templates/opac/css/style.css.tt2
+3	0	Open-ILS/web/js/ui/default/opac/staff.js
+
+commit d51caad5280c94fb21bead47001f67adf4e3de8e
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Feb 13 10:30:47 2013 -0500
+
+    TPAC - add "patron barcode not found" message to hold placement page
+    
+    Add "Patron barcode not found" as an error text next to the barcode entry
+    when the lookup fails. This message helps warn staff that the barcode they
+    are attempting to use is not valid.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+1	1	Open-ILS/src/templates/opac/parts/place_hold.tt2
+2	0	Open-ILS/web/js/ui/default/opac/staff.js
+
+commit 83a6d922f0d9c4a71cce5c9df96c078f6a14e5d9
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Feb 13 10:27:09 2013 -0500
+
+    TPAC - gray out hold submit button
+    
+    When disabled, recolor to gray to indicate that it is disabled.
+    
+    This will turn back to normal once a valid user is found.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+7	0	Open-ILS/src/templates/opac/css/style.css.tt2
+
+commit 3006a1b3ff41342966913c85f1366b165a700198
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Feb 13 09:49:49 2013 -0500
+
+    TPac: Disable staff hold place submit button by default
+    
+    Because if we don't have a barcode in the box we shouldn't be submitting.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+
+3	2	Open-ILS/web/js/ui/default/opac/staff.js
+
+commit 0da2a803dc982611ad0b6fd0f4eded6baaef797a
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Feb 13 09:06:07 2013 -0500
+
+    TPac: Invalidate 'current' barcode on invalid
+    
+    Hold placement should allow you to go back to the previous valid barcode.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+
+2	0	Open-ILS/web/js/ui/default/opac/staff.js
+
+commit bec0ab371a59ac7c3bd94494968ce23897fbddec
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Feb 12 09:47:30 2013 -0500
+
+    TPac: Load name from patron place hold interface
+    
+    only_settings is applied from there, so check if a barcode was entered.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+
+1	1	Open-ILS/web/js/ui/default/opac/staff.js
+
+commit d0eae88d8a1c665474bb5fd05b5665550a536c6e
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Feb 12 09:10:29 2013 -0500
+
+    TPac: Load patron name when placing holds
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+
+2	2	Open-ILS/src/templates/opac/parts/place_hold.tt2
+15	2	Open-ILS/web/js/ui/default/opac/staff.js
+7	1	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+
+commit dc02f87a9ce84eb81c4845fc21f0f7660501b52c
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Feb 6 16:01:49 2013 -0500
+
+    ForceExternal: Compare hostnames case insensitive
+    
+    Lowercase both sides to avoid "right host, wrong case" issues.
+    
+    Resolves LP1081699 where the external browser would be used due to
+    hostname case sensitivity.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/xul/staff_client/components/forceexternal.js
+
+commit a7da0c23c6c7392dbc2c9fa25a816a66708d8e2d
+Author: Ben Shum <bshum at biblio.org>
+Date:   Fri Feb 8 17:30:52 2013 -0500
+
+    Add release note for clickable patron indicators
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6	0	docs/RELEASE_NOTES_NEXT/clickable_patron_indicators.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/clickable_patron_indicators.txt
+
+commit 15ebe4fa801a378b88681398d3c2dd9614308da6
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Fri Feb 8 16:41:43 2013 -0500
+
+    Remove See Messages from the invalid email and phone labels
+    
+    The "See Messages" part of the label might be misleading since clicking these
+    indicators opens the patron edit screen. Since replacing the email or
+    phone number automatically removes these messages, there is no need to
+    direct the user to the messages screen.
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	2	Open-ILS/web/opac/locale/en-US/lang.dtd
+
+commit f37b1e87e6fec295df2dd97ed39725860ec26270
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Oct 11 13:34:32 2012 -0400
+
+    Stop highlighting indicators
+    
+    The way that commands were highlighted when selected, highlighted
+    both the indicators and the buttons. Change to only hightlight
+    the tabbed buttons.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+6	8	Open-ILS/xul/staff_client/server/patron/display.js
+
+commit 1c1ace019cbd870bdf4636f5049dc306c0d3772e
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Oct 3 15:27:54 2012 -0400
+
+    Make patron indicators clickable
+    
+    For example, make "(See Notes)" bring you to notes, provided the patron is
+    already loaded (aka, not from search).
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+7	0	Open-ILS/xul/staff_client/server/patron/display.js
+14	14	Open-ILS/xul/staff_client/server/patron/display_horiz_overlay.xul
+14	14	Open-ILS/xul/staff_client/server/patron/display_overlay.xul
+
+commit 25f8ba16c8825e42c3a154b61b3ee0b0b4a6ab10
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Jan 21 17:02:42 2013 -0500
+
+    TPAC: Make locale picker match default locale
+    
+    As noted by Pasi Kallinen, the language picker would not reflect the
+    chosen locale unless your cookie had been set or there was an explicit
+    CGI parameter with the locale name.
+    
+    Accordingly, get the default locale from the context vars and use that
+    to set the selected value for the language picker in the absence of
+    anything else, to prevent the picker from possibly confusingly showing
+    the first language alphabetically rather than the currently displayed
+    language in the rest of the UI.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6	1	Open-ILS/src/templates/opac/parts/locale_picker.tt2
+
+commit 828b202a99b5cc97fcea53a0409f298acc3bd546
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Jan 2 12:33:36 2013 -0500
+
+    LP #1092921: Display of/sorting by CN affixes in Simplified Hold Pull List
+    
+    In the Simplified Hold Pull List interface, the "Call Number Label" column
+    displays the call number of the copy targeted by the hold in each row,
+    and it does so by combining affixes with the actual label field.
+    Sorting of this column actually uses the call number sortkey generated
+    in-database for this purpose.
+    
+    Sometimes this means that sorting order doesn't match what you'd
+    expect to see with this column.  Opinions differ on desired behavior, so
+    now you can explicity add columns to the table for call number prefix
+    and suffix, and sort on either of those (potentially in combination with
+    other columns).
+    
+    Amended from an earlier version of this commit that still didn't sort
+    CN prefix and suffix columns quite right.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+12	2	Open-ILS/src/templates/circ/hold_pull_list.tt2
+
+commit 10114e3aeb26341f3441ebff6e3a102b2fcc1ea5
+Author: Mark Cooper <markchristophercooper at gmail.com>
+Date:   Tue Oct 16 11:02:23 2012 -0700
+
+    LP#1067361: vandelay: batch queue deletion no longer works
+    
+    Because window.location.reload can trigger before the deletions
+    have occurred. Simple fix (band aid?) is to make the delete
+    calls in sync.
+    
+    Signed-off-by: Mark Cooper <markchristophercooper at gmail.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/web/js/ui/default/vandelay/vandelay.js
+
+commit 11dd0bd8b9614db85cd0789efccbd1bb0edefaa3
+Author: Ben Shum <bshum at biblio.org>
+Date:   Tue Jan 29 00:27:55 2013 -0500
+
+    LP1054053 - Remove white padding around login inputs
+    
+    Forget efforts to make the boxes bigger and smoother as it was in the past.
+    Instead, opting for a cleaner look by removing the extra white background
+    that was part of the padding surrounding the actual login input area. This
+    removes the feeling that the box area should have been bigger than it really
+    is.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+
+1	2	Open-ILS/src/templates/opac/css/style.css.tt2
+
+commit 1477178a2960ca8e18b1d0342e2bb9b7ccf16f0c
+Author: Michael Peters <mrpeters at library.in.gov>
+Date:   Tue Nov 27 09:05:35 2012 -0500
+
+    Replace "Mirror Mirror" default non-AC jacket cover
+    
+    Every item in KPAC that doesn't have a jacket cover uses
+    the cover for "Mirror Mirror".  This is inappropriate, so
+    lets replace it with a small blank image.
+    
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+-	-	Open-ILS/web/images/kpac/item_image.jpg
+ mode change 100755 => 100644 Open-ILS/web/images/kpac/item_image.jpg
+
+commit 2920f7a11fba60de2e9ca7c8ec9a0482cd7ac939
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Thu Sep 20 13:10:15 2012 -0400
+
+    LP1053526 - Don't inadvertently modify the in-memory org tree when printing
+    
+    To see an example of this causing a problem, load Holdings Maintenance for
+    an arbitrary bib record with items. Make sure the Hide Empty Libs checkbox
+    is checked. Hit the Print button at the bottom of the UI (it's okay to then
+    Cancel the print). Then hit Refresh. It should result in an org.children()
+    is null error.
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	2	Open-ILS/xul/staff_client/chrome/content/util/list.js
+
+commit a997ffe33fa865e212189717ba1799d97fbeb62d
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Mon Nov 5 08:48:46 2012 -0500
+
+    LP1075586 - Remove top bar in staff client
+    
+    Chances are it is rigged for patron, not staff, use.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/parts/topnav.tt2
+
+commit 83620c60d631e488ed453b255228c324ea1104b4
+Author: Dan Pearl <dpearl at cwmars.org>
+Date:   Thu Jan 17 14:56:18 2013 -0500
+
+    LP #1100914: Input focus for staff client portal should be the text box.
+    
+    Suggested by a librarian:
+    Save a click by putting the initial focus of the Portal page in the search box.
+    Previously, entering the text box would eliminate the decorative background image;
+    now, pressing on any key while focus in the box will eliminate the text.
+    
+    Signed-off-by: Dan Pearl <dpearl at cwmars.org>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	1	Open-ILS/xul/staff_client/server/index.xhtml
+
+commit 9ee59172f7353f102244fd3d4153875c6a65163d
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Thu Jan 31 10:51:40 2013 -0500
+
+    Copy_offset and copy_limit shouldn't persist in URL
+    
+    Added copy_offset and copy_limit to stop_parms definition so that they
+    don't persist in URL when returning to search results or launching
+    subject/series searches.
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/parts/record/body.tt2
+
+commit 439bf426083603e8f36f904883fdbd200fce13cf
+Author: Ben Shum <bshum at biblio.org>
+Date:   Fri Jan 25 09:37:29 2013 -0500
+
+    TPAC - Add parse_datetime to expire_date
+    
+    As reported by paxed in IRC, sometimes the function for expire_date has
+    troubles and you get an apache internal server error page and log errors
+    like:
+    
+    egweb: template error: date error - bad time/date string:
+    expects 'h:m:s d:m:y'  got: '2015-01-31T00:00:00+0200'
+    
+    Adding the ctx.parse_datetime() function to wrap the ctx.user.expire_date
+    resolves this problem.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+
+2	2	Open-ILS/src/templates/opac/parts/myopac/main_base.tt2
+
+commit fbded261a9e82a9135e9e346ceee6cfa3c6e087a
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Mon Jan 21 14:54:55 2013 -0500
+
+    Serials: Caption/pattern wizard use enum fields for chronology when no enum
+    
+    MFHD spec says that when there are no ‡a - ‡f enumeration captions, any
+    chronology captions should move back from their usual ‡i - ‡m places
+    back into enumeration space.
+    
+    The predictions engine we already have deals with this better than with
+    the wrong patterns we were creating before, e.g.:
+    
+    853 20 ‡81 ‡i(year) ‡j(month) ‡wm
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+15	3	Open-ILS/xul/staff_client/server/serial/pattern_wizard.js
+
+commit 5a47a857c5994f1251341391fd4123148f22c441
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Aug 17 16:07:19 2012 -0400
+
+    Deal with opt-in boundaries defensively
+    
+    If a site had not set an 'org.patron_opt_default' OU setting, then it
+    seemed that a DEFAULT value was getting dumped into the "create opt-in"
+    INSERT statement for the org_unit argument, and that (as there is a
+    non-NULL constraint on the column and no default value for the column)
+    resulted in the patron not getting opted in.
+    
+    One way for sites to deal with this is to set an opt-in boundary at the
+    consortial level, along the lines of:
+    
+    INSERT INTO actor.org_unit_setting (org_unit, name, value)
+      VALUES (1, 'org.patron_opt_default', 2);
+    
+    Alternatively, in the absense of any such setting, opt-in should
+    continue to work as it had before the new feature was added; this change
+    keeps the old behaviour active in that case.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+5	2	Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm
+
+commit 37794afa3eff7fa01f7dce7f1c411d9997dc1060
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Nov 5 09:22:55 2012 -0500
+
+    LP1051112 - Display lineitem commands menu on empty picklists
+    
+    Ensure that the lineitem commands drop-down menu appears even when the
+    picklist is empty.  Previously, the commands were not displayed until
+    the first lineitem was retrieved.  For empty picklists, of course, there
+    will be no first lineitem.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+3	0	Open-ILS/web/js/ui/default/acq/picklist/view.js
+
+commit 77a021f9c1a523e6beb3354c4dc05853cda43035
+Author: Ben Shum <bshum at biblio.org>
+Date:   Thu Oct 11 00:10:54 2012 -0400
+
+    LP1066158 - Add associated permissions to admin menu commands
+    
+    For the admin menu, we had already begun to check for specific permissions
+    to allow staff to access the menu options.  However, it is not complete.
+    
+    This is a first attempt to add additional permissions to various local
+    and server admin options.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Mark Cooper <markchristophercooper at gmail.com>
+
+81	28	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
+
+commit 53e1bc8d25b92ff799198158debe1b901c66a5c5
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Mon Jan 21 11:38:49 2013 -0500
+
+    LP#1102472: add about:about to staff client developer menu
+    
+    The about:about page contains many XULRunner diagnostic tools.
+    
+    Some useful ones include:
+    
+    about:buildconfig - Get information about how the staff client is built.
+    about:config - Tweak XULRunner settings.
+    about:memory - Get detailed information about staff client memory usage.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+6	0	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+4	0	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
+13	0	docs/RELEASE_NOTES_NEXT/about_about.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/about_about.txt
+
+commit 128258dc5e75ff4d6ca5abc109c0df27d8fbd47d
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Fri Jan 25 21:35:13 2013 -0500
+
+    Documentation: acquisitions updates
+    
+    Update Search for Line Items from an Invoice section to reflect minor
+    changes that came with lp1050008. Also, moved received Items from an
+    Invoice section to fall within the rest of the Invoices section.
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+6	0	docs/acquisitions/invoices.txt
+3	3	docs/acquisitions/receive_items_from_invoice.txt
+-	-	docs/media/Search_for_line_items_from_an_invoice2.jpg
+
+commit bcfcca4497edd20f91358a92330e45620cbd28da
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Tue Jan 22 09:36:08 2013 -0500
+
+    Documentation: Update staff client installation for 2.3.3 version.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+3	3	docs/installation/staff_client_installation.txt
+
+commit 8e0676664248f9a0dc6bd0c110d9a2270e3bcea6
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Tue Jan 22 09:17:26 2013 -0500
+
+    Documentation: Update upgrading the server instructions to point to 2.3.3.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+13	12	docs/installation/server_upgrade.txt
+
+commit 829462a97d2c28d698c43adc01897e5946ed581f
+Author: Ben Shum <bshum at biblio.org>
+Date:   Sun Jan 20 01:16:13 2013 -0500
+
+    TPAC - new CSS for login help elements
+    
+    Instead of having everything hard coded into the page, move important
+    pieces into the style.css.tt2.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+12	0	Open-ILS/src/templates/opac/css/style.css.tt2
+1	1	Open-ILS/src/templates/opac/parts/login/form.tt2
+6	5	Open-ILS/src/templates/opac/parts/login/help.tt2
+
+commit 6fe4ddc7153117f30196b5013c4ed02de927dfc8
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Dec 21 16:10:09 2012 -0500
+
+    TPAC - Remove images from login help page
+    
+    Because images are hard to translate.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+6	4	Open-ILS/src/templates/opac/parts/login/help.tt2
+-	-	Open-ILS/web/images/faqs-btn.png
+-	-	Open-ILS/web/images/questions.png
+ delete mode 100644 Open-ILS/web/images/faqs-btn.png
+ delete mode 100644 Open-ILS/web/images/questions.png
+
+commit cc0542584c924e53ab312633ea13ca69cd5bd16e
+Author: Ben Shum <bshum at biblio.org>
+Date:   Fri Dec 21 15:47:40 2012 -0500
+
+    LP1054053 - make default input font darker
+    
+    The original light grey made it difficult to see what was being input.
+    Change to use text font color variable (black by default).
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+1	1	Open-ILS/src/templates/opac/css/style.css.tt2
+
+commit 142ec2f42021a38c3bdf55714c3c91177b542c98
+Author: Dan Scott <dan at coffeecode.net>
+Date:   Sat Jan 19 14:28:06 2013 -0500
+
+    TPAC: Fix series display for multiple series fields
+    
+    This commit adds one test record, "Harry Potter and the Goblet of Fire",
+    which contains multiple series fields. TPAC would display the series
+    fields in a purely additive fashion as the variable was not reset after
+    each field. Now we initialize the series var for each new series field
+    we retrieve, fixing the display problem.
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/parts/record/series.tt2
+2	1	Open-ILS/tests/datasets/sql/bibs_graphic_880.sql
+
+commit 363e2ef1fd1c87b8c3b8b2f814c8a6b0ddfec29f
+Author: Ben Shum <bshum at biblio.org>
+Date:   Thu Jan 10 17:01:05 2013 -0500
+
+    Unbold graphic 880 title display
+    
+    To maintain consistency with the main title being unbolded and have
+    a little less bolding distraction in the record.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+5	0	Open-ILS/src/templates/opac/css/style.css.tt2
+
+commit 5bbc273feb3a5626df02baf3cd77d7a0d8fad198
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Thu Jan 10 16:55:01 2013 -0500
+
+    Added 880 series display to Release Notes.
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	1	docs/RELEASE_NOTES_NEXT/alternate_graphic_fields.txt
+
+commit 1b1f2fd6ce9fe0f226598a8217beee22f2b2aff1
+Author: Dan Scott <dan at coffeecode.net>
+Date:   Mon Jan 7 18:16:57 2013 -0500
+
+    Make series in record details behave
+    
+    Add graphic 880 field support, as well as relying on mkurl() macro to
+    generate the desired URL and show the complete series on a single line
+    instead of having subfields appear on separate rows.
+    
+    Add a sample record that contains a 440 series field linked to an 880
+    field.
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+29	12	Open-ILS/src/templates/opac/parts/record/series.tt2
+2	1	Open-ILS/tests/datasets/sql/bibs_graphic_880.sql
+
+commit 60e637ea18f90a309b09e0014921f05d85931fe7
+Author: Dan Scott <dan at coffeecode.net>
+Date:   Sat Jan 5 20:49:27 2013 -0500
+
+    Add test records for graphic 880 field display
+    
+    "--load-all" in eg_db_config.pl will load these records with call
+    numbers of "G880 ", so you can shelf-browse, or search by title:
+    
+    * Tu shuo Zhongguo jie
+    * Matsumoto Shigeharu
+    * Schrödinger operators
+    * Breathing, feeding, and neuroprotection
+    * Data warehousing and knowledge discovery
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+19	0	Open-ILS/tests/datasets/sql/assets_graphic_880.sql
+9	0	Open-ILS/tests/datasets/sql/bibs_graphic_880.sql
+6	0	Open-ILS/tests/datasets/sql/load_all.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/assets_graphic_880.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/bibs_graphic_880.sql
+
+commit 1785a9289cbcecf9b56a2cec64b386cf4857ff62
+Author: Dan Scott <dan at coffeecode.net>
+Date:   Fri Jan 4 23:55:13 2013 -0500
+
+    Release notes for alternate graphic 880 fields
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+67	0	docs/RELEASE_NOTES_NEXT/alternate_graphic_fields.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/alternate_graphic_fields.txt
+
+commit a1f619bd3748c52ea177e52898bdf7b27826e007
+Author: Dan Scott <dan at coffeecode.net>
+Date:   Fri Jan 4 16:26:30 2013 -0500
+
+    TPAC: Alternate graphic fields (880) display
+    
+    In the search results and record details displays, display the
+    corresponding 880 field(s) whenever possible.
+    
+    The contents of the 880 field are generally displayed directly
+    underneath the corresponding primary field, with the exception of the
+    contributor credits on the record details page, in which the 880
+    contents appear between the name of the contributor and the
+    contributor's credit.
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+121	9	Open-ILS/src/templates/opac/parts/misc_util.tt2
+17	1	Open-ILS/src/templates/opac/parts/record/authors.tt2
+11	0	Open-ILS/src/templates/opac/parts/record/contents.tt2
+11	0	Open-ILS/src/templates/opac/parts/record/subjects.tt2
+43	0	Open-ILS/src/templates/opac/parts/record/summary.tt2
+65	2	Open-ILS/src/templates/opac/parts/result/table.tt2
+
+commit 3f211c52fb8a34bcdfdd66287b1d6ebd784d0a81
+Author: Ben Shum <bshum at biblio.org>
+Date:   Mon Dec 3 10:37:43 2012 -0500
+
+    Update staff client's about page to include newest core committers
+    
+    The newest core committers were elected during the Evergreen Hack-A-Way on
+    October 10, 2012:
+    
+    Jeff Godin, Traverse Area District Library
+    Benjamin Shum, Bibliomation, Inc.
+    Jason Stephenson, Merrimack Valley Library Consortium
+    
+    Also update language of page to reflect that these contributors are now core
+    "committers" rather than "developers".  And move past core committers into
+    their own section.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+13	6	Open-ILS/xul/staff_client/chrome/content/main/about.html
+
+commit ee6b43a6782b9b0b7d462e51bf19d182d891719f
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Jan 16 15:18:56 2013 -0500
+
+    Add 2.2.4 -> 2.2.5 upgrade script
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+278	0	Open-ILS/src/sql/Pg/version-upgrade/2.2.4-2.2.5-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.2.4-2.2.5-upgrade-db.sql
+
+commit c86c856762175a83fd8889b1ddcd6fbe624f2014
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Jan 16 15:18:57 2013 -0500
+
+    Forward-porting 2.3.2 -> 2.3.3 DB upgrade
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+314	0	Open-ILS/src/sql/Pg/version-upgrade/2.3.2-2.3.3-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.3.2-2.3.3-upgrade-db.sql
+
+commit 853426f500b57ee6467f6c8225beb5c77f5b963c
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Tue Jan 15 11:30:41 2013 -0500
+
+    LP#1098377: protect against even more cstore segfaults
+    
+    Following up on the preceding patch, passing null
+    as the savepoint name to savepoint.release and
+    savepoint.rollback would also segfault cstore.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+12	0	Open-ILS/src/c-apps/oils_sql.c
+
+commit 95533a4516fe3d9de56b7e6fa8ca798f06e26b03
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Jan 15 10:58:16 2013 -0500
+
+    Verify savepoint name is non-null
+    
+    Before we attempt to mangle the name, let's ensure that it's non-null.
+    Otherwise, segfaults ensue.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+6	0	Open-ILS/src/c-apps/oils_sql.c
+
+commit 8d51da5033f82c668db6b07f1cbec8269e4cd2bc
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Jan 11 01:32:13 2013 -0500
+
+    Protect against overly long savepoint names
+    
+    Per http://postgresql.org/docs/9.1/static/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS,
+    the maximum identifier length works out to being 63 bytes (+1 for the
+    null terminator), so to avoid potential memory pressure by a 10GB string
+    somehow being passed in as the savepoint name, malloc no more than 64
+    bytes and copy no more than 63 bytes from the incoming name to the
+    escaped name.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+16	2	Open-ILS/src/c-apps/oils_sql.c
+
+commit ce9d5391b7b51af91a8827ebff555624bca809e4
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Fri Jan 11 02:30:50 2013 -0500
+
+    LP#1098377: sanitize savepoint names
+    
+    When invoking open-ils.{cstore,pcrud,rstore}.savepoint.*, the
+    caller supplies a name for the savepoint.  However, the savepoint
+    names could be constructed so that the caller could execute
+    arbitrary SQL.  This patch sanitizes the name so that it contains
+    only alphanumeric and underscore characters.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+37	3	Open-ILS/src/c-apps/oils_sql.c
+
+commit fb9a80bdf082963df053705a0af0bc7585be9979
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Jan 16 11:04:23 2013 -0500
+
+    2.3.3 translations : repair Finnish translator email
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	build/i18n/po/AutoFieldWidget.js/fi-FI.po
+1	1	build/i18n/po/Searcher.js/fi-FI.po
+1	1	build/i18n/po/TranslatorPopup.js/fi-FI.po
+1	1	build/i18n/po/User.js/fi-FI.po
+1	1	build/i18n/po/XULTermLoader.js/fi-FI.po
+1	1	build/i18n/po/admin.properties/fi-FI.po
+1	1	build/i18n/po/auth.properties/fi-FI.po
+1	1	build/i18n/po/authority.js/fi-FI.po
+1	1	build/i18n/po/capture.js/fi-FI.po
+1	1	build/i18n/po/cat.properties/fi-FI.po
+1	1	build/i18n/po/circ.properties/fi-FI.po
+1	1	build/i18n/po/common.properties/fi-FI.po
+1	1	build/i18n/po/conify.dtd/fi-FI.po
+1	1	build/i18n/po/conify.js/fi-FI.po
+1	1	build/i18n/po/db.seed/fi-FI.po
+1	1	build/i18n/po/fm_IDL.dtd/fi-FI.po
+1	1	build/i18n/po/ils_events.xml/fi-FI.po
+1	1	build/i18n/po/lang.dtd/fi-FI.po
+1	1	build/i18n/po/offline.properties/fi-FI.po
+1	1	build/i18n/po/opac.dtd/fi-FI.po
+1	1	build/i18n/po/opac.js/fi-FI.po
+1	1	build/i18n/po/patron.properties/fi-FI.po
+1	1	build/i18n/po/pickup_and_return.js/fi-FI.po
+1	1	build/i18n/po/pull_list.js/fi-FI.po
+1	1	build/i18n/po/register.js/fi-FI.po
+1	1	build/i18n/po/reports.dtd/fi-FI.po
+1	1	build/i18n/po/reports.js/fi-FI.po
+1	1	build/i18n/po/reservation.js/fi-FI.po
+1	1	build/i18n/po/selfcheck.js/fi-FI.po
+1	1	build/i18n/po/serial.properties/fi-FI.po
+
+commit a4a1f8d35677d646d2631800323263b96e885aad
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Jan 16 10:39:31 2013 -0500
+
+    2.3.3 translations : newpot
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+120	120	build/i18n/po/db.seed/db.seed.pot
+9	9	build/i18n/po/tpac/tpac.pot
+
+commit 0f52d31d127d283a34abd5a594bb7fb2fb06dc5f
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Jan 16 10:35:33 2013 -0500
+
+    2.3.3 translations : update profiles
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+6	6	build/i18n/po/AutoFieldWidget.js/fi-FI.po
+6	6	build/i18n/po/Searcher.js/fi-FI.po
+6	6	build/i18n/po/TranslatorPopup.js/fi-FI.po
+6	6	build/i18n/po/User.js/fi-FI.po
+6	6	build/i18n/po/XULTermLoader.js/fi-FI.po
+7	7	build/i18n/po/admin.properties/fi-FI.po
+7	7	build/i18n/po/auth.properties/fi-FI.po
+6	6	build/i18n/po/authority.js/fi-FI.po
+8	8	build/i18n/po/capture.js/fi-FI.po
+54	125	build/i18n/po/cat.properties/fi-FI.po
+17	5	build/i18n/po/circ.properties/cs-CZ.po
+15	3	build/i18n/po/circ.properties/de-DE.po
+15	3	build/i18n/po/circ.properties/en-CA.po
+15	3	build/i18n/po/circ.properties/en-GB.po
+15	3	build/i18n/po/circ.properties/es-ES.po
+53	35	build/i18n/po/circ.properties/fi-FI.po
+16	4	build/i18n/po/circ.properties/fr-CA.po
+15	3	build/i18n/po/circ.properties/hy-AM.po
+15	3	build/i18n/po/circ.properties/oc-FR.po
+15	3	build/i18n/po/circ.properties/pt-BR.po
+15	3	build/i18n/po/circ.properties/ru-RU.po
+203	63	build/i18n/po/circ.properties/tr-TR.po
+9	5	build/i18n/po/common.properties/cs-CZ.po
+7	3	build/i18n/po/common.properties/de-DE.po
+7	3	build/i18n/po/common.properties/en-CA.po
+9	5	build/i18n/po/common.properties/en-GB.po
+9	5	build/i18n/po/common.properties/es-ES.po
+14	31	build/i18n/po/common.properties/fi-FI.po
+7	3	build/i18n/po/common.properties/fr-CA.po
+7	3	build/i18n/po/common.properties/hy-AM.po
+7	3	build/i18n/po/common.properties/oc-FR.po
+7	3	build/i18n/po/common.properties/pt-BR.po
+7	3	build/i18n/po/common.properties/ru-RU.po
+7	7	build/i18n/po/conify.dtd/fi-FI.po
+8	7	build/i18n/po/conify.js/fi-FI.po
+719	719	build/i18n/po/db.seed/cs-CZ.po
+719	719	build/i18n/po/db.seed/de-DE.po
+719	719	build/i18n/po/db.seed/en-CA.po
+719	719	build/i18n/po/db.seed/en-GB.po
+719	719	build/i18n/po/db.seed/es-ES.po
+11	11	build/i18n/po/db.seed/fi-FI.po
+719	719	build/i18n/po/db.seed/fr-CA.po
+719	719	build/i18n/po/db.seed/hy-AM.po
+719	719	build/i18n/po/db.seed/oc-FR.po
+719	719	build/i18n/po/db.seed/pt-BR.po
+719	719	build/i18n/po/db.seed/ru-RU.po
+719	719	build/i18n/po/db.seed/tr-TR.po
+1378	1374	build/i18n/po/fm_IDL.dtd/cs-CZ.po
+1375	1371	build/i18n/po/fm_IDL.dtd/de-DE.po
+1375	1371	build/i18n/po/fm_IDL.dtd/en-CA.po
+1375	1371	build/i18n/po/fm_IDL.dtd/en-GB.po
+1375	1371	build/i18n/po/fm_IDL.dtd/es-ES.po
+24	24	build/i18n/po/fm_IDL.dtd/fi-FI.po
+1375	1371	build/i18n/po/fm_IDL.dtd/fr-CA.po
+1375	1371	build/i18n/po/fm_IDL.dtd/hy-AM.po
+1375	1371	build/i18n/po/fm_IDL.dtd/oc-FR.po
+1375	1371	build/i18n/po/fm_IDL.dtd/pt-BR.po
+1375	1371	build/i18n/po/fm_IDL.dtd/ru-RU.po
+1375	1371	build/i18n/po/fm_IDL.dtd/tr-TR.po
+4	4	build/i18n/po/ils_events.xml/cs-CZ.po
+39	43	build/i18n/po/ils_events.xml/fi-FI.po
+76	3	build/i18n/po/lang.dtd/ar-AR.po
+108	23	build/i18n/po/lang.dtd/cs-CZ.po
+76	3	build/i18n/po/lang.dtd/de-DE.po
+76	3	build/i18n/po/lang.dtd/en-CA.po
+76	3	build/i18n/po/lang.dtd/en-GB.po
+77	4	build/i18n/po/lang.dtd/es-ES.po
+660	763	build/i18n/po/lang.dtd/fi-FI.po
+77	4	build/i18n/po/lang.dtd/fr-CA.po
+76	3	build/i18n/po/lang.dtd/hy-AM.po
+76	3	build/i18n/po/lang.dtd/oc-FR.po
+76	3	build/i18n/po/lang.dtd/pt-BR.po
+76	3	build/i18n/po/lang.dtd/ru-RU.po
+76	3	build/i18n/po/lang.dtd/tr-TR.po
+130	8	build/i18n/po/multiclass_search_help.html/fi-FI.po
+18	4	build/i18n/po/offline.properties/cs-CZ.po
+17	3	build/i18n/po/offline.properties/de-DE.po
+21	7	build/i18n/po/offline.properties/en-CA.po
+18	4	build/i18n/po/offline.properties/en-GB.po
+17	3	build/i18n/po/offline.properties/es-ES.po
+31	28	build/i18n/po/offline.properties/fi-FI.po
+17	3	build/i18n/po/offline.properties/fr-CA.po
+18	4	build/i18n/po/offline.properties/hy-AM.po
+18	4	build/i18n/po/offline.properties/oc-FR.po
+17	3	build/i18n/po/offline.properties/pt-BR.po
+17	3	build/i18n/po/offline.properties/ru-RU.po
+17	3	build/i18n/po/offline.properties/tr-TR.po
+4	4	build/i18n/po/opac.dtd/cs-CZ.po
+30	24	build/i18n/po/opac.dtd/fi-FI.po
+15	15	build/i18n/po/opac.dtd/oc-FR.po
+12	12	build/i18n/po/opac.js/fi-FI.po
+10	4	build/i18n/po/patron.properties/cs-CZ.po
+7	3	build/i18n/po/patron.properties/de-DE.po
+7	3	build/i18n/po/patron.properties/en-CA.po
+7	3	build/i18n/po/patron.properties/en-GB.po
+7	3	build/i18n/po/patron.properties/es-ES.po
+74	68	build/i18n/po/patron.properties/fi-FI.po
+7	3	build/i18n/po/patron.properties/fr-CA.po
+7	3	build/i18n/po/patron.properties/hy-AM.po
+7	3	build/i18n/po/patron.properties/oc-FR.po
+7	3	build/i18n/po/patron.properties/pt-BR.po
+7	3	build/i18n/po/patron.properties/ru-RU.po
+7	3	build/i18n/po/patron.properties/tr-TR.po
+6	6	build/i18n/po/pickup_and_return.js/fi-FI.po
+9	9	build/i18n/po/pull_list.js/fi-FI.po
+22	22	build/i18n/po/register.js/fi-FI.po
+13	13	build/i18n/po/register.js/fr-CA.po
+25	25	build/i18n/po/reports.dtd/fi-FI.po
+8	7	build/i18n/po/reports.js/fi-FI.po
+16	13	build/i18n/po/reservation.js/fi-FI.po
+10	8	build/i18n/po/selfcheck.js/fi-FI.po
+12	10	build/i18n/po/serial.properties/fi-FI.po
+
+commit 2327eff2bb0dc587e3f3bbe0837e8a847f9d1f56
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Mon Dec 10 15:27:40 2012 -0500
+
+    Minor fix in Open-ILS/src/templates/opac/parts/place_hold_result.tt2
+    
+    The hidden override field had two type attrs: "hidden" and "name."
+    I deleted the one with the value of "name."
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	Open-ILS/src/templates/opac/parts/place_hold_result.tt2
+
+commit e6b376997ac078b422fee8785923ff1eac73b9c0
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Mon Dec 10 10:29:21 2012 -0500
+
+    LP1076062: Hold overrides not working properly.
+    
+    Edit the verify_copy_for_hold helper function to actually work.  There
+    were cases where it would permit a copy when it shouldn't and also
+    disallow a copy when it should have allowed it.  It now makes better
+    use of the oargs override argument.
+    
+    If oargs has an events member, the method now removes the matching from
+    the list of failure events returned by the permit_copy_hold check.  It
+    was previously bugged, stopping on the first matching event, clearing
+    the list of failed and events, and returning a value to indicate that
+    the copy is permitted for the hold, even when it may not be.
+    
+    If oargs has the "all" member and there are failure events remaining,
+    the function loops through those events checking if the requestor has
+    the override permission for the event.  If the requestor does have the
+    override permission, then the event is added to oargs->{events} to be
+    saved for future checks on future copies.  It the requestor does not
+    have the override permission, then the event is pushed onto a new array
+    of failed events and also onto oargs->{failed}.  The latter is kept
+    to avoid looking up events repeatedly on future copy checks.
+    
+    The oargs->{failed} member is added as a shortcut to avoid repeatedly
+    looking up override permissions when the requestor does not have them.
+    It is actually checked, when present, before the user permission is
+    checked with a costly database lookup.
+    
+    Since verify_copy_for_hold has no other way to determine that an override
+    was requested, it checks for the events and/or all members of oargs being
+    set and having a value that would evaluate to true.  If oargs is undefined,
+    a hashref with no members, or lacks a "true" events or all member, then
+    verify_copy_for_hold functions as though no overrides are requested.
+    
+    Additionally, all functions that call verify_copy_for_hold, either directly
+    or indirectly, have had their intro logic modified to only set oargs when
+    an override is requested and oargs is not already set.  We make the assump-
+    tion that if oargs is set, it contains the events member.  (Perhaps that is
+    a poor assumption, but all of the code so far looks like it will work.)
+    
+    Fix test_and_create_hold_batch so that it passes the oargs parameter into
+    open-ils.circ.title_hold.is_possible in the way that check_title_hold (the
+    implementation function) actually expects it to be passed.  This also means
+    that we need to delete oargs from the params hashref before creating the
+    hold objects, as that would blow up if it were present.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+55	12	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit 2474dff73de53a7f774950431fa2a34e5b717331
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Wed Dec 5 10:20:45 2012 -0500
+
+    Whitespace cleanup on aisle 9!
+    
+    Fix whitespace (spaces, not tabs) in OpenILS/Application/Circ/Holds.pm.
+    
+    Also, remove trailing whitespace at the end of lines.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+689	687	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit 0e33a2671133ea0bf268ff443ec3255f61b02640
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Jan 16 09:39:56 2013 -0500
+
+    Avoid CStoreEditor failures on missing log-protect
+    
+    When the log_protect configuration chunk is not present in
+    opensrf_core.xml, gracefully move on without it.  This prevents errors
+    like:
+    
+    Can't call method \"shared\" on an undefined value at
+    /usr/local/share/perl/5.10.1/OpenILS/Utils/CStoreEditor.pm line 646.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+12	8	Open-ILS/src/perlmods/lib/OpenILS/Utils/CStoreEditor.pm
+
+commit 7a7c229db5044712ad44ad5a75ca7a65cd6d9105
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Nov 2 09:53:30 2012 -0400
+
+    Fix backdate near DST changes
+    
+    When the due date and the backdate date are on opposite sides of a DST
+    boundary we were getting an hour off on the checkin time (using the
+    original due date's time).
+    
+    This commit changes it so that instead we just set the hour and minute
+    values on the backdate date to the due date's versions, leaving the time
+    zone alone.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+3	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+
+commit 2b2bb871bdaadbf6051bf3a03aa193915eb0cdf3
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Fri Jan 11 13:11:48 2013 -0500
+
+    LP#1098669: improve handling of Content Cafe external content in staff client
+    
+    This patch introduces a new TPac content variable, ctx.ext_proto, to
+    specify whether external content should be retrieved via HTTP or HTTPS.
+    ctx.proto can't be used for that purpose since it's set to 'oils' when
+    TPac is running inside the staff client.
+    
+    This fixes a bug where Content Cafe reviews wouldn't display in the staff
+    client bib record page and where clicking on the reviews link from search
+    results would open an empty window.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm
+1	1	Open-ILS/src/templates/opac/parts/record/summaryplus.tt2
+2	2	Open-ILS/src/templates/opac/parts/result/table.tt2
+
+commit 8eb30ca76a541dcf2f90d1e9492a2b73c104c0a4
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Jan 15 14:08:03 2013 -0500
+
+    2.3 Release notes update
+    
+    Merge the edireader and edi_order_template release notes into the 2.3
+    release notes files.  Added a blurb to the Upgrade Notes regarding the
+    lack of an automatic EDI template upgrade.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+66	0	docs/RELEASE_NOTES_2_3.txt
+0	18	docs/RELEASE_NOTES_NEXT/edi_order_template.txt
+0	28	docs/RELEASE_NOTES_NEXT/edireader.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/edi_order_template.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/edireader.txt
+
+commit 0f2a698496d13f07c78a34ae8c6a4b8cffe69253
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Oct 1 11:54:00 2012 -0400
+
+    ACQ invoice search persistence repaired
+    
+    Use XUL cookieService / cookieManager for managing cookies in embedded
+    web pages, since dojo.cookie cannot manage cookies within xulrunner.
+    
+    Persist cookies for 30 days.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+58	5	Open-ILS/web/js/ui/default/acq/invoice/view.js
+
+commit 1970bb4d66f3c39c9843a5cd21a30bb1c947f101
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Jan 14 22:39:51 2013 -0500
+
+    Docs: minor formatting fixes for "borrowing items" chapter
+    
+    * Images need to have a trailing [] ; ideally this would contain the
+      alt text for the image, but the [] is needed to make the images
+      show up at all
+    * Since we're touching the image:: tags anyway, make the filename
+      extensions consistently lower case
+    * Fix a processing error; a bulleted list item wrapped so that > was the
+      first character on a line, which made Asciidoc angry. Easiest thing to
+      do to avoid this is just to indent the wrapped lines for each bullet
+      item, but we'll do the minimal thing and just indent this one line
+      this time.
+    * Fix one instance of Word "smart quotes" having replaced ye olde single
+      quotes.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+11	11	docs/admin_initial_setup/borrowing_items.txt
+-	-	docs/media/circ_example1.PNG
+-	-	docs/media/circ_example1.png
+-	-	docs/media/circ_example2.PNG
+-	-	docs/media/circ_example2.png
+-	-	docs/media/circ_example3.PNG
+-	-	docs/media/circ_example3.png
+ delete mode 100644 docs/media/circ_example1.PNG
+ create mode 100644 docs/media/circ_example1.png
+ delete mode 100644 docs/media/circ_example2.PNG
+ create mode 100644 docs/media/circ_example2.png
+ delete mode 100644 docs/media/circ_example3.PNG
+ create mode 100644 docs/media/circ_example3.png
+
+commit edea54aa1546a7ca89cd700770d75ffdc16eb7b0
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Mon Jan 14 21:43:57 2013 -0500
+
+    Borrowing items: who, what, for how long
+    
+    Adding Borrowing Items chapter from Evergreen in Action to the official
+    docs.`
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+231	0	docs/admin_initial_setup/borrowing_items.txt
+-	-	docs/media/circ_duration_rules.jpg
+-	-	docs/media/circ_example1.PNG
+-	-	docs/media/circ_example2.PNG
+-	-	docs/media/circ_example3.PNG
+-	-	docs/media/circ_max_fine_rules.jpg
+-	-	docs/media/circ_recurring_fine_rules.jpg
+-	-	docs/media/copy_locations_circulate.png
+2	0	docs/root.txt
+ create mode 100644 docs/admin_initial_setup/borrowing_items.txt
+ create mode 100644 docs/media/circ_duration_rules.jpg
+ create mode 100644 docs/media/circ_example1.PNG
+ create mode 100644 docs/media/circ_example2.PNG
+ create mode 100644 docs/media/circ_example3.PNG
+ create mode 100644 docs/media/circ_max_fine_rules.jpg
+ create mode 100644 docs/media/circ_recurring_fine_rules.jpg
+ create mode 100644 docs/media/copy_locations_circulate.png
+
+commit e56f3e59be42ee727efb6c20e4697ab45c909fc5
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Sep 11 12:41:08 2012 -0400
+
+    EDI order template improvements (no SQL upgrade script!)
+    
+    Improved template for EDI purchase orders.  This theoretically just
+    works better where the old template worked.  Corrections made for
+    interactions with ULS, Midwest Tape, Baker & Taylor, and Recorded Books
+    especially.  GIR segments in the right place.
+    
+    And also the template is just more maintainable now.
+    
+    **THERE IS NO UPGRADE SCRIPT INCLUDED**.  Sites using EDI may not
+    necessarily want to mess with what they already have working.
+    
+    If you want the changes, and maybe you do, especially if you're doing
+    enriched ordering and/or ordering from the vendors listed above, you can
+    extract the template changes easily enough yourself from the
+    950.data.seed-values.sql file.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+164	40	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+18	0	docs/RELEASE_NOTES_NEXT/edi_order_template.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/edi_order_template.txt
+
+commit 894d7806c6d650974e0663acd8d094f0d4896856
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Mon Jan 14 16:59:12 2013 -0500
+
+    Upgrade script numbering for edireader branch
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+15	0	Open-ILS/src/sql/Pg/upgrade/0751.data.acq_cancel_not_accepted.sql
+0	14	Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq_cancel_not_accepted.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0751.data.acq_cancel_not_accepted.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq_cancel_not_accepted.sql
+
+commit ab737a9aa7cc0ddcd671a17c240f0c85a8bc954d
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Dec 26 16:27:38 2012 -0500
+
+    EDIReader release notes
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+28	0	docs/RELEASE_NOTES_NEXT/edireader.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/edireader.txt
+
+commit e525c10aac6f1b3a975aa6b943642cc3bb9cc1d0
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Dec 13 09:44:55 2012 -0500
+
+    Handle cancelled (back-order) lineitems in EDI invoice
+    
+    Receiving an invoice for a cancelled lineitem mean the lineitem is no
+    longer cancelled.  Identify such lineitems and uncancel them along with
+    the requested number of not-yet-invoiced copies.
+    
+    This work flow is common for back-order items.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+66	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/EDI.pm
+
+commit 976d33c2d1fcb6a4fccd684e7d21f0c8854c2adb
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Dec 12 12:50:47 2012 -0500
+
+    EDIReader: improve monetary regexes
+    
+    Make no attempt to enforce/decipher monetary amounts in the regexes,
+    simply capture the values.  If they are invalid, Postgres will let us
+    know.
+    
+    This change allows us to capture non-numeric (\d) characters (e.g. "."),
+    which are of course common in monetary amounts.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+5	5	Open-ILS/src/perlmods/lib/OpenILS/Utils/EDIReader.pm
+
+commit 2f7c5eff26c310e4afe1ef73480249d013227f51
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Dec 5 09:34:00 2012 -0500
+
+    EDI invoice date; invoice paid quantity/amount
+    
+    * capture the invoice date in EDIReader
+    * apply the invoice date to inbound invoices when available instead of
+      defaulting to 'now'
+    * apply the quantity/amount billed to the quantity/amount paid to reduce
+      staff data entry needs
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+20	7	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/EDI.pm
+2	1	Open-ILS/src/perlmods/lib/OpenILS/Utils/EDIReader.pm
+
+commit f51e4fdbdebfc716d46c1e116f20120f3a2a6912
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Dec 4 10:00:26 2012 -0500
+
+    EDI: ensure lineitem 'state' matches cancel state
+    
+    When cancelling a lineitem becuase all linked copies are cancelled,
+    ensure that the lineitem state is set to "cancelled".
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+9	3	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/EDI.pm
+
+commit bf19d2c8487f7277721c386175a3147621f32872
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Dec 3 14:51:41 2012 -0500
+
+    EDI response honor lineitem-level status; debit cleanup
+    
+    * Honor lineitem-level order status info (FTX+LIN) which indicates, in
+      some cases, that all ordered copies should be cancelled because the LI
+      as a whole is cancelled
+    
+    * Delete fund debits for cancelled lineitem details when appropriate
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+139	30	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/EDI.pm
+5	1	Open-ILS/src/perlmods/lib/OpenILS/Utils/EDIReader.pm
+1	0	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+14	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq_cancel_not_accepted.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq_cancel_not_accepted.sql
+
+commit 62e15ea09a0e974b721df5f4c4b5d476ffc03a88
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Dec 3 09:20:29 2012 -0500
+
+    EDI: protect against invalid order response
+    
+    Do not attempt to createI EDI messages for order responses which
+    reference nonexistent purchase orders, since it results in
+    transaction commit errors on invalid foreign keys, preventing
+    subsequent EDI files from getting processed.  Instead, log it
+    and skip it.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+4	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/EDI.pm
+
+commit 8ad5d5b00dbe3cc8f56e6a104facbf7bf3f6e920
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Nov 12 09:35:53 2012 -0500
+
+    EDIReader : detect SAN vs. account number in buyer/seller
+    
+    NAD+BY+XXXXXXX::31B' -- SAN
+    NAD+BY+YYYYYYY::91' -- Account number
+    
+    For invoices, try the SAN first followed by the account number to
+    determine the receiving org unit.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+32	17	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/EDI.pm
+4	2	Open-ILS/src/perlmods/lib/OpenILS/Utils/EDIReader.pm
+
+commit 6f6f8f6a00c8b444681c131e4da9dd4236ac7570
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Sep 28 10:34:28 2012 -0400
+
+    Custom/local EDI reader module for ORDRSP and INVOIC (etc)
+    
+    Provides a new perl module (OpenILS::Utils::EDIReader) for reading
+    inbound EDI messages and producing data structures more easily
+    understood by the ACQ code.  Through this, extraction of EDI data is
+    focused in one module instead of spread through various layers.
+    
+    EDIReader is a small, purpose built module focusing solely on extracting
+    the needed EDI data and is not meant to be a general purpose EDI library.
+    
+    * Updates edi_fetcher and the ORDRSP and INVOIC handling code to use the
+      new libs.
+    
+    * Removes Business::EDI Evergreen dependency, since it's no longer used (and
+      is quite large).
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+0	1	Open-ILS/src/extras/Makefile.install
+0	1	Open-ILS/src/perlmods/Build.PL
+252	598	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/EDI.pm
+158	0	Open-ILS/src/perlmods/lib/OpenILS/Utils/EDIReader.pm
+12	1	Open-ILS/src/perlmods/t/14-OpenILS-Utils.t
+1	2	Open-ILS/src/support-scripts/edi_fetcher.pl
+9	0	Open-ILS/src/support-scripts/test-scripts/edi_reader.pl
+ create mode 100644 Open-ILS/src/perlmods/lib/OpenILS/Utils/EDIReader.pm
+ create mode 100755 Open-ILS/src/support-scripts/test-scripts/edi_reader.pl
+
+commit 2fee9f9693b382c999a62be75604d0bc2752fe0e
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Fri Jan 11 08:49:11 2013 -0500
+
+    Fix a data destruction bug when authorities are updated.
+    
+    Modify the two-argument form of vandelay.merge_record_xml to return
+    the target_marc when the add_rule, preserve_rule, replace_rule and
+    strip_rule are all empty.
+    
+    This method is used by authority.propagate_changes and would replace
+    the bibliographic record's marc with the overlay template when the
+    above would happen. By returning the biblographic record entry's own
+    marc in that case, we prevent data destruction.
+    
+    Additionally, protect bib and authority template overlay functions
+    in the same manner.
+    
+    Commit includes an upgrade script for this change as well as
+    for the previous commit's authority.generate_overlay_template fix.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+12	3	Open-ILS/src/sql/Pg/012.schema.vandelay.sql
+275	0	Open-ILS/src/sql/Pg/upgrade/0750.function.authority.generate_overlay_template.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0750.function.authority.generate_overlay_template.sql
+
+commit 59fa7d1b6df7453b68d0da218220c902f5ec0fcd
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu Jan 10 16:35:44 2013 -0500
+
+    Only consider main entry headings for bib overlay
+    
+    Restrict the authority fields we will pull overlay data from to those
+    that do not subordinate themselves to other authority fields.  That
+    is, skip see-from/see-also/etc for bib overlay.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	1	Open-ILS/src/sql/Pg/011.schema.authority.sql
+
+commit 8e854c6a4edafe506780573fafe35c5e647a3e58
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Jan 9 16:20:39 2013 -0500
+
+    LP #1075167: Serials: Avoid infinite loop in holdings summarization
+    
+    When receiving items with unworkable combinations of holdings and
+    patterns, the holdings summarization code can get stuck in an infinite
+    loop.  This solution prevents that, sparing the open-ils.serial
+    process and server resources, although it doesn't help the user out.
+    
+    It will take further examination of the problem and reëvalution of how
+    we deal with problems reported by OpenILS::Utils::MFHD to help the
+    user avoid or resolve these situations.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+3	0	Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD.pm
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD/Caption.pm
+
+commit 67a5b12ed5b8c7e2455bf20e78a69949eb8fffba
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Sat Jan 5 22:01:54 2013 -0500
+
+    Adding Designing Your Catalog chapter from the Evergreen In Action manual.
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    
+    Minor fixes to "Designing your catalog" chapter
+    
+    Some strange Latin-1 characters were giving Asciidoc fits...
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+561	0	docs/admin_initial_setup/designing_your_catalog.txt
+2	0	docs/root.txt
+ create mode 100644 docs/admin_initial_setup/designing_your_catalog.txt
+
+commit 16c65efba41d5fd44bb0ee3f73ba485143a62ed5
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Fri Jan 4 14:33:28 2013 -0500
+
+    fix user session management for MARC Batch Edit
+    
+    The Javascript in the hardcoded page templates was
+    not checking the XUL stash for the session key when
+    run from the staff client; this is now needed as
+    a result of the XULRunner updates introdued by
+    commit adee850f.
+    
+    As a consequence, the list of the user's record buckets
+    was not retrieved, and attempts to run a batch edit
+    would spin without updating any records.
+    
+    This fixes LP#1048707 and LP#1054277.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+16	2	Open-ILS/src/perlmods/lib/OpenILS/WWW/TemplateBatchBibUpdate.pm
+
+commit f472fc0b7c16f981f6063902e39207204f0cb7a9
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Thu Jan 3 14:23:54 2013 -0500
+
+    Documentation: Update upgrade instructions.
+    
+    Also add a few index terms.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+22	11	docs/installation/server_upgrade.txt
+
+commit 0cdae03f4029b3a66bda80f7d94fd3072c305db1
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Dec 26 11:10:23 2012 -0500
+
+    SIP option to use SIP date format for due dates
+    
+    New SIP configuration option "use_sip_date_format" which forces all SIP
+    dates to be formated using the SIP date format: YYYYMMDDZZZZHHMMSS
+    
+    Without this setting, most dates already correctly use the SIP date
+    format.  However, for some historical reason, due dates are formatted as
+    ISO 8601 dates.  Enable this setting to force due dates to use the SIP
+    date format.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+8	0	Open-ILS/examples/oils_sip.xml.example
+14	3	Open-ILS/src/perlmods/lib/OpenILS/SIP.pm
+
+commit 0483dc441e97873b48f8f72595cc577bc1ac9015
+Author: Ben Shum <bshum at biblio.org>
+Date:   Sun Dec 23 20:46:02 2012 -0500
+
+    LP1092937 - fix title/author in alternate pull list
+    
+    Clicking on Print Full Pull List (Alternate strategy) no longer showed
+    the title and author columns for hold pull lists.
+    
+    It seems that adding quotes around the tag lookups was all that was
+    required to bring these back for now. Long-term, it still seems better
+    to continue moving towards fewer pull list interfaces.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+2	2	Open-ILS/web/opac/extras/circ/alt_holds_print.html
+
+commit adc1e00adad32f1c3f9049b9417584b14aba3576
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Oct 2 13:31:13 2012 -0400
+
+    TPAC - SMS Number Munging
+    
+    Addresses LP bug 1016654 - Despite the hint telling users not to use
+    hyphens when entering a text notification number, we have patrons who
+    are entering the hyphens causing the text notification to fail.
+    
+    Munge "pretty printed" numbers into raw sets of digits in the A/T helper.
+    
+    This allows aliases to still work for services that support them.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm
+
+commit d5cfac2363f95ea9da5b1f6ad8fa4cad1c53778d
+Author: Ben Shum <bshum at biblio.org>
+Date:   Sun Dec 23 15:38:43 2012 -0500
+
+    Stamping upgrade script for index corporate authors
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+25	0	Open-ILS/src/sql/Pg/upgrade/0749.data.index_corporate_authors.sql
+0	18	Open-ILS/src/sql/Pg/upgrade/XXXX.data.index_corporate_authors.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0749.data.index_corporate_authors.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.index_corporate_authors.sql
+
+commit 2909f660c48f4a12904b03af80c65828f3ce180a
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Oct 30 12:08:54 2012 -0400
+
+    Index corporate authors based on relator codes
+    
+    The existing stock index for corporate authors only kicks in if the
+    710 subfield 'e' == 'creator', but relator codes (in subfield '4') are
+    by many accounts a preferred mode of identifying the relationship of an
+    added entry. Thus, add '4' == ('aut' or 'cre') to the criteria for
+    indexing a corporate author.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+18	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.index_corporate_authors.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.index_corporate_authors.sql
+
+commit 3d76a89ea012670ed69b3450dbf2440eb1c08d2e
+Author: Ben Shum <bshum at biblio.org>
+Date:   Thu Dec 20 14:32:46 2012 -0500
+
+    LP 1088561 - part 2, fix all update forms to not show saved passwords
+    
+    Bug re-opened due to locating a few other locations in my account area
+    where the password was being saved by browsers like Firefox instead of
+    requiring users to key in current password to make changes.
+    
+    This patch covers those two additional cases and changes the quoting
+    around the first case to be more consistent with the rest of the line.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Simon Mai <hieu.mai at mnsu.edu>
+
+1	1	Open-ILS/src/templates/opac/myopac/update_email.tt2
+1	1	Open-ILS/src/templates/opac/myopac/update_password.tt2
+1	1	Open-ILS/src/templates/opac/myopac/update_username.tt2
+
+commit 70007ca4cb1740049021eaa9301344c3680100ad
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sun Dec 16 09:09:03 2012 -0500
+
+    TPAC: Fallback default value for facet.default_display_count
+    
+    Open-ILS/templates/opac/parts/result/facets.tt2 assigns the value of
+    facet.default_display_count to DEFAULT_DISPLAY_COUNT and then uses the
+    latter in a number of comparisons. facet.default_display_count is
+    expected to be defined in config.tt2; however, on upgrade, sites with
+    many override templates may not realize that they need to define that
+    value in config.tt2. If they do not, then the result is a strange facet
+    display where only the facet category header shows, with no facets, and
+    Apache error log messages like:
+    
+    Argument "" isn't numeric in numeric gt (>) at
+    /openils/var/templates/opac/parts/result/facets.tt2 line 72.
+    
+    This simple defensive fix assigns a fallback default value if one was
+    not provided in config.tt2
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	1	Open-ILS/src/templates/opac/parts/result/facets.tt2
+
+commit b389c8c8593230d3ad58a1184a33509685daa7aa
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Dec 21 21:15:49 2012 -0500
+
+    Facets should not be sticky when users click "Search"
+    
+    We were using a hidden form variable to track which facets were in use,
+    at the same time as relying on the GET params to actually display the
+    facets, and munging the links on the remaining facets to properly
+    add/subtract facets.
+    
+    The result of the hidden form variable was that:
+    
+    1) clicking the Search button would unexpectedly result in the facet
+    applying to the new search (wat)
+    
+    2) applying two facets at once and then searching again would result
+    in the facet vars being treated as a raw array.
+    
+    Thanks to Dan Pearl for inspiring this patch with his fix for the latter
+    problem, and Kathy Lussier's recognition of the basic problem.
+    
+    Closes LP# 1092946 and 1091659.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+0	3	Open-ILS/src/templates/opac/results.tt2
+
+commit c3125b355fc442689dc2f203bc535bf068d63283
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Dec 21 11:14:10 2012 -0500
+
+    Test data copies get "checked out" copy status when circ'd
+    
+    Set the status to 1 (checked out) for items that are circulated as part
+    of the test data transactions load.  Otherwise, the data is busted and
+    renewals are not possible.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+4	0	Open-ILS/tests/datasets/sql/env_create.sql
+
+commit bff532c317f2ae7bf5157159b0f732ac74483c26
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Fri Dec 21 07:26:36 2012 -0500
+
+    lp1090867 Hide Fields undefined var error
+    
+    This fixes the "Error in widget_prompt.js, my_init(): TypeError: offlineStrings
+    is undefined" error.
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+4	0	Open-ILS/xul/staff_client/chrome/content/util/widget_prompt.js
+
+commit 9f97cd102c179a194a856a69a51f55e84e71144d
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Dec 20 16:48:56 2012 -0500
+
+    Copy 2.3.1-2.3.2 SQL upgrade script into place
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+69	0	Open-ILS/src/sql/Pg/version-upgrade/2.3.1-2.3.2-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.3.1-2.3.2-upgrade-db.sql
+
+commit 106566b5db189de54e20983c83c7189cd38308c7
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Dec 20 16:48:42 2012 -0500
+
+    Copy 2.3.0-2.3.1 SQL upgrade script into place
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+272	0	Open-ILS/src/sql/Pg/version-upgrade/2.3.0-2.3.1-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.3.0-2.3.1-upgrade-db.sql
+
+commit e49f1f6d9f72a265f80bc40fc34da6c401b98f99
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Thu Dec 20 16:50:44 2012 -0500
+
+    Master didn't get these two rel_2_2 series upgrade scripts
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+519	0	Open-ILS/src/sql/Pg/version-upgrade/2.2.2-2.2.3-upgrade-db.sql
+33	0	Open-ILS/src/sql/Pg/version-upgrade/2.2.3-2.2.4-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.2.2-2.2.3-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.2.3-2.2.4-upgrade-db.sql
+
+commit 07a6cf05aaae80e27bdeb872f4712855d7c9e0eb
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Dec 20 11:36:42 2012 -0500
+
+    Update "Adding a data source to the reporter" docs
+    
+    A little bit of formatting clean-up, a little bit of extra information.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+58	28	docs/reports/reporter_add_data_source.txt
+
+commit 8db7cda9ac91371432654f91870ffff41a90c22b
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Dec 20 09:47:17 2012 -0500
+
+    Translations update step 2: newpot
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+7	1	build/i18n/po/acq.js/acq.js.pot
+13	1	build/i18n/po/circ.properties/circ.properties.pot
+5	1	build/i18n/po/common.properties/common.properties.pot
+717	717	build/i18n/po/db.seed/db.seed.pot
+1373	1369	build/i18n/po/fm_IDL.dtd/fm_IDL.dtd.pot
+74	1	build/i18n/po/lang.dtd/lang.dtd.pot
+15	1	build/i18n/po/offline.properties/offline.properties.pot
+5	1	build/i18n/po/patron.properties/patron.properties.pot
+1325	196	build/i18n/po/tpac/tpac.pot
+
+commit 2295df8da2e2408c7687953f5353dc9eb8189772
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Dec 20 09:36:56 2012 -0500
+
+    Translations update step 1: update profiles
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+5	5	build/i18n/po/AutoFieldWidget.js/tr-TR.po
+178	0	build/i18n/po/Searcher.js/oc-FR.po
+6	3	build/i18n/po/XULTermLoader.js/oc-FR.po
+7	7	build/i18n/po/admin.properties/oc-FR.po
+12	7	build/i18n/po/cat.properties/cs-CZ.po
+16	11	build/i18n/po/cat.properties/de-DE.po
+12	4	build/i18n/po/cat.properties/en-CA.po
+13	8	build/i18n/po/cat.properties/en-GB.po
+13	8	build/i18n/po/cat.properties/es-ES.po
+11	6	build/i18n/po/cat.properties/fr-CA.po
+12	7	build/i18n/po/cat.properties/hy-AM.po
+502	252	build/i18n/po/cat.properties/oc-FR.po
+11	6	build/i18n/po/cat.properties/pt-BR.po
+11	6	build/i18n/po/cat.properties/ru-RU.po
+11	3	build/i18n/po/cat.properties/tr-TR.po
+5	5	build/i18n/po/circ.properties/cs-CZ.po
+6	4	build/i18n/po/circ.properties/en-CA.po
+190	62	build/i18n/po/circ.properties/oc-FR.po
+114	102	build/i18n/po/conify.dtd/oc-FR.po
+210	180	build/i18n/po/conify.js/oc-FR.po
+22	22	build/i18n/po/db.seed/en-CA.po
+182	182	build/i18n/po/db.seed/en-GB.po
+18	18	build/i18n/po/fm_IDL.dtd/cs-CZ.po
+39	39	build/i18n/po/fm_IDL.dtd/en-CA.po
+3526	2105	build/i18n/po/fm_IDL.dtd/oc-FR.po
+6	6	build/i18n/po/fm_IDL.dtd/tr-TR.po
+5	5	build/i18n/po/ils_events.xml/en-CA.po
+5	5	build/i18n/po/ils_events.xml/hy-AM.po
+16	3	build/i18n/po/lang.dtd/cs-CZ.po
+84	68	build/i18n/po/lang.dtd/en-CA.po
+2887	1847	build/i18n/po/lang.dtd/oc-FR.po
+8	6	build/i18n/po/multiclass_search_help.html/oc-FR.po
+8	8	build/i18n/po/offline.properties/en-CA.po
+358	106	build/i18n/po/offline.properties/oc-FR.po
+52	50	build/i18n/po/offline.properties/tr-TR.po
+14	5	build/i18n/po/opac.dtd/de-DE.po
+12	3	build/i18n/po/opac.dtd/en-CA.po
+64	38	build/i18n/po/opac.dtd/ru-RU.po
+14	12	build/i18n/po/opac.dtd/tr-TR.po
+12	12	build/i18n/po/opac.js/oc-FR.po
+356	148	build/i18n/po/patron.properties/oc-FR.po
+63	31	build/i18n/po/pickup_and_return.js/oc-FR.po
+5	5	build/i18n/po/pickup_and_return.js/pt-BR.po
+8	8	build/i18n/po/pull_list.js/de-DE.po
+43	27	build/i18n/po/pull_list.js/oc-FR.po
+167	18	build/i18n/po/register.js/oc-FR.po
+90	80	build/i18n/po/reports.js/oc-FR.po
+15	15	build/i18n/po/reports.js/tr-TR.po
+79	46	build/i18n/po/reservation.js/oc-FR.po
+133	37	build/i18n/po/selfcheck.js/oc-FR.po
+668	0	build/i18n/po/serial.properties/oc-FR.po
+666	0	build/i18n/po/serial.properties/tr-TR.po
+ create mode 100644 build/i18n/po/Searcher.js/oc-FR.po
+ create mode 100644 build/i18n/po/serial.properties/oc-FR.po
+ create mode 100644 build/i18n/po/serial.properties/tr-TR.po
+
+commit 9248a0b28e5505c5e73e1e1c719e139c2543eb87
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Sep 14 15:30:15 2012 -0400
+
+    Consistent permission filtering in ACQ search results
+    
+    Add permission checks to search result objects when calling unified
+    search in 'idlist' mode, consistent with the existing permission checks
+    for non-id-list mode.  Without this, different forms of the call return
+    different sets of results.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+4	8	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Search.pm
+
+commit f5d27df4111b54367d7f270f7b63d4f8e9db2b92
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Dec 19 11:41:28 2012 -0500
+
+    LP #1092179 FlattenerGrid Filter dialog lead to clobbering grid's base query
+    
+    You could see this in the Simplified Hold Pull List interface.  Using
+    the filter dialog would refresh the grid and populate it with rows
+    corresponding to your filters, but it would throw away your setting from
+    the context org dropdown (labeled "Show the pull list for..." there).
+    
+    FlattenerGrid had a broken mechanism for trying to nicely mix a user's
+    input from things like context org dropdowns with whatever they put into
+    the filter dialog, and now that mechanism has been fixed.
+    
+    This also means a tiny change to the User Event Log interface to react
+    to the slight change in FlattenerGrid's API.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+3	4	Open-ILS/src/templates/actor/user/event_log.tt2
+7	1	Open-ILS/src/templates/circ/hold_pull_list.tt2
+10	3	Open-ILS/web/js/dojo/openils/widget/FlattenerGrid.js
+
+commit d4fba307f7714924ef79789a4b327d783959fcbf
+Author: Simon Hieu Mai <hieu.mai at mnsu.edu>
+Date:   Wed Dec 19 14:33:54 2012 -0600
+
+    LP#1088561: remove current password (renew password issue with TPAC)
+    
+    If a user chooses to have their browser remember their password for the
+    catalog, it can fill in the password to the change password form page
+    as hidden dots. This behavior was observed specifically with Firefox.
+    
+    Instead, add autocomplete="off" attribute to the form to force users to
+    enter existing password to change to a new password as intended.
+    
+    Signed-off-by: Simon Mai <hieu.mai at mnsu.edu>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/myopac/update_password.tt2
+
+commit 1981991a7b258cc2d5b63c2def506194487f609a
+Author: Pasi Kallinen <pasi.kallinen at pttk.fi>
+Date:   Tue Dec 18 10:42:59 2012 +0200
+
+    Add fi-FI to update_pofiles script
+    
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	0	build/i18n/scripts/update_pofiles
+
+commit c5ed3e34f34af4d9e763b15ac409ad65edd8f487
+Author: Pasi Kallinen <pasi.kallinen at pttk.fi>
+Date:   Tue Dec 18 10:41:28 2012 +0200
+
+    po-files for Finnish translation
+    
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+30	0	build/i18n/po/AutoFieldWidget.js/fi-FI.po
+174	0	build/i18n/po/Searcher.js/fi-FI.po
+38	0	build/i18n/po/TranslatorPopup.js/fi-FI.po
+18	0	build/i18n/po/User.js/fi-FI.po
+38	0	build/i18n/po/XULTermLoader.js/fi-FI.po
+502	0	build/i18n/po/acq.js/fi-FI.po
+486	0	build/i18n/po/admin.properties/fi-FI.po
+82	0	build/i18n/po/auth.properties/fi-FI.po
+98	0	build/i18n/po/authority.js/fi-FI.po
+136	0	build/i18n/po/capture.js/fi-FI.po
+2482	0	build/i18n/po/cat.properties/fi-FI.po
+2023	0	build/i18n/po/circ.properties/fi-FI.po
+861	0	build/i18n/po/common.properties/fi-FI.po
+502	0	build/i18n/po/conify.dtd/fi-FI.po
+394	0	build/i18n/po/conify.js/fi-FI.po
+4319	0	build/i18n/po/db.seed/fi-FI.po
+7681	0	build/i18n/po/fm_IDL.dtd/fi-FI.po
+1258	0	build/i18n/po/ils_events.xml/fi-FI.po
+14531	0	build/i18n/po/lang.dtd/fi-FI.po
+12	0	build/i18n/po/multiclass_search_help.html/fi-FI.po
+1534	0	build/i18n/po/offline.properties/fi-FI.po
+2717	0	build/i18n/po/opac.dtd/fi-FI.po
+190	0	build/i18n/po/opac.js/fi-FI.po
+1987	0	build/i18n/po/patron.properties/fi-FI.po
+156	0	build/i18n/po/pickup_and_return.js/fi-FI.po
+90	0	build/i18n/po/pull_list.js/fi-FI.po
+180	0	build/i18n/po/register.js/fi-FI.po
+819	0	build/i18n/po/reports.dtd/fi-FI.po
+433	0	build/i18n/po/reports.js/fi-FI.po
+284	0	build/i18n/po/reservation.js/fi-FI.po
+198	0	build/i18n/po/selfcheck.js/fi-FI.po
+688	0	build/i18n/po/serial.properties/fi-FI.po
+3677	0	build/i18n/po/tpac/fi-FI.po
+ create mode 100644 build/i18n/po/AutoFieldWidget.js/fi-FI.po
+ create mode 100644 build/i18n/po/Searcher.js/fi-FI.po
+ create mode 100644 build/i18n/po/TranslatorPopup.js/fi-FI.po
+ create mode 100644 build/i18n/po/User.js/fi-FI.po
+ create mode 100644 build/i18n/po/XULTermLoader.js/fi-FI.po
+ create mode 100644 build/i18n/po/acq.js/fi-FI.po
+ create mode 100644 build/i18n/po/admin.properties/fi-FI.po
+ create mode 100644 build/i18n/po/auth.properties/fi-FI.po
+ create mode 100644 build/i18n/po/authority.js/fi-FI.po
+ create mode 100644 build/i18n/po/capture.js/fi-FI.po
+ create mode 100644 build/i18n/po/cat.properties/fi-FI.po
+ create mode 100644 build/i18n/po/circ.properties/fi-FI.po
+ create mode 100644 build/i18n/po/common.properties/fi-FI.po
+ create mode 100644 build/i18n/po/conify.dtd/fi-FI.po
+ create mode 100644 build/i18n/po/conify.js/fi-FI.po
+ create mode 100644 build/i18n/po/db.seed/fi-FI.po
+ create mode 100644 build/i18n/po/fm_IDL.dtd/fi-FI.po
+ create mode 100644 build/i18n/po/ils_events.xml/fi-FI.po
+ create mode 100644 build/i18n/po/lang.dtd/fi-FI.po
+ create mode 100644 build/i18n/po/multiclass_search_help.html/fi-FI.po
+ create mode 100644 build/i18n/po/offline.properties/fi-FI.po
+ create mode 100644 build/i18n/po/opac.dtd/fi-FI.po
+ create mode 100644 build/i18n/po/opac.js/fi-FI.po
+ create mode 100644 build/i18n/po/patron.properties/fi-FI.po
+ create mode 100644 build/i18n/po/pickup_and_return.js/fi-FI.po
+ create mode 100644 build/i18n/po/pull_list.js/fi-FI.po
+ create mode 100644 build/i18n/po/register.js/fi-FI.po
+ create mode 100644 build/i18n/po/reports.dtd/fi-FI.po
+ create mode 100644 build/i18n/po/reports.js/fi-FI.po
+ create mode 100644 build/i18n/po/reservation.js/fi-FI.po
+ create mode 100644 build/i18n/po/selfcheck.js/fi-FI.po
+ create mode 100644 build/i18n/po/serial.properties/fi-FI.po
+ create mode 100644 build/i18n/po/tpac/fi-FI.po
+
+commit 00e0a3994163a898b9f83f3126185c10a94495f5
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Tue Dec 18 15:51:12 2012 -0500
+
+    Make config.update_coded_value_map() consistent
+    
+    The version of this function in the upgrade file is different than
+    the one in the 002.schema.config.sql file. This commit fixes the
+    broken logic in the 002 file and makes it match the logic in the
+    old upgrade file.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+3	3	Open-ILS/src/sql/Pg/002.schema.config.sql
+38	0	Open-ILS/src/sql/Pg/upgrade/0748.function.update_coded_value_map.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0748.function.update_coded_value_map.sql
+
+commit 0f4f8d00092b6f9c1377c7353c3eb98e767061b9
+Author: James Fournie <jfournie at sitka.bclibraries.ca>
+Date:   Tue Dec 18 12:45:51 2012 -0800
+
+    Check for a selection_depth returned from title_hold.is_possible.
+    See Launchpad 1064651 for details.  This is a quick fix which solves a
+    fairly serious issue whereby copies outside of a hard boundary could fill
+    holds when they are placed within the TPAC in the staff client.
+    
+    Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+3	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit 0cc470d49fc4d41e49a9f6752120135af9ac6a8f
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Dec 18 08:52:55 2012 -0500
+
+    Dojo IDL: Set the "Accept-Language" header
+    
+    The internationalization support for /reports/fm_IDL.xml keys off of the
+    Accept-Language header - which, if not set to ^[a-z]{2}-[A-Z]{2}$, falls
+    back to en-US. Setting the header in the dojo.xhrGet() request makes
+    Apache able to serve up the right flavour of /reports/fm_IDL.xml
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+
+2	2	Open-ILS/web/js/dojo/fieldmapper/IDL.js
+
+commit dfe7598493edd0348045ed2a6cb26d10e95be99a
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Dec 18 07:39:18 2012 -0500
+
+    Set locale properly in Apache configuration
+    
+    A RewriteCond only applies to the next RewriteRule, while our config was
+    attempting to apply multiple rules for a single condition. Fix that up
+    by using skip (S) rules to apply blocks of rules for the condition in
+    question.
+    
+    Also, use the HTTP:Accept-Language value directly, rather than relying
+    on a backreference (which did not seem to be working as desired).
+    
+    These fixes enable screens like the Register Patron interface to present
+    field labels from the IDL in the correct locale, whereas previously they
+    would always default to en-US.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+
+10	12	Open-ILS/examples/apache/eg_vhost.conf
+
+commit 25e1b57aa03518edf86c2de9c15a1ab8b6d8c1d7
+Author: Pasi Kallinen <pasi.kallinen at pttk.fi>
+Date:   Sun Dec 2 22:49:42 2012 +0200
+
+    LP#1078596: Cannot translate strings handled by fieldmapper
+    
+    Strings that should be translatable only show up in English,
+    for example in the Patron Registration screen.
+    
+    There's a bug in the fieldmapper where it sets a variable to
+    an empty array, but later in the code only checks whether that
+    particular variable exists, not if it's an empty array.
+    
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	1	Open-ILS/web/js/dojo/fieldmapper/IDL.js
+
+commit a51761578d5ffa187b28d433692734599b194ef2
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Nov 28 16:05:53 2012 -0500
+
+    Syndetics - retrieve summary as part of added content
+    
+    As noted by Steve Callender in LP1027131, Syndetics added content is not
+    retrieving summary.html to be displayed in the catalog.
+    
+    This change adds a function similar to toc/anotes to bring in summary data.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+
+19	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/Syndetic.pm
+
+commit f196bc2ac10b6c40b18d7a3378ba2dbb9e37d219
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Dec 4 11:04:08 2012 -0500
+
+    ACQ: repair lineitem cancel-reason fleshing
+    
+    When fetching lineitems for display in the general lineitem list page,
+    if the lineitem is cancelled, be sure we correctly retrieve the
+    cancel-reason object.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Lineitem.pm
+
+commit ebecc44027af204c8f5ec8ca790a4753dbcf2fc3
+Author: Ben Shum <bshum at biblio.org>
+Date:   Tue Dec 18 01:00:07 2012 -0500
+
+    Stamping upgrade script for frozen holds clear expire time
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+11	0	Open-ILS/src/sql/Pg/upgrade/0747.data.frozen_holds_clear_expire_time.sql
+0	11	Open-ILS/src/sql/Pg/upgrade/XXXX.data.frozen_holds_clear_expire_time.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0747.data.frozen_holds_clear_expire_time.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.frozen_holds_clear_expire_time.sql
+
+commit 9db6daf7af1b66712c3c6bc186de4995ff45e7f6
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Wed Nov 14 13:41:37 2012 -0500
+
+    LP1076399: Prevent reactivated holds from expiring immediately.
+    
+    Clear the expire_time on deactivated holds.
+    
+    Recalculate the expire_time when a hold is reactivated.
+    
+    Upgrade script to set expire_time to NULL on frozen action.hold_requests.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+9	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+11	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.frozen_holds_clear_expire_time.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.frozen_holds_clear_expire_time.sql
+
+commit bb93a7ad1cb98559c1562f20485a576ea5832383
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Wed Nov 14 11:49:49 2012 -0500
+
+    Resolve LP893448: Prevent hold expiration in past.
+    
+    If a hold is placed with an expiration date in the past, the
+    expire_time of the hold will be reset using the hold expiration
+    interval settings.
+    
+    Likewise, if a hold is changed to have an expiration date in the
+    past, the hold expiration date will be recalculated using the
+    hold expiration interval settings.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+10	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit 9cf053f05c4996c75760f39fe812b5b851aca4a3
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Wed Nov 14 11:27:53 2012 -0500
+
+    Add calculate_expire_time helper function to Holds.pm.
+    
+    This new function calculates an expire_time for a hold based on the hold
+    expiration interval setting for a passed in org_unit. If the setting is found
+    the interval is added to "now" and returned as an ISO8601 string. undef is
+    returned if the setting is not found for the org_unit or its ancestors.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+16	14	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit 3b5a7dcf0f763f4665db74e7185813d221554deb
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Wed Nov 14 10:40:35 2012 -0500
+
+    Add datecmp to OpenILS::Application::AppUtils.
+    
+    datecmp is a handy subroutine for comparing two DateTime objects or string
+    represenations. It returns -1, 0, and 1, much like the perl cmp operator.
+    
+    If only 1 date is specified, then it will be compared to DateTime->now.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+41	0	Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm
+
+commit 0ad4dd6d7f856dbc5ccf6bce5f3ab74d13898396
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Tue Nov 6 16:32:23 2012 -0500
+
+    Fix foreign character display in receipts
+    
+    This commit makes two changes to the staff client print code to
+    help with the proper display of foreign characters:
+    
+    1) Specify the utf-8 charset in the receipt Data URIs.
+    2) Properly encode the entire data string using encodeURIComponent
+    rather than encode().  Failing to do so was causing XULRunner to
+    be "creative" with the interpretation of the data.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+5	4	Open-ILS/xul/staff_client/chrome/content/util/print.js
+
+commit 5134977a87331b39dd4db0c1dae4386bdbfc9664
+Author: Ben Shum <bshum at biblio.org>
+Date:   Tue Dec 18 00:12:38 2012 -0500
+
+    Stamping upgrade script for hold request email notify default false
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+7	0	Open-ILS/src/sql/Pg/upgrade/0746.action.hold_request.email_notify_default_false.sql
+0	7	Open-ILS/src/sql/Pg/upgrade/XXXX.action.hold_request.email_notify_default_false.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0746.action.hold_request.email_notify_default_false.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.action.hold_request.email_notify_default_false.sql
+
+commit cb24cc8dcf50ad027f161d9f8507ef4ebe59f22b
+Author: Michael Peters <mrpeters at library.in.gov>
+Date:   Thu Sep 13 16:28:04 2012 -0400
+
+    LP#1047475 Set action.hold_request.email_notify to default to false
+    
+    LP#1047475 points out that email notify prefs are ignored in TPAC.
+    Even if a patron deselects email notify during hold request time, it
+    will always be set to true due to the column default.
+    
+    This change defaults the column in the database to false (like most
+    other similar columns are) and resolves the bug.
+    
+    Credit to Steve Callender for the idea.
+    
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/090.schema.action.sql
+7	0	Open-ILS/src/sql/Pg/upgrade/XXXX.action.hold_request.email_notify_default_false.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.action.hold_request.email_notify_default_false.sql
+
+commit 84d91473fd54686f472205c5d5826d20f0849c7f
+Author: Dan Pearl <dpearl at cwmars.org>
+Date:   Tue Dec 11 10:13:41 2012 -0500
+
+    LP: #1086064  Ignore spaces in opac username/barcode entry field
+    
+    Too often, patrons copy the spacing on the barcode on their keytag,
+    or enter a spurious space before entering their name/barcode. This
+    change will remove spaces in their name/barcode.
+    
+    (For now, keep the login screen's directions to omit spaces when
+    entering the username/barcode.)
+    
+    Signed-off-by: Dan Pearl <dpearl at cwmars.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm
+
+commit e144f288cdb936b615fc49fda333fd3e085b43cd
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Dec 4 10:08:36 2012 -0500
+
+    Highlight selected facets over multiple lines
+    
+    As reported by Dan Pearl in LP# 1086150, selected facets that wrap over
+    multiple lines only have the first line highlighted. Which is odd, and
+    easily fixed with a small tweak to the CSS.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/css/style.css.tt2
+
+commit f203c86de7d96b0d22b8764266dc583517582659
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Tue Oct 30 13:07:21 2012 -0400
+
+    Use uri_escape_utf8 in EGCatLoader/Record.pm.
+    
+    To avoid this:
+    
+    [Tue Oct 30 12:34:36 2012] [error] [client 134.241.121.11] egweb: Context
+    Loader error: Can't escape \\x{02B9}, try uri_escape_utf8() instead at
+    /usr/local/share/perl/5.14.2/OpenILS/WWW/EGCatLoader/Record.pm line 472 \n,
+    referer: http://catalog.mvlc.org/eg/opa c/results?fi%3Aitem_type=&query=
+    zhenshchiny&qtype=keyword&locg=1
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
+
+commit aad8e649e20faefe1fb5202ec46404a260a5d105
+Author: Pasi Kallinen <pasi.kallinen at pttk.fi>
+Date:   Thu Dec 13 10:00:43 2012 +0200
+
+    LP#1088868: Column sort popup menu has no background style
+    
+    Change the menu from "popup" element to "menupopup", as per tsbere's suggestion.
+    
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	2	Open-ILS/xul/staff_client/server/OpenILS/util_overlay.xul
+
+commit 94e7d06d35f5cd3bd3c762bd3edb350f6e0e15f5
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Feb 9 16:37:48 2012 -0500
+
+    Support barcode autocompletion in copy buckets
+    
+    By request of our staff, who are lazy.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+7	0	Open-ILS/xul/staff_client/server/cat/copy_buckets.js
+
+commit 527dd7fcb83a91dbfb69d1d0de080650e81ffcca
+Author: Michael Peters <mrpeters at library.in.gov>
+Date:   Wed Nov 28 12:45:02 2012 -0500
+
+    LP#1084161 KPAC: Added Content Tabs can be too wide
+    
+    In cases where LOTS of added content might be available, the
+    record summary is not wide enough to fit all of the tabs.
+    
+    This decreases their padding width to fit them comfortably.
+    
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/web/css/skin/default/kpac/style.css
+
+commit c6ed8a8c91a23452ac9bb99a271cd31ef1b175ba
+Author: Michael Peters <mrpeters at library.in.gov>
+Date:   Mon Dec 17 09:10:19 2012 -0500
+
+    LP#1090385 Fix success message for copy template deletion
+    
+    We were displaying the "confirm" message twice, instead of the
+    existing "success" message.
+    
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/xul/staff_client/server/cat/copy_editor.js
+
+commit 81dde022ae39ecff8cbe0cbf7c85c7ce8e49df0f
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sun Dec 16 03:20:49 2012 -0500
+
+    I18N: Make everything in tt2 files translatable.
+    
+    Simply wrap everything that should be translatable inside l().
+    Also fixes bug #1088388
+    
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    
+    Conflicts:
+    	Open-ILS/src/templates/acq/common/li_table.tt2
+    	Open-ILS/src/templates/acq/invoice/view.tt2
+    	Open-ILS/src/templates/acq/search/unified.tt2
+    	Open-ILS/src/templates/vandelay/inc/item_attrs.tt2
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+9	9	Open-ILS/examples/web/templates/flattener_test.tt2
+1	1	Open-ILS/examples/web/templates/kpac/home.tt2
+4	4	Open-ILS/examples/web/templates/kpac/parts/header.tt2
+8	8	Open-ILS/src/templates/acq/common/claim_dialog.tt2
+3	3	Open-ILS/src/templates/acq/common/final_claim_dialog.tt2
+3	3	Open-ILS/src/templates/acq/common/info.tt2
+4	4	Open-ILS/src/templates/acq/common/inv_dialog.tt2
+32	32	Open-ILS/src/templates/acq/common/jubgrid.tt2
+104	104	Open-ILS/src/templates/acq/common/li_table.tt2
+2	2	Open-ILS/src/templates/acq/common/li_table_pager.tt2
+9	9	Open-ILS/src/templates/acq/common/notes.tt2
+3	3	Open-ILS/src/templates/acq/currency_type/list.tt2
+9	9	Open-ILS/src/templates/acq/financial/claim_eligible.tt2
+23	23	Open-ILS/src/templates/acq/fund/list.tt2
+33	33	Open-ILS/src/templates/acq/fund/view.tt2
+3	3	Open-ILS/src/templates/acq/funding_source/list.tt2
+23	23	Open-ILS/src/templates/acq/funding_source/view.tt2
+16	18	Open-ILS/src/templates/acq/invoice/receive.tt2
+45	46	Open-ILS/src/templates/acq/invoice/view.tt2
+6	6	Open-ILS/src/templates/acq/lineitem/findbib.tt2
+2	2	Open-ILS/src/templates/acq/lineitem/history.tt2
+7	7	Open-ILS/src/templates/acq/lineitem/related.tt2
+17	17	Open-ILS/src/templates/acq/lineitem/search.tt2
+4	4	Open-ILS/src/templates/acq/lineitem/worksheet.tt2
+7	7	Open-ILS/src/templates/acq/picklist/bib_search.tt2
+5	5	Open-ILS/src/templates/acq/picklist/brief_record.tt2
+5	5	Open-ILS/src/templates/acq/picklist/from_bib.tt2
+13	13	Open-ILS/src/templates/acq/picklist/list.tt2
+7	7	Open-ILS/src/templates/acq/picklist/upload.tt2
+11	11	Open-ILS/src/templates/acq/picklist/user_request.tt2
+6	6	Open-ILS/src/templates/acq/picklist/view.tt2
+2	2	Open-ILS/src/templates/acq/po/create.tt2
+3	3	Open-ILS/src/templates/acq/po/edi_messages.tt2
+9	9	Open-ILS/src/templates/acq/po/events.tt2
+2	2	Open-ILS/src/templates/acq/po/history.tt2
+10	10	Open-ILS/src/templates/acq/po/item_table.tt2
+26	26	Open-ILS/src/templates/acq/po/search.tt2
+29	29	Open-ILS/src/templates/acq/po/view.tt2
+4	4	Open-ILS/src/templates/acq/receiving/process.tt2
+43	43	Open-ILS/src/templates/acq/search/unified.tt2
+19	19	Open-ILS/src/templates/acq/settings/li_attr.tt2
+18	18	Open-ILS/src/templates/actor/user/event_log.tt2
+9	9	Open-ILS/src/templates/actor/user/register.tt2
+8	8	Open-ILS/src/templates/booking/pickup.tt2
+4	4	Open-ILS/src/templates/booking/reservation.tt2
+8	8	Open-ILS/src/templates/booking/return.tt2
+10	10	Open-ILS/src/templates/cat/authority/list.tt2
+17	17	Open-ILS/src/templates/circ/hold_pull_list.tt2
+8	8	Open-ILS/src/templates/circ/selfcheck/circ_page.tt2
+6	6	Open-ILS/src/templates/circ/selfcheck/fines.tt2
+3	3	Open-ILS/src/templates/circ/selfcheck/holds_page.tt2
+5	5	Open-ILS/src/templates/circ/selfcheck/main.tt2
+1	1	Open-ILS/src/templates/circ/selfcheck/patron_login.tt2
+29	29	Open-ILS/src/templates/circ/selfcheck/payment.tt2
+9	9	Open-ILS/src/templates/circ/selfcheck/summary.tt2
+5	5	Open-ILS/src/templates/conify/global/acq/cancel_reason.tt2
+5	5	Open-ILS/src/templates/conify/global/acq/claim_event_type.tt2
+5	5	Open-ILS/src/templates/conify/global/acq/claim_policy.tt2
+4	4	Open-ILS/src/templates/conify/global/acq/claim_policy_action.tt2
+5	5	Open-ILS/src/templates/conify/global/acq/claim_type.tt2
+12	12	Open-ILS/src/templates/conify/global/acq/distribution_formula.tt2
+7	5	Open-ILS/src/templates/conify/global/acq/edi_account.tt2
+4	4	Open-ILS/src/templates/conify/global/acq/exchange_rate.tt2
+5	5	Open-ILS/src/templates/conify/global/acq/fund_tag.tt2
+4	4	Open-ILS/src/templates/conify/global/acq/invoice_item_type.tt2
+4	4	Open-ILS/src/templates/conify/global/acq/invoice_payment_method.tt2
+5	5	Open-ILS/src/templates/conify/global/acq/lineitem_alert.tt2
+6	6	Open-ILS/src/templates/conify/global/acq/lineitem_marc_attr_def.tt2
+35	35	Open-ILS/src/templates/conify/global/acq/provider.tt2
+25	25	Open-ILS/src/templates/conify/global/action/survey.tt2
+23	23	Open-ILS/src/templates/conify/global/action_trigger/event_definition.tt2
+14	14	Open-ILS/src/templates/conify/global/action_trigger/event_definition_data.tt2
+5	5	Open-ILS/src/templates/conify/global/asset/copy_location_order.tt2
+11	11	Open-ILS/src/templates/conify/global/asset/copy_template.tt2
+4	4	Open-ILS/src/templates/conify/global/biblio/monograph_part.tt2
+5	5	Open-ILS/src/templates/conify/global/booking/resource.tt2
+5	5	Open-ILS/src/templates/conify/global/booking/resource_attr.tt2
+5	5	Open-ILS/src/templates/conify/global/booking/resource_attr_map.tt2
+5	5	Open-ILS/src/templates/conify/global/booking/resource_attr_value.tt2
+5	5	Open-ILS/src/templates/conify/global/booking/resource_type.tt2
+4	4	Open-ILS/src/templates/conify/global/cat/authority/browse_axis.tt2
+5	5	Open-ILS/src/templates/conify/global/cat/authority/browse_axis_authority_field_map.tt2
+4	4	Open-ILS/src/templates/conify/global/cat/authority/control_set.tt2
+7	7	Open-ILS/src/templates/conify/global/cat/authority/control_set_authority_field.tt2
+5	5	Open-ILS/src/templates/conify/global/cat/authority/control_set_bib_field.tt2
+5	5	Open-ILS/src/templates/conify/global/cat/authority/thesaurus.tt2
+5	5	Open-ILS/src/templates/conify/global/config/acn_prefix.tt2
+5	5	Open-ILS/src/templates/conify/global/config/acn_suffix.tt2
+4	4	Open-ILS/src/templates/conify/global/config/actor_sip_fields.tt2
+4	4	Open-ILS/src/templates/conify/global/config/asset_sip_fields.tt2
+3	3	Open-ILS/src/templates/conify/global/config/barcode_completion.tt2
+5	5	Open-ILS/src/templates/conify/global/config/billing_type.tt2
+4	4	Open-ILS/src/templates/conify/global/config/circ_limit_group.tt2
+15	15	Open-ILS/src/templates/conify/global/config/circ_limit_set.tt2
+10	10	Open-ILS/src/templates/conify/global/config/circ_matrix_matchpoint.tt2
+4	4	Open-ILS/src/templates/conify/global/config/circ_matrix_weights.tt2
+26	26	Open-ILS/src/templates/conify/global/config/circ_modifier.tt2
+5	5	Open-ILS/src/templates/conify/global/config/coded_value_map.tt2
+2	2	Open-ILS/src/templates/conify/global/config/global_flag.tt2
+1	1	Open-ILS/src/templates/conify/global/config/hard_due_date.tt2
+5	5	Open-ILS/src/templates/conify/global/config/hard_due_date_values.tt2
+3	3	Open-ILS/src/templates/conify/global/config/hold_matrix_matchpoint.tt2
+4	4	Open-ILS/src/templates/conify/global/config/hold_matrix_weights.tt2
+4	4	Open-ILS/src/templates/conify/global/config/idl_field_doc.tt2
+4	4	Open-ILS/src/templates/conify/global/config/metabib_field.tt2
+14	14	Open-ILS/src/templates/conify/global/config/org_unit_setting_type.tt2
+5	5	Open-ILS/src/templates/conify/global/config/record_attr_definition.tt2
+4	4	Open-ILS/src/templates/conify/global/config/rule_age_hold_protect.tt2
+4	4	Open-ILS/src/templates/conify/global/config/rule_circ_duration.tt2
+4	4	Open-ILS/src/templates/conify/global/config/rule_max_fine.tt2
+4	4	Open-ILS/src/templates/conify/global/config/rule_recurring_fine.tt2
+4	4	Open-ILS/src/templates/conify/global/config/sms_carrier.tt2
+4	4	Open-ILS/src/templates/conify/global/config/standing_penalty.tt2
+14	14	Open-ILS/src/templates/conify/global/config/usr_setting_type.tt2
+4	4	Open-ILS/src/templates/conify/global/config/weight_assoc.tt2
+4	4	Open-ILS/src/templates/conify/global/config/z3950_source.tt2
+5	5	Open-ILS/src/templates/conify/global/permission/grp_penalty_threshold.tt2
+7	7	Open-ILS/src/templates/conify/global/vandelay/match_set.tt2
+20	20	Open-ILS/src/templates/conify/global/vandelay/match_set_tree.tt2
+2	2	Open-ILS/src/templates/kpac/getit.tt2
+4	4	Open-ILS/src/templates/kpac/home.tt2
+5	5	Open-ILS/src/templates/kpac/parts/header.tt2
+2	2	Open-ILS/src/templates/kpac/parts/record_row.tt2
+1	1	Open-ILS/src/templates/kpac/parts/searchbox.tt2
+2	2	Open-ILS/src/templates/kpac/record.tt2
+1	1	Open-ILS/src/templates/kpac/results.tt2
+6	6	Open-ILS/src/templates/login.tt2
+30	30	Open-ILS/src/templates/menu.tt2
+4	4	Open-ILS/src/templates/opac/myopac/main_payment_form.tt2
+1	1	Open-ILS/src/templates/opac/myopac/prefs.tt2
+1	1	Open-ILS/src/templates/opac/parts/myopac/base.tt2
+5	5	Open-ILS/src/templates/opac/sms_cn.tt2
+21	21	Open-ILS/src/templates/serial/list_item.tt2
+21	21	Open-ILS/src/templates/serial/list_stream.tt2
+4	4	Open-ILS/src/templates/serial/list_subscription.tt2
+7	7	Open-ILS/src/templates/serial/print_routing_list_users.tt2
+26	26	Open-ILS/src/templates/serial/subscription.tt2
+19	19	Open-ILS/src/templates/serial/subscription/caption_and_pattern.tt2
+4	4	Open-ILS/src/templates/serial/subscription/distribution.tt2
+9	9	Open-ILS/src/templates/serial/subscription/issuance.tt2
+15	15	Open-ILS/src/templates/vandelay/inc/import_errors.tt2
+4	4	Open-ILS/src/templates/vandelay/inc/item_attrs.tt2
+3	3	Open-ILS/src/templates/vandelay/inc/matches.tt2
+4	4	Open-ILS/src/templates/vandelay/inc/profiles.tt2
+18	18	Open-ILS/src/templates/vandelay/inc/queue.tt2
+2	2	Open-ILS/src/templates/vandelay/inc/upload.tt2
+1	1	Open-ILS/src/templates/vandelay/vandelay.tt2
+
+commit 0fea2393446d8604f703a3fc405743bbedc22996
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Apr 5 09:36:31 2012 -0400
+
+    Java IDL parser supports isnew/ischanged/isdeleted
+    
+    Includes changes to TestIDL.java for verification.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+9	0	Open-ILS/src/java/org/open_ils/idl/IDLParser.java
+3	2	Open-ILS/src/java/org/open_ils/test/TestIDL.java
+
+commit 349ce9be19d5b3697f9015abd9c33368da5a3627
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Feb 24 16:37:07 2012 -0500
+
+    Add Java *.class files to gitignore
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	0	.gitignore
+
+commit 1167ba577036f913e12e801577c1f69440865015
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Feb 24 16:33:58 2012 -0500
+
+    Java IDL parser updated to use derived field array index
+    
+    The "array_position" IDL attribute is deprecated.  Determine the
+    index by field position within the XML.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+4	1	Open-ILS/src/java/org/open_ils/idl/IDLParser.java
+
+commit 2003773f3e8630d1df6c2cdf65c561ce2d6c806c
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Wed Oct 31 13:25:04 2012 -0400
+
+    Fix OSRF_HOME and EXT in Open-ILs/src/java/Makefil.am.
+    
+    Change the paths so that they work.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2	2	Open-ILS/src/java/Makefile.am
+
+commit 6c3b38683ef6308869ac062467f84bfa981d37d7
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Tue Oct 30 17:10:42 2012 -0400
+
+    Update Java dependencies.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	2	Open-ILS/src/java/Makefile.am
+
+commit e0e96d831bcb284ba0360cbff43c62ff0a6fd75a
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Fri Oct 5 18:42:11 2012 -0400
+
+    Acq: When invoice-building with embedded search, allow control of results list
+    
+    Previously, a results list could accumulate under inconsistent
+    conditions.  You'd get an accumulating results list if you were pressing
+    enter after successful searches, but your results lists would clear if
+    you actually clicked the Search button.  Worse, searches yielding empty
+    result sets would *appear* to clear your result list, but subsequent
+    sucessful searches would restore what was there before.
+    
+    This is the "missing commit" that makes the behavior consistent and
+    togglable.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+11	5	Open-ILS/src/templates/acq/invoice/view.tt2
+1	2	Open-ILS/src/templates/acq/search/unified.tt2
+12	2	Open-ILS/web/js/ui/default/acq/invoice/view.js
+12	4	Open-ILS/web/js/ui/default/acq/search/unified.js
+
+commit 4ecd93eccebd159c70cff12cc73f2111735291fa
+Author: Mark Cooper <markchristophercooper at gmail.com>
+Date:   Tue Oct 23 22:02:38 2012 -0700
+
+    LP#1058321: Acq: Possible to receive a pending purchase order
+    
+    Revised to allow a cancelled PO to be received, as this is needed under
+    certain conditions (note - bib/items are not restored in this case).
+    Added po_state variable to avoid repeated PO.state() function invocations.
+    
+    Signed-off-by: Mark Cooper <markchristophercooper at gmail.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+5	4	Open-ILS/web/js/ui/default/acq/po/view_po.js
+
+commit 83d27351d9422ae8c52f087c480bffee9e798e65
+Author: Mark Cooper <markchristophercooper at gmail.com>
+Date:   Mon Oct 15 18:03:44 2012 -0700
+
+    LP#1058321: Possible to receive a pending purchase order
+    
+    Restrict 'Mark purchase order as received' to on-order state
+    purchase orders, and 'Un-Receive Purchase Order' to 'received'
+    POs. Otherwise inconsistencies easily occur ...
+    
+    Signed-off-by: Mark Cooper <markchristophercooper at gmail.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+2	2	Open-ILS/src/templates/acq/common/li_table.tt2
+5	1	Open-ILS/web/js/ui/default/acq/po/view_po.js
+
+commit b5826950c8deb7d20819e1cd4b5c18f608894ffe
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Sep 28 15:48:22 2012 -0400
+
+    AutoFieldWidget support external copy loc retrieval
+    
+    When rendering a collection of copy locations, AFW fetches locations
+    relevant to the context org unit.  While rendering an AFW for an
+    existing object, though, whose copy location is outside of that scope,
+    the code will now append the non-local copy location to the selector and
+    tag it with the owning lib (to avoid dupes).
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+57	9	Open-ILS/web/js/dojo/openils/widget/AutoFieldWidget.js
+
+commit e8218aa33f5ec733e089746e1e3b4c6c99e70a55
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Sep 28 15:00:37 2012 -0400
+
+    ACQ order upload use copy location from owner
+    
+    When uploading an ACQ MARC order record, attempt to match copy locations
+    to copies based on the copy owning location instead of the upload
+    context org unit.  This allows one branch to order copies for another
+    and have the copies use the copy location of the other (owning) branch
+    (when they exist) instead of the ordering branch (or parent org).
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+14	3	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+
+commit 01fc7bf1ce19dc9524bd2c6f6a31ade8e8a94f3e
+Author: Mark Cooper <markchristophercooper at gmail.com>
+Date:   Wed Dec 5 13:11:23 2012 -0800
+
+    Use consistent language for holdings/items profiles in Vandelay. Now
+    uses "Holdings Import Profiles" as standard.
+    
+    Signed-off-by: Mark Cooper <markchristophercooper at gmail.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	1	Open-ILS/src/templates/vandelay/inc/item_attrs.tt2
+1	1	Open-ILS/src/templates/vandelay/inc/toolbar.tt2
+
+commit 8f1b529f4df744d15a7bde48d560836cb37eff69
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Wed Jun 20 11:47:54 2012 -0400
+
+    lp1010187 eliminate redundant/unnecessary calls
+    
+    Particularly invocations of open-ils.circ.stat_cat.asset.retrieve.all in the
+    Item Attribute Editor
+    
+    To test:
+    
+        login with a BR1 workstation
+        load a pristine (non-stat-cat-laden) BR1 item with the editor
+        there should be no call to open-ils.circ.stat_cat.asset.retrieve.all
+        change the Circ Lib on the item to BR4
+        reload the item in the editor
+        there should be a call to open-ils.circ.stat_cat.asset.retrieve.all
+        reload the item in the editor
+        there should be no call to open-ils.circ.stat_cat.asset.retrieve.all
+        assign the item a stat cat entry owned by CONS
+        reload the item in the editor
+        there should be no call to open-ils.circ.stat_cat.asset.retrieve.all
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+9	0	Open-ILS/xul/staff_client/server/cat/copy_editor.js
+
+commit 73c4ad8493995507919d1bcf62c38442d79c3225
+Author: edoceo <code at edoceo.com>
+Date:   Wed Jul 25 02:00:55 2012 -0700
+
+    Patch to improve the warning on double checkout attempt
+    
+    Code modifications by David Busby of Edoceo for KCLS
+    Released without restriction to Evergreen community
+    Signed-off-by: edoceo <code at edoceo.com>
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+13	0	Open-ILS/xul/staff_client/server/circ/checkout.js
+3	0	Open-ILS/xul/staff_client/server/locale/en-US/circ.properties
+
+commit 1da314f9232ba902d54bfc77315ad8418d066d83
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Apr 11 13:26:42 2012 -0400
+
+    mod_perl expects child_init return values
+    
+    So add in Apache2::Const::OK returns on all of them.
+    
+    [LFW: Added the same change to AutoSuggest.pm for consistency's sake.]
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+4	3	Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/AutoSuggest.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/BadDebt.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/Exporter.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/IDL2js.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/PasswordReset.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/Proxy.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/Proxy/Authen.pm
+1	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/Reporter.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/TemplateBatchBibUpdate.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/Vandelay.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/XMLRPCGateway.pm
+
+commit 0f02a20592f05d9304346e6ef28d10a9371efdae
+Author: edoceo <code at edoceo.com>
+Date:   Wed Nov 7 20:08:27 2012 -0800
+
+    Allow 'Enter' key to run Verify Credentials user check
+    
+    In both the "Verify Credentials" menu and "Test Password" patron account
+    option, this change checks for the keypress of "Enter" and then executes
+    the cmd_verify routine.
+    
+    Additionally, the password field is blanked after each attempt.
+    
+    Signed-off-by: edoceo <code at edoceo.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+9	1	Open-ILS/xul/staff_client/server/main/verify_credentials.js
+
+commit 5bc693977b1fa85e23551a73551c231a3fe16cd1
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Thu Mar 22 22:21:36 2012 -0400
+
+    Acq: Yet more efforts to sanitize data for the EDI translator
+    
+    I specifically did this to address cases reported to me by Galen
+    Charlton in which get_li_attr_jedi() would return the string "nul", but
+    I hope this is a nail in the coffin for problems involving
+    JEDI-producing Action/Trigger templates feeding the EDI translator
+    strings that the latter doesn't like.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+35	20	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm
+
+commit 697b66cba1dea7c5a4084c870c9e94ad0ad7a5f2
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sun Dec 9 00:36:08 2012 -0500
+
+    Make the acquisitions setup show up in the manual
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2	0	docs/root.txt
+
+commit 3ba41e17c0e97a89c4d1b5977bc885ed5ab30dd9
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sun Dec 9 00:30:29 2012 -0500
+
+    Add acquisitions setup chapter
+    
+    Another product of the Evergreen in Action documentation sprint!
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+238	0	docs/admin_initial_setup/ordering_materials.txt
+-	-	docs/media/order_record_loading.png
+ create mode 100644 docs/admin_initial_setup/ordering_materials.txt
+ create mode 100644 docs/media/order_record_loading.png
+
+commit a839cfce0af7e45d09f298876f8f2df565a284ad
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sat Dec 8 19:55:24 2012 -0500
+
+    Add the "Importing via the staff client" chapter
+    
+    ... from the Evergreen In Action doc sprint.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+190	0	docs/admin_initial_setup/importing_via_staff_client.txt
+-	-	docs/media/create_match_sets.png
+-	-	docs/media/import_item_attributes.png
+-	-	docs/media/record_quality_metrics.png
+2	0	docs/root.txt
+ create mode 100644 docs/admin_initial_setup/importing_via_staff_client.txt
+ create mode 100644 docs/media/create_match_sets.png
+ create mode 100644 docs/media/import_item_attributes.png
+ create mode 100644 docs/media/record_quality_metrics.png
+
+commit e1e2894b3426f3f989eeed55ea690aee4b466fc5
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sat Dec 8 18:36:12 2012 -0500
+
+    Roll in some Evergreen in Action chapters
+    
+    For the initial import we're keeping the formatting and words identical,
+    so that we can manually sycnhronize changes as needed between the FLOSS
+    Manuals version of this documentation and the AsciiDoc version.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+99	0	docs/admin_initial_setup/describing_your_organization.txt
+321	0	docs/admin_initial_setup/describing_your_people.txt
+349	0	docs/admin_initial_setup/migrating_your_data.txt
+12	0	docs/root.txt
+ create mode 100644 docs/admin_initial_setup/describing_your_organization.txt
+ create mode 100644 docs/admin_initial_setup/describing_your_people.txt
+ create mode 100644 docs/admin_initial_setup/migrating_your_data.txt
+
+commit 196b60a711726c80608d3516c8ac73b1f2579e8e
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sat Dec 8 18:37:51 2012 -0500
+
+    Add a target ID to fix the epub transform
+    
+    Commit a850606073 added a link pointing to this ID, but the target ID
+    did not exist, breaking the epub transform. Now it works again.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	0	docs/admin/lsa-library_settings_editor.txt
+
+commit a850606073fea6e0c25baf1468a2abb06aeaba82
+Author: BC Libraries Cooperative <sdineen at sitka.bclibraries.ca>
+Date:   Fri Nov 30 11:10:39 2012 -0500
+
+    Documentation: Add sections to workstation admin chapter.
+    
+    Content from:
+    http://docs.sitka.bclibraries.ca/Sitka/current/html/intro_start_workstation_admi$
+    
+    Receipt template editor sections moved to this chapter.
+    Converted to asciidoc by rsoulliere. Index terms added by rsoulliere
+    Some duplicate images were also removed from media directory.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+0	34	docs/admin/lsa-receipt_template_editor.txt
+210	0	docs/admin/workstation_admin.txt
+-	-	docs/media/Authority_Control_Sets1.jpg.1
+-	-	docs/media/Authority_Control_Sets2.jpg.1
+-	-	docs/media/Authority_Control_Sets3.jpg.1
+-	-	docs/media/Authority_Control_Sets4.jpg.1
+-	-	docs/media/Authority_Control_Sets5.jpg.1
+-	-	docs/media/Authority_Control_Sets6.jpg.1
+-	-	docs/media/Authority_Control_Sets7.jpg.1
+-	-	docs/media/Authority_Control_Sets8.jpg.1
+-	-	docs/media/Authority_Control_Sets9.jpg.1
+-	-	docs/media/Call_Number_Prefixes_and_Suffixes_2_22.jpg.1
+-	-	docs/media/Core_Source_1.jpg.1
+-	-	docs/media/Saved_Catalog_Searches_2_21.jpg.1
+-	-	docs/media/Saved_Catalog_Searches_2_22.jpg.1
+-	-	docs/media/Sorting_Columns3.jpg.1
+-	-	docs/media/receipt-11a.png
+-	-	docs/media/receipt-2.png
+-	-	docs/media/workstation-button_bar-1.png
+-	-	docs/media/workstation-button_bar-2.png
+-	-	docs/media/workstation-button_bar-3.png
+0	2	docs/root.txt
+ delete mode 100644 docs/admin/lsa-receipt_template_editor.txt
+ delete mode 100644 docs/media/Authority_Control_Sets1.jpg.1
+ delete mode 100644 docs/media/Authority_Control_Sets2.jpg.1
+ delete mode 100644 docs/media/Authority_Control_Sets3.jpg.1
+ delete mode 100644 docs/media/Authority_Control_Sets4.jpg.1
+ delete mode 100644 docs/media/Authority_Control_Sets5.jpg.1
+ delete mode 100644 docs/media/Authority_Control_Sets6.jpg.1
+ delete mode 100644 docs/media/Authority_Control_Sets7.jpg.1
+ delete mode 100644 docs/media/Authority_Control_Sets8.jpg.1
+ delete mode 100644 docs/media/Authority_Control_Sets9.jpg.1
+ delete mode 100644 docs/media/Call_Number_Prefixes_and_Suffixes_2_22.jpg.1
+ delete mode 100644 docs/media/Core_Source_1.jpg.1
+ delete mode 100644 docs/media/Saved_Catalog_Searches_2_21.jpg.1
+ delete mode 100644 docs/media/Saved_Catalog_Searches_2_22.jpg.1
+ delete mode 100644 docs/media/Sorting_Columns3.jpg.1
+ create mode 100644 docs/media/receipt-11a.png
+ create mode 100644 docs/media/receipt-2.png
+ create mode 100644 docs/media/workstation-button_bar-1.png
+ create mode 100644 docs/media/workstation-button_bar-2.png
+ create mode 100644 docs/media/workstation-button_bar-3.png
+
+commit 6c71f0264e598fa73648de12f5ff51a678b6fc00
+Author: BC Libraries Cooperative <sdineen at sitka.bclibraries.ca>
+Date:   Thu Nov 29 15:39:57 2012 -0500
+
+    Documentation: Add workstation administration chapter.
+    
+    Content from: http://docs.sitka.bclibraries.ca/Sitka/current/html/intro_start_workstation_admin.html
+    Converted to asciidoc by rsoulliere.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+122	0	docs/admin/workstation_admin.txt
+-	-	docs/media/workstation_admin-1.jpg
+-	-	docs/media/workstation_admin-2.jpg
+-	-	docs/media/workstation_admin-3.png
+-	-	docs/media/workstation_admin-4.png
+-	-	docs/media/workstation_admin-5.png
+-	-	docs/media/workstation_admin-6.jpg
+2	0	docs/root.txt
+ create mode 100644 docs/admin/workstation_admin.txt
+ create mode 100644 docs/media/workstation_admin-1.jpg
+ create mode 100644 docs/media/workstation_admin-2.jpg
+ create mode 100644 docs/media/workstation_admin-3.png
+ create mode 100644 docs/media/workstation_admin-4.png
+ create mode 100644 docs/media/workstation_admin-5.png
+ create mode 100644 docs/media/workstation_admin-6.jpg
+
+commit 2c98231113f6ce9bf86534c490e54c0c1b31e119
+Author: Michael Peters <mrpeters at library.in.gov>
+Date:   Wed Nov 28 12:36:10 2012 -0500
+
+    Fix misspelling of "summary" in KPAC Added Content
+    
+    Summary != Smmary
+    
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/kpac/parts/addedcontent.tt2
+
+commit a302514610ffe9e5ed67078ad81a3c76448d9dc4
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Thu Nov 29 10:43:28 2012 -0500
+
+    Documentation: Add staff client login chapter.
+    
+    Included standalone interface and loggin out information as well as
+    a few index terms.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+57	0	docs/admin/staff_client-login.txt
+2	0	docs/root.txt
+ create mode 100644 docs/admin/staff_client-login.txt
+
+commit c25ef1474cc19be389d1f0a4822933462e76c259
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Wed Nov 28 11:36:54 2012 -0500
+
+    Documentation: Add chapter on staff client installation.
+    
+    Also included information on removing staff client preferences
+    (from EG wiki) and registering workstations.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+173	0	docs/installation/staff_client_installation.txt
+-	-	docs/media/staff_client_installation_0.png
+-	-	docs/media/staff_client_installation_1.png
+-	-	docs/media/staff_client_installation_2.png
+-	-	docs/media/staff_client_installation_3.png
+-	-	docs/media/staff_client_installation_4.png
+2	0	docs/root.txt
+ create mode 100644 docs/installation/staff_client_installation.txt
+ create mode 100644 docs/media/staff_client_installation_0.png
+ create mode 100644 docs/media/staff_client_installation_1.png
+ create mode 100644 docs/media/staff_client_installation_2.png
+ create mode 100644 docs/media/staff_client_installation_3.png
+ create mode 100644 docs/media/staff_client_installation_4.png
+
+commit fecd882f6df72799dd10e1dfda8e412516720490
+Author: Melissa Lefebvre <mlefebvre at biblio.org>
+Date:   Tue Nov 27 13:35:42 2012 -0500
+
+    KPAC - add shelving location to copy table display
+    
+    Addition of shelving location information to the display along with the
+    removal of broken "view library info" javascript link.
+    
+    Signed-off-by: Melissa Lefebvre <mlefebvre at biblio.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+4	4	Open-ILS/src/templates/kpac/parts/copy_table.tt2
+
+commit 8bf4143b9c0fcd2d6948c1b172e5e4b1acd167a3
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Nov 21 14:17:59 2012 -0500
+
+    KPAC - fix getit_results with short titles
+    
+    When using the "Get it" options to either add an item to a list or place an
+    item on hold, one would get an internal server error whenever attemping this
+    on a bib record with a short title.
+    
+    Turns out that the substr function that shortens the length of long titles
+    breaks when the title is 18 characters or less.
+    
+    Add an IF check around the substr function to avoid this error.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+
+1	1	Open-ILS/src/templates/kpac/getit_results.tt2
+
+commit 66e60c21eb71bba55e06245000906118f1c0e9bb
+Author: Ben Shum <bshum at biblio.org>
+Date:   Mon Nov 19 17:34:33 2012 -0500
+
+    KPAC - fix Get It and pickup library selector
+    
+    Change PROCESS to INCLUDE to prevent variable leaks from breaking
+    the pickup library selector's values.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+
+2	2	Open-ILS/src/templates/kpac/getit.tt2
+
+commit aaec5cd703f310b001670a93b90e207d987616c9
+Author: Pasi Kallinen <pasi.kallinen at pttk.fi>
+Date:   Tue Nov 27 12:39:02 2012 +0200
+
+    LP#1082260: Update OPAC low search hits template for i18n
+    
+    The OPAC lowhits.tt2 template is only partially translatable,
+    and the translatable part is impossible to make sound good
+    for languages with different word order than English.
+    
+    This patch changes the already translatable part so there
+    are 4 different phrases to translate (instead of two phrase
+    fragments), and makes the search hints translatable.
+    
+    For English language, the patch does not introduce any visible differences.
+    
+    Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+34	27	Open-ILS/src/templates/opac/parts/result/lowhits.tt2
+
+commit b801cf1a544c6bce3f24952ae8734348dfaa194d
+Author: Michael Peters <mrpeters at library.in.gov>
+Date:   Tue Nov 27 09:31:32 2012 -0500
+
+    Fix typo in docs/opac/search_form.txt
+    
+    Creating a simple search for kpac should link to "kpac"
+    not "tpac" which won't exist.
+    
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	1	docs/opac/search_form.txt
+
+commit a2a6225fdc1d0e389c7b39aeeca9229d71e5bbf8
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Thu Nov 8 15:09:09 2012 -0500
+
+    Fix lp1076379: Can't edit holds beyond first page.
+    
+    When a hold was being edited on page 2+ of a patron's list of holds, the
+    offset was > 0. Since the input hold_ids array ref has only 1 member, using
+    the offset as a starting point in searching began the search beyond the end
+    of the array and thus returned nothing.
+    
+    The code in this commit moves the handling of the offset and limit to cases
+    where the input hold_ids is undefined, as this is, I think the intended
+    behavior. Typically when hold_ids is passed to the fetch_user_holds function
+    in EGCatLoader::Account, you want to retrieve those holds regardless of
+    the offset and limit values.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+7	3	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm
+
+commit 13236a0af07ee4b56d5fdaf33105537a1d692b4e
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Thu Nov 8 11:32:06 2012 -0500
+
+    Repair syntax on line 559 of Holds.pm
+    
+    A change was introduced when listing available holds that has incorrect JSON
+    syntax. This caused available holds not to be returned by the query.
+    
+    Changing '+ahr' to '=' in the query resolves this.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit 968e6f8b6057fd619f65dda3dd680effb9c2eaac
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Mon Nov 26 10:17:53 2012 -0500
+
+    Documentation: Fix some typos in upgrade instructions.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+2	2	docs/installation/server_upgrade.txt
+
+commit 25429d51619641bb12d68e1cd8f4116469aa0e37
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Nov 21 11:37:06 2012 -0500
+
+    Test data: avoid crazy transactions for expired patrons
+    
+    Rather than creating brand new circ transactions for patrons who expired
+    in 1999, make things a little more realistic by filtering out the
+    patrons to those whose account expired in the past month or later, and
+    creating xact_start / due_date values based on their account expiry
+    date if expired, or NOW() if still active.
+    
+    Oh, and add some patrons who expired over the past month. :)
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+13	4	Open-ILS/tests/datasets/sql/env_create.sql
+2	0	Open-ILS/tests/datasets/sql/transactions.sql
+10	5	Open-ILS/tests/datasets/sql/users_patrons_100.sql
+
+commit 8d8372f2fbd8e6c15ec4f4bb19d9deaaaaa18dc4
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sun Nov 11 18:32:44 2012 -0500
+
+    Sample data: enable loading via eg_db_config.pl
+    
+    Add "--load-concerto-sample" and "--load-all-sample" options to the
+    eg_db_config.pl script so that would-be testers can create the database
+    and load sample data on it in one easy step.
+    
+    Add a release notes entry.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+44	3	Open-ILS/src/support-scripts/eg_db_config.pl
+24	0	docs/RELEASE_NOTES_NEXT/loading_sample_data.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/loading_sample_data.txt
+
+commit cab422572df2a9b60043b00e5edcad34ad1e9ca7
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sun Nov 11 10:48:55 2012 -0500
+
+    Concerto test data: realistic call numbers
+    
+    Add a parameter to the populate call number function so that we can define the
+    call number class. As a result, create a new 3-parm version of the function
+    that simply calls the 4-parm version with a NULL value for the 3rd parm.
+    
+    Use some realistic LC and Dewey call numbers for the "concerto" bibs so
+    that we can have more useful tests of the call number browse functionality.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+54	54	Open-ILS/tests/datasets/sql/assets_concerto.sql
+5	5	Open-ILS/tests/datasets/sql/assets_fre.sql
+10	3	Open-ILS/tests/datasets/sql/env_create.sql
+1	0	Open-ILS/tests/datasets/sql/env_destroy.sql
+
+commit acd10e92ca8c47a336bc33b68f6de600e968e689
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Sat Oct 13 12:28:29 2012 -0400
+
+    Expand and modularize concerto data set
+    
+    * Break function creation and deletion out to their own files.
+    * Translates lul_fre_100 bibs into SQL
+    * adds a load_all.sql file for loading all test data
+    * moves all test data sql to its own dir
+    * creates a backward-compat concerto.sql loader
+    * ensure that most users are not already expired
+    * Adds a 'tag' column to marcxml_import, which populates last_xact_id on
+      import.  This 'tag' is useful for differentiating which records to link
+      callnumbers to.
+    * Adds an 'id' column to marcxml_import to ensure insert-order inserts
+      into biblio.record_entry
+    * Adds a handful of copies for french records
+    * Adds supporting functions for creating circ/hold test data.
+    * creates a pile of sample circ and hold data
+    * Give most users NULL dobs and suffixes.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+0	275	Open-ILS/tests/datasets/concerto.sql
+141	0	Open-ILS/tests/datasets/sql/assets_concerto.sql
+26	0	Open-ILS/tests/datasets/sql/assets_fre.sql
+104	0	Open-ILS/tests/datasets/sql/bibs_concerto.sql
+105	0	Open-ILS/tests/datasets/sql/bibs_fre.sql
+8	0	Open-ILS/tests/datasets/sql/bibs_maps.sql
+145	0	Open-ILS/tests/datasets/sql/env_create.sql
+12	0	Open-ILS/tests/datasets/sql/env_destroy.sql
+40	0	Open-ILS/tests/datasets/sql/load_all.sql
+22	0	Open-ILS/tests/datasets/sql/load_concerto.sql
+139	0	Open-ILS/tests/datasets/sql/transactions.sql
+2101	0	Open-ILS/tests/datasets/sql/users_patrons_100.sql
+3617	0	Open-ILS/tests/datasets/sql/users_staff_134.sql
+0	2103	Open-ILS/tests/datasets/users_patrons_100.sql
+0	3621	Open-ILS/tests/datasets/users_staff_134.sql
+ delete mode 100644 Open-ILS/tests/datasets/concerto.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/assets_concerto.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/assets_fre.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/bibs_concerto.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/bibs_fre.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/bibs_maps.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/env_create.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/env_destroy.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/load_all.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/load_concerto.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/transactions.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/users_patrons_100.sql
+ create mode 100644 Open-ILS/tests/datasets/sql/users_staff_134.sql
+ delete mode 100644 Open-ILS/tests/datasets/users_patrons_100.sql
+ delete mode 100644 Open-ILS/tests/datasets/users_staff_134.sql
+
+commit e14abbde87d0f03b6943505f09c66e0d2d589f7a
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Nov 21 09:24:09 2012 -0500
+
+    Tweak wording of patron account expiry warning
+    
+    A warning is something that comes in advance of an event, so a
+    pre-warning would be a warning about the warning, which is a bit weird.
+    Hopefully this language will be a little simpler and easier for users to
+    understand.
+    
+    Also, fetch the value of the setting once and stuff it in a variable;
+    vars are cheap and things might be a little more legible.
+    
+    Also, add a release note entry for the new feature.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+5	5	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+5	5	Open-ILS/src/sql/Pg/upgrade/0745.data.prewarn_expire_setting.sql
+6	5	Open-ILS/xul/staff_client/server/patron/display.js
+9	0	docs/RELEASE_NOTES_NEXT/circulation_patron_expiry_warning.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/circulation_patron_expiry_warning.txt
+
+commit 7ff7b24c442e7d007b27d14ed6924cc4301fc4d2
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Nov 21 07:08:04 2012 -0500
+
+    Wrap upgrade script for patron expiry warning
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+30	0	Open-ILS/src/sql/Pg/upgrade/0745.data.prewarn_expire_setting.sql
+0	25	Open-ILS/src/sql/Pg/upgrade/XXXX.data.prewarn_expire_setting.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0745.data.prewarn_expire_setting.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.prewarn_expire_setting.sql
+
+commit b6e866ab65d7d9658b59d8812e3ca2aada1c0efb
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Nov 14 13:30:11 2012 -0500
+
+    Add library setting to control pre-expire warning for patrons
+    
+    Thanks to some more inspiration by Thomas Berezansky, this change adds a
+    library setting to control when the pre-expire warning will be displayed.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+20	0	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+25	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.prewarn_expire_setting.sql
+14	5	Open-ILS/xul/staff_client/server/patron/display.js
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.prewarn_expire_setting.sql
+
+commit 136dd85b33c6ffddbf587dcdccbb5c07d9cf0189
+Author: Michael Peters <mrpeters at library.in.gov>
+Date:   Thu Nov 8 14:14:42 2012 -0500
+
+    Warn on card expiring within 28 days
+    
+    Thank you to Thomas Berzansky for pointing out a simple way of
+    accomplishing this, since we were already checking and alerting
+    if card was already expired.
+    
+    This places an alert on the "stop sign" page if the card expires
+    within 28 days from the current date.
+    
+    Interval can be configured by editing preexpire.setDate in display.js.
+    
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	0	Open-ILS/xul/staff_client/server/locale/en-US/patron.properties
+6	1	Open-ILS/xul/staff_client/server/patron/display.js
+
+commit 60c5146f4a4ce942329afcaba1c9df23e0ccd557
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Nov 19 15:55:34 2012 -0500
+
+    Docs: Add offline circulation basics
+    
+    Based heavily on the documentation from Evergreen 1.6, which was in turn
+    based heavily on the Sitka documentation for offline mode, add some
+    coverage of the offline processes for registering patrons, checking
+    items in and out, renewing items, and uploading & processing
+    transactions.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+265	0	docs/circulation/offline_mode.txt
+8	0	docs/root.txt
+ create mode 100644 docs/circulation/offline_mode.txt
+
+commit eb2b8f0b7743b38060b6d5eee5c9622223ffebc9
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Nov 16 16:01:10 2012 -0500
+
+    Make the "user account expired" warning i18n-friendly
+    
+    The warning message is now capable of being translated, and we're
+    formatting of the date consistently with other uses throughout the TPAC.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6	4	Open-ILS/src/templates/opac/parts/myopac/main_base.tt2
+
+commit 501efed0b7140b2d3a5272349ab0fc3ab820b240
+Author: Justin Hopkins <hopkinsju at gmail.com>
+Date:   Mon Jul 30 17:25:20 2012 -0500
+
+    Add card expired message to the myopac account summary
+    
+    The JSPAC included a message to users who had an expired card alerting them to this fact.
+    This message is useful and was not writted into the TPAC.
+    
+    Signed-off-by: Justin Hopkins <hopkinsju at gmail.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+5	1	Open-ILS/src/templates/opac/parts/myopac/main_base.tt2
+
+commit 6aa8c2a0bb78e9bab518e5bfa85333d21890808e
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Sep 26 23:47:26 2012 -0400
+
+    Set eg_version at start of 2.2 upgrade scripts
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	0	Open-ILS/src/sql/Pg/version-upgrade/2.2.0-2.2.1-upgrade-db.sql
+1	0	Open-ILS/src/sql/Pg/version-upgrade/2.2.1-2.2.2-upgrade-db.sql
+
+commit 16338e46b329d2ba5b89f607854bd1b57008981f
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Sep 26 23:25:53 2012 -0400
+
+    Apply the 0715 update for acq settings_group
+    
+    We add the 'acq' config.settings_group in the seed data, and add the
+    other settings groups in the 2.1-2.2 upgrade script, but need to add the
+    acq settings_group to the 2.1-2.2 upgrade script.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+9	0	Open-ILS/src/sql/Pg/version-upgrade/2.1-2.2-upgrade-db.sql
+
+commit 77ac8a925ba59552b1bab9b85e2fa63275eebca3
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Wed Sep 26 23:34:32 2012 -0400
+
+    After upgrade, list records with missing or incorrect 901$c
+    
+    This is a common cause of pain for upgrades. Let's try to identify the
+    problem early (even if it takes forever on a site with 3 million bibs)
+    and offer advice on correcting the problem if it is flagged.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+19	0	Open-ILS/src/sql/Pg/version-upgrade/2.1-2.2-upgrade-db.sql
+
+commit 4c9c98e689f86a5f3b254fb33803f608e32a14c4
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Sep 13 12:47:32 2012 -0400
+
+    rel_2_1 does not have a config.upgrade_log.applied_to column
+    
+    Thanks to Michael Peters for running into & reporting this problem when
+    attempting to upgrade from 2.1.2 to 2.1.3!
+    
+    Fix the version upgrade script.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+3	3	Open-ILS/src/sql/Pg/version-upgrade/2.1.2-2.1.3-upgrade-db.sql
+
+commit 224813acbb19d414e7faa4e5f4d3ab3ed0f0b420
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Wed Nov 14 13:38:09 2012 -0500
+
+    Documentation: Grammar fix on upgrade instructions.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+1	1	docs/installation/server_upgrade.txt
+
+commit 4216357df925f54cd0c52387095da44e998055a8
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Wed Nov 14 13:35:17 2012 -0500
+
+    Documentation: Specify that Apache files should be updated as root.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+1	1	docs/installation/server_upgrade.txt
+
+commit 68a218e55f57133442e1fd1a000c89d72f622da7
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Wed Nov 14 13:18:01 2012 -0500
+
+    Documentation: Update upgrade instructions for 2.3.1
+    
+    Fleshed out the Apache instructions with more precise cp commands.
+    I find this helpful since I like to copy and paste the commands.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+37	36	docs/installation/server_upgrade.txt
+
+commit eabc8c689151b27f7d2d421775f19dbaa82dbe42
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Tue Nov 13 15:45:07 2012 -0500
+
+    Stamping upgrade script for lost xact_finish opt.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+25	0	Open-ILS/src/sql/Pg/upgrade/0744.data.coust_lost_xact_finish_on_zero.sql
+0	25	Open-ILS/src/sql/Pg/upgrade/XXXX.data.coust_lost_xact_finish_on_zero.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0744.data.coust_lost_xact_finish_on_zero.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.coust_lost_xact_finish_on_zero.sql
+
+commit f233ad8dc5fdc1f2b783948072e59da9d68ee41b
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Sat Nov 3 12:04:34 2012 -0400
+
+    Address Launchpad Bug 793550.
+    
+    Check for stop fines reason of CHECKIN or RENEW before closing a circulation
+    transaction when the balance reaches zero.
+    
+    Also, if the stop fines reason is LOST, then check a new ou setting,
+    circ.lost.xact_open_on_zero, to determine if the transaction is closed or
+    kept open.  The setting is checked for the circulation copy's circ_lib.
+    
+    Add CircCommon->can_close_circ.
+    
+    Following up on Dan Wells' comments on Launchpad Bug 793550, I have moved
+    the logic to check if the circ transaction can be closed to its own utility
+    function in OpenILS::Application::Circ::CircCommon.  This potentially
+    consolidates the logic in one place in case we need to use it elsewhere.
+    
+    Instead of checking for stop fines reasons of CHECKIN and RENEW and
+    checking for checkin time on the circ, we just check for checkin time.
+    Both CHECKIN and RENEW should set the checkin time.
+    
+    Also, use the constant for stop fines reason of LOST, rather than the
+    literal string "LOST".
+    
+    Signed-off-by: Jason Stephenson <jason at sigio.com>
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+30	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CircCommon.pm
+5	3	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Money.pm
+19	0	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+25	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.coust_lost_xact_finish_on_zero.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.coust_lost_xact_finish_on_zero.sql
+
+commit c411a9d5745bb3e587d8e43da3d4c5110c645b26
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Nov 12 11:46:21 2012 -0500
+
+    No need for vanity info in OpenSRF article
+    
+    We don't credit particular authors in the Evergreen docs, and we don't
+    want to dissuade contributors from improving & evolving any particular
+    section of the docs, so get rid of a hangover attribution from the
+    OpenSRF article.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+0	2	docs/development/intro_opensrf.txt
+
+commit 3e86fd27b15d6e6ff8d88a09520fe6b2e26f37d4
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Nov 12 11:32:31 2012 -0500
+
+    Add "Intro to OpenSRF" to development section
+    
+    We have the Asciidoc source, so let's drop it into place. Triggered by a
+    request for info on OpenSRF development on IRC that was answered with
+    "we don't really have much information on that" response. *Poof*, now
+    we have some.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1353	0	docs/development/intro_opensrf.txt
+40	0	docs/development/perl_client.pl
+60	0	docs/development/python_client.py
+-	-	docs/media/CONNECT.png
+-	-	docs/media/REQUEST.png
+1	0	docs/root.txt
+ create mode 100644 docs/development/intro_opensrf.txt
+ create mode 100644 docs/development/perl_client.pl
+ create mode 100644 docs/development/python_client.py
+ create mode 100644 docs/media/CONNECT.png
+ create mode 100644 docs/media/REQUEST.png
+
+commit a3c6001e2bcb7af7eb99fab7e94709e4f68aa244
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Nov 12 11:28:58 2012 -0500
+
+    Docs: resolve transform errors and warnings
+    
+    ePub really doesn't like absolute references to images - which is good,
+    it shouldn't. Also, single line NOTE blocks are much easier to deal with
+    using the prefix approach (and don't generate warnings during normal
+    HTML generation).
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	4	docs/acquisitions/invoices.txt
+1	1	docs/admin/acquisitions_admin.txt
+
+commit 12816b06de98897077ad6b5246bdbe5850bfc746
+Author: Remington Steed <rjs7 at calvin.edu>
+Date:   Mon Nov 12 11:10:31 2012 -0500
+
+    Documentation: Fix small typo in 2.3 release notes. s/how/now.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+1	1	docs/RELEASE_NOTES_2_3.txt
+
+commit f9e56279db6098c7603a7ad2c3b8acfe9043c3f8
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Mon Nov 12 10:36:09 2012 -0500
+
+    Documentation: Fix some broken links and adjust an image in the
+    Acquistions Admin chapter as pointed out by Remington Steed.
+    
+    Added anchors, pointed links to "Line Item Features" and changed
+    wording accordingly. I cropped image and use a red box for highlighting.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+3	3	docs/admin/acquisitions_admin.txt
+-	-	docs/media/acq_marc_search-2.png
+
+commit d026d794b79b0eb182c731783b69da62ecc92bff
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Nov 12 09:17:05 2012 -0500
+
+    Add translation update info back into official docs
+    
+    This disappeared in the 2.3 release for some reason; let's get it back.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	1	docs/root.txt
+
+commit ddb6dcb1eba9c4b4c06399b40265f5743652e19a
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Wed Oct 3 13:21:57 2012 -0400
+
+    Documentation: Update upgrade instructions to 2.3.0.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+12	12	docs/installation/server_upgrade.txt
+
+commit 258aba101535ebd12a8c4347ed283e426c14e6eb
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Thu Aug 23 13:07:24 2012 -0400
+
+    Documentation: update upgrade instructions to 2.3.beta2.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+11	11	docs/installation/server_upgrade.txt
+
+commit 2e10326b9e0ee22982a2b9ac45b6f75a1ee57103
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Nov 7 12:55:49 2012 -0500
+
+    make_release: add the \set eg_version command to upgrade script
+    
+    We were echoing the output to STDOUT instead of redirecting it to the
+    upgrade script that we were generating. Let's go the last mile and
+    actually get it into the upgrade script.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	build/tools/make_release
+
+commit df05ae28be786df311679e07f58cc2c50d976b11
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Oct 10 17:36:52 2012 -0400
+
+    Make it possible to suppress IDL fields
+    
+    Some clients of external services, particularly pcrud and reporter-store,
+    need to be able to access tables that contain columns we'd rather restrict.
+    For instance, the passwd field on actor.usr.
+    
+    To effect this feature we provide a blacklist attribute for fields, called
+    suppress_controller, which works in the same way as the class controller
+    attribute but names controllers not allowed to use the field.  When the field
+    is explicitly named in a query (fieldmapper select block or json_query) an
+    error is thrown, and suppressed fields are ingored in general fieldmapper
+    search/retreive requests.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	Open-ILS/examples/fm_IDL.xml
+1	0	Open-ILS/examples/fm_IDL.xsd
+7	0	Open-ILS/src/c-apps/oils_idl-core.c
+27	2	Open-ILS/src/c-apps/oils_sql.c
+3	0	Open-ILS/web/reports/xul/source-browse.js
+3	0	Open-ILS/web/reports/xul/source-setup.js
+
+commit cfca470055f1f3f88d83f751caa13dfc63af0678
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Nov 6 15:28:28 2012 -0500
+
+    Move 'initial host' feature docs into 2.3 release notes
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+15	0	docs/RELEASE_NOTES_2_3.txt
+0	12	docs/RELEASE_NOTES_NEXT/initial_host.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/initial_host.txt
+
+commit 84c5f85907c823af8a8caf70e3f7dce3b005e86a
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Nov 2 15:28:27 2012 -0400
+
+    CStoreEditor auto-activity log redaction
+    
+    CStoreEditor logs all update calls to the activity log as key/value
+    pairs on the updated object.  Avoid loging key/value pairs for objects
+    when the API call being relayed by CStoreEditor is on the list of
+    log-protect API calls.  Instead, log "**DETAILS REDACTED**".
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+20	3	Open-ILS/src/perlmods/lib/OpenILS/Utils/CStoreEditor.pm
+
+commit 39f558e3c81d4b9551b527bd5af56ab3666cc7e4
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Nov 5 22:14:34 2012 -0500
+
+    Document log redaction XML chunk for opensrf_core.xml
+    
+    Based on Bill Erickson's original version.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+26	1	docs/RELEASE_NOTES_2_3.txt
+
+commit 519e8f77a9b967c5428235b49f46059779c357e8
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Oct 31 09:00:19 2012 -0400
+
+    Add sample log redaction config to EG opensrf_core
+    
+    Redact parameter logging for the following API calls:
+    
+    Login:
+    open-ils.auth.authenticate.verify
+    open-ils.auth.authenticate.complete
+    open-ils.auth_proxy.login
+    
+    User updates:
+    open-ils.actor.user.password
+    open-ils.actor.user.username
+    open-ils.actor.user.email
+    open-ils.actor.patron.update
+    open-ils.cstore.direct.actor.user.create
+    open-ils.cstore.direct.actor.user.update
+    open-ils.cstore.direct.actor.user.delete
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+18	0	Open-ILS/examples/opensrf_core.xml.example
+
+commit 769a42183480e0ac3e7944816c89f7539660abd0
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Aug 2 13:28:44 2012 -0400
+
+    Staff client initial hostname
+    
+    Add support for an initial staff client hostname.
+    
+    It can be specified during building the staff client or via configure.
+    
+    During making the staff client:
+    
+    make INITIAL_HOST=hostname build
+    
+    During configure:
+    
+    ./configure --with-initialhost=hostname
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	0	Open-ILS/xul/staff_client/Makefile.am
+7	2	Open-ILS/xul/staff_client/chrome/content/auth/controller.js
+30	3	Open-ILS/xul/staff_client/chrome/content/main/main.js
+3	0	Open-ILS/xul/staff_client/defaults/preferences/initialhost.js
+8	0	configure.ac
+12	0	docs/RELEASE_NOTES_NEXT/initial_host.txt
+ create mode 100644 Open-ILS/xul/staff_client/defaults/preferences/initialhost.js
+ create mode 100644 docs/RELEASE_NOTES_NEXT/initial_host.txt
+
+commit a58bb07326a5cfe54adbe3917edbf80b360e5421
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Oct 11 00:56:40 2012 -0400
+
+    TPAC: Address some search syntax leaks in links
+    
+    Expand the list of filtered characters to cover all of the special
+    characters documented for the Evergreen search grammar
+    (http://evergreen-ils.org/dokuwiki/doku.php?id=documentation:technical:search_grammar)
+    when generating links in the TPAC so as to avoid inadvertently launching
+    filtered searches when a user clicks on something that should just be a
+    display value.
+    
+    For example, if a title includes "Presenting a subject: tips for
+    consultants", it should _not_ launch a search for "subject" containing
+    "tips for consultants".
+    
+    This commit addresses most of the link problems in the record
+    display, as well as the author links in the search results table.
+    
+    Still problematic are the facets (which seem to rely on exact matching,
+    such that filtering out the problematic characters is itself
+    problematic) and autocomplete (which requires modifying the Autocomplete
+    Dojo widget).
+    
+    In addition, this commit makes the series code actually display, as it
+    was using a non-standard method to attempt to return the results from
+    the BLOCK (and failing). Also, it makes the links for authors in the
+    record details match the MODS32 definition for personal name parts and
+    only use the "acdq" subfields. This enables a click on the link to
+    actually return results; previously, in the case where the author field
+    included (for example) a subfield "g" value, that value would be
+    included in the generated link and would likely lead to 0 hits.
+    
+    For authors, we substitute with a space rather than just eliding the
+    substituted value. Authors are particularly likely to have dates like
+    1899-1978; "1899 1978" matches, but "18991978" will not.
+    
+    Perhaps we should take the same approach with the others, or break down
+    the search/replace logic a little further (for example, we could remove
+    the "-" only if it is preceded by a space or is at the start of the
+    string and is followed immediately by a character, and preserve it if it
+    is surrounded by digits). But this seems to take us pretty far down the
+    road of less negatively surprising results.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+4	2	Open-ILS/src/templates/opac/parts/record/authors.tt2
+6	4	Open-ILS/src/templates/opac/parts/record/series.tt2
+1	1	Open-ILS/src/templates/opac/parts/record/subjects.tt2
+1	1	Open-ILS/src/templates/opac/parts/result/table.tt2
+
+commit ea560cb339f69b05f5ec93231219875fa96e00b0
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Oct 10 23:35:13 2012 -0400
+
+    TPAC: Add search torture tests to concerto record
+    
+    In addition to # signs causing problems in facets, we found that search
+    syntax in general is surfaced directly in most links that are exposed to
+    users in the TPAC. This commit adds several examples to the record with
+    the title "Trombone concerto (1991)":
+    
+    In the title, there is an embedded "subject:" search which will be
+    triggered by autocomplete.
+    
+    In the author (100 field), there is an embedded "author:" search which
+    will be triggered from the record details page. This also includes
+    another usage of the # sign.
+    
+    In the subject fields, there are:
+      * an embedded "subject:" search which will be triggered from the
+        facets, autocomplete, and record details page
+      * an embedded negation operator which will be triggered from the
+        facets, autocomplete, and record details page
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	Open-ILS/tests/datasets/concerto.sql
+
+commit 11f035632ab8799f9afe45ee0931ff8e4d977364
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Oct 10 15:50:49 2012 -0400
+
+    Munge concerto to include # signs in series facets
+    
+    Search for "Piano concerto in C major, op. 39" or "Beethoven: concertos
+    and overtures" and you'll get facets with # signs to assist with fixing
+    LP # 856811.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2	2	Open-ILS/tests/datasets/concerto.sql
+
+commit 0e18946d8ce21af964ec71f8c460b234e79fc22b
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Oct 25 19:51:44 2012 -0400
+
+    Add tsearch2 removal upgrade script
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+181	0	Open-ILS/src/sql/Pg/upgrade/0743.schema.remove_tsearch2.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0743.schema.remove_tsearch2.sql
+
+commit 5d41d16483c77b91d4b494444e27593a955b250c
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sat Sep 22 16:35:43 2012 -0400
+
+    Add support for PostgreSQL 9.2, drop TSearch2 extension
+    
+    The TSearch2 extension hasn't been needed for a long time, and it causes
+    problems trying to use ts_rewrite(TSQUERY, TEXT) at least.
+    
+    Add a full text search config script for PostgreSQL 9.2.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+1	0	Open-ILS/src/sql/Pg/000.english.pg92.fts-config.sql
+0	2	Open-ILS/src/sql/Pg/create_database_contribs.sql
+0	2	Open-ILS/src/sql/Pg/create_database_extensions.sql
+ create mode 120000 Open-ILS/src/sql/Pg/000.english.pg92.fts-config.sql
+
+commit 40e0fcad6b3c5a102ca7569a7a9978ae6a400172
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sat Sep 22 21:51:59 2012 -0400
+
+    Avoid specific version mention for database extensions
+    
+    As tsbere pointed out, the 9.1 database script will be used for every
+    version after 9.1... which makes it confusing to have a version number.
+    As the primary reason for the difference is the switch to extensions
+    instead of contrib modules, use a name that flags that difference.
+    
+    Convert the 9.1 full-text search configuration into a symbolic link
+    instead of maintaining a separate copy of the file.
+    
+    Given that the pre-9.1 database script was focused on the creation of
+    PostgreSQL contribs, call it that, rather than the (now confusingly)
+    generic "create_database.sql" that existed from a time when contribs
+    ruled the earth and extensions were mere fantasy.
+    
+    Adjust eg_db_config.sql for these changes as well - including the
+    command line switches.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+1	45	Open-ILS/src/sql/Pg/000.english.pg91.fts-config.sql
+0	30	Open-ILS/src/sql/Pg/create_database.sql
+0	23	Open-ILS/src/sql/Pg/create_database_9_1.sql
+30	0	Open-ILS/src/sql/Pg/create_database_contribs.sql
+23	0	Open-ILS/src/sql/Pg/create_database_extensions.sql
+13	13	Open-ILS/src/support-scripts/eg_db_config.pl
+ mode change 100644 => 120000 Open-ILS/src/sql/Pg/000.english.pg91.fts-config.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/create_database.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/create_database_9_1.sql
+ create mode 100644 Open-ILS/src/sql/Pg/create_database_contribs.sql
+ create mode 100644 Open-ILS/src/sql/Pg/create_database_extensions.sql
+
+commit 66ea9fe2da42bd55b2c1100d12ca4cd2e2615649
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Oct 26 00:52:11 2012 -0400
+
+    TPAC: don't repeat subfields in record content notes
+    
+    Given a MARC field like "500 $a 1 $b 2 $c 3", the content note would
+    display as "1 1 2 1 2 3" as each subfield was appended to the total
+    set of notes.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+4	3	Open-ILS/src/templates/opac/parts/record/contents.tt2
+
+commit 81f20bb285bdda845cf7ad4b54e974b85d33c8bb
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Oct 10 17:26:06 2012 -0400
+
+    Sample Apache error syslog captures stderr
+    
+    Not all STDERR output and not all $req->log->foo() output makes it to
+    the Apache error log when using the 'ErrorLog syslog:local7'
+    configuration directive.  This changes the sample config to match the
+    CustomLog config so that all output is captured and redirected to
+    syslog.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	1	Open-ILS/examples/apache/eg.conf
+
+commit 7c6a1e58de03223fba413617575517c5ce2923a7
+Author: Mark Cooper <markchristophercooper at gmail.com>
+Date:   Mon Oct 22 22:01:22 2012 -0700
+
+    LP#1066629: Acq: Receiving an item should not change the status to "In Process" in many cases
+    
+    As suggested, when received, restrict copy status update for lineitem copies to only those that were on-order. Otherwise copies may have the status set to 'In Process' inappropriately.
+    
+    Signed-off-by: Mark Cooper <markchristophercooper at gmail.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+
+commit 546ef30df8407dcbd94f257a39497d8550838472
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Oct 24 01:42:04 2012 +0800
+
+    TPAC: indent Content descriptions to line up with Record details
+    
+    In the interest of trying to keep things a little more presentable, indent
+    the new content notes so that they line up with the record details bulleted
+    list items.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+5	0	Open-ILS/src/templates/opac/css/style.css.tt2
+
+commit d405493ca7f613097650d1c9cfc8c1c1241da4a5
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Oct 23 11:57:46 2012 -0400
+
+    TPAC: Use a single table for all content notes
+    
+    Rather than having one table per kind of content note, keep them all in
+    a single table. Thanks to Ben Shum for the prod.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+9	10	Open-ILS/src/templates/opac/parts/record/contents.tt2
+
+commit 36b36924677fa925a59a1af5d77aed21c160e3e6
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Oct 23 11:47:48 2012 -0400
+
+    TPAC: Show contents notes directly in record summary
+    
+    By popular demand in IRC, move the contents notes directly into the body
+    of the record summary rather than hiding the content under a twisty.
+    This improves external indexing of the page and makes the contents notes
+    more immediately evident to users.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+0	1	Open-ILS/src/templates/opac/parts/record/extras.tt2
+1	0	Open-ILS/src/templates/opac/parts/record/summary.tt2
+
+commit e744fbb8d05cf8de850bd7b95dde8c1c5fc8763d
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Oct 22 15:46:20 2012 -0400
+
+    Add detailed contents content to TPAC record summary
+    
+    Drawing from the LoC MARC definitions for the 500 field, display'em if you
+    got'em. Given that many keyword searches are likely to draw upon this content,
+    we should display the matches in the record summary.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/css/style.css.tt2
+194	0	Open-ILS/src/templates/opac/parts/record/contents.tt2
+1	3	Open-ILS/src/templates/opac/parts/record/extras.tt2
+ create mode 100644 Open-ILS/src/templates/opac/parts/record/contents.tt2
+
+commit d19878b7d312718a0a568f8c3a356cc3ea8a5180
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Oct 23 16:27:00 2012 -0400
+
+    Add missing ? to url_prefix regex check
+    
+    Fixes Barcode Completion and who knows what else.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	1	Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js
+
+commit 67b236752db8735c4a71ebeaa9bb60e18bf20e8b
+Author: Mark Cooper <markchristophercooper at gmail.com>
+Date:   Tue Oct 9 21:04:32 2012 -0700
+
+    LP#826917: Marc editor, CTRL+F6, F7, F8 no longer working on 2.0+
+    
+    Updated marcedit.js to recognize F6/7/8 according to codes at:
+    http://www.cambiaresearch.com/articles/15/javascript-char-codes-key-codes.
+    Did not modify behavior (so input focus is not adjusted post record load).
+    
+    Signed-off-by: Mark Cooper <markchristophercooper at gmail.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+6	6	Open-ILS/xul/staff_client/server/cat/marcedit.js
+
+commit 296b76a937a52093db298bf86f8125ed41d9db4b
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Oct 3 15:25:38 2012 -0400
+
+    Sort Templates/Reports/Output
+    
+    By name for Templates/Reports, by Run Time for Output.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+17	0	Open-ILS/web/opac/common/js/fm_table.js
+6	3	Open-ILS/web/opac/common/js/fm_table_conf.js
+
+commit cd8b69e427b5a85085e2082ee198c2a0e2cdf50c
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Tue Apr 24 16:54:20 2012 -0400
+
+    Admin -> Local Admin -> Item Attribute Editor
+    
+    Main purpose is to allow you to spawn the Item Attribute Editor for the purpose
+    of configuring templates and using the Hide Fields feature without actually
+    finding an item to work and putting it at risk of accidental modification.
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+11	0	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+2	0	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
+1	0	Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties
+40	4	Open-ILS/xul/staff_client/server/cat/copy_editor.js
+
+commit 6df036b3b385321dea22bc0be9aa3b1c396760db
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Oct 18 14:54:08 2012 -0400
+
+    Rollback cstore transaction before bbag record load
+    
+    To avoid timeouts, which results in transaction rollbacks, preemptively
+    roll back the bookbag fetching cstore transaction before we retrieve
+    what could be a very large list of bookbag records data.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+9	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm
+
+commit 3063f2e64598010e56ca13d194515d44f38784be
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Oct 9 16:49:09 2012 -0400
+
+    Authority popups are empty: fix dojo.query() usage
+    
+    When you right-click on a controllable field to display the contents of
+    the matching authority records, the contents of the matching authority
+    records simply appear as empty grey boxes.
+    
+    This is another case of needing to iterate over multiple values
+    separately rather than using one convenient CSS selector.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+7	1	Open-ILS/xul/staff_client/server/cat/marcedit.js
+
+commit cb8668d2deff10766509838c0d0e6a368b408040
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Oct 8 22:30:32 2012 -0400
+
+    Enable maintain_control_number() to handle new OCLCnums
+    
+    In July 2013, per LP# 1049171, OCLC will begin generating control
+    numbers beginning with the "on" prefix.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2	2	Open-ILS/src/sql/Pg/002.functions.config.sql
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+137	0	Open-ILS/src/sql/Pg/upgrade/0742.schema.maintain_control_number_oclc.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0742.schema.maintain_control_number_oclc.sql
+
+commit 2fa555d30fac179f8ac1255b6021652b6902ca97
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Mon Oct 1 13:53:27 2012 -0400
+
+    Acq: When creating invoices, let the user know if they're repeating an ID
+    
+    Invoices have a field for Vendor Invoice ID, which is required to be
+    unique for invoices associated with a given provider (vendor).  In
+    practice users may mistakenly try to create an invoice more than once, so
+    this gives them an indication that a given Vnedor Invoice ID has already
+    been used before they fill out the whole invoice.
+    
+    Users do have to have the fields labeled "Vendor Invoice ID",
+    "Provider", and "Receiver" filled out before validation can occur (the
+    last field is needed because of how permissions are checked when
+    searching for invoices).
+    
+    It is still possible to see a database error at save time if another
+    invoice is created between the time you started yours and the time
+    somebody else saved theirs.
+    
+    Also, while we're at it, this commit gets rid of acq/invoice/common.js
+    and moves its last function into acq/invoice/view.js, since both are
+    actually used only by the one interface.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1	1	Open-ILS/src/templates/acq/invoice/view.tt2
+2	1	Open-ILS/web/js/dojo/openils/acq/nls/acq.js
+6	0	Open-ILS/web/js/dojo/openils/widget/EditPane.js
+0	75	Open-ILS/web/js/ui/default/acq/invoice/common.js
+128	0	Open-ILS/web/js/ui/default/acq/invoice/view.js
+ delete mode 100644 Open-ILS/web/js/ui/default/acq/invoice/common.js
+
+commit cfe2507fa9a5e67608b189a7b37aa9435550ad8c
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Sep 28 13:58:07 2012 -0400
+
+    ACQ invoice tabs scroll improvements
+    
+    Avoid nested scrollbars on tabbed ACQ invoice UI.  This is done by
+    removing a ContentPane layer and setting doLayout='false' on the
+    TabContainer, which allows the individual tabs to control their own
+    height dynamically, which means no more hard-set 600px height on the
+    tabs.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+5	3	Open-ILS/src/templates/acq/invoice/view.tt2
+
+commit 3e400639f1b6c8d948980507c37a45df1a79cba3
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Sep 17 14:50:36 2012 -0400
+
+    ACQ scroll back to top of lineitem info page
+    
+    When displaying the lineitem "info" page (li attributes, marc record),
+    be sure to scroll to the top of the page instead of relying on the
+    previous scroll location.  In particular, if you last viewed a LI
+    toward the bottom of the page, returned (causes scroll down), then go
+    back into the info page, the page will be scrolled to the bottom.
+    
+    The solution is a little funkier than I'd hoped.  The scroll-to point
+    has to be a node that is a) within the scrolling dojo div and b). non-
+    visible when scrollIntoView is called.  Since the top-level
+    page div may be different, depending on who is loading li_table, we rely
+    on the caller to place an id=oils-scroll-to-top div in the page for
+    general top-scrolling.  (Note, also, window.scrollTo does not work when
+    it's the div and not the full page that needs scrolling).
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1	0	Open-ILS/src/templates/acq/picklist/view.tt2
+1	0	Open-ILS/src/templates/acq/po/view.tt2
+1	0	Open-ILS/src/templates/acq/search/unified.tt2
+3	0	Open-ILS/web/js/ui/default/acq/common/li_table.js
+
+commit c4df2e9ccacb369304dfeca0cfe94286b35d801a
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Wed Jun 13 02:30:36 2012 -0400
+
+    expose hard-coded toolbar layout option
+    
+    If the open-ils.menu.toolbar preference or ui.general.button_bar org unit
+    setting references a non-existent toolbar, then a hard-coded stock toolbar
+    will render.  However, the menu entry 'None' will be selected under the
+    Admin -> Workstation Administration -> Toolbars -> Current menu, which is
+    confusing.
+    
+    With this change, a Default menu entry will be selected whenever the hard-
+    coded layout has cause to render, and you can also explicitly select that
+    menu entry to use the default and save it as your workstation default.
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+9	0	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+1	0	Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties
+
+commit 7e35393865d42452a366b8be734ce81c0a1e9892
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Thu Oct 11 16:00:36 2012 -0400
+
+    TPAC: Make facet display work as in JSPAC
+    
+    Namely, this means:
+        - You see five facets per category by default, not ten.
+        - You can click a link to see all the facets in a category
+            (before this it was impossible to display more than ten).
+        - When viewing all the facets in a category, you can click a link
+            to reduce the list back to five.
+        - This number five I'm talking about is configurable in config.tt2.
+        - Alphabetical sorting of facets grouped by the same numbers of
+          results is restored.
+    
+    This addresses LP #1065109.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+8	2	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm
+3	1	Open-ILS/src/templates/opac/css/style.css.tt2
+1	0	Open-ILS/src/templates/opac/parts/config.tt2
+31	27	Open-ILS/src/templates/opac/parts/result/facets.tt2
+
+commit c3e39cf81df60b372ce42a94bda822c717fbe5d9
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Mon Oct 1 15:18:19 2012 -0400
+
+    Allow choice of default search pane
+    
+    Some workflows prefer numeric or expert search, so accomodate them.
+    
+    Also, add a "Clear All" button to clear the search prefs.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+8	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+10	0	Open-ILS/xul/staff_client/chrome/content/cat/opac.js
+10	1	Open-ILS/xul/staff_client/chrome/content/main/main.js
+42	1	Open-ILS/xul/staff_client/chrome/content/main/search_prefs.xul
+
+commit 471582a3a5da21f2541ba4eaffd2f1970f63dc83
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Sep 20 14:49:01 2012 -0400
+
+    Add tab name for search preferences
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+1	0	Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties
+
+commit 8c71fe6abc72720993a8448e39e82d2f782d274f
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Sep 20 14:33:41 2012 -0400
+
+    Allow staff to pick search/pref libraries
+    
+    This adds a workstation-level set of settings for search and preferred
+    libraries. These override the default search library and the preferred
+    library individually, allowing staff to default searching at one OU but
+    still get copy information for a different one.
+    
+    Original use case is "search everywhere, but show my local copies".
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+8	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm
+2	2	Open-ILS/src/templates/opac/parts/pref_lib_display.tt2
+8	0	Open-ILS/web/opac/locale/en-US/lang.dtd
+2	1	Open-ILS/xul/staff_client/chrome/content/main/constants.js
+9	0	Open-ILS/xul/staff_client/chrome/content/main/main.js
+10	0	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+2	0	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
+90	0	Open-ILS/xul/staff_client/chrome/content/main/search_prefs.xul
+7	2	Open-ILS/xul/staff_client/components/oils_protocol.js
+ create mode 100644 Open-ILS/xul/staff_client/chrome/content/main/search_prefs.xul
+
+commit 95d400fa439135d3d42b26b9fe3c14d2ec767788
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Tue Oct 16 20:55:38 2012 -0400
+
+    Upgrade script numbering for new toolbar perms
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+35	0	Open-ILS/src/sql/Pg/upgrade/0741.data.toolbar_perms.sql
+0	35	Open-ILS/src/sql/Pg/upgrade/XXXX.data.toolbar_perms.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0741.data.toolbar_perms.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.toolbar_perms.sql
+
+commit a419c63b407de4ff5999858cac6af07e1512eed1
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Wed Oct 10 22:18:59 2012 -0400
+
+    Brief entry for release notes on more granular permissions for custom toolbars
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+12	0	docs/RELEASE_NOTES_NEXT/toolbar_perms.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/toolbar_perms.txt
+
+commit fe03e6f93e7f47157dc0e549ff2ff382a05dfe28
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Thu Sep 20 11:27:43 2012 -0400
+
+    lp1053026, more granular toolbar editing perms
+    
+    client-side checking only to keep the honest folk out
+    
+    Adds ADMIN_TOOLBAR_FOR_ORG, ADMIN_TOOLBAR_FOR_USER, and
+    ADMIN_TOOLBAR_FOR_WORKSTATION to the permission list
+    
+    Staff needs at least one of these to create a toolbar, and they still need the
+    original ADMIN_TOOLBAR permission which is used on the server side of things.
+    
+    For editing an existing toolbar, staff needs the perm corresponding to the
+    toolbar's ownership type (for example, if the toolbar is associated with a
+    user, then ADMIN_TOOLBAR_FOR_USER is needed).
+    
+    For changing the ownership type of a toolbar one is allowed to edit, you
+    need the corresponding perm for the desired ownership type.
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+7	1	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+35	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.toolbar_perms.sql
+92	1	Open-ILS/xul/staff_client/server/admin/toolbar.js
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.toolbar_perms.sql
+
+commit e50d4cef406bee50dbb5ea780a0f06807736e38f
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Aug 23 17:29:42 2012 -0400
+
+    Improvements to custom org tree UI
+    
+    This replaced the PermaCrud.js create() calls with inline transaction
+    begin, creates, and commit.  We do this to solve a number of problems:
+    
+    * Create all new nodes within the same transaction so that a failure
+    gracefully rolls back.
+    
+    * PermaCrud.js does not currently disconnect opensrf client sessions
+    (though it has a disconnect() method).  We can manage that locally.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+41	10	Open-ILS/web/js/ui/default/conify/global/actor/org_unit_custom_tree.js
+
+commit a54edeb8a1546f7c1f36cd05c583fcff5220ad01
+Author: Steven Callender <stevecallender at esilibrary.com>
+Date:   Mon Oct 15 10:48:28 2012 -0400
+
+    Added a check for the money.collections_tracker table when using the open-ils.collections.users_of_interest.warning_penalty.retrieve API call.
+    
+    Users that are already entered into the money.collections_tracker table should not be recalled from the open-ils.collections.users_of_interest.warning_penalty.retrieve API. This change will check for the existance of the user in the money.colletions_tracker table.
+    
+    Signed-off-by: Steven Callender <stevecallender at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+10	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Collections.pm
+
+commit cbf389d42138d18990539a6281be191d8dc6dee2
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Fri Oct 12 15:38:59 2012 -0400
+
+    trivial whitespace cleanup
+    
+    Locally consistent, globally all over the map in this file.
+    
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/actor.pm
+
+commit 22b5e8c1c6f06479af2fddf8fc69e09331073248
+Author: Chris Sharp <csharp at georgialibraries.org>
+Date:   Thu Oct 11 19:33:16 2012 -0400
+
+    Adding a WHERE clause to prevent timeout of juv-to-adult function
+    
+    Signed-off-by: Chris Sharp <csharp at georgialibraries.org>
+    Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/actor.pm
+
+commit e8dcb2de62179fc924b340ba3230ce5bd4092c42
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Oct 11 01:43:01 2012 -0400
+
+    TPAC: Respect location visibility for result copies
+    
+    Robert Soulliere noted in LP# 1062502 that copies in a location marked
+    "opac_visible = FALSE" were erroneously being displayed in search
+    results. This would occur if at least one copy on a record was in a
+    visible location, but other copies were in an invisible location.
+    
+    This commit prevents copies in hidden locations from being displayed,
+    and also adds guards for the visibility of the copy status and the
+    circulation library.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+5	0	Open-ILS/src/templates/opac/parts/misc_util.tt2
+
+commit bab981833f88efb4a9f79c339696407ea41532b4
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Thu Sep 27 14:51:44 2012 -0400
+
+    Serials: Don't force a Receive Unit Template in Alt Serials Control
+    
+    Mary Llewellyn reported that she used to be able to use serials and
+    perform copy-less receiving without any value in this field.
+    
+    The requirement that a value be set in the Receive Unit Template field
+    of serial distributions was added (by me) in 2.1 to the alternate serials
+    control interface, but is not enforced at lower levels.
+    
+    I now believe that requiring a value here must have been a ham-handed
+    way to avoid a difficult-to-troubleshoot issue in copy-FUL receiving,
+    but copy-LESS serials receiving workflows indeed don't need this, so
+    this commit removes the requirement.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+0	1	Open-ILS/src/templates/serial/subscription/distribution.tt2
+
+commit c99bd2fc075b3f5c1bab2045ecee6b7dd93756c6
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Sep 5 14:39:36 2012 -0400
+
+    Use current fiscal year for PO creation (API)
+    
+    When creating a PO, if no fiscal_year is specified by the caller, use
+    the current fiscal year of the ordering agency.  This change primarily
+    affects the Open-ILS/src/support-scripts/acq_order_reader.pl script (and
+    any other direct API callers) which does not offer the user a chance to
+    set the fiscal year manually.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+11	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+
+commit 2c76b1269c1880356ec2327a59007338091fa617
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Thu Oct 11 12:35:58 2012 -0400
+
+    sort hostnames listed in login window
+    
+    for those of us with a lot of hosts to deal with :)
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+7	2	Open-ILS/xul/staff_client/chrome/content/auth/controller.js
+
+commit 7335cbf58a7941f77a1bba5ab071aeaeff36daf0
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu Sep 20 15:17:36 2012 -0400
+
+    Fix autosuggest when in no-vis-check mode
+    
+    When autosuggest is configured to avoid visiblity checking, it sends a
+    special org unit id of -1 to the database as a signal.  However, the stored
+    procedure is expecting a NULL instead.  This allows either by transforming
+    -1 to NULL within the stored procedure.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+1	0	Open-ILS/src/sql/Pg/030.schema.metabib.sql
+134	0	Open-ILS/src/sql/Pg/upgrade/0740.schema.checkless_browse_fix.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0740.schema.checkless_browse_fix.sql
+
+commit 705eb71b27f4f16651077a576c812cb9993c5046
+Author: Mark Cooper <markchristophercooper at gmail.com>
+Date:   Tue Oct 9 12:41:44 2012 -0700
+
+    LP#1007020: Using checkout, last activity shows as unset
+    
+    Added usr_activity to $fields for flesh_user function.
+    
+    Signed-off-by: Mark Cooper <markchristophercooper at gmail.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm
+
+commit 3309cab8ad8014489550ab8a8ff3d7e021f107ab
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Sep 12 14:09:04 2012 -0400
+
+    TPAC: Show ISSN in search results, if available
+    
+    Just as we show the ISBN in search results, the ISSN is an important
+    identifier to display if we have one (and we often will if we don't have
+    an ISBN).
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+8	0	Open-ILS/src/templates/opac/parts/result/table.tt2
+
+commit e5fe5acb22a7fe3d7e88ec0a8cf5a202410ef056
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Aug 30 00:21:01 2012 -0400
+
+    Remove C compiler warning for writeAuditInfo
+    
+    The C compiler was throwing the following warning:
+    
+    oils_sql.c: In function 'writeAuditInfo':
+    oils_sql.c:7244:1: warning: control reaches end of non-void function
+    [-Wreturn-type]
+    
+    By shifting the "return 0" to the end of the function, outside of the if
+    statements, we can ensure that we always return an int value.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1	1	Open-ILS/src/c-apps/oils_sql.c
+
+commit c533d8d9ead6cdcb32aa0d6e59ed780ae3a1f11b
+Author: Michael Peters <mrpeters at library.in.gov>
+Date:   Fri Sep 21 11:47:41 2012 -0400
+
+    TPAC: Add a progress spinner after pressing search on Advanced Search
+    
+    Advanced Search had no indication of progress once you've submitted
+    a search. We should add a "progressbar_green.gif" like the basic search
+    has, so the user knows their search is in progress, and (hopefully)
+    avoids them from hammering submit to get a result.
+    
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+6	1	Open-ILS/src/templates/opac/parts/advanced/search.tt2
+
+commit 032b9e7f47d25f3d2f166dc516b8dfe972249ed4
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Oct 3 15:00:26 2012 -0400
+
+    ACQ invoice receive UI handles async LI retrieval
+    
+    openils.acq.Linetitem.fetchAndRender() now fetches lineitems
+    asynchronously.  This commit causes the invoice receive UI to calculate
+    the copies to be received after all lineitems have been (async) fetched.
+    Without this, it always appears as though there are no copies to receive
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+23	13	Open-ILS/web/js/ui/default/acq/invoice/receive.js
+
+commit c650360b7adb7f1f25ac176b45d3598591fdf05c
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Oct 10 22:06:32 2012 -0400
+
+    TPAC: Avoid 500 errs on record page due to ipv6 ignorance
+    
+    Net::HTTP does not handle ipv6 addresses properly, and is subject to
+    failing to return a request object if handed one (some systems seem to
+    prefer ipv6). This commit checks the value of the request object before
+    invoking any methods on it, and also short-circuits the AC lookup loop
+    if the host could not be resolved to avoid flooding the logs with
+    multiple "Unable to connect..." warnings.
+    
+    If Net::HTTP grows ipv6 support, this commit can still stay in place and
+    the lookups will just start magically working.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+5	2	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
+
+commit 055c5afc7c387faeba0ddfb459de484f17cc5858
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Thu Sep 20 16:02:16 2012 -0400
+
+    better refresh of patron summary interface
+    
+    after certain actions in Items Out and Bills, like Add Billing
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+4	1	Open-ILS/xul/staff_client/server/patron/bill2.js
+5	1	Open-ILS/xul/staff_client/server/patron/display.js
+18	13	Open-ILS/xul/staff_client/server/patron/items.js
+
+commit f64b4a4aca8884e46e1e60c7a4a38fd7e9157952
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Sep 10 09:32:17 2012 -0400
+
+    TPAC: Remove noise, misleading text from myopac/holds/circs/circ_history
+    
+    There are many "class='hide_me'" elements that will never be displayed
+    and which are currently just extra bits to ship over the wire. Same for
+    the inline comments.
+    
+    Also move most of the inline styles out to the stylesheet.
+    
+    Also remove the explicit widths on the table cells; if the font size
+    changes or the translated text is wider than the table cells, then the
+    display will become comical.
+    
+    Also remove explicit <br> tags from localized strings; given the
+    likelihood that font sizes and column widths will change, <br> tags
+    inside localized strings make very little sense.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+23	1	Open-ILS/src/templates/opac/css/style.css.tt2
+13	28	Open-ILS/src/templates/opac/myopac/circ_history.tt2
+19	66	Open-ILS/src/templates/opac/myopac/circs.tt2
+42	104	Open-ILS/src/templates/opac/myopac/holds.tt2
+1	3	Open-ILS/src/templates/opac/parts/login/password_hint.tt2
+1	1	Open-ILS/src/templates/opac/parts/place_hold_result.tt2
+5	1	Open-ILS/web/css/skin/default/opac/semiauto.css
+
+commit c99de2de3e75383c3d4199b4f8e147dbcdee24c2
+Author: Jason Etheridge <jason at esilibrary.com>
+Date:   Wed Mar 14 16:19:31 2012 -0400
+
+    make the org full name available
+    
+    in the patron messages interface for each penalty/message
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+
+1	0	Open-ILS/xul/staff_client/server/locale/en-US/common.properties
+7	0	Open-ILS/xul/staff_client/server/patron/util.js
+
+commit d933e14655786b760dd187ae7b167cc5d7a3194c
+Author: Daniel Rizea <danielrizea27 at gmail.com>
+Date:   Thu Apr 12 15:10:53 2012 -0400
+
+    Remove unused bypass hold library setting
+    
+    Added sql upgrade script that removes bypass hold.. library setting
+    
+    [This lacks Daniel's signoff, but I've tested this and it works, so I'll
+    let it pass this time just for the sake of getting one more bug closed.]
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+0	9	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+13	0	Open-ILS/src/sql/Pg/upgrade/0739.remove_bypass_hold_library_setting.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0739.remove_bypass_hold_library_setting.sql
+
+commit 0c07adf3290c15647d958fd42524929224bd3b39
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Mon Oct 8 14:12:49 2012 -0400
+
+    Be more strict about dates we generate
+    
+    ISO-8601 dates must have a 4-character year component, however strftime does
+    not left-pad years to 4 characters when the century is one character long even
+    though the man page for strftime(3) suggests otherwise:
+    
+           %F     Equivalent to %Y-%m-%d (the ISO 8601 date format). (C99)
+    
+    This makes stricter ISO-8601 parsers, such as Perl's DateTime module, unhappy.
+    So, we'll do it ourselves using the glibc extensions available to strftime for
+    specifying a padding character and desired length.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+4	4	Open-ILS/src/c-apps/oils_sql.c
+
+commit 1cb6a1ebb36d44985feca77d10c1848b838bd275
+Author: Dan Scott <dan at coffeecode.net>
+Date:   Mon Oct 8 15:08:47 2012 -0400
+
+    Checkout: further validation of due date override
+    
+    The check_past() function failed if given a date that was not strictly
+    in YYYY-mm-dd format; interestingly, a common transposition typo such
+    as "0212-10-20" results in "212-10-20" getting passed to check_past(),
+    and therefore generating an invalid date. Throw an exception in
+    check_past() rather than returning true, because we are not in fact
+    stating that the due date is in the past - and catch the exception and
+    flag the due date override box accordingly in the checkout screen.
+    
+    We could bubble the exception up to the user, but hopefully highlighting
+    the checkout box as being in an invalid state will catch the attention
+    of the users.
+    
+    [LFW: Slightly amended a comment in OpenILS/WWW/EGCatLoader/Util.pm]
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm
+9	1	Open-ILS/xul/staff_client/chrome/content/util/date.js
+12	5	Open-ILS/xul/staff_client/server/circ/checkout.js
+
+commit 09a85ef0dddb9bf05bff352b4b4bccfb219ee8c1
+Author: Dan Scott <dan at coffeecode.net>
+Date:   Mon Oct 8 11:25:41 2012 -0400
+
+    TPAC: Invalid due dates cause 500 server error
+    
+    CStore appears to return dates with leading 0s (such as '0212-10-08
+    23:59:59-05:17:32') with the leading 0s stripped off, resulting in
+    cases with 1-digit or 3-digit years for which DateTime::Format::ISO8601
+    returns an error.
+    
+    We can protect against this problem by adding some defensive code to the
+    TPAC utility method to add the 0s back to the start of the year. We can
+    also log the problem when it occurs so that administrators can fix the
+    problem dates in the database.
+    
+    Signed-off-by: Dan Scott <dan at coffeecode.net>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+16	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm
+
+commit 95f607400e1adc51c8dea8c38a917ed85c7c2772
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Wed Oct 3 12:42:01 2012 -0400
+
+    LP1052941: Internal Server Error when adding to My List in staff client.
+    
+    Don't redirect in EGCatLoader/Account.pm when in staff client context and
+    we're adding to a My List/Bookbag.
+    
+    Add a wrapper macro to bookbag_actions.tt2 to wrap the add to book bag URLs
+    with some javascript that opens a new tab in the staff client. This is to
+    prevent the staff person from losing their search results as they would if
+    the new URL were opened in their current tab.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+7	4	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm
+20	10	Open-ILS/src/templates/opac/parts/bookbag_actions.tt2
+
+commit ee8d5613cd3bc469678deece795fb43adb0e8f91
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Sep 28 16:53:05 2012 -0400
+
+    "Select All" option in invoice search results
+    
+    Adds a new Select All checkbox along the top of the invoice search
+    results page.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+3	0	Open-ILS/src/templates/acq/invoice/view.tt2
+8	0	Open-ILS/web/js/ui/default/acq/invoice/view.js
+
+commit fa15ccb8faf86d999e3c9528d733068357d561d5
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Aug 30 11:55:10 2012 -0400
+
+    Slightly saner login form markup
+    
+    Try to provide accessibility via label attributes and move from a
+    table-within-a-table layout to a single table for the form.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+43	124	Open-ILS/src/templates/opac/parts/login/form.tt2
+
+commit dd10df8c96d744a62a06f3bef33f604022290a3b
+Author: Steven Chan <schan at sitka.bclibraries.ca>
+Date:   Wed Jul 25 13:45:40 2012 -0700
+
+    Fix LP1029095, Acq: Receive Items on an Invoice does not work with Line Item Alerts
+    
+    1. Item reception was encountering a Javascript exception in the
+    check_lineitem_alerts() helper function, because there was a mismatch
+    between the input parameter name and the variable name actually used.
+    
+    2. Also, took the opportunity to improve the performance of the for loop
+    to scan through alerts.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+6	4	Open-ILS/web/js/ui/default/acq/invoice/receive.js
+
+commit 80e39218c459e6df354385fe3668da424e901c0f
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Aug 28 17:03:28 2012 -0400
+
+    Use CSS selectors that new XUL can live with
+    
+    Just another case of current XUL not liking Dojo 1.3's "dojo.query('foo
+    bar')" and converting it to "dojo.query('foo').query('bar')" instead.
+    
+    This problem manifested as bizarrely large fixed field grids and an
+    absence of working authority context menus.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+3	3	Open-ILS/xul/staff_client/server/cat/marcedit.js
+
+commit 290a8d27d7bc7dccdcc91c00ab2db7183f01800d
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Fri Sep 28 15:26:06 2012 -0400
+
+    Make scrollOnFocus default to false for dojo-based/conify interfaces
+    
+    This change is intended to prevent a phenomenon in certain user
+    interfaces wherein clicking on a button or other widget can cause a
+    user's screen to suddenly jump and the user to need to click the widget
+    a second time before the desired function actually happens.
+    
+    Dijits that have the scrollOnFocus property are the ones that tend to
+    exhibit this issue, especially, but not always, within the staff client
+    when the user's xulrunner window is not maximized.
+    
+    There may be cases of interfaces actually relying on scrollOnFocus to do
+    something, but I think those cases should be so rare that this is still
+    worth doing, and exceptions can be applied there as needed.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6	1	Open-ILS/web/js/ui/base.js
+
+commit 11120b20bec6f4a1914b6efa85723c500dd22e9a
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Jun 19 12:23:09 2012 -0400
+
+    Can't use README for version, so use configure.ac
+    
+    Because one good "this works for now" being broken can be replaced with
+    another one easily.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2	2	Open-ILS/xul/staff_client/Makefile.am
+
+commit 97221b394a50415d9ac52efb9304b5b96d0ae581
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu May 17 10:29:58 2012 -0400
+
+    TPac: Holds Paging
+    
+    Add Paging for current holds with page numbers
+    
+    Update Paging for hold history to include page numbers
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+10	3	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+22	16	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm
+17	5	Open-ILS/src/templates/opac/myopac/hold_history.tt2
+27	4	Open-ILS/src/templates/opac/myopac/holds.tt2
+
+commit aed8ee4859dbe1a1b5a34f115c6a1a34e73f31cb
+Author: Michael Peters <mrpeters at library.in.gov>
+Date:   Mon Oct 1 14:51:31 2012 -0400
+
+    LP#1020261 Better label for "Host" field in acq.edi_account
+    
+    The host field of acq.edi_account is really meant to contain more than just a hostname.
+    It needs a scheme part, so that the whole contents of the field should be URI-ish, like
+    
+    ftp://ftp1.somevendor.com
+    
+    Otherwise Evergreen's EDI mechanism can guess wrongly that we want to use
+    SSH instead of FTP to connect.
+    
+    This also adds a description for the field, in the footer, along with the other
+    "helpers".
+    
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	0	Open-ILS/src/templates/conify/global/acq/edi_account.tt2
+
+commit 4475711331db8acaf3ae79fd308c59681f74201e
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Jun 27 18:38:19 2012 -0400
+
+    Add two fields to the new FlattenerGrid-based hold pull list
+    
+    Namely (current) copy status and (number of) potential copies.
+    
+    I believe this implementation has a negligible impact on the efficiency
+    of the hold pull list query overall.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+8	1	Open-ILS/examples/fm_IDL.xml
+1	0	Open-ILS/src/templates/circ/hold_pull_list.tt2
+
+commit 367f0ad2b96c81b0a43d5070f35c09315e8f5a19
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Sep 26 23:13:41 2012 -0400
+
+    Teach make_release to set the eg_version var
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	0	build/tools/make_release
+
+commit 2bdb74056cfee44d1d3f12d84a01bfd01d931664
+Author: Galen Charlton <gmc at esilibrary.com>
+Date:   Wed Sep 26 22:54:06 2012 -0400
+
+    After upgrade, list records with missing or incorrect 901$c
+    
+    This is a common cause of pain for upgrades. Let's try to identify the
+    problem early (even if it takes forever on a site with 3 million bibs)
+    and offer advice on correcting the problem if it is flagged.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+20	0	Open-ILS/src/sql/Pg/version-upgrade/2.2-2.3.0-upgrade-db.sql
+
+commit f16fc8bf38aa7143884418a2b208bdd03c8b5e34
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Sep 26 22:11:45 2012 -0400
+
+    Apply the 0715 update during the 2.3.0 upgrade
+    
+    Per LP# 1057183, the 0715 update should have been applied during the
+    2.1-2.2 upgrade, but appears not to have been - and that ends up
+    causing problems during the 2.2-2.3 upgrade. Thus we prophylactically
+    attempt to apply it again.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+14	0	Open-ILS/src/sql/Pg/version-upgrade/2.2-2.3.0-upgrade-db.sql
+
+commit e2c21c5968e1ab395942b2111ad41ca78ae0391e
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Sep 26 22:02:17 2012 -0400
+
+    Add an explicit "set eg_version" at start of upgrade script
+    
+    Thanks to Robert Soulliere for raising this issue in LP# 1057113!
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+3	0	Open-ILS/src/sql/Pg/version-upgrade/2.2-2.3.0-upgrade-db.sql
+
+commit f502ee595ab065e30bb5f60e5e313ec73fcb2439
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Sep 26 22:00:03 2012 -0400
+
+    Add the 2.2-2.3.0 upgrade script
+    
+    Cloned from b9a480e7f640e7.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2219	0	Open-ILS/src/sql/Pg/version-upgrade/2.2-2.3.0-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.2-2.3.0-upgrade-db.sql
+
+commit 4115d24228d0de21a2c325838d4a7a601d238bd1
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Sep 24 17:12:11 2012 -0400
+
+    TPAC added content lookup uses local server address
+    
+    Use the current Apache server's IP address instead of apache->hostname
+    to determine where to route TPAC added content lookups.  This allows the
+    server to handle the added content lookup locally instead of having to
+    route out and back into the cluster.
+    
+    Continue using apache->hostname as the Host header to ensure the proper
+    virtualhost is used once the request is received.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+
+13	6	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
+
+commit ceb0735985666f7efee04cdaadfd3b00f6d2a409
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Sep 24 12:50:47 2012 -0400
+
+    Added content connect timeout
+    
+    Make tpac server-side added content lookups exit after a brief timeout
+    when the apache module is unable to open a connection to its own
+    top-level hostname (the virtualhost, apache->hostname).
+    
+    As noted in the code comments, even though we are using Net::Server::NB
+    (non-blocking), it's only non-blocking in the sense of content
+    retrieval, not in how it calls connect() under the covers.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+
+12	2	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
+
+commit 8c961dcf893b975b20bcf1db4a1afd95d0f37df5
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Mon May 14 14:50:43 2012 -0400
+
+    Copy Location Order Editor: avoid interface failure with blank area
+    
+    Symptom is "ll is undefined" at line 65 of previous version of this
+    file.
+    
+    Reported by George Duimovich and John Jones.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6	3	Open-ILS/web/js/ui/default/conify/global/asset/copy_location_order.js
+
+commit cad06040e5dff0f8daad688c99ce22ffc55ff747
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Sep 20 15:45:05 2012 -0400
+
+    TPac: Disable "Enter places hold" for staff
+    
+    This should prevent barcode scanners from auto-submitting on scan.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/parts/place_hold.tt2
+7	0	Open-ILS/web/js/ui/default/opac/staff.js
+
+commit 0ffbb6af5c1f67d9dfc35e228375203ea597c402
+Author: Jeff Godin <jgodin at tadl.org>
+Date:   Wed Apr 25 02:59:01 2012 -0400
+
+    Syndetic AC: Add more review sources with comments
+    
+    * Add more Syndetic review sources (commented out)
+        Add additional Syndetic review sources, commented out
+        for performance reasons -- each source represents a distinct
+        request from the server to the AC provider, and we currently
+        lack a means of configuring which are on/off, short of
+        commenting / uncommenting.
+    
+    * Add comments for Syndetics review sources
+    * Fix file name for School Library Journal reviews, add New
+        York Times reviews.
+    
+    Signed-off-by: Jeff Godin <jgodin at tadl.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+18	8	Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/Syndetic.pm
+
+commit 8bd111a6a37d39a088ca6318ae7ce628ac402831
+Author: Yamil Suarez <ysuarez at berklee.edu>
+Date:   Tue Oct 2 00:47:29 2012 -0400
+
+    Documentation: Update authority control set documentation for authority field set up
+    
+    Updated the "authority fields" section with information on the valid "non-filing indicator" values.
+    
+    Signed-off-by: Yamil Suarez <ysuarez at berklee.edu>
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+3	1	docs/admin/authorities.txt
+
+commit 2506f44116762d102e02bc190b55d7e82d56c6da
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Sep 21 17:10:58 2012 -0400
+
+    Copy location group searching repairs
+    
+    In the get_library BLOCK, upgrade any use of 'loc' to 'locg' instead of
+    trying to determine which to use in which situation.  Before this change,
+    'loc' was being used as the loc_name for the main org unit selector,
+    which should always use 'locg'.  For any other cases (related to search
+    params), it's always safe to use 'locg' over 'loc'.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+4	10	Open-ILS/src/templates/opac/parts/misc_util.tt2
+
+commit a7502463b28fdb67a18e3f452a9997fd6cd2489a
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Sep 28 01:00:54 2012 -0400
+
+    Docs want a space after the main header
+    
+    Formatting gets messed up if we don't have the expected blank line after
+    the main header. Okay.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	0	docs/opac/new_skin_customizations.txt
+
+commit 1398fb009c2bf6608140d996a50373339f2c42fa
+Author: Ben Shum <bshum at biblio.org>
+Date:   Wed Sep 5 17:02:43 2012 -0400
+
+    Make relator_map script executable
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+0	0	build/tools/relator_map
+ mode change 100644 => 100755 build/tools/relator_map
+
+commit 06ea5ec9b641bb550db2ef4bb41aed5c9b6a51d7
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Sep 5 00:27:03 2012 -0400
+
+    TPAC: Fine-grained credits in record details
+    
+    For 7xx fields with $4 subfields containing relator codes, generate a
+    relator code map from http://www.loc.gov/marc/relators/relacode.html
+    that we can use in the record details to provide specific credits,
+    rather than the generic (and often inappropriate) "Added author" label.
+    
+    For example:
+    
+    700 1. ‡aMaley, Desmond, ‡d1954- ‡4prf.
+    
+    This now generates "Maley, Desmond, 1954- (Performer)" in the record
+    details credit section.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+8	5	Open-ILS/src/templates/opac/parts/record/authors.tt2
+228	0	Open-ILS/src/templates/opac/parts/relators.tt2
+72	0	build/tools/relator_map
+ create mode 100644 Open-ILS/src/templates/opac/parts/relators.tt2
+ create mode 100644 build/tools/relator_map
+
+commit 689266a57c133bd1e75d889299e0d918a379f163
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Sep 27 23:52:14 2012 -0400
+
+    Docs: Minimum list of TPAC templates to customize
+    
+    In an effort to help new sites adopt the TPAC and avoid leaving
+    embarrassing placeholders around, I present... the minimum list!
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+91	0	docs/opac/new_skin_customizations.txt
+9	1	docs/root.txt
+ create mode 100644 docs/opac/new_skin_customizations.txt
+
+commit 4a2a2d03991ec30a2a61d71dca690b90ac84a30a
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Wed Sep 19 10:19:48 2012 -0400
+
+    Default notify by text receipt replaces to blank
+    
+    So that when the option is disabled we don't leave behind things like
+    %notify_by_text% and %notify_by_text_msg%.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2	0	Open-ILS/xul/staff_client/server/circ/util.js
+
+commit c1ec288f4f77414d539554308764a1ad18ab954f
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Sep 12 12:59:53 2012 -0400
+
+    TPAC: Results - don't show the pubdate if we're showing full pubinfo
+    
+    In the "show few details" mode, we show just the pubdate; in the "show
+    full details" mode, we're showing the full pubinfo and therefore do not
+    need to show the stubby pubdate.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+5	0	Open-ILS/src/templates/opac/parts/result/table.tt2
+
+commit eaac663d75eeeff6d4542522c9be3d77655db931
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Sep 12 11:50:03 2012 -0400
+
+    TPAC: Display full publication info
+    
+    In both the results table and record summary, we were failing to display
+    the place of publication - which is critical information for people
+    trying to track down the right edition or constructing a bibliography.
+    
+    Grab the place of publication, and then reconstruct 260abc (avoiding
+    another XPath iteration and giving ourselves the ability to enhance the
+    schema.org microdata at the same time).
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+9	0	Open-ILS/src/templates/opac/parts/misc_util.tt2
+9	6	Open-ILS/src/templates/opac/parts/record/summary.tt2
+2	4	Open-ILS/src/templates/opac/parts/result/table.tt2
+
+commit 5619df9f8450db1ada476440fc3be2a973ed8809
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Mon Aug 20 12:22:44 2012 -0400
+
+    Enable 1-hit redirect for item barcode searches
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+4	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm
+
+commit af09729c89349ff84e901de905a396b78bd3e5e8
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Mon Sep 17 08:48:26 2012 -0400
+
+    Protect against fleshed circ_lib in legacy check_age_protect
+    
+    Retrieving org settings with an org unit object as the context org unit
+    results in errors and dying.
+    
+    This affects legacy scripts only.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+
+3	1	Open-ILS/src/perlmods/lib/OpenILS/Utils/PermitHold.pm
+
+commit e1a7501799119e0f305616af5bf97149d9bdf4c0
+Author: edoceo <code at edoceo.com>
+Date:   Wed Aug 1 19:37:37 2012 -0700
+
+    Sort of in line with 949322 but not absolutely necessary
+    This just supresses the message about what text was copied to the clipboard - globally!
+    
+    Signed-off-by: edoceo <code at edoceo.com>
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+1	1	Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js
+
+commit 2cc9df22ef56b6814712132150f0cd9b47929bf5
+Author: edoceo <code at edoceo.com>
+Date:   Wed Aug 1 19:33:20 2012 -0700
+
+    lp949322 Copy Patron barcode to clipboard when clicking their name
+    CTRL+Click will open the patron record in a new tab
+    
+    Signed-off-by: edoceo <code at edoceo.com>
+    
+    This affects the patron label in Item Status -> Alt View -> Holds/Transits.  Looks good to me.
+    
+    Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+7	0	Open-ILS/xul/staff_client/server/circ/alternate_copy_summary.js
+1	1	Open-ILS/xul/staff_client/server/circ/alternate_copy_summary.xul
+
+commit 5af150f6a5474b0a3871eaf077fb5940289a5ff5
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Sun Sep 16 00:56:55 2012 -0400
+
+    Various additions to the 2.3 release notes.
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+112	4	docs/RELEASE_NOTES_2_3.txt
+
+commit 68408e9067f9f66574833bd4c4b61200130f3298
+Author: Ben Shum <bshum at biblio.org>
+Date:   Mon Sep 10 15:03:59 2012 -0400
+
+    Hide Print Page button on Simplified Pull List
+    
+    On the Simplified Pull List interface, there is a button for "Print Page"
+    that shows up in the upper right corner. The suggestion is to hide that
+    button to avoid library staff printing just what's visible instead of using
+    the proper "Print Pull List" button that's actually on the page.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/xul/staff_client/server/patron/holds.js
+
+commit 2843eb6c81f0d330f7eac7da43369538437531dc
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Sep 6 12:25:01 2012 -0400
+
+    TPAC: Escape single quotes in MFHD record location
+    
+    If an MFHD record contains an 852 field with a subfield containing a
+    single quote, the unescaped single quote is introduced directly into the
+    value of the JavaScript hash that uses single quotes as delimiters -
+    thereby generating a JS exception and preventing the staff client from
+    properly populating the MFHD Editor menu.
+    
+    This commit escapes incoming single quotes from the MFHD location field
+    to prevent that from happening. The other fields in the JS hash are
+    numeric and therefore should not need escaping.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+1	1	Open-ILS/src/templates/opac/parts/js.tt2
+
+commit 4ecaab1de92e01221d223ebd9784d9d3921400d1
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Fri Sep 7 09:50:11 2012 -0400
+
+    Remove defunct variable from 'jtitle' code
+    
+    With the second part of the 'jtitle' code moved elsewhere,
+    we no longer need this extra '$q' variable.  No big deal, but
+    best to sweep up while we're in here.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	2	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm
+
+commit b2a479c142a55e718654cace36f8d2ccc5676d79
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Fri Sep 7 11:42:12 2012 -0400
+
+    Revert "Bug #1044721: QP handles explicit group+joiner badly"
+    
+    This reverts commit b77bb9943009b81042b4ef1a6ac33ec9e3e96dd7.
+    
+    Unfortunately this had side effects that escaped our manual testing
+    processes.  Especially with facets as reported by Ben Shum.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+0	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm
+
+commit b224b88b64c1133b5034f37074f3e629e91b00de
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Sep 6 23:37:32 2012 -0400
+
+    Journal title hackery - move to a more robust location
+    
+    The fix for bug #1044721 broke the journal title hack, which probably
+    should have lived where this commit moves it - if, in the age of filter
+    groups, we decide whether it's worthwhile to keep it alive at all.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+5	5	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm
+
+commit c9fba6213431914723506ee666b5928522bd5094
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Tue Sep 4 17:09:44 2012 -0400
+
+    Upgrade bits for Vandelay Overlay Changes
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+249	0	Open-ILS/src/sql/Pg/upgrade/0738.schema.vandelay.import-match-no-like-any.sql
+0	249	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.vandelay.import-match-no-like-any.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0738.schema.vandelay.import-match-no-like-any.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.vandelay.import-match-no-like-any.sql
+
+commit 9796690390faacde6261e00ed76a0cdc31e91cb8
+Author: Dan Wells <dbw2 at calvin.edu>
+Date:   Thu Aug 30 15:26:15 2012 -0400
+
+    Increase Overlay Speed for Standard Identifiers
+    
+    Due to an inefficient query order and a confused query planner,
+    some overlay matching can end up going abysmally slow.  See LP
+    bug #1024095 for elaboration on the issue.
+    
+    This commit reorders the joins as originally suggested by Lebbeous,
+    then adds a specific index to coax the query planner into making the
+    best choices.  The example index here only targets the 02x identifier
+    fields, so other tag/subfield/substring(value) indexes will likely
+    be necessary for maximum benefit when matching on other fields
+    (e.g. 010).
+    
+    These changes combined with the previous commit which replaces 'LIKE
+    ANY' with 'LIKE (... OR ...)' has shown great promise in testing.
+    
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+26	19	Open-ILS/src/sql/Pg/012.schema.vandelay.sql
+14	0	Open-ILS/src/sql/Pg/030.schema.metabib.sql
+41	20	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.vandelay.import-match-no-like-any.sql
+
+commit 579c2cb8e7bcbc8819ca4e625b0c8c9488870c71
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Mon Jun 25 20:00:33 2012 -0400
+
+    Vandelay: Fix index-miss with MARC Imports using Match Sets
+    
+    In some Postgres installations, an expression such as:
+    
+    (value LIKE '13423488%' OR value LIKE '245425%') will use a btree index,
+    but
+    
+    value LIKE ANY('{13423488%,245425%}'::TEXT[])
+    
+    will not.
+    
+    Missing such an index can make matching incoming bibs based on a field
+    that's present in most of your existing records terrifically slow.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+56	14	Open-ILS/src/sql/Pg/012.schema.vandelay.sql
+228	0	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.vandelay.import-match-no-like-any.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.vandelay.import-match-no-like-any.sql
+
+commit b77bb9943009b81042b4ef1a6ac33ec9e3e96dd7
+Author: Jared Camins-Esakov <jcamins at cpbibliography.com>
+Date:   Sat Sep 1 10:21:51 2012 -0400
+
+    Bug #1044721: QP handles explicit group+joiner badly
+    
+    Although the following four queries should be equivalent:
+      george  ||  fred
+     (george) ||  fred
+      george  || (fred)
+     (george) || (fred)
+    
+    The Pg QueryParser driver generates SQL queries that return different
+    numbers of results for each of those queries, with all desired results
+    appearing only with the first query. This seems to be because of the way
+    filters are added in the interface.
+    
+    This patch adjusts the Search code in TPAC to add an explicit group
+    around the user-entered query, which enables the Pg QueryParser driver
+    to handle all four of the above queries properly.
+    
+    This patch should also resolve the problems encountered with the patch
+    for bug #1040740, "Implicit ANDs should have higher precedence than
+    explicit ORs"
+    
+    Signed-off-by: Jared Camins-Esakov <jcamins at cpbibliography.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm
+
+commit 37b7f30ea722a68890593590f995bf80143492ec
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Tue Sep 4 14:43:27 2012 -0400
+
+    Gracefully handle reporter class with no labels
+    
+    LP 1045964 -- unable to clone report template
+    
+    The template interface was failing while rendering the reporter sources
+    drop-down when a reporter source (IDL class) had no label.  This adds a
+    sanity check around that.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+14	6	Open-ILS/web/reports/xul/source-setup.js
+
+commit 3480ea1fb4685849bbf70f9c8a627ea61e62838d
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Sep 4 13:23:37 2012 -0400
+
+    Fix Merge All Records in Bucket action
+    
+    A xul file was not being prefixed with oils://remote
+    
+    Note: This is a quick fix. Ideally we move the url to constants.js.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	Open-ILS/xul/staff_client/server/cat/record_buckets.js
+
+commit bbb46b04e43788b4fc523bea760371dce5fa4bad
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Sep 4 13:46:41 2012 -0400
+
+    Define a few strings missing from cat.properties
+    
+    By the power of build/i18n/test/check_properties.py ...
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2	0	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties
+9	1	build/i18n/po/cat.properties/cat.properties.pot
+
+commit cbc9d0194061deb94024868b0b852bf39c96b41e
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 31 18:46:27 2012 -0400
+
+    Importing translations for 2.3.rc1
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+6	4	build/i18n/po/circ.properties/cs-CZ.po
+7	7	build/i18n/po/circ.properties/es-ES.po
+4	4	build/i18n/po/common.properties/cs-CZ.po
+5	5	build/i18n/po/conify.js/cs-CZ.po
+738	738	build/i18n/po/db.seed/cs-CZ.po
+719	719	build/i18n/po/db.seed/de-DE.po
+719	719	build/i18n/po/db.seed/en-CA.po
+719	719	build/i18n/po/db.seed/en-GB.po
+719	719	build/i18n/po/db.seed/es-ES.po
+719	719	build/i18n/po/db.seed/fr-CA.po
+719	719	build/i18n/po/db.seed/hy-AM.po
+719	719	build/i18n/po/db.seed/oc-FR.po
+719	719	build/i18n/po/db.seed/pt-BR.po
+719	719	build/i18n/po/db.seed/ru-RU.po
+719	719	build/i18n/po/db.seed/tr-TR.po
+1396	1396	build/i18n/po/fm_IDL.dtd/cs-CZ.po
+1366	1366	build/i18n/po/fm_IDL.dtd/de-DE.po
+1366	1366	build/i18n/po/fm_IDL.dtd/en-CA.po
+1366	1366	build/i18n/po/fm_IDL.dtd/en-GB.po
+1366	1366	build/i18n/po/fm_IDL.dtd/es-ES.po
+1366	1366	build/i18n/po/fm_IDL.dtd/fr-CA.po
+1366	1366	build/i18n/po/fm_IDL.dtd/hy-AM.po
+1366	1366	build/i18n/po/fm_IDL.dtd/pt-BR.po
+1366	1366	build/i18n/po/fm_IDL.dtd/ru-RU.po
+1366	1366	build/i18n/po/fm_IDL.dtd/tr-TR.po
+21	15	build/i18n/po/ils_events.xml/cs-CZ.po
+13	13	build/i18n/po/ils_events.xml/de-DE.po
+20	14	build/i18n/po/ils_events.xml/en-CA.po
+20	14	build/i18n/po/ils_events.xml/en-GB.po
+13	13	build/i18n/po/ils_events.xml/es-ES.po
+20	14	build/i18n/po/ils_events.xml/fr-CA.po
+20	14	build/i18n/po/ils_events.xml/hy-AM.po
+19	13	build/i18n/po/ils_events.xml/pt-BR.po
+19	13	build/i18n/po/ils_events.xml/ru-RU.po
+80	76	build/i18n/po/lang.dtd/cs-CZ.po
+192	164	build/i18n/po/lang.dtd/hy-AM.po
+4	4	build/i18n/po/offline.properties/cs-CZ.po
+12	3	build/i18n/po/opac.dtd/cs-CZ.po
+4	4	build/i18n/po/register.js/cs-CZ.po
+32	24	build/i18n/po/tpac/tpac.pot
+
+commit 69b28b8dd84974e4515c3f59f2dbbfa4595bca04
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sat Sep 1 22:59:21 2012 -0400
+
+    Do the SQL upgrade dance for list pubdate in CSV
+    
+    With a slight tweak to base the upgrade off of the event definition name
+    instead of the ID; possibly more resilient.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+33	0	Open-ILS/src/sql/Pg/upgrade/0737.data.update_ContainerCSV_template.sql
+0	33	Open-ILS/src/sql/Pg/upgrade/XXXX.data.update_ContainerCSV_template.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0737.data.update_ContainerCSV_template.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.update_ContainerCSV_template.sql
+
+commit a7534229e228bbfb34fed719fdcc78f702a79d24
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Fri Jul 27 09:25:05 2012 -0400
+
+    Add pub date to CSV output.
+    
+    Change the template for the ContainerCSV reactor to add the publication
+    date (MARC 260$c) in the csv output in the same position that the previous
+    commit adds it to the html output.
+    
+    Add an upgrade script to update the existing template for the ContainerCSV
+    reactor in action_trigger.event_definition.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+9	2	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+33	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.update_ContainerCSV_template.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.update_ContainerCSV_template.sql
+
+commit 03cb2f98abc0f1c3efa2b6062239d4a296f2d967
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sat Aug 4 10:10:48 2012 -0400
+
+    TPAC: Add the ability to set a different default locale
+    
+    Installations with multiple sites might desire different default locales
+    for their skins. This adds the Apache config directive
+    "OILSWebDefaultLocale", which enables you to set the default locale on a
+    global and a per-skin basis.
+    
+    Note that this prevents the browser Accept-language header from having
+    any effect; sadly that header is not often used in real life.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Art Rhyno <art632000 at yahoo.ca>
+    
+    Conflicts:
+    	Open-ILS/examples/apache/eg_vhost.conf
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+3	0	Open-ILS/examples/apache/eg_vhost.conf
+3	2	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm
+
+commit 4fb4e3df754cc0e7437276a9db72c9b0be5ddba2
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Aug 13 16:50:33 2012 -0400
+
+    TPAC: Make call number browse record links retain search lib
+    
+    In addition to maintaining scope for the call number browse search
+    results, we also need to maintain the scope for the links for the call
+    number records in the results themselves (for example, the "retrieve
+    this record" link, or the "search for this author" link).
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+7	5	Open-ILS/src/templates/opac/parts/record/cnbrowse.tt2
+
+commit 31953acc1926c048f21e72f5f8e03c8282b8752a
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Thu Aug 30 14:52:08 2012 -0400
+
+    Documentation: removie file reference to line items since section was moved to another file.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+0	2	docs/root.txt
+
+commit c0545fab5ca44f24c451fdee2b1e1e7e17617993
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Thu Aug 30 14:40:00 2012 -0400
+
+    Documentation: Add sections for new features in Acquisitions
+    
+    From: http://www.esilibrary.com/esi/availableDocs.php
+    RS added some index terms to start beefing up our index for the docs.
+
+86	0	docs/acquisitions/invoices.txt
+61	0	docs/acquisitions/selection_lists_po.txt
+80	0	docs/admin/acquisitions_admin.txt
+-	-	docs/media/Core_Source_1.jpg
+-	-	docs/media/Core_Source_1.jpg.1
+-	-	docs/media/Electronic_invoicing1.jpg
+-	-	docs/media/Fiscal_Rollover1.jpg
+-	-	docs/media/Return_to_line_item1.jpg
+-	-	docs/media/Search_for_line_items_from_an_invoice1.jpg
+-	-	docs/media/Search_for_line_items_from_an_invoice2.jpg
+-	-	docs/media/Search_for_line_items_from_an_invoice3.jpg
+-	-	docs/media/Search_for_line_items_from_an_invoice5.jpg
+-	-	docs/media/Zero_Copies1.jpg
+4	0	docs/root.txt
+ create mode 100644 docs/acquisitions/invoices.txt
+ create mode 100644 docs/media/Core_Source_1.jpg
+ create mode 100644 docs/media/Core_Source_1.jpg.1
+ create mode 100644 docs/media/Electronic_invoicing1.jpg
+ create mode 100644 docs/media/Fiscal_Rollover1.jpg
+ create mode 100644 docs/media/Return_to_line_item1.jpg
+ create mode 100644 docs/media/Search_for_line_items_from_an_invoice1.jpg
+ create mode 100644 docs/media/Search_for_line_items_from_an_invoice2.jpg
+ create mode 100644 docs/media/Search_for_line_items_from_an_invoice3.jpg
+ create mode 100644 docs/media/Search_for_line_items_from_an_invoice5.jpg
+ create mode 100644 docs/media/Zero_Copies1.jpg
+
+commit 15f7ac993ecf20705a7f39eaa767069f8fcae6d2
+Author: Steven Callender <stevecallender at esilibrary.com>
+Date:   Tue Jul 10 15:43:59 2012 -0400
+
+    Changed the thawing of a hold to first update the hold record and then re-target.
+    
+    When thawing a hold, originaly we were first re-targeting before actually saving the hold record. On items with large quantities, sometimes the hold would timeout on targetig before getting a chance to actually save. This patch moves things around to first save the hold record before attempting to retarget.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+11	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit 0fb0b100131d221fd440a3168b61d83d135fca09
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Thu Aug 30 12:42:01 2012 -0400
+
+    Acq: In general search, make value widgets for OU-linked fields right again
+    
+    They always used to be OU selector dropdowns until a thinko in 55a82b5.
+    This restores them.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+0	1	Open-ILS/web/js/ui/default/acq/search/unified.js
+
+commit c3176021f6b41a56ad6c529b90a615b682a76145
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Thu Aug 30 12:20:13 2012 -0400
+
+    Acq: Fix General Search for Lineitem Attribute-based fields
+    
+    Reported by Ben Shum and Kathy Lussier, the Acq General Search interface
+    was broken in that you couldn't use any of the search fields under
+    Lineitem Attribute.  This error was indeed introduced by recent commit
+    55a82b5 as Ben determined, but simply reverting that commit left other
+    things broken.
+    
+    This commit actually targets the problem and seems to fix it in my
+    testing.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+7	1	Open-ILS/web/js/ui/default/acq/search/unified.js
+
+commit 18c6f99baf04ff4d2933e6558492e72ccbb432c0
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Tue Aug 28 16:09:00 2012 -0400
+
+    Acq: New lineitems added to existing POs should inherit provider
+    
+    Jeremy Miller of the Albany Public Library in Albany, OR, reports that
+    through the interface at
+        Actions For This Record -> View/Place Orders
+    in the staff client, when you add a lineitem to an existing PO, the new
+    lineitem has a null value in the "provider" field, instead of inheriting
+    the expected value from the PO.
+    
+    This causes problems for some Acquisitions workflows.
+    
+    The feature containing the bug appeared in 2.2, and this fix for it can be
+    backported that far.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+
+commit 80991b997ba82eb3e9cee69a368930fc096f62fd
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed May 2 09:55:06 2012 -0400
+
+    ACQ support for two-step vandelay imports
+    
+    If a lineitm is loaded into a queue via ACQ+Vandelay and a later attempt
+    is made to load the record into the catalog via ACQ+Vandelay, the
+    attempt will fail, because ACQ+Vandelay treats all
+    not-yet-fully-imported lineitems as new to vandelay.  This change
+    inspects lineitems at vandelay processing time to determine if they are
+    already linked to a VL record or if a new one is needed.  It also
+    removes the requirement that a queue be provided when all records in
+    process are already linked to a VL record (which already lives in a
+    queue).
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+55	15	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+
+commit ba451a7784ad4bc48ddc0b88bd4292ec3847984b
+Author: Kathy Lussier <klussier at masslnc.org>
+Date:   Wed Aug 1 09:31:24 2012 -0400
+
+    Add a new "starts with" search option to the advanced search page.
+    
+    Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+5	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm
+2	1	Open-ILS/src/templates/opac/parts/advanced/global_row.tt2
+
+commit e04cf39c019f7db506077a3c893cf81f99b0395a
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 24 13:27:24 2012 -0400
+
+    Add kpac to 2.3 release notes
+    
+    This is a snippet from the main kpac documentation in
+    docs/opac/kids_opac.txt, added to make sure it's represented in the
+    release notes.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+12	0	docs/RELEASE_NOTES_2_3.txt
+
+commit 4a09e0139f4bf9f1aceb43bc94a67066d1f12147
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Mon Aug 13 11:47:48 2012 -0400
+
+    Fix sorting when printing from FlattenerGrid-based interfaces
+    
+    This particularly affects the Simplified Hold Pull List.  The printed
+    verison of your data is supposed to reflect the same sort order that has
+    been selected in the visual interface, and now it does.
+    
+    Buggy handling of the different avenues of sorting the grid (clicking column
+    headers, using the column-picker/multicolumn-sort dialog, default sort order)
+    had broken the flow of the data needed to build the right sort clause for
+    some situations.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+8	1	Open-ILS/web/js/dojo/openils/FlattenerStore.js
+
+commit be6e338d1eeeefbca8f063e0b9b2f2bb6b4ca4b4
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Aug 23 23:02:42 2012 -0400
+
+    Fix epub complaint about image with extra colon
+    
+    The "+" operators are typically only used to embed an image within an
+    ordered or unordered list to avoid breaking the indentation level or
+    numbering; here, we were using the "+" operators between regular
+    paragraphs, which doesn't make much sense. What made less sense was the
+    processing result, which bizarrely added an extra colon to the front of
+    the image path, leading to a (naturally) missing image and processing
+    error.
+    
+    The fix is just to throw the image tag in between the paragraphs with no
+    special "+" operators; just blank lines.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+0	2	docs/reports/reporter_template_terminology.txt
+
+commit 1b0ec3546c727e5879764b353c203e2224342ef2
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Aug 23 21:12:40 2012 -0400
+
+    Document how to create a TPAC/KPAC search box
+    
+    Now that we're in the land of the TPAC, it's time to ensure that
+    everyone can update their simple search boxes so that they no longer
+    point at the JSPAC and point at the TPAC or Kid's OPAC instead.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+28	0	docs/opac/search_form.txt
+9	0	docs/root.txt
+ create mode 100644 docs/opac/search_form.txt
+
+commit d38a5c0e5a1c0d3516c40c7194b2f62486706d99
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Aug 23 21:14:02 2012 -0400
+
+    Resolve doc PDF transform error
+    
+    The doc build gets angry when a target that does not exist is linked
+    from somewhere else in the docs. So, make the target exist.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	0	docs/reports/reporter_template_terminology.txt
+
+commit 28810efc47ec4cc159b00feb0f6c1b1e97ad75ed
+Author: Sally Fortin <sfortin at esilibrary.com>
+Date:   Thu Aug 23 14:21:39 2012 -0400
+
+    Documentation: Add documentation for setting maximum checkout by copy location.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+47	0	docs/admin/circulation_limit_groups.txt
+-	-	docs/media/Maximum_Checkout_by_Copy_Location1.jpg
+-	-	docs/media/Maximum_Checkout_by_Copy_Location2.jpg
+2	0	docs/root.txt
+ create mode 100644 docs/admin/circulation_limit_groups.txt
+ create mode 100755 docs/media/Maximum_Checkout_by_Copy_Location1.jpg
+ create mode 100755 docs/media/Maximum_Checkout_by_Copy_Location2.jpg
+
+commit df64a073b4926a069dbe384e0c83feeb0b9e14a7
+Author: Sally Fortin <sfortin at esilibrary.com>
+Date:   Thu Aug 23 13:40:51 2012 -0400
+
+    Documentaton: Add documentation on patron border color enhancements for 2.3.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+22	0	docs/admin/staff_client-patron_border.txt
+-	-	docs/media/Patron_Border_Color_Enhancements2.jpg
+2	0	docs/root.txt
+ create mode 100644 docs/admin/staff_client-patron_border.txt
+ create mode 100755 docs/media/Patron_Border_Color_Enhancements2.jpg
+
+commit 29616d9dcbde78aa506f1554a066fa0647883ac9
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Aug 23 09:43:18 2012 -0400
+
+    Add 2.1.2-2.1.3 database schema upgrade script
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+114	0	Open-ILS/src/sql/Pg/version-upgrade/2.1.2-2.1.3-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.1.2-2.1.3-upgrade-db.sql
+
+commit 5e892c31a8b66ac0029d70446581ee4bae2dc018
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Thu Jul 26 13:45:06 2012 -0400
+
+    Make the ContainerCSV reactor output more than 10 records.
+    
+    Call AppUtils->bib_container_items_via_search with an args hashref
+    that hard codes the search limit to 1,000 records instead of using
+    the biblio.multiclass search default of 10.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+6	1	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor/ContainerCSV.pm
+
+commit 8cb436c41319fbe65bf52e3a72e60ee49df9fb26
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Wed Jul 25 11:03:01 2012 -0400
+
+    Make item_barcode_shortcut load user bookbags in EGCatLoader::Search.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm
+
+commit 6350230cb0f9aac4a22396da1c32aec2bb464b5f
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Wed Jul 25 16:41:44 2012 -0400
+
+    Make sure that bookbag information loads in MARC expert search.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+3	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm
+
+commit 94d5e4c887cb7ac071144b1b3b36026216be514b
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Aug 7 16:39:37 2012 -0400
+
+    Allow some buttons in Import via Z39.50 to wrap lines
+    
+    Some of our technicians with 4:3 ratio monitors and a reasonable
+    font-size are unable to see the "Import Record" button on the Import via
+    Z39.50 screen, because the buttons in that row are laid out in a single,
+    non-wrapping row, and there is no affordance for scrolling over to the
+    side.
+    
+    Simply changing the containing "hbox" element to a "description" element
+    allows enough of the buttons to overflow to resolve the problem in our
+    experience.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2	2	Open-ILS/xul/staff_client/server/cat/z3950.xul
+
+commit 44bcc133a02d7064c3cc9e468dcee1f4902e657e
+Author: Steven Chan <schan at sitka.bclibraries.ca>
+Date:   Wed Jul 25 16:12:19 2012 -0700
+
+    Fix LP949249, Edit, then Create button creates a new item in all cases
+    
+    This fix also resolves the following:
+    * https://bugs.launchpad.net/evergreen/+bug/806585,
+    Item Attributes saved on Close
+    * https://bugs.launchpad.net/evergreen/+bug/644753,
+    check for duplicate barcode during a create session in copy/volume editor
+    
+    1. The Copy Editor screen is launched from the Volume Copy Creator,
+    which is launched from the Holdings Maintenance screen. If the default
+    interface is set, CE is shown in a separate window; if the 'unified'
+    interface is set, CE is embedded in the same window as VCC. Upon the
+    user clicking Save or Close in the Copy Editor, the intent is to create
+    a new item record or not, respectively.  However, it happens that a new
+    record is always created, because VCC instructs CE to let VCC update the
+    item, which will occur whether the user has clicked either button.
+    
+    To fix 1, if the default interface is set, we reconfigure CE to update
+    the item or not, depending on the button clicked; otherwise, in the
+    unified interface, we allow VCC to update the item or not.
+    
+    2. Upon updating the item, if the barcode is a duplicate, the ensuing
+    sequence of events is problematic: a database-level alert message is
+    shown, Copy Editor is closed, and Volume Copy Creator is closed, thus
+    forcing the user to re-formulate the request from Holdings Maintenance.
+    
+    To fix 2, we show a higher-level alert message to the user. If the
+    default interface is set, we stay within CE, reconfigure the barcode to
+    be an input field, and focus the user on it; otherwise, in the unified
+    interface, we return the user to an area of the screen where the barcode
+    field is available. In either case, the user can re-enter a barcode
+    value and re-submit without losing any values previously entered into CE.
+    
+    3. We also take the opportunity to enhance the coding performance of
+    Copy Editor, by delegating the handling of the button and key clicks to
+    the parent groupbox element. Previously, the event handler was attached
+    to several child elements, which is not performant.
+    
+    Conflicts fix:
+    
+    	Open-ILS/xul/staff_client/server/cat/copy_editor.js
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+24	13	Open-ILS/xul/staff_client/server/cat/copy_editor.js
+22	11	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js
+
+commit ba24ca916ff5b943d5f6b36177c3f34a27399084
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Jul 12 11:42:21 2012 -0400
+
+    Remove an extra ternary op
+    
+    And adjust the comment to make more sense. There is no higher level filter
+    that prevents copy holds on parted items, so there is no filter for them to
+    "slip through".
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2	2	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+
+commit bd8fc1064b81d159d730fdc2911b1461e680e69a
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Wed Jun 13 09:37:54 2012 -0400
+
+    Allow copy-ish holds to target, even for part-copies, if they somehow slip through the UI pre-checks
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+12	11	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+
+commit 7d6422aefdc8f211309d549d2bea161d654eb351
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri May 4 10:04:32 2012 -0400
+
+    TPAC: remove some unused CSS
+    
+    Remove CSS referring to images that are no longer in the repository.
+    
+    See also https://bugs.launchpad.net/evergreen/+bug/956023
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+0	1	Open-ILS/web/css/skin/default/opac/semiauto.css
+
+commit 338446d00d6ea65488f73251795633d46716f397
+Author: Michael Peters <mrpeters at library.in.gov>
+Date:   Thu Mar 15 09:49:06 2012 -0400
+
+    TTPAC image directory cleanup
+    
+    There are a significant number of images remaining in TTPAC
+    that are no longer used, leftover from KCLS, etc.
+    
+    This branch does a little cleanup on the image directory
+    and nets us about a 200KB savings overall.
+    
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+-	-	Open-ILS/web/images/add_mylist.gif
+-	-	Open-ILS/web/images/add_mylist_sel.gif
+-	-	Open-ILS/web/images/add_mylist_sel.kcls.gif
+-	-	Open-ILS/web/images/arrow-down.gif
+-	-	Open-ILS/web/images/arrow-right.gif
+-	-	Open-ILS/web/images/banner1.jpg
+-	-	Open-ILS/web/images/button-bg.png
+-	-	Open-ILS/web/images/cancel_btn.gif
+-	-	Open-ILS/web/images/facet_box_bg.png
+-	-	Open-ILS/web/images/go_but_long.gif
+-	-	Open-ILS/web/images/header_left.gif
+-	-	Open-ILS/web/images/header_right.gif
+-	-	Open-ILS/web/images/hp-links-left.jpg
+-	-	Open-ILS/web/images/hp-links-right.jpg
+-	-	Open-ILS/web/images/locations.jpg
+-	-	Open-ILS/web/images/one_land.gif
+-	-	Open-ILS/web/images/place_hold.gif
+-	-	Open-ILS/web/images/reset_form_btn.gif
+-	-	Open-ILS/web/images/reviews.gif
+-	-	Open-ILS/web/images/save_btn.gif
+-	-	Open-ILS/web/images/submit_btn.gif
+-	-	Open-ILS/web/images/tool_back.gif
+-	-	Open-ILS/web/images/tool_back.png
+-	-	Open-ILS/web/images/tool_font.gif
+-	-	Open-ILS/web/images/tool_forward.gif
+-	-	Open-ILS/web/images/tool_forward.png
+-	-	Open-ILS/web/images/tool_help.gif
+-	-	Open-ILS/web/images/tool_help.png
+-	-	Open-ILS/web/images/tool_home.gif
+-	-	Open-ILS/web/images/tool_home.png
+-	-	Open-ILS/web/images/tool_mail.gif
+-	-	Open-ILS/web/images/tool_print.gif
+-	-	Open-ILS/web/images/tool_print.png
+-	-	Open-ILS/web/images/utils-corner-mid.png
+-	-	Open-ILS/web/images/utils-corner-right.jpg
+-	-	Open-ILS/web/images/utils-corner-right.png
+-	-	Open-ILS/web/images/utils-corner.jpg
+ delete mode 100644 Open-ILS/web/images/add_mylist.gif
+ delete mode 100644 Open-ILS/web/images/add_mylist_sel.gif
+ delete mode 100644 Open-ILS/web/images/add_mylist_sel.kcls.gif
+ delete mode 100644 Open-ILS/web/images/arrow-down.gif
+ delete mode 100644 Open-ILS/web/images/arrow-right.gif
+ delete mode 100644 Open-ILS/web/images/banner1.jpg
+ delete mode 100644 Open-ILS/web/images/button-bg.png
+ delete mode 100644 Open-ILS/web/images/cancel_btn.gif
+ delete mode 100644 Open-ILS/web/images/facet_box_bg.png
+ delete mode 100644 Open-ILS/web/images/go_but_long.gif
+ delete mode 100644 Open-ILS/web/images/header_left.gif
+ delete mode 100644 Open-ILS/web/images/header_right.gif
+ delete mode 100644 Open-ILS/web/images/hp-links-left.jpg
+ delete mode 100644 Open-ILS/web/images/hp-links-right.jpg
+ delete mode 100644 Open-ILS/web/images/locations.jpg
+ delete mode 100644 Open-ILS/web/images/one_land.gif
+ delete mode 100644 Open-ILS/web/images/place_hold.gif
+ delete mode 100644 Open-ILS/web/images/reset_form_btn.gif
+ delete mode 100644 Open-ILS/web/images/reviews.gif
+ delete mode 100644 Open-ILS/web/images/save_btn.gif
+ delete mode 100644 Open-ILS/web/images/submit_btn.gif
+ delete mode 100644 Open-ILS/web/images/tool_back.gif
+ delete mode 100644 Open-ILS/web/images/tool_back.png
+ delete mode 100644 Open-ILS/web/images/tool_font.gif
+ delete mode 100644 Open-ILS/web/images/tool_forward.gif
+ delete mode 100644 Open-ILS/web/images/tool_forward.png
+ delete mode 100644 Open-ILS/web/images/tool_help.gif
+ delete mode 100644 Open-ILS/web/images/tool_help.png
+ delete mode 100644 Open-ILS/web/images/tool_home.gif
+ delete mode 100644 Open-ILS/web/images/tool_home.png
+ delete mode 100644 Open-ILS/web/images/tool_mail.gif
+ delete mode 100644 Open-ILS/web/images/tool_print.gif
+ delete mode 100644 Open-ILS/web/images/tool_print.png
+ delete mode 100644 Open-ILS/web/images/utils-corner-mid.png
+ delete mode 100644 Open-ILS/web/images/utils-corner-right.jpg
+ delete mode 100644 Open-ILS/web/images/utils-corner-right.png
+ delete mode 100644 Open-ILS/web/images/utils-corner.jpg
+
+commit 7a39d71d0e102bfac1e6059911597daf191f4b3b
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Aug 22 14:49:02 2012 -0400
+
+    2.2.1 -> 2.2.2 upgrade script
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+13	0	Open-ILS/src/sql/Pg/version-upgrade/2.2.1-2.2.2-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.2.1-2.2.2-upgrade-db.sql
+
+commit 61329042eff1ef99d5b1a0a23758b7376f4ced2c
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Aug 16 15:40:58 2012 -0400
+
+    Sanity check cstore limit/offset param values
+    
+    Certain cstore calls (direct / json_query) that support limit/offset
+    params called with a non-string / non-numeric value
+    
+    e.g. { "limit": null }
+    
+    result in a cstore segfault as it tries to call atoi(NULL) under the
+    covers.  This patch prevents this by verifying that the limit/offset
+    values are actual strings or numbers (i.e. return a value from
+    jsonObjectGetString) and not JSON_NULL, etc.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+20	12	Open-ILS/src/c-apps/oils_sql.c
+
+commit bf52858f4f5da72bf0ddaec6db8720a53ce99969
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Aug 17 16:20:35 2012 -0400
+
+    TPac: Show email address when placing hold
+    
+    Both for staff and patron benefit.
+    
+    Also, we disable the checkbox if there is no email address on file.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+4	1	Open-ILS/src/templates/opac/parts/place_hold.tt2
+7	0	Open-ILS/web/js/ui/default/opac/staff.js
+1	1	Open-ILS/xul/staff_client/chrome/content/main/menu.js
+
+commit 909b706e653c581ddd22092a38e4f5f974e8140f
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Aug 15 07:18:53 2012 -0400
+
+    TPAC: Move "Export to RefWorks" into utility area
+    
+    When the RefWorks functionality was being added to TPAC, the design and
+    layout were very much in flux. Now that the layout has been established
+    with utilities like "Place Hold" on the right hand side, move the
+    "Export to RefWorks" button into the same location.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Art Rhyno <art632000 at yahoo.ca>
+
+3	3	Open-ILS/src/templates/opac/parts/record/refworks.tt2
+3	4	Open-ILS/src/templates/opac/parts/record/summary.tt2
+
+commit c6d91f4009833588cca9b755ec5b8a465bf7d974
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Aug 22 12:20:22 2012 -0400
+
+    2.2.0 -> 2.2.1 upgrade script never actually went into master or rel_2_2
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+366	0	Open-ILS/src/sql/Pg/version-upgrade/2.2.0-2.2.1-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.2.0-2.2.1-upgrade-db.sql
+
+commit 4c9acf5776026b132387d334742badbba76ec62a
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Aug 22 08:59:52 2012 -0400
+
+    Importing translations for 2.3.beta2, Part II
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+12	12	build/i18n/po/acq.js/acq.js.pot
+717	717	build/i18n/po/db.seed/db.seed.pot
+1364	1364	build/i18n/po/fm_IDL.dtd/fm_IDL.dtd.pot
+11	11	build/i18n/po/ils_events.xml/ils_events.xml.pot
+36	35	build/i18n/po/tpac/tpac.pot
+
+commit 9b316be0176a2c6d7de2271a0ffa2bd945840919
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Wed Aug 22 08:45:54 2012 -0400
+
+    Importing translations for 2.3.beta2
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+3	3	build/i18n/po/XULTermLoader.js/cs-CZ.po
+3	3	build/i18n/po/XULTermLoader.js/de-DE.po
+3	3	build/i18n/po/XULTermLoader.js/en-CA.po
+3	3	build/i18n/po/XULTermLoader.js/en-GB.po
+3	3	build/i18n/po/XULTermLoader.js/es-ES.po
+3	3	build/i18n/po/XULTermLoader.js/fr-CA.po
+3	3	build/i18n/po/XULTermLoader.js/hy-AM.po
+3	3	build/i18n/po/XULTermLoader.js/oc-FR.po
+3	3	build/i18n/po/XULTermLoader.js/pt-BR.po
+3	3	build/i18n/po/XULTermLoader.js/ru-RU.po
+3	3	build/i18n/po/XULTermLoader.js/tr-TR.po
+10	8	build/i18n/po/admin.properties/hy-AM.po
+8	8	build/i18n/po/authority.js/hy-AM.po
+3	3	build/i18n/po/capture.js/cs-CZ.po
+3	3	build/i18n/po/capture.js/de-DE.po
+3	3	build/i18n/po/capture.js/en-CA.po
+3	3	build/i18n/po/capture.js/en-GB.po
+3	3	build/i18n/po/capture.js/es-ES.po
+3	3	build/i18n/po/capture.js/fr-CA.po
+3	3	build/i18n/po/capture.js/hy-AM.po
+3	3	build/i18n/po/capture.js/oc-FR.po
+3	3	build/i18n/po/capture.js/pt-BR.po
+3	3	build/i18n/po/capture.js/ru-RU.po
+40	36	build/i18n/po/cat.properties/hy-AM.po
+17	3	build/i18n/po/circ.properties/cs-CZ.po
+17	3	build/i18n/po/circ.properties/de-DE.po
+17	3	build/i18n/po/circ.properties/en-CA.po
+17	3	build/i18n/po/circ.properties/en-GB.po
+18	4	build/i18n/po/circ.properties/es-ES.po
+17	3	build/i18n/po/circ.properties/fr-CA.po
+32	13	build/i18n/po/circ.properties/hy-AM.po
+17	3	build/i18n/po/circ.properties/pt-BR.po
+17	3	build/i18n/po/circ.properties/ru-RU.po
+9	9	build/i18n/po/common.properties/hy-AM.po
+4	4	build/i18n/po/conify.dtd/hy-AM.po
+3	3	build/i18n/po/conify.js/cs-CZ.po
+3	3	build/i18n/po/conify.js/de-DE.po
+3	3	build/i18n/po/conify.js/en-CA.po
+3	3	build/i18n/po/conify.js/en-GB.po
+3	3	build/i18n/po/conify.js/es-ES.po
+3	3	build/i18n/po/conify.js/fr-CA.po
+5	5	build/i18n/po/conify.js/hy-AM.po
+3	3	build/i18n/po/conify.js/pt-BR.po
+3	3	build/i18n/po/conify.js/ru-RU.po
+3	3	build/i18n/po/conify.js/tr-TR.po
+790	717	build/i18n/po/db.seed/cs-CZ.po
+783	710	build/i18n/po/db.seed/de-DE.po
+790	717	build/i18n/po/db.seed/en-CA.po
+783	710	build/i18n/po/db.seed/en-GB.po
+783	710	build/i18n/po/db.seed/es-ES.po
+785	712	build/i18n/po/db.seed/fr-CA.po
+935	859	build/i18n/po/db.seed/hy-AM.po
+783	710	build/i18n/po/db.seed/oc-FR.po
+791	718	build/i18n/po/db.seed/pt-BR.po
+784	711	build/i18n/po/db.seed/ru-RU.po
+783	710	build/i18n/po/db.seed/tr-TR.po
+2568	2373	build/i18n/po/fm_IDL.dtd/cs-CZ.po
+2546	2354	build/i18n/po/fm_IDL.dtd/de-DE.po
+2568	2373	build/i18n/po/fm_IDL.dtd/en-CA.po
+2568	2373	build/i18n/po/fm_IDL.dtd/en-GB.po
+2543	2351	build/i18n/po/fm_IDL.dtd/es-ES.po
+2543	2351	build/i18n/po/fm_IDL.dtd/fr-CA.po
+2738	2543	build/i18n/po/fm_IDL.dtd/hy-AM.po
+2568	2373	build/i18n/po/fm_IDL.dtd/pt-BR.po
+2568	2373	build/i18n/po/fm_IDL.dtd/ru-RU.po
+2539	2347	build/i18n/po/fm_IDL.dtd/tr-TR.po
+18	18	build/i18n/po/ils_events.xml/cs-CZ.po
+17	17	build/i18n/po/ils_events.xml/de-DE.po
+19	19	build/i18n/po/ils_events.xml/en-CA.po
+19	19	build/i18n/po/ils_events.xml/en-GB.po
+17	17	build/i18n/po/ils_events.xml/es-ES.po
+17	17	build/i18n/po/ils_events.xml/fr-CA.po
+31	21	build/i18n/po/ils_events.xml/hy-AM.po
+17	17	build/i18n/po/ils_events.xml/pt-BR.po
+17	17	build/i18n/po/ils_events.xml/ru-RU.po
+69	544	build/i18n/po/lang.dtd/ar-AR.po
+743	619	build/i18n/po/lang.dtd/cs-CZ.po
+336	571	build/i18n/po/lang.dtd/de-DE.po
+748	619	build/i18n/po/lang.dtd/en-CA.po
+751	619	build/i18n/po/lang.dtd/en-GB.po
+234	554	build/i18n/po/lang.dtd/es-ES.po
+722	610	build/i18n/po/lang.dtd/fr-CA.po
+885	749	build/i18n/po/lang.dtd/hy-AM.po
+705	605	build/i18n/po/lang.dtd/pt-BR.po
+707	607	build/i18n/po/lang.dtd/ru-RU.po
+73	545	build/i18n/po/lang.dtd/tr-TR.po
+8	3	build/i18n/po/offline.properties/cs-CZ.po
+8	3	build/i18n/po/offline.properties/de-DE.po
+8	3	build/i18n/po/offline.properties/en-CA.po
+8	3	build/i18n/po/offline.properties/en-GB.po
+8	3	build/i18n/po/offline.properties/es-ES.po
+8	3	build/i18n/po/offline.properties/fr-CA.po
+47	30	build/i18n/po/offline.properties/hy-AM.po
+8	3	build/i18n/po/offline.properties/pt-BR.po
+8	3	build/i18n/po/offline.properties/ru-RU.po
+8	3	build/i18n/po/offline.properties/tr-TR.po
+27	15	build/i18n/po/opac.dtd/cs-CZ.po
+33	21	build/i18n/po/opac.dtd/de-DE.po
+29	17	build/i18n/po/opac.dtd/en-CA.po
+29	17	build/i18n/po/opac.dtd/en-GB.po
+31	19	build/i18n/po/opac.dtd/es-ES.po
+30	18	build/i18n/po/opac.dtd/fr-CA.po
+4	6	build/i18n/po/opac.dtd/he-IL.po
+53	20	build/i18n/po/opac.dtd/hy-AM.po
+4	6	build/i18n/po/opac.dtd/oc-FR.po
+27	15	build/i18n/po/opac.dtd/pt-BR.po
+29	17	build/i18n/po/opac.dtd/ru-RU.po
+7	9	build/i18n/po/opac.dtd/tr-TR.po
+3	3	build/i18n/po/opac.js/cs-CZ.po
+3	3	build/i18n/po/opac.js/de-DE.po
+3	3	build/i18n/po/opac.js/en-CA.po
+3	3	build/i18n/po/opac.js/en-GB.po
+3	3	build/i18n/po/opac.js/es-ES.po
+3	3	build/i18n/po/opac.js/fr-CA.po
+5	5	build/i18n/po/opac.js/hy-AM.po
+3	3	build/i18n/po/opac.js/oc-FR.po
+3	3	build/i18n/po/opac.js/pt-BR.po
+3	3	build/i18n/po/opac.js/ru-RU.po
+3	3	build/i18n/po/opac.js/sv-SE.po
+3	3	build/i18n/po/opac.js/tr-TR.po
+41	25	build/i18n/po/patron.properties/hy-AM.po
+3	3	build/i18n/po/pull_list.js/cs-CZ.po
+6	6	build/i18n/po/pull_list.js/de-DE.po
+3	3	build/i18n/po/pull_list.js/en-CA.po
+3	3	build/i18n/po/pull_list.js/en-GB.po
+5	5	build/i18n/po/pull_list.js/es-ES.po
+3	3	build/i18n/po/pull_list.js/fr-CA.po
+3	3	build/i18n/po/pull_list.js/hy-AM.po
+3	3	build/i18n/po/pull_list.js/pt-BR.po
+3	3	build/i18n/po/pull_list.js/ru-RU.po
+3	3	build/i18n/po/pull_list.js/tr-TR.po
+13	13	build/i18n/po/register.js/cs-CZ.po
+13	13	build/i18n/po/register.js/de-DE.po
+13	13	build/i18n/po/register.js/en-CA.po
+13	13	build/i18n/po/register.js/en-GB.po
+13	13	build/i18n/po/register.js/es-ES.po
+13	13	build/i18n/po/register.js/fr-CA.po
+21	21	build/i18n/po/register.js/hy-AM.po
+13	13	build/i18n/po/register.js/pt-BR.po
+13	13	build/i18n/po/register.js/ru-RU.po
+13	13	build/i18n/po/register.js/tr-TR.po
+3	3	build/i18n/po/reservation.js/cs-CZ.po
+3	3	build/i18n/po/reservation.js/de-DE.po
+3	3	build/i18n/po/reservation.js/en-CA.po
+3	3	build/i18n/po/reservation.js/en-GB.po
+3	3	build/i18n/po/reservation.js/es-ES.po
+3	3	build/i18n/po/reservation.js/fr-CA.po
+6	6	build/i18n/po/reservation.js/hy-AM.po
+3	3	build/i18n/po/reservation.js/pt-BR.po
+3	3	build/i18n/po/reservation.js/ru-RU.po
+3	3	build/i18n/po/selfcheck.js/cs-CZ.po
+3	3	build/i18n/po/selfcheck.js/de-DE.po
+3	3	build/i18n/po/selfcheck.js/en-CA.po
+3	3	build/i18n/po/selfcheck.js/en-GB.po
+5	5	build/i18n/po/selfcheck.js/es-ES.po
+3	3	build/i18n/po/selfcheck.js/fr-CA.po
+8	8	build/i18n/po/selfcheck.js/hy-AM.po
+3	3	build/i18n/po/selfcheck.js/pt-BR.po
+3	3	build/i18n/po/selfcheck.js/ru-RU.po
+15	15	build/i18n/po/serial.properties/hy-AM.po
+
+commit 6a20cbd112326f8681c80c6302cb7bd535d51adc
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Tue Aug 21 17:23:26 2012 -0400
+
+    Protect against installs with no locales
+    
+    Installs from source outside of tarballs may not have a built locale,
+    which would result in a make error and an aborted install. Protect
+    against that by checking for the existence of the locale install
+    directory before trying to copy the files into place.
+    
+    In the weird case that Open-ILS/src/data/locale has been generated but
+    there are no files in it, protect against erroring out via the judicious
+    application of the - flag.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+5	3	Open-ILS/src/Makefile.am
+
+commit 4bbe2ae8bdeec90e000f35be8aad6b34518ad559
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Aug 20 14:11:50 2012 -0400
+
+    TPAC: Standardize i18n file installation
+    
+    Make TPAC i18n files act like any other i18n file. In short:
+    
+    1. When in build/i18n, a 'make LOCALE=fr-CA install' will copy
+       the i18n file into the Open-ILS/src/data/locale directory.
+    2. In the build root, a 'make install' will copy all files from
+       Open-ILS/src/data/locale into (by default) the
+       /openils/var/data/locale directory.
+    
+    This also means that when tarballs are created, all of the locales will
+    get packaged appropriately.
+    
+    This commit also updates eg_vhost.conf to provide working out-of-the-box
+    examples for any installed locales, by using the names of the actual
+    PO files, and adds some contextual comments to explain how the
+    configuration directives work.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+12	3	Open-ILS/examples/apache/eg_vhost.conf
+4	0	Open-ILS/src/Makefile.am
+3	0	build/i18n/Makefile
+
+commit 1a0a373a6f8da16bfc22b0503fdf6c1f0453469c
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 17 17:15:25 2012 -0400
+
+    ACQ return-to-[search/invoice] buttons repair
+    
+    With changes in place to support newer version of xulrunner, several
+    buttons no longer work in the staff client.  These include:
+    
+    Return to Search in PO and Selection List pages
+    Return to Invoice in PO and Selection List pages
+    Return in lineitem worksheet page
+    
+    This fix avoids using document.referrer (which is no longer available)
+    with an explicit 'source' CGI parameter, which contains the path and
+    params of the source page.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+4	3	Open-ILS/src/templates/acq/lineitem/worksheet.tt2
+2	4	Open-ILS/src/templates/acq/po/view.tt2
+1	0	Open-ILS/web/js/dojo/openils/acq/Lineitem.js
+1	1	Open-ILS/web/js/dojo/openils/acq/nls/acq.js
+18	6	Open-ILS/web/js/ui/default/acq/common/li_table.js
+8	6	Open-ILS/web/js/ui/default/acq/picklist/view.js
+9	7	Open-ILS/web/js/ui/default/acq/po/view_po.js
+
+commit c1505ea06b6a20736d107ad267d449fd6e218030
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Aug 17 15:06:59 2012 -0400
+
+    TPAC i18n: Turn UA locales into Evergreen locales
+    
+    We need to convert the likes of fr_ca into fr-CA to be able to pull the
+    appropriate localized values from the database via CStoreEditor.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+14	3	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm
+
+commit abc81e460aa2ca8c0a88f94adeedfe6f1508f998
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 17 10:11:50 2012 -0400
+
+    Make tpac cache locale-aware
+    
+    Add a locale level to the TPAC object cache.  Each component of the
+    cache now looks like $cache{$component}{$locale}{stuff...}
+    
+    e.g. $cache{list}{en_ca}{aout} = [...] # en_ca-fetched org unit types
+    
+    The calling code in the templates requires no changes (abstraction
+    FTW).
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+36	36	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm
+
+commit a2521d36859d4062383e48e1bf5389ceb950c7e1
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 17 10:10:55 2012 -0400
+
+    Set the default CStoreEditor locale on page load
+    
+    Ech CStoreEditor request will use the locale of the current
+    page as the default opensrf session locale.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+4	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm
+
+commit 7ddaf5917669985f80f5d737c75d24d3cdfd616e
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 17 10:08:16 2012 -0400
+
+    CStoreEditor default session locale
+    
+    Adds a new package-level variable:
+    
+    $OpenILS::Utils::CStoreEditor::default_locale
+    
+    If set, this value is used as the session_locale for new opensrf client
+    sessions.  If unset, the session_locale remains untouched by
+    CStoreEditor.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+13	0	Open-ILS/src/perlmods/lib/OpenILS/Utils/CStoreEditor.pm
+
+commit 7f7f88959224ed7941017a37adc45a19a98290d6
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Aug 17 15:16:45 2012 -0400
+
+    TPAC: size_bigger, not size-bigger
+    
+    Amusingly, TT2 attempts to treat "bigger" as a value to subtract from
+    "size". Cute. But we don't want the messages in the Apache log.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/css/style.css.tt2
+
+commit 4330a43e7f7a60cb62fe2babecc3014c1449bc96
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Jul 30 11:30:50 2012 -0400
+
+    TPAC: Autosuggest focus() throws a JS error
+    
+    On page load, the Dojo autosuggest code tries to set focus to the
+    element with the ID "search_box" - which is fine, except when the page
+    does not have said ID. Therefore, test for the existence of the ID
+    before setting focus to it.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Art Rhyno <art632000 at yahoo.ca>
+
+9	6	Open-ILS/src/templates/opac/parts/js.tt2
+
+commit 9f0536984bf32c71b3a42aa3274093757ed1296a
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Aug 17 13:00:36 2012 -0400
+
+    Use XUL_REMOTE_BROWSER constant in reporter
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	Open-ILS/web/reports/oils_rpt_folder_window.js
+
+commit b80f343eb8d90b00c7459f165c14a75d5b901c88
+Author: Sally Fortin <sfortin at esilibrary.com>
+Date:   Fri Aug 17 08:22:17 2012 -0400
+
+    Documentation: Add one paragraph to  Auto Override Patron Hold Events.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+3	1	docs/admin/lsa-library_settings_editor.txt
+
+commit 193d1268972fce33ea8f0ca3ec13824374138749
+Author: Sally Fortin <sfortin at esilibrary.com>
+Date:   Fri Aug 17 08:16:05 2012 -0400
+
+    Documentation: add Auto Override Patron Hold Events documentation from ESI.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+48	9	docs/admin/lsa-library_settings_editor.txt
+
+commit 787fc31935b60c5e35509f7a395be1e9815979f8
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sat Aug 4 10:26:25 2012 -0400
+
+    TPAC locale picker: use POST instead of GET
+    
+    Users could (deliberately or not) change another's language
+    preferences by sharing links with the "set_eg_locale" GET param given
+    the locale picker's current behaviour. By switching to a POST param, we
+    prevent this result from accidentally occurring.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Art Rhyno <art632000 at yahoo.ca>
+
+1	1	Open-ILS/src/templates/opac/parts/locale_picker.tt2
+
+commit 9b2262b277ff5ebb93093bf38a786424f5f19128
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Thu Aug 16 15:38:59 2012 -0400
+
+    Fix thinkos in EDI Invoicing
+    
+    The lesson of the day is, test the code you actually commit, not just
+    the bits and pieces.  Thanks to Bill Erickson on this.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2	2	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/EDI.pm
+
+commit 1aec4ad62e29f454f910893571dc220008d0f2fc
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu Aug 16 15:11:29 2012 -0400
+
+    Stamping upgrade script for copy editor field hiding permission
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/002.schema.config.sql
+11	0	Open-ILS/src/sql/Pg/upgrade/0736.data.copy_editor_perms.sql
+0	6	Open-ILS/src/sql/Pg/upgrade/XXXX.data.copy_editor_perms.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0736.data.copy_editor_perms.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.copy_editor_perms.sql
+
+commit 32aec23f8b71c99486cae2f92100168c887c1730
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Aug 16 14:58:01 2012 -0400
+
+    Update permission name to match existing ones
+    
+    To be consistent with our previous naming scheme for these.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1	1	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+1	1	Open-ILS/src/sql/Pg/upgrade/XXXX.data.copy_editor_perms.sql
+
+commit a20cc3b9444632ac414a7e482befadbc35b46be6
+Author: Mike Rylander <mrylander at gmail.com>
+Date:   Thu Aug 16 13:45:23 2012 -0400
+
+    Provide permission for copy editor field hiding
+    
+    We can adjust what fields are available in the copy editor in 2.2+, but that
+    requires the general UPDATE_ORG_SETTING permission.  The YAOUS-specific
+    permission here allows more granular control, so that staff can be given the
+    ability to adjust only that one OU setting.
+    
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+6	3	Open-ILS/src/sql/Pg/950.data.seed-values.sql
+6	0	Open-ILS/src/sql/Pg/upgrade/XXXX.data.copy_editor_perms.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.copy_editor_perms.sql
+
+commit 37b1dfec9a1fcdf20a9192f41abb207625b1ce0a
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Jul 16 13:27:54 2012 -0400
+
+    Hide OPAC-invisible holdings from SRU/Z39.50
+    
+    The basic_holdings Supercat method filtered out deleted call numbers and
+    copies, but didn't filter out copies based on the OPAC visibility status
+    of copy location / status / the copy itself. This has undesired results
+    when third-party services request copies via SRU or Z39.50 and expose
+    copies that should not be visible to the public.
+    
+    We wrap all of the visibility and deletedness checks for a given copy up
+    into a subroutine so that we can avoid repeating ourselves in the
+    basic_holdings logic. Also, if we missed a test, we can add it in one
+    handy place :)
+    
+    (Thanks to Galen Charlton for finding two missing tests: circ lib
+    visibility and owning lib visibility!)
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Art Rhyno <art632000 at yahoo.ca>
+
+20	2	Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm
+
+commit b8ec9e940136bfe8d94e9b0f17927e9052ecf992
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Aug 13 12:32:26 2012 -0400
+
+    TPAC: Centralize font size definitions
+    
+    The TPAC CSS had a mix of absolute and proportional font size
+    definitions, making it impossible to define a single base size and have
+    the layout adjust appropriately, as well as making it difficult to tweak
+    sizes to, say, eliminate the distinction between 11px and 12px text.
+    
+    Accordingly, create a separate TT2 file to define standard font sizes,
+    define one base font size, and then use proportional percentage-based
+    size definitions for a set of standard font sizes. This way, a site
+    could easily adjust the base font size to 15px and the rest of the
+    layout should automatically adjust, and/or revert to using absolute font
+    sizes for different categories if they prefer.
+    
+    Note that I did simplify some of the categories of font sizes, as the
+    distinction between 111% and 110% was probably not evident to most
+    humans at most font sizes, and even the distinction between 120% and
+    125% would be 14.4px vs. 15px given a base size of 12px - which
+    different user agents could render differently anyway.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+53	53	Open-ILS/src/templates/opac/css/style.css.tt2
+11	0	Open-ILS/src/templates/opac/parts/css/fonts.tt2
+ create mode 100644 Open-ILS/src/templates/opac/parts/css/fonts.tt2
+
+commit bbedfee81b56421395546fb4ae91c391685731e9
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Aug 2 12:10:26 2012 -0400
+
+    Update make_release script for Linux 64 building
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+10	5	build/tools/make_release
+
+commit 816a17be9c09923ad160f38ff22c22a4a6854a73
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Thu Aug 2 10:20:54 2012 -0400
+
+    Add 64 bit Linux Client building
+    
+    Also re-labels most of the 32 bit client as such. The update channel was
+    left as just "lin" instead of "lin32" for compatibility reasons.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+16	5	Open-ILS/updates/manualupdate.html
+31	11	Open-ILS/xul/staff_client/Makefile.am
+35	11	Open-ILS/xul/staff_client/external/make_updates.sh
+
+commit 4f9b04b8c0bdee378838532db3fd825b8b344462
+Author: Sally Fortin <sfortin at esilibrary.com>
+Date:   Thu Aug 16 10:27:50 2012 -0400
+
+    Documentation: Add triggered events and holds management docs from ESI.
+    
+    Content and images from http://www.esilibrary.com/esi/availableDocs.php.
+    Also fixed some formatting issues for previous committed documentation.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+2	2	docs/admin/lsa-receipt_template_editor.txt
+1	1	docs/admin/lsa-standing_penalties.txt
+2	2	docs/admin/lsa-work_log.txt
+28	0	docs/circulation/holds_management.txt
+72	0	docs/circulation/triggered_events.txt
+-	-	docs/media/Display_Hold_Types_on_Pull_Lists1.jpg
+-	-	docs/media/Triggered_Events_and_Notices1.jpg
+-	-	docs/media/Triggered_Events_and_Notices2.jpg
+-	-	docs/media/Triggered_Events_and_Notices3.jpg
+4	0	docs/root.txt
+ create mode 100644 docs/circulation/holds_management.txt
+ create mode 100644 docs/circulation/triggered_events.txt
+ create mode 100644 docs/media/Display_Hold_Types_on_Pull_Lists1.jpg
+ create mode 100644 docs/media/Triggered_Events_and_Notices1.jpg
+ create mode 100644 docs/media/Triggered_Events_and_Notices2.jpg
+ create mode 100644 docs/media/Triggered_Events_and_Notices3.jpg
+
+commit fa2b74445e7e18043a46a1594b2f81f0384aae90
+Author: Sally Fortin <sfortin at esilibrary.com>
+Date:   Thu Aug 16 09:25:16 2012 -0400
+
+    Documentation: Add sections to Local System Administration from ESI
+    
+    Content and images from http://www.esilibrary.com/esi/availableDocs.php
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+34	0	docs/admin/lsa-receipt_template_editor.txt
+25	0	docs/admin/lsa-standing_penalties.txt
+25	0	docs/admin/lsa-work_log.txt
+-	-	docs/media/Expanding_the_Work_Log1.jpg
+-	-	docs/media/Expanding_the_Work_Log2.jpg
+-	-	docs/media/Print_Holds_Slip1.jpg
+-	-	docs/media/Print_Holds_Slip2.jpg
+5	0	docs/root.txt
+ create mode 100644 docs/admin/lsa-receipt_template_editor.txt
+ create mode 100644 docs/admin/lsa-standing_penalties.txt
+ create mode 100644 docs/admin/lsa-work_log.txt
+ create mode 100644 docs/media/Expanding_the_Work_Log1.jpg
+ create mode 100644 docs/media/Expanding_the_Work_Log2.jpg
+ create mode 100644 docs/media/Print_Holds_Slip1.jpg
+ create mode 100644 docs/media/Print_Holds_Slip2.jpg
+
+commit 84aa229c90747716b1137b697b79936325ed1653
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Fri Aug 10 18:14:23 2012 -0400
+
+    Simplified Hold Pull List: Fix broken filters
+    
+    Only two filterable fields were available, and at least
+    one didn't even work.
+    
+    Now we have a few more, and they seem to all work for me in testing.
+    
+    This problem was reported to me by Thomas Berezansky.
+    
+    While we're at it, also make sure the list of shelving locations in that
+    filter dropdown is sorted alphabetically.  This was Kathy Lussier's
+    request.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+16	11	Open-ILS/src/templates/circ/hold_pull_list.tt2
+11	2	Open-ILS/web/js/dojo/openils/widget/AutoFieldWidget.js
+1	1	Open-ILS/web/js/dojo/openils/widget/FlattenerFilterPane.js
+3	1	Open-ILS/web/js/dojo/openils/widget/FlattenerGrid.js
+4	1	Open-ILS/web/js/dojo/openils/widget/PCrudFilterPane.js
+
+commit 409c2ebcc648ad32a66ab6d9d2c085744104ae56
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Aug 14 13:31:27 2012 -0400
+
+    Join subqueries as OR'd groups in QueryParser
+    
+    This makes filter_group_entry(1,2,3) build an OR'd set of the resulting
+    queries instead of just tacking them onto each other as ANDs.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+11	9	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+
+commit 1985c8c0f648de38af415d0e0f5794d989b8171f
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Aug 3 11:34:05 2012 -0400
+
+    Expose ability to use filter groups in TPac
+    
+    Via config options for basic and advanced search.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+3	0	Open-ILS/src/templates/opac/parts/advanced/search.tt2
+16	0	Open-ILS/src/templates/opac/parts/config.tt2
+7	2	Open-ILS/src/templates/opac/parts/searchbar.tt2
+
+commit a2268b95f4125b1e5102a7feaac79e9f402af59e
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Fri Aug 10 10:44:47 2012 -0400
+
+    Stage 2: Staff Client
+    
+    Robustify the oils protocol:
+    
+    1 - In the event of a problem URL, abort with about:blank.
+    
+    This prevents a segfault!
+    
+    2 - In the event of the TPac, or KPac, wrap the channel we return.
+    
+    The wrapper helps with redirects, but if applied to XMLHttpRequests will
+    cause full breakage.
+    
+    Without the wrapper redirects end up setting URLs to https://host/...
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+189	8	Open-ILS/xul/staff_client/components/oils_protocol.js
+
+commit 4f4cc9001f5d92f9b7c5388f0291bd79404c316d
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Aug 7 20:15:24 2012 -0400
+
+    Stage 1: Perl
+    
+    Attempt to ensure that we always write to oils://remote when needed.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+8	6	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm
+2	2	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm
+2	2	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm
+5	5	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm
+1	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGKPacLoader.pm
+
+commit 06c81b580245572527e12072f1d40fdfe7e74cde
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Thu Jul 26 16:45:24 2012 -0400
+
+    Trying to update patron CSS color fails here, so don't try
+    
+    After modifying user standing penalties ("messages" in the staff client
+    patron interface), you could get this error message in an alert() dialog:
+        TypeError: patron.display is undefined.
+    
+    We were apparently trying to use patron.util.set_patron_css() wrongly,
+    so the commented out changed verison of the call got farther, but stopped at
+        ...penalties[i].standing_penalty().name is not a function.
+    
+    Which probably has something to do with unfleshed data.  Somebody can
+    get to the bottom of this if they want, but for now it's easier just not
+    to try to do this and make the alert() dialog go away.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+3	3	Open-ILS/xul/staff_client/server/patron/standing_penalties.js
+
+commit f489194ee39bb59cad75d644f9fbe9d23c7a20e3
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Jul 31 15:35:21 2012 -0400
+
+    Check for filled hold on transit checkin
+    
+    "Fill related hold" can grab a hold out from under a transit, so check for
+    filled holds in addition to canceled ones.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2	2	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+
+commit 67502a510482fb9c3d101b2d1ccde96d1ed14e30
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Apr 10 09:10:46 2012 -0400
+
+    SuperCat fixes - Child Init
+    
+    Sometimes it seems that child_init has not run properly for supercat.
+    
+    This attempts to fix that by checking for the global appsession objects. If
+    they are not there we run child_init. The function that does this is being
+    called from all handler entry functions.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+28	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm
+
+commit 17f090a2d8ffba0a70f3254d55d49e99b7282a15
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sat Aug 4 11:04:17 2012 -0400
+
+    Silence warnings in search results for holdable copies
+    
+    Have not yet determined the exact reason the holdable copies size is not
+    defined in some instances in the search results only, but this commit
+    prevents warnings from being spewed by apache about undefined variables.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2	1	Open-ILS/src/templates/opac/parts/result/table.tt2
+
+commit a1d4da3f18a282ee6e1ce1bd723b3d8ed0fccfec
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sat Aug 4 10:43:31 2012 -0400
+
+    TPAC: Silence two uninit variable warnings
+    
+    These warnings were being thrown on every TPAC page request, slowly
+    filling the logs:
+    
+    Use of uninitialized value $set_locale in string eq at
+    /usr/local/share/perl/5.10.1/OpenILS/WWW/EGWeb.pm line 159.
+    
+    Use of uninitialized value in pattern match (m//) at
+    /usr/local/share/perl/5.10.1/OpenILS/WWW/EGCatLoader.pm line 250.
+    
+    Banish them.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm
+1	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm
+
+commit e3bf3c5f473a2c1f1651336be5b8eb966415c4db
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Mon Aug 13 13:53:22 2012 -0400
+
+    TPAC: Give login boxes a border
+    
+    For some reason, the boxes for the login form were stripped of
+    their default border style. Let the natural input box formatting for the
+    border shine through and give users an easier target when logging in.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+0	1	Open-ILS/src/templates/opac/css/style.css.tt2
+
+commit df05b7b49eb8c03c7b4dba9071583a7dcf995910
+Author: Ben Shum <bshum at biblio.org>
+Date:   Mon Aug 6 11:11:54 2012 -0400
+
+    TPAC - Fix footer on hold history page
+    
+    The hold history page was missing an ending div tag to complete the
+    block which leads to the footer being generated incorrectly on that
+    page.
+    
+    Adding the ending tag repairs the display of the footer to match all
+    the other pages.
+    
+    Credit to Melissa Lefebvre for noticing this discrepancy.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	0	Open-ILS/src/templates/opac/myopac/hold_history.tt2
+
+commit 368dfb9aedcae5e0469b20046f36bfd712b73348
+Author: Melissa Lefebvre <mlefebvre at biblio.org>
+Date:   Tue Aug 14 12:58:18 2012 -0400
+
+    Change grammar for lost and missing failure messages
+    
+    Update to the lost and missing failure wording to make it
+    gramatically correct.  Removed the word "has" from both
+    messages.
+    
+    Signed-off-by: Melissa Lefebvre <mlefebvre at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2	2	Open-ILS/src/extras/ils_events.xml
+
+commit 5bade2e39970e296c07d2650ba987b7d3df5145a
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Aug 14 10:50:11 2012 -0400
+
+    Physical Location Fixes/Enhancements
+    
+    Teach the physical location retrieval function about using an ENV var.
+    
+    This allows a subdomain to force a specific physical location, say by adding
+    to their apache config:
+    
+    SetEnv physical_loc 4
+    
+    Rewriterules could also be used for more dynamic configuration.
+    
+    Also, as a fix:
+    
+    Have preferred library use the stored physical location instead of assuming
+    that CGI has the setting all the time.
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+3	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm
+2	2	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm
+
+commit 71cf2ffe29c15bbc142554eac787cc64bae37cfa
+Author: Ben Shum <bshum at biblio.org>
+Date:   Tue Aug 7 13:48:31 2012 -0400
+
+    TPAC - fix pickup locations for edit holds
+    
+    When a patron goes to edit a hold in TPAC, they have the option to
+    choose a different pickup location. Unfortunately, it looks like that
+    dropdown does not prevent them from selecting locations that aren't
+    normally allowed for pickups, such as system groups or consortium
+    itself.
+    
+    This patch adds a check for 'can_have_vols_only' to the edit holds
+    screen.
+    
+    Credit to Melissa Lefebvre for finally nailing down the source of
+    the issue.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+1	1	Open-ILS/src/templates/opac/myopac/holds/edit.tt2
+
+commit 906ccbb6679f04518e7af0fbf651b4e473a68fdc
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 10 14:59:50 2012 -0400
+
+    Default to current fiscal year in ACQ order upload
+    
+    * Adds a new API call to determine the current fiscal year for a given
+      org unit:  open-ils.acq.org_unit.current_fiscal_year
+    
+    * Use open-ils.acq.org_unit.current_fiscal_year to populate the correct
+      fiscal year in the ACQ order upload selector.
+    
+    This addresses part 2 of LP 1031927
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+37	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Financials.pm
+25	4	Open-ILS/web/js/ui/default/acq/picklist/upload.js
+
+commit 2b900d3ce4440174d94bf30e12a51f786297be8a
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 10 14:59:29 2012 -0400
+
+    Enable pcrud access to fiscal year / fiscal calendar
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+4	12	Open-ILS/examples/fm_IDL.xml
+
+commit 7713b1782558d275b783d18d3c618c9756f556f1
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 10 14:06:36 2012 -0400
+
+    Fiscal year selector in ACQ order record upload
+    
+    * Support a 'fiscal_year' parameter to ACQ order record upload API.
+    * Adds a new "Fiscal Year" selector to the upload form to facilitate
+      uploading orders to different fiscal years.
+    
+    This partially resolves LP 1031927 by allowing manual selection of the
+    correct fiscal year.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+7	5	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+10	0	Open-ILS/src/templates/acq/picklist/upload.tt2
+29	1	Open-ILS/web/js/ui/default/acq/picklist/upload.js
+
+commit aac4d806af6b3eaebc15a660c99c0f39eb49f14d
+Author: Ben Shum <bshum at biblio.org>
+Date:   Mon Aug 13 18:08:53 2012 -0400
+
+    Change "Reset form" to "Clear Form"
+    
+    As suggested by Thomas Berezansky in the comments on LP 994058, change
+    the button from "Reset form" to "Clear form" to be absolutely clear
+    that the button now removes all previous search variables.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	1	Open-ILS/src/templates/opac/parts/advanced/search.tt2
+
+commit 5ac1a89633db39fc409a89592e7cbf4aa9629b38
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Wed Aug 8 15:08:24 2012 -0400
+
+    TPAC: Reset Form and New Search should clear queries
+    
+    Currently, clicking "Another Search" in the search results page, or
+    "Reset Form" on the advanced search page, keeps the same query terms and
+    type around. Clear these parameters as expected; essentially, we keep
+    only the search location (loc or locg) in scope.
+    
+    Note that we explicitly keep parameters around when someone is going
+    from a basic search to an advanced search, because the assumption is
+    that they want to refine their search further.
+    
+    Also affected are the org_selector, because we want to pull the logic
+    for loc or locg out into a common area (the get_library block in
+    misc_util.tt2), and the style (input.opac-button elements now get styled
+    the same as a.opac-button elements, which makes it easier to intermingle
+    them on the same form).
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/css/style.css.tt2
+7	11	Open-ILS/src/templates/opac/parts/advanced/search.tt2
+15	0	Open-ILS/src/templates/opac/parts/misc_util.tt2
+5	6	Open-ILS/src/templates/opac/parts/org_selector.tt2
+4	1	Open-ILS/src/templates/opac/results.tt2
+
+commit ff2ef0d3f7789e1786efdedf2dff1a7a329257cf
+Author: Ben Shum <bshum at biblio.org>
+Date:   Sun Aug 12 03:25:49 2012 -0400
+
+    TPAC - add library scoping to shelf browser
+    
+    The shelf browser currently uses the 'loc' variable to define scoping and
+    limit browsing to specific org units. However, since much of the scoping
+    actually uses 'locg', the scoping was broken for the shelf browser.
+    
+    Additionally, under Advanced Search's Numeric Search, the option for
+    'Call Number (Shelf Browse)' only applies the 'cn' variable to searches
+    and never adds the search scope, despite the search library now being
+    an available filter choice.
+    
+    Based on suggestion by Dan Scott in IRC, this patch uses the function for
+    _get_search_lib() to retrieve the search library and add it to both parts
+    of the shelf browser.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	1	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
+1	0	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm
+
+commit 6c275daf6f4d669eec14fe1226902ab12066ce95
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date:   Wed Jul 25 13:43:38 2012 -0400
+
+    Make opac/results.tt2 remember facet when sorting, etc.
+    
+    Add a hidden field in the search form and set its value to the value
+    of the CGI 'facet' param if the facet parameter is set.  This appears
+    to work for multiple facets.  Clearing a facet is as simple as clicking
+    on the gray-backgounded facet name.
+    
+    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+3	0	Open-ILS/src/templates/opac/results.tt2
+
+commit 93c31e73cfb91c126de3a9f5fca1a30df514e8ed
+Author: Ben Shum <bshum at biblio.org>
+Date:   Thu Aug 9 12:27:57 2012 -0400
+
+    TPAC - fix alignment of "You are now browsing..." in shelf browser
+    
+    The "You are now browsing..." message does not align to the center of the
+    page. Changing the <div> to a <p> seems to properly align the text.
+    
+    Along the way, we should remove the extra <span> and <strong> (the strong
+    is redundant with the css being inherited by color_4 class) and make the
+    new single line message more i18n-friendly for future translations.
+    
+    Credit to Michael Peters for noticing the problem and thanks to Dan Scott,
+    Lebbeous Fogle-Weekley, and Thomas Berezansky for help via IRC for the
+    i18n-bits.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+3	4	Open-ILS/src/templates/opac/parts/record/cnbrowse.tt2
+
+commit d34ceebde716799df47e3dd10313ca45cd5c08ad
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Sun Aug 12 15:16:01 2012 -0400
+
+    Fix TPAC shelf browser's previous link
+    
+    Line fix suggested by Thomas Berezansky.
+    
+    The cnoffset was strictly checking for values that start with a digit.
+    But negative numbers start with a "-" instead. Once this check was
+    changed, the previous link will continue to move further into negative
+    offsets.
+    
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	1	Open-ILS/src/templates/opac/parts/record/cnbrowse.tt2
+
+commit be1f013cd8e1815bc329f1d3ca957825052a5a9d
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Fri Aug 10 13:03:58 2012 -0400
+
+    Documentation: Fix some issues which caused a2x epub processing to choke.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+2	0	docs/RELEASE_NOTES_2_3.txt
+2	2	docs/root.txt
+
+commit f3053bd541e473ced6c7a5db2c136573fb704e39
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Fri Aug 10 12:24:13 2012 -0400
+
+    Documentation: add a missing image.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+-	-	docs/media/Kids_OPAC10.jpg
+ create mode 100644 docs/media/Kids_OPAC10.jpg
+
+commit 4287eca8b84b512beef1b9c742c548ca351e9d70
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Fri Aug 10 10:04:59 2012 -0400
+
+    Documentation: remove line break characters from file.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+201	201	docs/opac/kids_opac.txt
+
+commit e9c58f63abcbd3b3afdd3d039567d8fa7c4b4462
+Author: Sally Fortin <sfortin at esilibrary.com>
+Date:   Fri Aug 10 09:59:04 2012 -0400
+
+    Documentation: Add kids catalog documentation from ESI site.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+-	-	docs/media/Kids_OPAC1.jpg
+-	-	docs/media/Kids_OPAC11.jpg
+-	-	docs/media/Kids_OPAC12.jpg
+-	-	docs/media/Kids_OPAC13.jpg
+-	-	docs/media/Kids_OPAC14.jpg
+-	-	docs/media/Kids_OPAC15.jpg
+-	-	docs/media/Kids_OPAC16.jpg
+-	-	docs/media/Kids_OPAC17.jpg
+-	-	docs/media/Kids_OPAC2.jpg
+-	-	docs/media/Kids_OPAC4.jpg
+-	-	docs/media/Kids_OPAC5.jpg
+-	-	docs/media/Kids_OPAC6.jpg
+-	-	docs/media/Kids_OPAC7.jpg
+-	-	docs/media/Kids_OPAC8.jpg
+-	-	docs/media/Kids_OPAC9.jpg
+201	0	docs/opac/kids_opac.txt
+2	0	docs/root.txt
+ create mode 100644 docs/media/Kids_OPAC1.jpg
+ create mode 100644 docs/media/Kids_OPAC11.jpg
+ create mode 100644 docs/media/Kids_OPAC12.jpg
+ create mode 100644 docs/media/Kids_OPAC13.jpg
+ create mode 100644 docs/media/Kids_OPAC14.jpg
+ create mode 100644 docs/media/Kids_OPAC15.jpg
+ create mode 100644 docs/media/Kids_OPAC16.jpg
+ create mode 100644 docs/media/Kids_OPAC17.jpg
+ create mode 100644 docs/media/Kids_OPAC2.jpg
+ create mode 100644 docs/media/Kids_OPAC4.jpg
+ create mode 100644 docs/media/Kids_OPAC5.jpg
+ create mode 100644 docs/media/Kids_OPAC6.jpg
+ create mode 100644 docs/media/Kids_OPAC7.jpg
+ create mode 100644 docs/media/Kids_OPAC8.jpg
+ create mode 100644 docs/media/Kids_OPAC9.jpg
+ create mode 100644 docs/opac/kids_opac.txt
+
+commit dc604d055e01f698a15f31a10b4b2cfc135a18e1
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Aug 9 18:25:00 2012 -0400
+
+    Authorities: Fix broken UI due to new XUL/Dojo/regressions
+    
+    New versions of XUL, since Firefox 10, hate dojo.query("foo bar"), so we
+    have to refactor it to use dojo.query("foo").query("bar") instead. At
+    least until we upgrade to a new version of Dojo.
+    
+    In addition, 522d8d82 introduced a regression meaning that the text of
+    the authorities was no longer wrapped in a SPAN element with a class of
+    "text". That in turn meant that the Dojo queries weren't picking up the
+    labels for the merge box, leaving no visual indication to the user as to
+    what authorities exactly were being merged. So, repair that.
+    
+    Also, similar to a fix for the MFHD editor, set the initial height of
+    the spawned MARC Editor for an authority record to something reasonable.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+15	7	Open-ILS/web/js/ui/default/cat/authority/list.js
+
+commit bd401421cbbf5ac397f4bda10c5c66838f30dfd5
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Thu Aug 9 15:17:48 2012 -0400
+
+    Documentation: Update upgrade instruction to 2.3.beta1 and include all docs that were in 2.2.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+11	11	docs/installation/server_upgrade.txt
+50	60	docs/root.txt
+
+commit 17e0a66c1f53e43797b1013855a2994c547b8db3
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Thu Aug 9 16:31:44 2012 -0400
+
+    Set a sane initial MFHD Editor size
+    
+    For most MFHD records, the size of the MARC Editor window when spawned
+    fits into the confines of a normal desktop. However, for MFHD records
+    with dozens or more rows, the window chrome can be inaccessible because
+    it is bumped off the top of the Windows desktop. This makes it
+    impossible for users to close the window without a workaround like
+    hitting ALT+F4
+    
+    This branch sets the window to an initial height of 40 pixels less than
+    the height of the entire staff client window. This should be enough to
+    enable the chrome on top to be visible. In addition, we have to set the
+    width to something reasonable because XUL seems to otherwise set the
+    window to be extremely skinny once an explicit height is set, so we set
+    that to be half the width of the staff client window.
+    
+    Finally, we allow the new window to be resizable according to the user's
+    preference.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+5	1	Open-ILS/xul/staff_client/chrome/content/cat/opac.js
+
+commit 5c82e4c0b44b7fe5cb71a3cacb56ff1a3ca1a619
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Wed Aug 8 13:50:33 2012 -0400
+
+    Simplified Hold Pull List: Fix several sorting bugs
+    
+    First of all, sorting on most columns was broken due to a bug in the way
+    that the flattener methods of the open-ils.fielder service were
+    constructing their SQL JOINs.  We were coming up with way too many
+    joins, and then losing track of which JOIN's alias to refer to when
+    building the ORDER BY clause later.  This is fixed.
+    
+    Secondly, the shelving location column now sorts automatically by the
+    shelving location *ordering* values, when avaiable.  These are the
+    values that you set up in the drag-and-drop staff client interface
+    titled "Copy Location Order."  When these values are not set for the org
+    unit whose pull list you're viewing, the sorting will fall back to
+    alphabetical.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+5	1	Open-ILS/examples/fm_IDL.xml
+3	0	Open-ILS/src/perlmods/lib/OpenILS/Application/Fielder.pm
+28	3	Open-ILS/src/perlmods/lib/OpenILS/Application/Flattener.pm
+2	2	Open-ILS/src/templates/circ/hold_pull_list.tt2
+
+commit f36156a19e3e0d04535a7ee839fa0e3a922f3d47
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Wed Aug 8 10:45:33 2012 -0400
+
+    Documentation: Remove a space causing an error during PDF processing.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+1	1	docs/root.txt
+
+commit eac313f2f96b2c16a08a308355e495e61e5fb25d
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Sat Aug 4 11:24:15 2012 -0400
+
+    TPAC: Remove explicit width on "View my list" button
+    
+    .cached_list_div, which defines the style for the "View my list" button
+    on the TPAC button bar once an item has been added to a temporary list,
+    is given an explicit width of 111px, which is problematic for a number
+    of reasons:
+    
+    1. If the font-size of the base style is increased, then the text will
+       likely wrap.
+    2. Translations tend to be longer than English, and indeed in fr-CA
+       "Afficher ma liste" ends up wrapping onto a second line, which makes
+       the button bar look weird.
+    
+    Accordingly, remove the explicit "width:111px" from the style definition
+    for .cached_list_div.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1	1	Open-ILS/src/templates/opac/css/style.css.tt2
+
+commit 36512c59c729f018f07d7b427baa3a6df3117809
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Aug 7 14:29:37 2012 -0400
+
+    Remove extra xulG redefines
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+0	1	Open-ILS/xul/staff_client/chrome/content/util/widget_prompt.js
+0	2	Open-ILS/xul/staff_client/server/cat/volume_editor.js
+0	2	Open-ILS/xul/staff_client/server/circ/circ_summary.xul
+0	2	Open-ILS/xul/staff_client/server/circ/copy_details.xul
+0	1	Open-ILS/xul/staff_client/server/serial/editor_base.js
+
+commit a3d734dd2b9e5ea3c2e85f3377a94d829faa595d
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Tue Aug 7 14:19:56 2012 -0400
+
+    Fix timestamp typo
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1	1	Open-ILS/xul/staff_client/chrome/content/util/timestamp.js
+
+commit edd947c51792037202bfad6a78cd7427e8e25041
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date:   Mon Aug 6 12:48:19 2012 -0400
+
+    Redirect to OILS in staff client
+    
+    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+3	3	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm
+
+commit b3a794f4e5a26fb3714665aa5cb15897ddcaefb4
+Author: Dan Scott <dscott at laurentian.ca>
+Date:   Fri Aug 3 10:59:33 2012 -0400
+
+    Add dependencies for Fedora
+    
+    Noted by Net Wolf on the mailing list, some core dependencies were
+    missing from the Fedora Makefile.install installer. As some of them have
+    recently been packaged for Fedora 17, add them to the package
+    collection; others are still unpackaged, so leave them there.
+    
+    Note: the packages are not available on Fedora 16, but that has a
+    limited remaining shelf life anyway, so consider this a shift to
+    supporting only the latest stable version of Fedora.
+    
+    Signed-off-by: Dan Scott <dscott at laurentian.ca>
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+4	1	Open-ILS/src/extras/Makefile.install
+
+commit 2df03f3f705ce146e642246cf401740f5e7068ec
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 3 10:02:29 2012 -0400
+
+    Import updated translations from Launchpad; stage 2
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+1	1	build/i18n/po/XULTermLoader.js/XULTermLoader.js.pot
+12	12	build/i18n/po/acq.js/acq.js.pot
+1	1	build/i18n/po/capture.js/capture.js.pot
+16	2	build/i18n/po/circ.properties/circ.properties.pot
+1	1	build/i18n/po/conify.js/conify.js.pot
+810	719	build/i18n/po/db.seed/db.seed.pot
+2537	2345	build/i18n/po/fm_IDL.dtd/fm_IDL.dtd.pot
+15	15	build/i18n/po/ils_events.xml/ils_events.xml.pot
+72	542	build/i18n/po/lang.dtd/lang.dtd.pot
+6	1	build/i18n/po/offline.properties/offline.properties.pot
+2	4	build/i18n/po/opac.dtd/opac.dtd.pot
+1	1	build/i18n/po/opac.js/opac.js.pot
+1	1	build/i18n/po/pull_list.js/pull_list.js.pot
+9	9	build/i18n/po/register.js/register.js.pot
+1	1	build/i18n/po/reservation.js/reservation.js.pot
+1	1	build/i18n/po/selfcheck.js/selfcheck.js.pot
+203	103	build/i18n/po/tpac/tpac.pot
+
+commit 28a16c362ceefa84e88063653a47e89500a7e3c7
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Fri Aug 3 10:00:54 2012 -0400
+
+    Import updated translations from Launchpad; stage 1
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+21	21	build/i18n/po/Searcher.js/pt-BR.po
+15	16	build/i18n/po/admin.properties/pt-BR.po
+102	0	build/i18n/po/authority.js/tr-TR.po
+65	49	build/i18n/po/cat.properties/pt-BR.po
+4	4	build/i18n/po/circ.properties/cs-CZ.po
+4	4	build/i18n/po/circ.properties/de-DE.po
+4	4	build/i18n/po/circ.properties/en-CA.po
+4	4	build/i18n/po/circ.properties/en-GB.po
+4	4	build/i18n/po/circ.properties/es-ES.po
+4	4	build/i18n/po/circ.properties/fr-CA.po
+4	4	build/i18n/po/circ.properties/hy-AM.po
+74	41	build/i18n/po/circ.properties/pt-BR.po
+4	4	build/i18n/po/circ.properties/ru-RU.po
+5	5	build/i18n/po/conify.js/es-ES.po
+5	5	build/i18n/po/conify.js/pt-BR.po
+2191	2198	build/i18n/po/fm_IDL.dtd/cs-CZ.po
+2188	2195	build/i18n/po/fm_IDL.dtd/de-DE.po
+2191	2198	build/i18n/po/fm_IDL.dtd/en-CA.po
+2191	2198	build/i18n/po/fm_IDL.dtd/en-GB.po
+2188	2195	build/i18n/po/fm_IDL.dtd/es-ES.po
+2225	2232	build/i18n/po/fm_IDL.dtd/fr-CA.po
+2191	2198	build/i18n/po/fm_IDL.dtd/hy-AM.po
+2191	2198	build/i18n/po/fm_IDL.dtd/pt-BR.po
+2191	2198	build/i18n/po/fm_IDL.dtd/ru-RU.po
+2188	2195	build/i18n/po/fm_IDL.dtd/tr-TR.po
+149	142	build/i18n/po/opac.dtd/pt-BR.po
+5	5	build/i18n/po/opac.js/es-ES.po
+15	15	build/i18n/po/pull_list.js/pt-BR.po
+6	6	build/i18n/po/register.js/de-DE.po
+20	20	build/i18n/po/register.js/es-ES.po
+31	31	build/i18n/po/register.js/tr-TR.po
+31	22	build/i18n/po/selfcheck.js/pt-BR.po
+11	11	build/i18n/po/serial.properties/pt-BR.po
+ create mode 100644 build/i18n/po/authority.js/tr-TR.po
+
+commit b59eec3a324412336209daf775320d4e3bbd403d
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Aug 2 12:12:49 2012 -0400
+
+    Initial cut of 2.3 release notes.
+    
+    Basically, the contents of RELEASE_NOTES_NEXT organized into
+    RELEASE_NOTES_2_3.txt and removed from RELEASE_NOTE_NEXT.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+368	0	docs/RELEASE_NOTES_2_3.txt
+0	22	docs/RELEASE_NOTES_NEXT/acq-invoice-li-search.txt
+0	67	docs/RELEASE_NOTES_NEXT/add-to-permanent-bookbag.txt
+0	15	docs/RELEASE_NOTES_NEXT/edi-invoices.txt
+0	60	docs/RELEASE_NOTES_NEXT/new_xulrunner.txt
+0	38	docs/RELEASE_NOTES_NEXT/search-filter-groups.txt
+0	30	docs/RELEASE_NOTES_NEXT/simplified-hold-pull-list.txt
+0	29	docs/RELEASE_NOTES_NEXT/tpac-css-colors.txt
+0	37	docs/RELEASE_NOTES_NEXT/vandelay-copy-overlay.txt
+0	15	docs/RELEASE_NOTES_NEXT/warn-when-adding-to-a-temporary-bookbag.txt
+0	16	docs/RELEASE_NOTES_NEXT/z3950-attr-admin-ui.txt
+ create mode 100644 docs/RELEASE_NOTES_2_3.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/acq-invoice-li-search.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/add-to-permanent-bookbag.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/edi-invoices.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/new_xulrunner.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/search-filter-groups.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/simplified-hold-pull-list.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/tpac-css-colors.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/vandelay-copy-overlay.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/warn-when-adding-to-a-temporary-bookbag.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/z3950-attr-admin-ui.txt
+
+commit 2b0dc47c62ff53b25b65aa566baff98a7330252e
+Author: Bill Erickson <berick at esilibrary.com>
+Date:   Thu Aug 2 12:09:42 2012 -0400
+
+    Add simple README to RELEASE_NOTE_NEXT
+    
+    Without something in the directory, it will dissappear each time we
+    create release notes from the contents and delete them, since Git
+    removes empty directories.  That would likely just lead to confusion.
+    
+    Signed-off-by: Bill Erickson <berick at esilibrary.com>
+    Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+6	0	docs/RELEASE_NOTES_NEXT/README
+ create mode 100644 docs/RELEASE_NOTES_NEXT/README
+
+commit 5a182463d3067fe475fa50055927854085f45468
+Author: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+Date:   Fri Aug 3 09:21:18 2012 -0400
+
+    Documentation: adjust documentation for 2_3 release.
+    
+    Comment out chapters in root.txt except for basic documentation.
+    Update upgrade instructions for the 2.3 alpha2 release.
+    
+    Signed-off-by: Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+12	12	docs/installation/server_upgrade.txt
+53	53	docs/root.txt
+
+commit c61bc16920c7471ac69792a6f761ce174b94f721
+Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+Date:   Thu Aug 2 21:37:10 2012 -0400
+
+    Add basic release notes for 2.2.1.  Not as thorough as notes at major release.
+    
+    Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+72	0	docs/RELEASE_NOTES_2_2_1.txt
+ create mode 100644 docs/RELEASE_NOTES_2_2_1.txt
diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application.pm
index 2888c93..7e75c5c 100644
--- a/Open-ILS/src/perlmods/lib/OpenILS/Application.pm
+++ b/Open-ILS/src/perlmods/lib/OpenILS/Application.pm
@@ -7,7 +7,7 @@ use OpenILS::Utils::Fieldmapper;
 sub ils_version {
     # version format is "x-y-z", for example "2-0-0" for Evergreen 2.0.0
     # For branches, format is "x-y"
-    return "HEAD";
+    return "2-4-0";
 }
 
 __PACKAGE__->register_method(
diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql
index 5a955d4..52938ec 100644
--- a/Open-ILS/src/sql/Pg/002.schema.config.sql
+++ b/Open-ILS/src/sql/Pg/002.schema.config.sql
@@ -92,6 +92,7 @@ CREATE TRIGGER no_overlapping_deps
     FOR EACH ROW EXECUTE PROCEDURE evergreen.array_overlap_check ('deprecates');
 
 INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0793', :eg_version); -- senator/miker
+INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.4.0', :eg_version);
 
 CREATE TABLE config.bib_source (
 	id		SERIAL	PRIMARY KEY,
diff --git a/Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4.0-upgrade-db.sql b/Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4.0-upgrade-db.sql
new file mode 100644
index 0000000..fa9543c
--- /dev/null
+++ b/Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4.0-upgrade-db.sql
@@ -0,0 +1,3994 @@
+--Upgrade Script for 2.3 to 2.4.0
+\set eg_version '''2.4.0'''
+BEGIN;
+INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.4.0', :eg_version);
+-- remove the Bypass hold capture during clear shelf process setting
+
+SELECT evergreen.upgrade_deps_block_check('0739', :eg_version);
+
+
+DELETE FROM actor.org_unit_setting WHERE name = 'circ.holds.clear_shelf.no_capture_holds';
+DELETE FROM config.org_unit_setting_type_log WHERE field_name = 'circ.holds.clear_shelf.no_capture_holds';
+
+
+DELETE FROM config.org_unit_setting_type WHERE name = 'circ.holds.clear_shelf.no_capture_holds';
+
+
+SELECT evergreen.upgrade_deps_block_check('0741', :eg_version);
+
+INSERT INTO permission.perm_list ( id, code, description ) VALUES (
+    540,
+    'ADMIN_TOOLBAR_FOR_ORG',
+    oils_i18n_gettext(
+        540,
+        'Allows a user to create, edit, and delete custom toolbars for org units',
+        'ppl',
+        'description'
+    )
+), (
+    541,
+    'ADMIN_TOOLBAR_FOR_WORKSTATION',
+    oils_i18n_gettext(
+        541,
+        'Allows a user to create, edit, and delete custom toolbars for workstations',
+        'ppl',
+        'description'
+    )
+), (
+    542,
+    'ADMIN_TOOLBAR_FOR_USER',
+    oils_i18n_gettext(
+        542,
+        'Allows a user to create, edit, and delete custom toolbars for users',
+        'ppl',
+        'description'
+    )
+);
+
+
+-- Evergreen DB patch 0743.schema.remove_tsearch2.sql
+--
+-- Enable native full-text search to be used, and drop TSearch2 extension
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0743', :eg_version);
+
+-- FIXME: add/check SQL statements to perform the upgrade
+-- First up, these functions depend on metabib.full_rec. They have to go for now.
+DROP FUNCTION IF EXISTS biblio.flatten_marc(bigint);
+DROP FUNCTION IF EXISTS biblio.flatten_marc(text);
+
+-- These views depend on metabib.full_rec as well. Bye-bye!
+DROP VIEW IF EXISTS reporter.old_super_simple_record;
+DROP VIEW IF EXISTS reporter.simple_record;
+DROP VIEW IF EXISTS reporter.classic_item_list;
+
+\echo WARNING: The reporter.classic_item_list view was dropped if it existed.
+\echo If you use that view, please run the example.reporter-extension.sql script
+\echo to recreate it after rest of the schema upgrade is complete.
+
+-- Now we can drop metabib.full_rec.
+DROP VIEW IF EXISTS metabib.full_rec;
+
+-- These indexes have to go. BEFORE we alter the tables, otherwise things take extra time when we alter the tables.
+DROP INDEX metabib.metabib_author_field_entry_value_idx;
+DROP INDEX metabib.metabib_identifier_field_entry_value_idx;
+DROP INDEX metabib.metabib_keyword_field_entry_value_idx;
+DROP INDEX metabib.metabib_series_field_entry_value_idx;
+DROP INDEX metabib.metabib_subject_field_entry_value_idx;
+DROP INDEX metabib.metabib_title_field_entry_value_idx;
+
+-- Now grab all of the tsvector-enabled columns and switch them to the non-wrapper version of the type.
+ALTER TABLE authority.full_rec ALTER COLUMN index_vector TYPE pg_catalog.tsvector;
+ALTER TABLE authority.simple_heading ALTER COLUMN index_vector TYPE pg_catalog.tsvector;
+ALTER TABLE metabib.real_full_rec ALTER COLUMN index_vector TYPE pg_catalog.tsvector;
+ALTER TABLE metabib.author_field_entry ALTER COLUMN index_vector TYPE pg_catalog.tsvector;
+ALTER TABLE metabib.browse_entry ALTER COLUMN index_vector TYPE pg_catalog.tsvector;
+ALTER TABLE metabib.identifier_field_entry ALTER COLUMN index_vector TYPE pg_catalog.tsvector;
+ALTER TABLE metabib.keyword_field_entry ALTER COLUMN index_vector TYPE pg_catalog.tsvector;
+ALTER TABLE metabib.series_field_entry ALTER COLUMN index_vector TYPE pg_catalog.tsvector;
+ALTER TABLE metabib.subject_field_entry ALTER COLUMN index_vector TYPE pg_catalog.tsvector;
+ALTER TABLE metabib.title_field_entry ALTER COLUMN index_vector TYPE pg_catalog.tsvector;
+
+-- Halfway there! Goodbye tsearch2 extension!
+DROP EXTENSION tsearch2;
+
+-- Next up, re-creating all of the stuff we just dropped.
+
+-- Indexes! Note to whomever: Do we even need these anymore?
+CREATE INDEX metabib_author_field_entry_value_idx ON metabib.author_field_entry (SUBSTRING(value,1,1024)) WHERE index_vector = ''::TSVECTOR;
+CREATE INDEX metabib_identifier_field_entry_value_idx ON metabib.identifier_field_entry (SUBSTRING(value,1,1024)) WHERE index_vector = ''::TSVECTOR;
+CREATE INDEX metabib_keyword_field_entry_value_idx ON metabib.keyword_field_entry (SUBSTRING(value,1,1024)) WHERE index_vector = ''::TSVECTOR;
+CREATE INDEX metabib_series_field_entry_value_idx ON metabib.series_field_entry (SUBSTRING(value,1,1024)) WHERE index_vector = ''::TSVECTOR;
+CREATE INDEX metabib_subject_field_entry_value_idx ON metabib.subject_field_entry (SUBSTRING(value,1,1024)) WHERE index_vector = ''::TSVECTOR;
+CREATE INDEX metabib_title_field_entry_value_idx ON metabib.title_field_entry (SUBSTRING(value,1,1024)) WHERE index_vector = ''::TSVECTOR;
+
+-- metabib.full_rec, with insert/update/delete rules
+CREATE OR REPLACE VIEW metabib.full_rec AS
+    SELECT  id,
+            record,
+            tag,
+            ind1,
+            ind2,
+            subfield,
+            SUBSTRING(value,1,1024) AS value,
+            index_vector
+      FROM  metabib.real_full_rec;
+
+CREATE OR REPLACE RULE metabib_full_rec_insert_rule
+    AS ON INSERT TO metabib.full_rec
+    DO INSTEAD
+    INSERT INTO metabib.real_full_rec VALUES (
+        COALESCE(NEW.id, NEXTVAL('metabib.full_rec_id_seq'::REGCLASS)),
+        NEW.record,
+        NEW.tag,
+        NEW.ind1,
+        NEW.ind2,
+        NEW.subfield,
+        NEW.value,
+        NEW.index_vector
+    );
+
+CREATE OR REPLACE RULE metabib_full_rec_update_rule
+    AS ON UPDATE TO metabib.full_rec
+    DO INSTEAD
+    UPDATE  metabib.real_full_rec SET
+        id = NEW.id,
+        record = NEW.record,
+        tag = NEW.tag,
+        ind1 = NEW.ind1,
+        ind2 = NEW.ind2,
+        subfield = NEW.subfield,
+        value = NEW.value,
+        index_vector = NEW.index_vector
+      WHERE id = OLD.id;
+
+CREATE OR REPLACE RULE metabib_full_rec_delete_rule
+    AS ON DELETE TO metabib.full_rec
+    DO INSTEAD
+    DELETE FROM metabib.real_full_rec WHERE id = OLD.id;
+
+-- reporter views that depended on metabib.full_rec are up next
+CREATE OR REPLACE VIEW reporter.simple_record AS
+SELECT  r.id,
+    s.metarecord,
+    r.fingerprint,
+    r.quality,
+    r.tcn_source,
+    r.tcn_value,
+    title.value AS title,
+    uniform_title.value AS uniform_title,
+    author.value AS author,
+    publisher.value AS publisher,
+    SUBSTRING(pubdate.value FROM $$\d+$$) AS pubdate,
+    series_title.value AS series_title,
+    series_statement.value AS series_statement,
+    summary.value AS summary,
+    ARRAY_ACCUM( DISTINCT REPLACE(SUBSTRING(isbn.value FROM $$^\S+$$), '-', '') ) AS isbn,
+    ARRAY_ACCUM( DISTINCT REGEXP_REPLACE(issn.value, E'^\\S*(\\d{4})[-\\s](\\d{3,4}x?)', E'\\1 \\2') ) AS issn,
+    ARRAY((SELECT DISTINCT value FROM metabib.full_rec WHERE tag = '650' AND subfield = 'a' AND record = r.id)) AS topic_subject,
+    ARRAY((SELECT DISTINCT value FROM metabib.full_rec WHERE tag = '651' AND subfield = 'a' AND record = r.id)) AS geographic_subject,
+    ARRAY((SELECT DISTINCT value FROM metabib.full_rec WHERE tag = '655' AND subfield = 'a' AND record = r.id)) AS genre,
+    ARRAY((SELECT DISTINCT value FROM metabib.full_rec WHERE tag = '600' AND subfield = 'a' AND record = r.id)) AS name_subject,
+    ARRAY((SELECT DISTINCT value FROM metabib.full_rec WHERE tag = '610' AND subfield = 'a' AND record = r.id)) AS corporate_subject,
+    ARRAY((SELECT value FROM metabib.full_rec WHERE tag = '856' AND subfield IN ('3','y','u') AND record = r.id ORDER BY CASE WHEN subfield IN ('3','y') THEN 0 ELSE 1 END)) AS external_uri
+  FROM  biblio.record_entry r
+    JOIN metabib.metarecord_source_map s ON (s.source = r.id)
+    LEFT JOIN metabib.full_rec uniform_title ON (r.id = uniform_title.record AND uniform_title.tag = '240' AND uniform_title.subfield = 'a')
+    LEFT JOIN metabib.full_rec title ON (r.id = title.record AND title.tag = '245' AND title.subfield = 'a')
+    LEFT JOIN metabib.full_rec author ON (r.id = author.record AND author.tag = '100' AND author.subfield = 'a')
+    LEFT JOIN metabib.full_rec publisher ON (r.id = publisher.record AND publisher.tag = '260' AND publisher.subfield = 'b')
+    LEFT JOIN metabib.full_rec pubdate ON (r.id = pubdate.record AND pubdate.tag = '260' AND pubdate.subfield = 'c')
+    LEFT JOIN metabib.full_rec isbn ON (r.id = isbn.record AND isbn.tag IN ('024', '020') AND isbn.subfield IN ('a','z'))
+    LEFT JOIN metabib.full_rec issn ON (r.id = issn.record AND issn.tag = '022' AND issn.subfield = 'a')
+    LEFT JOIN metabib.full_rec series_title ON (r.id = series_title.record AND series_title.tag IN ('830','440') AND series_title.subfield = 'a')
+    LEFT JOIN metabib.full_rec series_statement ON (r.id = series_statement.record AND series_statement.tag = '490' AND series_statement.subfield = 'a')
+    LEFT JOIN metabib.full_rec summary ON (r.id = summary.record AND summary.tag = '520' AND summary.subfield = 'a')
+  GROUP BY 1,2,3,4,5,6,7,8,9,10,11,12,13,14;
+
+CREATE OR REPLACE VIEW reporter.old_super_simple_record AS
+SELECT  r.id,
+    r.fingerprint,
+    r.quality,
+    r.tcn_source,
+    r.tcn_value,
+    FIRST(title.value) AS title,
+    FIRST(author.value) AS author,
+    ARRAY_TO_STRING(ARRAY_ACCUM( DISTINCT publisher.value), ', ') AS publisher,
+    ARRAY_TO_STRING(ARRAY_ACCUM( DISTINCT SUBSTRING(pubdate.value FROM $$\d+$$) ), ', ') AS pubdate,
+    ARRAY_ACCUM( DISTINCT REPLACE(SUBSTRING(isbn.value FROM $$^\S+$$), '-', '') ) AS isbn,
+    ARRAY_ACCUM( DISTINCT REGEXP_REPLACE(issn.value, E'^\\S*(\\d{4})[-\\s](\\d{3,4}x?)', E'\\1 \\2') ) AS issn
+  FROM  biblio.record_entry r
+    LEFT JOIN metabib.full_rec title ON (r.id = title.record AND title.tag = '245' AND title.subfield = 'a')
+    LEFT JOIN metabib.full_rec author ON (r.id = author.record AND author.tag IN ('100','110','111') AND author.subfield = 'a')
+    LEFT JOIN metabib.full_rec publisher ON (r.id = publisher.record AND publisher.tag = '260' AND publisher.subfield = 'b')
+    LEFT JOIN metabib.full_rec pubdate ON (r.id = pubdate.record AND pubdate.tag = '260' AND pubdate.subfield = 'c')
+    LEFT JOIN metabib.full_rec isbn ON (r.id = isbn.record AND isbn.tag IN ('024', '020') AND isbn.subfield IN ('a','z'))
+    LEFT JOIN metabib.full_rec issn ON (r.id = issn.record AND issn.tag = '022' AND issn.subfield = 'a')
+  GROUP BY 1,2,3,4,5;
+
+-- And finally, the biblio functions. NOTE: I can't find the original source of the second one, so I skipped it as old cruft that was in our production DB.
+CREATE OR REPLACE FUNCTION biblio.flatten_marc ( rid BIGINT ) RETURNS SETOF metabib.full_rec AS $func$
+DECLARE
+    bib biblio.record_entry%ROWTYPE;
+    output  metabib.full_rec%ROWTYPE;
+    field   RECORD;
+BEGIN
+    SELECT INTO bib * FROM biblio.record_entry WHERE id = rid;
+
+    FOR field IN SELECT * FROM vandelay.flatten_marc( bib.marc ) LOOP
+        output.record := rid;
+        output.ind1 := field.ind1;
+        output.ind2 := field.ind2;
+        output.tag := field.tag;
+        output.subfield := field.subfield;
+        output.value := field.value;
+
+        RETURN NEXT output;
+    END LOOP;
+END;
+$func$ LANGUAGE PLPGSQL;
+
+-- Evergreen DB patch 0745.data.prewarn_expire_setting.sql
+--
+-- Configuration setting to warn staff when an account is about to expire
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0745', :eg_version);
+
+INSERT INTO config.org_unit_setting_type
+    (name, grp, label, description, datatype)
+    VALUES (
+        'circ.patron_expires_soon_warning',
+        'circ',
+        oils_i18n_gettext(
+            'circ.patron_expires_soon_warning',
+            'Warn when patron account is about to expire',
+            'coust',
+            'label'
+        ),
+        oils_i18n_gettext(
+            'circ.patron_expires_soon_warning',
+            'Warn when patron account is about to expire. If set, the staff client displays a warning this many days before the expiry of a patron account. Value is in number of days, for example: 3 for 3 days.',
+            'coust',
+            'description'
+        ),
+        'integer'
+    );
+
+-- LP1076399: Prevent reactivated holds from canceling immediately.
+-- Set the expire_time to NULL on all frozen/suspended holds.
+
+SELECT evergreen.upgrade_deps_block_check('0747', :eg_version);
+
+UPDATE action.hold_request
+SET expire_time = NULL
+WHERE frozen = 't'; 
+
+
+SELECT evergreen.upgrade_deps_block_check('0752', :eg_version);
+
+INSERT INTO container.biblio_record_entry_bucket_type (code, label) VALUES ('url_verify', 'URL Verification Queue');
+
+DROP SCHEMA IF EXISTS url_verify CASCADE;
+
+CREATE SCHEMA url_verify;
+
+CREATE TABLE url_verify.session (
+    id          SERIAL                      PRIMARY KEY,
+    name        TEXT                        NOT NULL,
+    owning_lib  INT                         NOT NULL REFERENCES actor.org_unit (id) DEFERRABLE INITIALLY DEFERRED,
+    creator     INT                         NOT NULL REFERENCES actor.usr (id) DEFERRABLE INITIALLY DEFERRED,
+    container   INT                         NOT NULL REFERENCES container.biblio_record_entry_bucket (id) DEFERRABLE INITIALLY DEFERRED,
+    create_time TIMESTAMP WITH TIME ZONE    NOT NULL DEFAULT NOW(),
+    search      TEXT                        NOT NULL,
+    CONSTRAINT uvs_name_once_per_lib UNIQUE (name, owning_lib)
+);
+
+CREATE TABLE url_verify.url_selector (
+    id      SERIAL  PRIMARY KEY,
+    xpath   TEXT    NOT NULL,
+    session INT     NOT NULL REFERENCES url_verify.session (id) DEFERRABLE INITIALLY DEFERRED,
+    CONSTRAINT tag_once_per_sess UNIQUE (xpath, session)
+);
+
+CREATE TABLE url_verify.url (
+    id              SERIAL  PRIMARY KEY,
+    redirect_from   INT     REFERENCES url_verify.url(id) DEFERRABLE INITIALLY DEFERRED,
+    item            INT     REFERENCES container.biblio_record_entry_bucket_item (id) DEFERRABLE INITIALLY DEFERRED,
+    url_selector    INT     REFERENCES url_verify.url_selector (id) DEFERRABLE INITIALLY DEFERRED,
+    session         INT     REFERENCES url_verify.session (id) DEFERRABLE INITIALLY DEFERRED,
+    tag             TEXT,
+    subfield        TEXT,
+    ord             INT,
+    full_url        TEXT    NOT NULL,
+    scheme          TEXT,
+    username        TEXT,
+    password        TEXT,
+    host            TEXT,
+    domain          TEXT,
+    tld             TEXT,
+    port            TEXT,
+    path            TEXT,
+    page            TEXT,
+    query           TEXT,
+    fragment        TEXT,
+    CONSTRAINT redirect_or_from_item CHECK (
+        redirect_from IS NOT NULL OR (
+            item         IS NOT NULL AND
+            url_selector IS NOT NULL AND
+            tag          IS NOT NULL AND
+            subfield     IS NOT NULL AND
+            ord          IS NOT NULL
+        )
+    )
+);
+
+CREATE TABLE url_verify.verification_attempt (
+    id          SERIAL                      PRIMARY KEY,
+    usr         INT                         NOT NULL REFERENCES actor.usr (id) DEFERRABLE INITIALLY DEFERRED,
+    session     INT                         NOT NULL REFERENCES url_verify.session (id) DEFERRABLE INITIALLY DEFERRED,
+    start_time  TIMESTAMP WITH TIME ZONE    NOT NULL DEFAULT NOW(),
+    finish_time TIMESTAMP WITH TIME ZONE
+);
+ 
+CREATE TABLE url_verify.url_verification (
+    id          SERIAL                      PRIMARY KEY,
+    url         INT                         NOT NULL REFERENCES url_verify.url (id) DEFERRABLE INITIALLY DEFERRED,
+    attempt     INT                         NOT NULL REFERENCES url_verify.verification_attempt (id) DEFERRABLE INITIALLY DEFERRED,
+    req_time    TIMESTAMP WITH TIME ZONE    NOT NULL DEFAULT NOW(),
+    res_time    TIMESTAMP WITH TIME ZONE, 
+    res_code    INT                         CHECK (res_code BETWEEN 100 AND 999), -- we know > 599 will never be valid HTTP code, but we use 9XX for other stuff
+    res_text    TEXT, 
+    redirect_to INT                         REFERENCES url_verify.url (id) DEFERRABLE INITIALLY DEFERRED -- if redirected
+);
+
+CREATE TABLE config.filter_dialog_interface (
+    key         TEXT                        PRIMARY KEY,
+    description TEXT
+);
+
+CREATE TABLE config.filter_dialog_filter_set (
+    id          SERIAL                      PRIMARY KEY,
+    name        TEXT                        NOT NULL,
+    owning_lib  INT                         NOT NULL REFERENCES actor.org_unit (id) DEFERRABLE INITIALLY DEFERRED,
+    creator     INT                         NOT NULL REFERENCES actor.usr (id) DEFERRABLE INITIALLY DEFERRED,
+    create_time TIMESTAMP WITH TIME ZONE    NOT NULL DEFAULT NOW(),
+    interface   TEXT                        NOT NULL REFERENCES config.filter_dialog_interface (key) DEFERRABLE INITIALLY DEFERRED,
+    filters     TEXT                        NOT NULL CHECK (is_json(filters)),
+    CONSTRAINT cfdfs_name_once_per_lib UNIQUE (name, owning_lib)
+);
+ 
+
+SELECT evergreen.upgrade_deps_block_check('0753', :eg_version);
+
+CREATE OR REPLACE FUNCTION url_verify.parse_url (url_in TEXT) RETURNS url_verify.url AS $$
+
+use Rose::URI;
+
+my $url_in = shift;
+my $url = Rose::URI->new($url_in);
+
+my %parts = map { $_ => $url->$_ } qw/scheme username password host port path query fragment/;
+
+$parts{full_url} = $url_in;
+($parts{domain} = $parts{host}) =~ s/^[^.]+\.//;
+($parts{tld} = $parts{domain}) =~ s/(?:[^.]+\.)+//;
+($parts{page} = $parts{path}) =~ s#(?:[^/]*/)+##;
+
+return \%parts;
+
+$$ LANGUAGE PLPERLU;
+
+CREATE OR REPLACE FUNCTION url_verify.ingest_url () RETURNS TRIGGER AS $$
+DECLARE
+    tmp_row url_verify.url%ROWTYPE;
+BEGIN
+    SELECT * INTO tmp_row FROM url_verify.parse_url(NEW.full_url);
+
+    NEW.scheme          := tmp_row.scheme;
+    NEW.username        := tmp_row.username;
+    NEW.password        := tmp_row.password;
+    NEW.host            := tmp_row.host;
+    NEW.domain          := tmp_row.domain;
+    NEW.tld             := tmp_row.tld;
+    NEW.port            := tmp_row.port;
+    NEW.path            := tmp_row.path;
+    NEW.page            := tmp_row.page;
+    NEW.query           := tmp_row.query;
+    NEW.fragment        := tmp_row.fragment;
+
+    RETURN NEW;
+END;
+$$ LANGUAGE PLPGSQL;
+
+CREATE TRIGGER ingest_url_tgr
+    BEFORE INSERT ON url_verify.url
+    FOR EACH ROW EXECUTE PROCEDURE url_verify.ingest_url(); 
+
+CREATE OR REPLACE FUNCTION url_verify.extract_urls ( session_id INT, item_id INT ) RETURNS INT AS $$
+DECLARE
+    last_seen_tag TEXT;
+    current_tag TEXT;
+    current_sf TEXT;
+    current_url TEXT;
+    current_ord INT;
+    current_url_pos INT;
+    current_selector url_verify.url_selector%ROWTYPE;
+BEGIN
+    current_ord := 1;
+
+    FOR current_selector IN SELECT * FROM url_verify.url_selector s WHERE s.session = session_id LOOP
+        current_url_pos := 1;
+        LOOP
+            SELECT  (XPATH(current_selector.xpath || '/text()', b.marc::XML))[current_url_pos]::TEXT INTO current_url
+              FROM  biblio.record_entry b
+                    JOIN container.biblio_record_entry_bucket_item c ON (c.target_biblio_record_entry = b.id)
+              WHERE c.id = item_id;
+
+            EXIT WHEN current_url IS NULL;
+
+            SELECT  (XPATH(current_selector.xpath || '/../@tag', b.marc::XML))[current_url_pos]::TEXT INTO current_tag
+              FROM  biblio.record_entry b
+                    JOIN container.biblio_record_entry_bucket_item c ON (c.target_biblio_record_entry = b.id)
+              WHERE c.id = item_id;
+
+            IF current_tag IS NULL THEN
+                current_tag := last_seen_tag;
+            ELSE
+                last_seen_tag := current_tag;
+            END IF;
+
+            SELECT  (XPATH(current_selector.xpath || '/@code', b.marc::XML))[current_url_pos]::TEXT INTO current_sf
+              FROM  biblio.record_entry b
+                    JOIN container.biblio_record_entry_bucket_item c ON (c.target_biblio_record_entry = b.id)
+              WHERE c.id = item_id;
+
+            INSERT INTO url_verify.url (session, item, url_selector, tag, subfield, ord, full_url)
+              VALUES ( session_id, item_id, current_selector.id, current_tag, current_sf, current_ord, current_url);
+
+            current_url_pos := current_url_pos + 1;
+            current_ord := current_ord + 1;
+        END LOOP;
+    END LOOP;
+
+    RETURN current_ord - 1;
+END;
+$$ LANGUAGE PLPGSQL;
+
+
+
+-- NOTE: beware the use of bare perm IDs in the update_perm's below and in 
+-- the 950 seed data file.  Update before merge to match current perm IDs! XXX
+
+
+SELECT evergreen.upgrade_deps_block_check('0754', :eg_version);
+
+INSERT INTO permission.perm_list (id, code, description) 
+    VALUES ( 
+        543, 
+        'URL_VERIFY',
+        oils_i18n_gettext(
+            543, 
+            'Allows a user to process and verify ULSs', 
+            'ppl', 
+            'description'
+        )
+    );
+
+
+INSERT INTO permission.perm_list (id, code, description) 
+    VALUES ( 
+        544, 
+        'URL_VERIFY_UPDATE_SETTINGS',
+        oils_i18n_gettext(
+            544, 
+            'Allows a user to configure URL verification org unit settings',
+            'ppl', 
+            'description'
+        )
+    );
+
+
+INSERT INTO permission.perm_list (id, code, description) 
+    VALUES ( 
+        545, 
+        'SAVED_FILTER_DIALOG_FILTERS',
+        oils_i18n_gettext(
+            545, 
+            'Allows users to save and load sets of filters for filter dialogs, available in certain staff interfaces',
+            'ppl', 
+            'description'
+        )
+    );
+
+
+INSERT INTO config.settings_group (name, label)
+    VALUES (
+        'url_verify',
+        oils_i18n_gettext(
+            'url_verify',
+            'URL Verify',
+            'csg',
+            'label'
+        )
+    );
+
+INSERT INTO config.org_unit_setting_type
+    (name, grp, label, description, datatype, update_perm)
+    VALUES (
+        'url_verify.url_verification_delay',
+        'url_verify',
+        oils_i18n_gettext(
+            'url_verify.url_verification_delay',
+            'Number of seconds to wait between URL test attempts.',
+            'coust',
+            'label'
+        ),
+        oils_i18n_gettext(
+            'url_verify.url_verification_delay',
+            'Throttling mechanism for batch URL verification runs.  Each running process will wait this number of seconds after a URL test before performing the next.',
+            'coust',
+            'description'
+        ),
+        'integer',
+        544
+    );
+
+INSERT INTO config.org_unit_setting_type
+    (name, grp, label, description, datatype, update_perm)
+    VALUES (
+        'url_verify.url_verification_max_redirects',
+        'url_verify',
+        oils_i18n_gettext(
+            'url_verify.url_verification_max_redirects',
+            'Maximum redirect lookups',
+            'coust',
+            'label'
+        ),
+        oils_i18n_gettext(
+            'url_verify.url_verification_max_redirects',
+            'For URLs returning 3XX redirects, this is the maximum number of redirects we will follow before giving up.',
+            'coust',
+            'description'
+        ),
+        'integer',
+        544
+    );
+
+INSERT INTO config.org_unit_setting_type
+    (name, grp, label, description, datatype, update_perm)
+    VALUES (
+        'url_verify.url_verification_max_wait',
+        'url_verify',
+        oils_i18n_gettext(
+            'url_verify.url_verification_max_wait',
+            'Maximum wait time (in seconds) for a URL to lookup',
+            'coust',
+            'label'
+        ),
+        oils_i18n_gettext(
+            'url_verify.url_verification_max_wait',
+            'If we exceed the wait time, the URL is marked as a "timeout" and the system moves on to the next URL',
+            'coust',
+            'description'
+        ),
+        'integer',
+        544
+    );
+
+
+INSERT INTO config.org_unit_setting_type
+    (name, grp, label, description, datatype, update_perm)
+    VALUES (
+        'url_verify.verification_batch_size',
+        'url_verify',
+        oils_i18n_gettext(
+            'url_verify.verification_batch_size',
+            'Number of URLs to test in parallel',
+            'coust',
+            'label'
+        ),
+        oils_i18n_gettext(
+            'url_verify.verification_batch_size',
+            'URLs are tested in batches.  This number defines the size of each batch and it directly relates to the number of back-end processes performing URL verification.',
+            'coust',
+            'description'
+        ),
+        'integer',
+        544
+    );
+
+
+INSERT INTO config.filter_dialog_interface (key, description) VALUES (
+    'url_verify',
+    oils_i18n_gettext(
+        'url_verify',
+        'All Link Checker filter dialogs',
+        'cfdi',
+        'description'
+    )
+);
+
+
+INSERT INTO config.usr_setting_type (name,grp,opac_visible,label,description,datatype) VALUES (
+    'ui.grid_columns.url_verify.select_urls',
+    'gui',
+    FALSE,
+    oils_i18n_gettext(
+        'ui.grid_columns.url_verify.select_urls',
+        'Link Checker''s URL Selection interface''s saved columns',
+        'cust',
+        'label'
+    ),
+    oils_i18n_gettext(
+        'ui.grid_columns.url_verify.select_urls',
+        'Link Checker''s URL Selection interface''s saved columns',
+        'cust',
+        'description'
+    ),
+    'string'
+);
+
+INSERT INTO config.usr_setting_type (name,grp,opac_visible,label,description,datatype) VALUES (
+    'ui.grid_columns.url_verify.review_attempt',
+    'gui',
+    FALSE,
+    oils_i18n_gettext(
+        'ui.grid_columns.url_verify.review_attempt',
+        'Link Checker''s Review Attempt interface''s saved columns',
+        'cust',
+        'label'
+    ),
+    oils_i18n_gettext(
+        'ui.grid_columns.url_verify.review_attempt',
+        'Link Checker''s Review Attempt interface''s saved columns',
+        'cust',
+        'description'
+    ),
+    'string'
+);
+
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0755', :eg_version);
+
+INSERT INTO config.org_unit_setting_type
+    (name, label, description, grp, datatype, fm_class) VALUES
+(
+    'acq.upload.default.create_po',
+    oils_i18n_gettext(
+        'acq.upload.default.create_po',
+        'Upload Create PO',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.upload.default.create_po',
+        'Create a purchase order by default during ACQ file upload',
+        'coust',
+        'description'
+    ),
+   'acq',
+    'bool',
+    NULL
+), (
+    'acq.upload.default.activate_po',
+    oils_i18n_gettext(
+        'acq.upload.default.activate_po',
+        'Upload Activate PO',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.upload.default.activate_po',
+        'Activate the purchase order by default during ACQ file upload',
+        'coust',
+        'description'
+    ),
+    'acq',
+    'bool',
+    NULL
+), (
+    'acq.upload.default.provider',
+    oils_i18n_gettext(
+        'acq.upload.default.provider',
+        'Upload Default Provider',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.upload.default.provider',
+        'Default provider to use during ACQ file upload',
+        'coust',
+        'description'
+    ),
+    'acq',
+    'link',
+    'acqpro'
+), (
+    'acq.upload.default.vandelay.match_set',
+    oils_i18n_gettext(
+        'acq.upload.default.vandelay.match_set',
+        'Upload Default Match Set',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.upload.default.vandelay.match_set',
+        'Default match set to use during ACQ file upload',
+        'coust',
+        'description'
+    ),
+    'acq',
+    'link',
+    'vms'
+), (
+    'acq.upload.default.vandelay.merge_profile',
+    oils_i18n_gettext(
+        'acq.upload.default.vandelay.merge_profile',
+        'Upload Default Merge Profile',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.upload.default.vandelay.merge_profile',
+        'Default merge profile to use during ACQ file upload',
+        'coust',
+        'description'
+    ),
+    'acq',
+    'link',
+    'vmp'
+), (
+    'acq.upload.default.vandelay.import_non_matching',
+    oils_i18n_gettext(
+        'acq.upload.default.vandelay.import_non_matching',
+        'Upload Import Non Matching by Default',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.upload.default.vandelay.import_non_matching',
+        'Import non-matching records by default during ACQ file upload',
+        'coust',
+        'description'
+    ),
+    'acq',
+    'bool',
+    NULL
+), (
+    'acq.upload.default.vandelay.merge_on_exact',
+    oils_i18n_gettext(
+        'acq.upload.default.vandelay.merge_on_exact',
+        'Upload Merge on Exact Match by Default',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.upload.default.vandelay.merge_on_exact',
+        'Merge records on exact match by default during ACQ file upload',
+        'coust',
+        'description'
+    ),
+    'acq',
+    'bool',
+    NULL
+), (
+    'acq.upload.default.vandelay.merge_on_best',
+    oils_i18n_gettext(
+        'acq.upload.default.vandelay.merge_on_best',
+        'Upload Merge on Best Match by Default',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.upload.default.vandelay.merge_on_best',
+        'Merge records on best match by default during ACQ file upload',
+        'coust',
+        'description'
+    ),
+    'acq',
+    'bool',
+    NULL
+), (
+    'acq.upload.default.vandelay.merge_on_single',
+    oils_i18n_gettext(
+        'acq.upload.default.vandelay.merge_on_single',
+        'Upload Merge on Single Match by Default',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.upload.default.vandelay.merge_on_single',
+        'Merge records on single match by default during ACQ file upload',
+        'coust',
+        'description'
+    ),
+    'acq',
+    'bool',
+    NULL
+), (
+    'acq.upload.default.vandelay.quality_ratio',
+    oils_i18n_gettext(
+        'acq.upload.default.vandelay.quality_ratio',
+        'Upload Default Min. Quality Ratio',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.upload.default.vandelay.quality_ratio',
+        'Default minimum quality ratio used during ACQ file upload',
+        'coust',
+        'description'
+    ),
+    'acq',
+    'integer',
+    NULL
+), (
+    'acq.upload.default.vandelay.low_quality_fall_thru_profile',
+    oils_i18n_gettext(
+        'acq.upload.default.vandelay.low_quality_fall_thru_profile',
+        'Upload Default Insufficient Quality Fall-Thru Profile',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.upload.default.vandelay.low_quality_fall_thru_profile',
+        'Default low-quality fall through profile used during ACQ file upload',
+        'coust',
+        'description'
+    ),
+    'acq',
+    'link',
+    'vmp'
+), (
+    'acq.upload.default.vandelay.load_item_for_imported',
+    oils_i18n_gettext(
+        'acq.upload.default.vandelay.load_item_for_imported',
+        'Upload Load Items for Imported Records by Default',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.upload.default.vandelay.load_item_for_imported',
+        'Load items for imported records by default during ACQ file upload',
+        'coust',
+        'description'
+    ),
+    'acq',
+    'bool',
+    NULL
+);
+
+
+SELECT evergreen.upgrade_deps_block_check('0756', :eg_version);
+
+-- Drop some lingering old functions in search schema
+DROP FUNCTION IF EXISTS search.staged_fts(INT,INT,TEXT,INT[],INT[],TEXT[],TEXT[],TEXT[],TEXT[],TEXT[],TEXT[],TEXT[],TEXT,TEXT,TEXT,TEXT[],TEXT,REAL,TEXT,BOOL,BOOL,BOOL,INT,INT,INT);
+DROP FUNCTION IF EXISTS search.parse_search_args(TEXT);
+DROP FUNCTION IF EXISTS search.explode_array(ANYARRAY);
+DROP FUNCTION IF EXISTS search.pick_table(TEXT);
+
+-- Now drop query_parser_fts and related
+DROP FUNCTION IF EXISTS search.query_parser_fts(INT,INT,TEXT,INT[],INT[],INT,INT,INT,BOOL,BOOL,INT);
+DROP TYPE IF EXISTS search.search_result;
+DROP TYPE IF EXISTS search.search_args;
+
+
+SELECT evergreen.upgrade_deps_block_check('0757', :eg_version);
+
+SET search_path = public, pg_catalog;
+
+DO $$
+DECLARE
+lang TEXT;
+BEGIN
+FOR lang IN SELECT substring(pptsd.dictname from '(.*)_stem$') AS lang FROM pg_catalog.pg_ts_dict pptsd JOIN pg_catalog.pg_namespace ppn ON ppn.oid = pptsd.dictnamespace
+WHERE ppn.nspname = 'pg_catalog' AND pptsd.dictname LIKE '%_stem' LOOP
+RAISE NOTICE 'FOUND LANGUAGE %', lang;
+
+EXECUTE 'DROP TEXT SEARCH DICTIONARY IF EXISTS ' || lang || '_nostop CASCADE;
+CREATE TEXT SEARCH DICTIONARY ' || lang || '_nostop (TEMPLATE=pg_catalog.snowball, language=''' || lang || ''');
+COMMENT ON TEXT SEARCH DICTIONARY ' || lang || '_nostop IS ''' ||lang || ' snowball stemmer with no stopwords for ASCII words only.'';
+CREATE TEXT SEARCH CONFIGURATION ' || lang || '_nostop ( COPY = pg_catalog.' || lang || ' );
+ALTER TEXT SEARCH CONFIGURATION ' || lang || '_nostop ALTER MAPPING FOR word, hword, hword_part WITH pg_catalog.simple;
+ALTER TEXT SEARCH CONFIGURATION ' || lang || '_nostop ALTER MAPPING FOR asciiword, asciihword, hword_asciipart WITH ' || lang || '_nostop;';
+
+END LOOP;
+END;
+$$;
+CREATE TEXT SEARCH CONFIGURATION keyword ( COPY = english_nostop );
+CREATE TEXT SEARCH CONFIGURATION "default" ( COPY = english_nostop );
+
+SET search_path = evergreen, public, pg_catalog;
+
+ALTER TABLE config.metabib_class
+    ADD COLUMN a_weight NUMERIC  DEFAULT 1.0 NOT NULL,
+    ADD COLUMN b_weight NUMERIC  DEFAULT 0.4 NOT NULL,
+    ADD COLUMN c_weight NUMERIC  DEFAULT 0.2 NOT NULL,
+    ADD COLUMN d_weight NUMERIC  DEFAULT 0.1 NOT NULL;
+
+CREATE TABLE config.ts_config_list (
+    id      TEXT PRIMARY KEY,
+    name    TEXT NOT NULL
+);
+COMMENT ON TABLE config.ts_config_list IS $$
+Full Text Configs
+
+A list of full text configs with names and descriptions.
+$$;
+
+CREATE TABLE config.metabib_class_ts_map (
+    id              SERIAL PRIMARY KEY,
+    field_class     TEXT NOT NULL REFERENCES config.metabib_class (name),
+    ts_config       TEXT NOT NULL REFERENCES config.ts_config_list (id),
+    active          BOOL NOT NULL DEFAULT TRUE,
+    index_weight    CHAR(1) NOT NULL DEFAULT 'C' CHECK (index_weight IN ('A','B','C','D')),
+    index_lang      TEXT NULL,
+    search_lang     TEXT NULL,
+    always          BOOL NOT NULL DEFAULT true
+);
+COMMENT ON TABLE config.metabib_class_ts_map IS $$
+Text Search Configs for metabib class indexing
+
+This table contains text search config definitions for
+storing index_vector values.
+$$;
+
+CREATE TABLE config.metabib_field_ts_map (
+    id              SERIAL PRIMARY KEY,
+    metabib_field   INT NOT NULL REFERENCES config.metabib_field (id),
+    ts_config       TEXT NOT NULL REFERENCES config.ts_config_list (id),
+    active          BOOL NOT NULL DEFAULT TRUE,
+    index_weight    CHAR(1) NOT NULL DEFAULT 'C' CHECK (index_weight IN ('A','B','C','D')),
+    index_lang      TEXT NULL,
+    search_lang     TEXT NULL
+);
+COMMENT ON TABLE config.metabib_field_ts_map IS $$
+Text Search Configs for metabib field indexing
+
+This table contains text search config definitions for
+storing index_vector values.
+$$;
+
+CREATE TABLE metabib.combined_identifier_field_entry (
+    record          BIGINT      NOT NULL,
+    metabib_field   INT         NULL,
+    index_vector    tsvector    NOT NULL
+);
+CREATE UNIQUE INDEX metabib_combined_identifier_field_entry_fakepk_idx ON metabib.combined_identifier_field_entry (record, COALESCE(metabib_field::TEXT,''));
+CREATE INDEX metabib_combined_identifier_field_entry_index_vector_idx ON metabib.combined_identifier_field_entry USING GIST (index_vector);
+CREATE INDEX metabib_combined_identifier_field_source_idx ON metabib.combined_identifier_field_entry (metabib_field);
+
+CREATE TABLE metabib.combined_title_field_entry (
+	record		BIGINT		NOT NULL,
+	metabib_field		INT		NULL,
+	index_vector	tsvector	NOT NULL
+);
+CREATE UNIQUE INDEX metabib_combined_title_field_entry_fakepk_idx ON metabib.combined_title_field_entry (record, COALESCE(metabib_field::TEXT,''));
+CREATE INDEX metabib_combined_title_field_entry_index_vector_idx ON metabib.combined_title_field_entry USING GIST (index_vector);
+CREATE INDEX metabib_combined_title_field_source_idx ON metabib.combined_title_field_entry (metabib_field);
+
+CREATE TABLE metabib.combined_author_field_entry (
+	record		BIGINT		NOT NULL,
+	metabib_field		INT		NULL,
+	index_vector	tsvector	NOT NULL
+);
+CREATE UNIQUE INDEX metabib_combined_author_field_entry_fakepk_idx ON metabib.combined_author_field_entry (record, COALESCE(metabib_field::TEXT,''));
+CREATE INDEX metabib_combined_author_field_entry_index_vector_idx ON metabib.combined_author_field_entry USING GIST (index_vector);
+CREATE INDEX metabib_combined_author_field_source_idx ON metabib.combined_author_field_entry (metabib_field);
+
+CREATE TABLE metabib.combined_subject_field_entry (
+	record		BIGINT		NOT NULL,
+	metabib_field		INT		NULL,
+	index_vector	tsvector	NOT NULL
+);
+CREATE UNIQUE INDEX metabib_combined_subject_field_entry_fakepk_idx ON metabib.combined_subject_field_entry (record, COALESCE(metabib_field::TEXT,''));
+CREATE INDEX metabib_combined_subject_field_entry_index_vector_idx ON metabib.combined_subject_field_entry USING GIST (index_vector);
+CREATE INDEX metabib_combined_subject_field_source_idx ON metabib.combined_subject_field_entry (metabib_field);
+
+CREATE TABLE metabib.combined_keyword_field_entry (
+	record		BIGINT		NOT NULL,
+	metabib_field		INT		NULL,
+	index_vector	tsvector	NOT NULL
+);
+CREATE UNIQUE INDEX metabib_combined_keyword_field_entry_fakepk_idx ON metabib.combined_keyword_field_entry (record, COALESCE(metabib_field::TEXT,''));
+CREATE INDEX metabib_combined_keyword_field_entry_index_vector_idx ON metabib.combined_keyword_field_entry USING GIST (index_vector);
+CREATE INDEX metabib_combined_keyword_field_source_idx ON metabib.combined_keyword_field_entry (metabib_field);
+
+CREATE TABLE metabib.combined_series_field_entry (
+	record		BIGINT		NOT NULL,
+	metabib_field		INT		NULL,
+	index_vector	tsvector	NOT NULL
+);
+CREATE UNIQUE INDEX metabib_combined_series_field_entry_fakepk_idx ON metabib.combined_series_field_entry (record, COALESCE(metabib_field::TEXT,''));
+CREATE INDEX metabib_combined_series_field_entry_index_vector_idx ON metabib.combined_series_field_entry USING GIST (index_vector);
+CREATE INDEX metabib_combined_series_field_source_idx ON metabib.combined_series_field_entry (metabib_field);
+
+CREATE OR REPLACE FUNCTION metabib.update_combined_index_vectors(bib_id BIGINT) RETURNS VOID AS $func$
+BEGIN
+    DELETE FROM metabib.combined_keyword_field_entry WHERE record = bib_id;
+    INSERT INTO metabib.combined_keyword_field_entry(record, metabib_field, index_vector)
+        SELECT bib_id, field, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector)
+        FROM metabib.keyword_field_entry WHERE source = bib_id GROUP BY field;
+    INSERT INTO metabib.combined_keyword_field_entry(record, metabib_field, index_vector)
+        SELECT bib_id, NULL, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector)
+        FROM metabib.keyword_field_entry WHERE source = bib_id;
+
+    DELETE FROM metabib.combined_title_field_entry WHERE record = bib_id;
+    INSERT INTO metabib.combined_title_field_entry(record, metabib_field, index_vector)
+        SELECT bib_id, field, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector)
+        FROM metabib.title_field_entry WHERE source = bib_id GROUP BY field;
+    INSERT INTO metabib.combined_title_field_entry(record, metabib_field, index_vector)
+        SELECT bib_id, NULL, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector)
+        FROM metabib.title_field_entry WHERE source = bib_id;
+
+    DELETE FROM metabib.combined_author_field_entry WHERE record = bib_id;
+    INSERT INTO metabib.combined_author_field_entry(record, metabib_field, index_vector)
+        SELECT bib_id, field, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector)
+        FROM metabib.author_field_entry WHERE source = bib_id GROUP BY field;
+    INSERT INTO metabib.combined_author_field_entry(record, metabib_field, index_vector)
+        SELECT bib_id, NULL, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector)
+        FROM metabib.author_field_entry WHERE source = bib_id;
+
+    DELETE FROM metabib.combined_subject_field_entry WHERE record = bib_id;
+    INSERT INTO metabib.combined_subject_field_entry(record, metabib_field, index_vector)
+        SELECT bib_id, field, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector)
+        FROM metabib.subject_field_entry WHERE source = bib_id GROUP BY field;
+    INSERT INTO metabib.combined_subject_field_entry(record, metabib_field, index_vector)
+        SELECT bib_id, NULL, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector)
+        FROM metabib.subject_field_entry WHERE source = bib_id;
+
+    DELETE FROM metabib.combined_series_field_entry WHERE record = bib_id;
+    INSERT INTO metabib.combined_series_field_entry(record, metabib_field, index_vector)
+        SELECT bib_id, field, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector)
+        FROM metabib.series_field_entry WHERE source = bib_id GROUP BY field;
+    INSERT INTO metabib.combined_series_field_entry(record, metabib_field, index_vector)
+        SELECT bib_id, NULL, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector)
+        FROM metabib.series_field_entry WHERE source = bib_id;
+
+    DELETE FROM metabib.combined_identifier_field_entry WHERE record = bib_id;
+    INSERT INTO metabib.combined_identifier_field_entry(record, metabib_field, index_vector)
+        SELECT bib_id, field, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector)
+        FROM metabib.identifier_field_entry WHERE source = bib_id GROUP BY field;
+    INSERT INTO metabib.combined_identifier_field_entry(record, metabib_field, index_vector)
+        SELECT bib_id, NULL, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector)
+        FROM metabib.identifier_field_entry WHERE source = bib_id;
+
+END;
+$func$ LANGUAGE PLPGSQL;
+
+CREATE OR REPLACE FUNCTION metabib.reingest_metabib_field_entries( bib_id BIGINT, skip_facet BOOL DEFAULT FALSE, skip_browse BOOL DEFAULT FALSE, skip_search BOOL DEFAULT FALSE ) RETURNS VOID AS $func$
+DECLARE
+    fclass          RECORD;
+    ind_data        metabib.field_entry_template%ROWTYPE;
+    mbe_row         metabib.browse_entry%ROWTYPE;
+    mbe_id          BIGINT;
+BEGIN
+    PERFORM * FROM config.internal_flag WHERE name = 'ingest.assume_inserts_only' AND enabled;
+    IF NOT FOUND THEN
+        IF NOT skip_search THEN
+            FOR fclass IN SELECT * FROM config.metabib_class LOOP
+                -- RAISE NOTICE 'Emptying out %', fclass.name;
+                EXECUTE $$DELETE FROM metabib.$$ || fclass.name || $$_field_entry WHERE source = $$ || bib_id;
+            END LOOP;
+        END IF;
+        IF NOT skip_facet THEN
+            DELETE FROM metabib.facet_entry WHERE source = bib_id;
+        END IF;
+        IF NOT skip_browse THEN
+            DELETE FROM metabib.browse_entry_def_map WHERE source = bib_id;
+        END IF;
+    END IF;
+
+    FOR ind_data IN SELECT * FROM biblio.extract_metabib_field_entry( bib_id ) LOOP
+        IF ind_data.field < 0 THEN
+            ind_data.field = -1 * ind_data.field;
+        END IF;
+
+        IF ind_data.facet_field AND NOT skip_facet THEN
+            INSERT INTO metabib.facet_entry (field, source, value)
+                VALUES (ind_data.field, ind_data.source, ind_data.value);
+        END IF;
+
+        IF ind_data.browse_field AND NOT skip_browse THEN
+            -- A caveat about this SELECT: this should take care of replacing
+            -- old mbe rows when data changes, but not if normalization (by
+            -- which I mean specifically the output of
+            -- evergreen.oils_tsearch2()) changes.  It may or may not be
+            -- expensive to add a comparison of index_vector to index_vector
+            -- to the WHERE clause below.
+            SELECT INTO mbe_row * FROM metabib.browse_entry WHERE value = ind_data.value;
+            IF FOUND THEN
+                mbe_id := mbe_row.id;
+            ELSE
+                INSERT INTO metabib.browse_entry (value) VALUES
+                    (metabib.browse_normalize(ind_data.value, ind_data.field));
+                mbe_id := CURRVAL('metabib.browse_entry_id_seq'::REGCLASS);
+            END IF;
+
+            INSERT INTO metabib.browse_entry_def_map (entry, def, source)
+                VALUES (mbe_id, ind_data.field, ind_data.source);
+        END IF;
+
+        IF ind_data.search_field AND NOT skip_search THEN
+            EXECUTE $$
+                INSERT INTO metabib.$$ || ind_data.field_class || $$_field_entry (field, source, value)
+                    VALUES ($$ ||
+                        quote_literal(ind_data.field) || $$, $$ ||
+                        quote_literal(ind_data.source) || $$, $$ ||
+                        quote_literal(ind_data.value) ||
+                    $$);$$;
+        END IF;
+
+    END LOOP;
+
+    IF NOT skip_search THEN
+        PERFORM metabib.update_combined_index_vectors(bib_id);
+    END IF;
+
+    RETURN;
+END;
+$func$ LANGUAGE PLPGSQL;
+
+DROP FUNCTION IF EXISTS evergreen.oils_tsearch2() CASCADE;
+DROP FUNCTION IF EXISTS public.oils_tsearch2() CASCADE;
+
+CREATE OR REPLACE FUNCTION public.oils_tsearch2 () RETURNS TRIGGER AS $$
+DECLARE
+    normalizer      RECORD;
+    value           TEXT := '';
+    temp_vector     TEXT := '';
+    ts_rec          RECORD;
+    cur_weight      "char";
+BEGIN
+    value := NEW.value;
+    NEW.index_vector = ''::tsvector;
+
+    IF TG_TABLE_NAME::TEXT ~ 'field_entry$' THEN
+        FOR normalizer IN
+            SELECT  n.func AS func,
+                    n.param_count AS param_count,
+                    m.params AS params
+              FROM  config.index_normalizer n
+                    JOIN config.metabib_field_index_norm_map m ON (m.norm = n.id)
+              WHERE field = NEW.field
+              ORDER BY m.pos LOOP
+                EXECUTE 'SELECT ' || normalizer.func || '(' ||
+                    quote_literal( value ) ||
+                    CASE
+                        WHEN normalizer.param_count > 0
+                            THEN ',' || REPLACE(REPLACE(BTRIM(normalizer.params,'[]'),E'\'',E'\\\''),E'"',E'\'')
+                            ELSE ''
+                        END ||
+                    ')' INTO value;
+
+        END LOOP;
+        NEW.value = value;
+    END IF;
+
+    IF TG_TABLE_NAME::TEXT ~ 'browse_entry$' THEN
+        value :=  ARRAY_TO_STRING(
+            evergreen.regexp_split_to_array(value, E'\\W+'), ' '
+        );
+        value := public.search_normalize(value);
+        NEW.index_vector = to_tsvector(TG_ARGV[0]::regconfig, value);
+    ELSIF TG_TABLE_NAME::TEXT ~ 'field_entry$' THEN
+        FOR ts_rec IN
+            SELECT ts_config, index_weight
+            FROM config.metabib_class_ts_map
+            WHERE field_class = TG_ARGV[0]
+                AND index_lang IS NULL OR EXISTS (SELECT 1 FROM metabib.record_attr WHERE id = NEW.source AND index_lang IN(attrs->'item_lang',attrs->'language'))
+                AND always OR NOT EXISTS (SELECT 1 FROM config.metabib_field_ts_map WHERE metabib_field = NEW.field)
+            UNION
+            SELECT ts_config, index_weight
+            FROM config.metabib_field_ts_map
+            WHERE metabib_field = NEW.field
+               AND index_lang IS NULL OR EXISTS (SELECT 1 FROM metabib.record_attr WHERE id = NEW.source AND index_lang IN(attrs->'item_lang',attrs->'language'))
+            ORDER BY index_weight ASC
+        LOOP
+            IF cur_weight IS NOT NULL AND cur_weight != ts_rec.index_weight THEN
+                NEW.index_vector = NEW.index_vector || setweight(temp_vector::tsvector,cur_weight);
+                temp_vector = '';
+            END IF;
+            cur_weight = ts_rec.index_weight;
+            SELECT INTO temp_vector temp_vector || ' ' || to_tsvector(ts_rec.ts_config::regconfig, value)::TEXT;
+        END LOOP;
+        NEW.index_vector = NEW.index_vector || setweight(temp_vector::tsvector,cur_weight);
+    ELSE
+        NEW.index_vector = to_tsvector(TG_ARGV[0]::regconfig, value);
+    END IF;
+
+    RETURN NEW;
+END;
+$$ LANGUAGE PLPGSQL;
+
+CREATE TRIGGER authority_full_rec_fti_trigger
+    BEFORE UPDATE OR INSERT ON authority.full_rec
+    FOR EACH ROW EXECUTE PROCEDURE oils_tsearch2('keyword');
+
+CREATE TRIGGER authority_simple_heading_fti_trigger
+    BEFORE UPDATE OR INSERT ON authority.simple_heading
+    FOR EACH ROW EXECUTE PROCEDURE oils_tsearch2('keyword');
+
+CREATE TRIGGER metabib_identifier_field_entry_fti_trigger
+    BEFORE UPDATE OR INSERT ON metabib.identifier_field_entry
+    FOR EACH ROW EXECUTE PROCEDURE oils_tsearch2('identifier');
+
+CREATE TRIGGER metabib_title_field_entry_fti_trigger
+    BEFORE UPDATE OR INSERT ON metabib.title_field_entry
+    FOR EACH ROW EXECUTE PROCEDURE oils_tsearch2('title');
+
+CREATE TRIGGER metabib_author_field_entry_fti_trigger
+    BEFORE UPDATE OR INSERT ON metabib.author_field_entry
+    FOR EACH ROW EXECUTE PROCEDURE oils_tsearch2('author');
+
+CREATE TRIGGER metabib_subject_field_entry_fti_trigger
+    BEFORE UPDATE OR INSERT ON metabib.subject_field_entry
+    FOR EACH ROW EXECUTE PROCEDURE oils_tsearch2('subject');
+
+CREATE TRIGGER metabib_keyword_field_entry_fti_trigger
+    BEFORE UPDATE OR INSERT ON metabib.keyword_field_entry
+    FOR EACH ROW EXECUTE PROCEDURE oils_tsearch2('keyword');
+
+CREATE TRIGGER metabib_series_field_entry_fti_trigger
+    BEFORE UPDATE OR INSERT ON metabib.series_field_entry
+    FOR EACH ROW EXECUTE PROCEDURE oils_tsearch2('series');
+
+CREATE TRIGGER metabib_browse_entry_fti_trigger
+    BEFORE INSERT OR UPDATE ON metabib.browse_entry
+    FOR EACH ROW EXECUTE PROCEDURE oils_tsearch2('keyword');
+
+CREATE TRIGGER metabib_full_rec_fti_trigger
+    BEFORE UPDATE OR INSERT ON metabib.real_full_rec
+    FOR EACH ROW EXECUTE PROCEDURE oils_tsearch2('default');
+
+INSERT INTO config.ts_config_list(id, name) VALUES
+    ('simple','Non-Stemmed Simple'),
+    ('danish_nostop','Danish Stemmed'),
+    ('dutch_nostop','Dutch Stemmed'),
+    ('english_nostop','English Stemmed'),
+    ('finnish_nostop','Finnish Stemmed'),
+    ('french_nostop','French Stemmed'),
+    ('german_nostop','German Stemmed'),
+    ('hungarian_nostop','Hungarian Stemmed'),
+    ('italian_nostop','Italian Stemmed'),
+    ('norwegian_nostop','Norwegian Stemmed'),
+    ('portuguese_nostop','Portuguese Stemmed'),
+    ('romanian_nostop','Romanian Stemmed'),
+    ('russian_nostop','Russian Stemmed'),
+    ('spanish_nostop','Spanish Stemmed'),
+    ('swedish_nostop','Swedish Stemmed'),
+    ('turkish_nostop','Turkish Stemmed');
+
+INSERT INTO config.metabib_class_ts_map(field_class, ts_config, index_weight, always) VALUES
+    ('keyword','simple','A',true),
+    ('keyword','english_nostop','C',true),
+    ('title','simple','A',true),
+    ('title','english_nostop','C',true),
+    ('author','simple','A',true),
+    ('author','english_nostop','C',true),
+    ('series','simple','A',true),
+    ('series','english_nostop','C',true),
+    ('subject','simple','A',true),
+    ('subject','english_nostop','C',true),
+    ('identifier','simple','A',true);
+
+CREATE OR REPLACE FUNCTION evergreen.rel_bump(terms TEXT[], value TEXT, bumps TEXT[], mults NUMERIC[]) RETURNS NUMERIC AS
+$BODY$
+use strict;
+my ($terms,$value,$bumps,$mults) = @_;
+
+my $retval = 1;
+
+for (my $id = 0; $id < @$bumps; $id++) {
+        if ($bumps->[$id] eq 'first_word') {
+                $retval *= $mults->[$id] if ($value =~ /^$terms->[0]/);
+        } elsif ($bumps->[$id] eq 'full_match') {
+                my $fullmatch = join(' ', @$terms);
+                $retval *= $mults->[$id] if ($value =~ /^$fullmatch$/);
+        } elsif ($bumps->[$id] eq 'word_order') {
+                my $wordorder = join('.*', @$terms);
+                $retval *= $mults->[$id] if ($value =~ /$wordorder/);
+        }
+}
+return $retval;
+$BODY$ LANGUAGE plperlu IMMUTABLE STRICT COST 100;
+
+/* ** This happens in the supplemental script **
+
+UPDATE metabib.identifier_field_entry set value = value;
+UPDATE metabib.title_field_entry set value = value;
+UPDATE metabib.author_field_entry set value = value;
+UPDATE metabib.subject_field_entry set value = value;
+UPDATE metabib.keyword_field_entry set value = value;
+UPDATE metabib.series_field_entry set value = value;
+
+SELECT metabib.update_combined_index_vectors(id)
+    FROM biblio.record_entry
+    WHERE NOT deleted;
+
+*/
+
+SELECT evergreen.upgrade_deps_block_check('0758', :eg_version);
+
+INSERT INTO config.settings_group (name, label) VALUES
+    ('vandelay', 'Vandelay');
+
+INSERT INTO config.org_unit_setting_type (name, grp, label, datatype, fm_class) VALUES
+    ('vandelay.default_match_set', 'vandelay', 'Default Record Match Set', 'link', 'vms');
+
+
+SELECT evergreen.upgrade_deps_block_check('0759', :eg_version);
+
+CREATE TABLE actor.org_unit_proximity_adjustment (
+    id                  SERIAL   PRIMARY KEY,
+    item_circ_lib       INT         REFERENCES actor.org_unit (id),
+    item_owning_lib     INT         REFERENCES actor.org_unit (id),
+    copy_location       INT         REFERENCES asset.copy_location (id),
+    hold_pickup_lib     INT         REFERENCES actor.org_unit (id),
+    hold_request_lib    INT         REFERENCES actor.org_unit (id),
+    pos                 INT         NOT NULL DEFAULT 0,
+    absolute_adjustment BOOL        NOT NULL DEFAULT FALSE,
+    prox_adjustment     NUMERIC,
+    circ_mod            TEXT,       -- REFERENCES config.circ_modifier (code),
+    CONSTRAINT prox_adj_criterium CHECK (COALESCE(item_circ_lib::TEXT,item_owning_lib::TEXT,copy_location::TEXT,hold_pickup_lib::TEXT,hold_request_lib::TEXT,circ_mod) IS NOT NULL)
+);
+CREATE UNIQUE INDEX prox_adj_once_idx ON actor.org_unit_proximity_adjustment (item_circ_lib,item_owning_lib,copy_location,hold_pickup_lib,hold_request_lib,circ_mod);
+CREATE INDEX prox_adj_circ_lib_idx ON actor.org_unit_proximity_adjustment (item_circ_lib);
+CREATE INDEX prox_adj_owning_lib_idx ON actor.org_unit_proximity_adjustment (item_owning_lib);
+CREATE INDEX prox_adj_copy_location_idx ON actor.org_unit_proximity_adjustment (copy_location);
+CREATE INDEX prox_adj_pickup_lib_idx ON actor.org_unit_proximity_adjustment (hold_pickup_lib);
+CREATE INDEX prox_adj_request_lib_idx ON actor.org_unit_proximity_adjustment (hold_request_lib);
+CREATE INDEX prox_adj_circ_mod_idx ON actor.org_unit_proximity_adjustment (circ_mod);
+
+CREATE OR REPLACE FUNCTION actor.org_unit_ancestors_distance( INT ) RETURNS TABLE (id INT, distance INT) AS $$
+    WITH RECURSIVE org_unit_ancestors_distance(id, distance) AS (
+            SELECT $1, 0
+        UNION
+            SELECT ou.parent_ou, ouad.distance+1
+            FROM actor.org_unit ou JOIN org_unit_ancestors_distance ouad ON (ou.id = ouad.id)
+            WHERE ou.parent_ou IS NOT NULL
+    )
+    SELECT * FROM org_unit_ancestors_distance;
+$$ LANGUAGE SQL STABLE ROWS 1;
+
+CREATE OR REPLACE FUNCTION action.hold_copy_calculated_proximity(
+    ahr_id INT,
+    acp_id BIGINT,
+    copy_context_ou INT DEFAULT NULL
+    -- TODO maybe? hold_context_ou INT DEFAULT NULL.  This would optionally
+    -- support an "ahprox" measurement: adjust prox between copy circ lib and
+    -- hold request lib, but I'm unsure whether to use this theoretical
+    -- argument only in the baseline calculation or later in the other
+    -- queries in this function.
+) RETURNS NUMERIC AS $f$
+DECLARE
+    aoupa           actor.org_unit_proximity_adjustment%ROWTYPE;
+    ahr             action.hold_request%ROWTYPE;
+    acp             asset.copy%ROWTYPE;
+    acn             asset.call_number%ROWTYPE;
+    acl             asset.copy_location%ROWTYPE;
+    baseline_prox   NUMERIC;
+
+    icl_list        INT[];
+    iol_list        INT[];
+    isl_list        INT[];
+    hpl_list        INT[];
+    hrl_list        INT[];
+
+BEGIN
+
+    SELECT * INTO ahr FROM action.hold_request WHERE id = ahr_id;
+    SELECT * INTO acp FROM asset.copy WHERE id = acp_id;
+    SELECT * INTO acn FROM asset.call_number WHERE id = acp.call_number;
+    SELECT * INTO acl FROM asset.copy_location WHERE id = acp.location;
+
+    IF copy_context_ou IS NULL THEN
+        copy_context_ou := acp.circ_lib;
+    END IF;
+
+    -- First, gather the baseline proximity of "here" to pickup lib
+    SELECT prox INTO baseline_prox FROM actor.org_unit_proximity WHERE from_org = copy_context_ou AND to_org = ahr.pickup_lib;
+
+    -- Find any absolute adjustments, and set the baseline prox to that
+    SELECT  adj.* INTO aoupa
+      FROM  actor.org_unit_proximity_adjustment adj
+            LEFT JOIN actor.org_unit_ancestors_distance(copy_context_ou) acp_cl ON (acp_cl.id = adj.item_circ_lib)
+            LEFT JOIN actor.org_unit_ancestors_distance(acn.owning_lib) acn_ol ON (acn_ol.id = adj.item_owning_lib)
+            LEFT JOIN actor.org_unit_ancestors_distance(acl.owning_lib) acl_ol ON (acn_ol.id = adj.copy_location)
+            LEFT JOIN actor.org_unit_ancestors_distance(ahr.pickup_lib) ahr_pl ON (ahr_pl.id = adj.hold_pickup_lib)
+            LEFT JOIN actor.org_unit_ancestors_distance(ahr.request_lib) ahr_rl ON (ahr_rl.id = adj.hold_request_lib)
+      WHERE (adj.circ_mod IS NULL OR adj.circ_mod = acp.circ_modifier) AND
+        absolute_adjustment AND
+        COALESCE(acp_cl.id, acn_ol.id, acl_ol.id, ahr_pl.id, ahr_rl.id) IS NOT NULL
+      ORDER BY
+            COALESCE(acp_cl.distance,999)
+                + COALESCE(acn_ol.distance,999)
+                + COALESCE(acl_ol.distance,999)
+                + COALESCE(ahr_pl.distance,999)
+                + COALESCE(ahr_rl.distance,999),
+            adj.pos
+      LIMIT 1;
+
+    IF FOUND THEN
+        baseline_prox := aoupa.prox_adjustment;
+    END IF;
+
+    -- Now find any relative adjustments, and change the baseline prox based on them
+    FOR aoupa IN
+        SELECT  adj.* 
+          FROM  actor.org_unit_proximity_adjustment adj
+                LEFT JOIN actor.org_unit_ancestors_distance(copy_context_ou) acp_cl ON (acp_cl.id = adj.item_circ_lib)
+                LEFT JOIN actor.org_unit_ancestors_distance(acn.owning_lib) acn_ol ON (acn_ol.id = adj.item_owning_lib)
+                LEFT JOIN actor.org_unit_ancestors_distance(acl.owning_lib) acl_ol ON (acn_ol.id = adj.copy_location)
+                LEFT JOIN actor.org_unit_ancestors_distance(ahr.pickup_lib) ahr_pl ON (ahr_pl.id = adj.hold_pickup_lib)
+                LEFT JOIN actor.org_unit_ancestors_distance(ahr.request_lib) ahr_rl ON (ahr_rl.id = adj.hold_request_lib)
+          WHERE (adj.circ_mod IS NULL OR adj.circ_mod = acp.circ_modifier) AND
+            NOT absolute_adjustment AND
+            COALESCE(acp_cl.id, acn_ol.id, acl_ol.id, ahr_pl.id, ahr_rl.id) IS NOT NULL
+    LOOP
+        baseline_prox := baseline_prox + aoupa.prox_adjustment;
+    END LOOP;
+
+    RETURN baseline_prox;
+END;
+$f$ LANGUAGE PLPGSQL;
+
+ALTER TABLE actor.org_unit_proximity_adjustment
+    ADD CONSTRAINT actor_org_unit_proximity_adjustment_circ_mod_fkey
+    FOREIGN KEY (circ_mod) REFERENCES config.circ_modifier (code)
+    DEFERRABLE INITIALLY DEFERRED;
+
+ALTER TABLE action.hold_copy_map ADD COLUMN proximity NUMERIC;
+
+
+SELECT evergreen.upgrade_deps_block_check('0760', :eg_version);
+
+CREATE TABLE config.best_hold_order(
+    id          SERIAL      PRIMARY KEY,    -- (metadata)
+    name        TEXT        UNIQUE,   -- i18n (metadata)
+    pprox       INT, -- copy capture <-> pickup lib prox
+    hprox       INT, -- copy circ lib <-> request lib prox
+    aprox       INT, -- copy circ lib <-> pickup lib ADJUSTED prox on ahcm
+    approx      INT, -- copy capture <-> pickup lib ADJUSTED prox from function
+    priority    INT, -- group hold priority
+    cut         INT, -- cut-in-line
+    depth       INT, -- selection depth
+    htime       INT, -- time since last home-lib circ exceeds org-unit setting
+    rtime       INT, -- request time
+    shtime      INT  -- time since copy last trip home exceeds org-unit setting
+);
+
+-- At least one of these columns must contain a non-null value
+ALTER TABLE config.best_hold_order ADD CHECK ((
+    pprox IS NOT NULL OR
+    hprox IS NOT NULL OR
+    aprox IS NOT NULL OR
+    priority IS NOT NULL OR
+    cut IS NOT NULL OR
+    depth IS NOT NULL OR
+    htime IS NOT NULL OR
+    rtime IS NOT NULL
+));
+
+INSERT INTO config.best_hold_order (
+    name,
+    pprox, aprox, priority, cut, depth, rtime, htime, hprox
+) VALUES (
+    'Traditional',
+    1, 2, 3, 4, 5, 6, 7, 8
+);
+
+INSERT INTO config.best_hold_order (
+    name,
+    hprox, pprox, aprox, priority, cut, depth, rtime, htime
+) VALUES (
+    'Traditional with Holds-always-go-home',
+    1, 2, 3, 4, 5, 6, 7, 8
+);
+
+INSERT INTO config.best_hold_order (
+    name,
+    htime, hprox, pprox, aprox, priority, cut, depth, rtime
+) VALUES (
+    'Traditional with Holds-go-home',
+    1, 2, 3, 4, 5, 6, 7, 8
+);
+
+INSERT INTO config.best_hold_order (
+    name,
+    priority, cut, rtime, depth, pprox, hprox, aprox, htime
+) VALUES (
+    'FIFO',
+    1, 2, 3, 4, 5, 6, 7, 8
+);
+
+INSERT INTO config.best_hold_order (
+    name,
+    hprox, priority, cut, rtime, depth, pprox, aprox, htime
+) VALUES (
+    'FIFO with Holds-always-go-home',
+    1, 2, 3, 4, 5, 6, 7, 8
+);
+
+INSERT INTO config.best_hold_order (
+    name,
+    htime, priority, cut, rtime, depth, pprox, aprox, hprox
+) VALUES (
+    'FIFO with Holds-go-home',
+    1, 2, 3, 4, 5, 6, 7, 8
+);
+
+INSERT INTO permission.perm_list (
+    id, code, description
+) VALUES (
+    546,
+    'ADMIN_HOLD_CAPTURE_SORT',
+    oils_i18n_gettext(
+        546,
+        'Allows a user to make changes to best-hold selection sort order',
+        'ppl',
+        'description'
+    )
+);
+
+INSERT INTO config.org_unit_setting_type (
+    name, label, description, datatype, fm_class, update_perm, grp
+) VALUES (
+    'circ.hold_capture_order',
+    oils_i18n_gettext(
+        'circ.hold_capture_order',
+        'Best-hold selection sort order',
+        'coust',
+        'label'
+    ),
+    oils_i18n_gettext(
+        'circ.hold_capture_order',
+        'Defines the sort order of holds when selecting a hold to fill using a given copy at capture time',
+        'coust',
+        'description'
+    ),
+    'link',
+    'cbho',
+    546,
+    'holds'
+);
+
+INSERT INTO config.org_unit_setting_type (
+    name, label, description, datatype, update_perm, grp
+) VALUES (
+    'circ.hold_go_home_interval',
+    oils_i18n_gettext(
+        'circ.hold_go_home_interval',
+        'Max foreign-circulation time',
+        'coust',
+        'label'
+    ),
+    oils_i18n_gettext(
+        'circ.hold_go_home_interval',
+        'Time a copy can spend circulating away from its circ lib before returning there to fill a hold (if one exists there)',
+        'coust',
+        'description'
+    ),
+    'interval',
+    546,
+    'holds'
+);
+
+INSERT INTO actor.org_unit_setting (
+    org_unit, name, value
+) VALUES (
+    (SELECT id FROM actor.org_unit WHERE parent_ou IS NULL),
+    'circ.hold_go_home_interval',
+    '"6 months"'
+);
+
+UPDATE actor.org_unit_setting SET
+    name = 'circ.hold_capture_order',
+    value = (SELECT id FROM config.best_hold_order WHERE name = 'FIFO')
+WHERE
+    name = 'circ.holds_fifo' AND value ILIKE '%true%';
+
+
+SELECT evergreen.upgrade_deps_block_check('0762', :eg_version);
+
+INSERT INTO config.internal_flag (name) VALUES ('ingest.skip_browse_indexing');
+INSERT INTO config.internal_flag (name) VALUES ('ingest.skip_search_indexing');
+INSERT INTO config.internal_flag (name) VALUES ('ingest.skip_facet_indexing');
+
+CREATE OR REPLACE FUNCTION metabib.reingest_metabib_field_entries( bib_id BIGINT, skip_facet BOOL DEFAULT FALSE, skip_browse BOOL DEFAULT FALSE, skip_search BOOL DEFAULT FALSE ) RETURNS VOID AS $func$
+DECLARE
+    fclass          RECORD;
+    ind_data        metabib.field_entry_template%ROWTYPE;
+    mbe_row         metabib.browse_entry%ROWTYPE;
+    mbe_id          BIGINT;
+    b_skip_facet    BOOL;
+    b_skip_browse   BOOL;
+    b_skip_search   BOOL;
+BEGIN
+
+    SELECT COALESCE(NULLIF(skip_facet, FALSE), EXISTS (SELECT enabled FROM config.internal_flag WHERE name =  'ingest.skip_facet_indexing' AND enabled)) INTO b_skip_facet;
+    SELECT COALESCE(NULLIF(skip_browse, FALSE), EXISTS (SELECT enabled FROM config.internal_flag WHERE name =  'ingest.skip_browse_indexing' AND enabled)) INTO b_skip_browse;
+    SELECT COALESCE(NULLIF(skip_search, FALSE), EXISTS (SELECT enabled FROM config.internal_flag WHERE name =  'ingest.skip_search_indexing' AND enabled)) INTO b_skip_search;
+
+    PERFORM * FROM config.internal_flag WHERE name = 'ingest.assume_inserts_only' AND enabled;
+    IF NOT FOUND THEN
+        IF NOT b_skip_search THEN
+            FOR fclass IN SELECT * FROM config.metabib_class LOOP
+                -- RAISE NOTICE 'Emptying out %', fclass.name;
+                EXECUTE $$DELETE FROM metabib.$$ || fclass.name || $$_field_entry WHERE source = $$ || bib_id;
+            END LOOP;
+        END IF;
+        IF NOT b_skip_facet THEN
+            DELETE FROM metabib.facet_entry WHERE source = bib_id;
+        END IF;
+        IF NOT b_skip_browse THEN
+            DELETE FROM metabib.browse_entry_def_map WHERE source = bib_id;
+        END IF;
+    END IF;
+
+    FOR ind_data IN SELECT * FROM biblio.extract_metabib_field_entry( bib_id ) LOOP
+        IF ind_data.field < 0 THEN
+            ind_data.field = -1 * ind_data.field;
+        END IF;
+
+        IF ind_data.facet_field AND NOT b_skip_facet THEN
+            INSERT INTO metabib.facet_entry (field, source, value)
+                VALUES (ind_data.field, ind_data.source, ind_data.value);
+        END IF;
+
+        IF ind_data.browse_field AND NOT b_skip_browse THEN
+            -- A caveat about this SELECT: this should take care of replacing
+            -- old mbe rows when data changes, but not if normalization (by
+            -- which I mean specifically the output of
+            -- evergreen.oils_tsearch2()) changes.  It may or may not be
+            -- expensive to add a comparison of index_vector to index_vector
+            -- to the WHERE clause below.
+            SELECT INTO mbe_row * FROM metabib.browse_entry WHERE value = ind_data.value;
+            IF FOUND THEN
+                mbe_id := mbe_row.id;
+            ELSE
+                INSERT INTO metabib.browse_entry (value) VALUES
+                    (metabib.browse_normalize(ind_data.value, ind_data.field));
+                mbe_id := CURRVAL('metabib.browse_entry_id_seq'::REGCLASS);
+            END IF;
+
+            INSERT INTO metabib.browse_entry_def_map (entry, def, source)
+                VALUES (mbe_id, ind_data.field, ind_data.source);
+        END IF;
+
+        IF ind_data.search_field AND NOT b_skip_search THEN
+            EXECUTE $$
+                INSERT INTO metabib.$$ || ind_data.field_class || $$_field_entry (field, source, value)
+                    VALUES ($$ ||
+                        quote_literal(ind_data.field) || $$, $$ ||
+                        quote_literal(ind_data.source) || $$, $$ ||
+                        quote_literal(ind_data.value) ||
+                    $$);$$;
+        END IF;
+
+    END LOOP;
+
+    IF NOT b_skip_search THEN
+        PERFORM metabib.update_combined_index_vectors(bib_id);
+    END IF;
+
+    RETURN;
+END;
+$func$ LANGUAGE PLPGSQL;
+
+
+SELECT evergreen.upgrade_deps_block_check('0763', :eg_version);
+
+INSERT INTO config.org_unit_setting_type (
+    name, label, grp, datatype
+) VALUES (
+    'circ.fines.truncate_to_max_fine',
+    'Truncate fines to max fine amount',
+    'circ',
+    'bool'
+);
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0765', :eg_version);
+
+ALTER TABLE acq.provider
+    ADD COLUMN default_copy_count INTEGER NOT NULL DEFAULT 0;
+
+
+SELECT evergreen.upgrade_deps_block_check('0768', :eg_version);
+
+CREATE OR REPLACE FUNCTION evergreen.rank_ou(lib INT, search_lib INT, pref_lib INT DEFAULT NULL)
+RETURNS INTEGER AS $$
+    SELECT COALESCE(
+
+        -- lib matches search_lib
+        (SELECT CASE WHEN $1 = $2 THEN -20000 END),
+
+        -- lib matches pref_lib
+        (SELECT CASE WHEN $1 = $3 THEN -10000 END),
+
+
+        -- pref_lib is a child of search_lib and lib is a child of pref lib.  
+        (SELECT distance - 5000
+            FROM actor.org_unit_descendants_distance($3) 
+            WHERE id = $1 AND $3 IN (
+                SELECT id FROM actor.org_unit_descendants($2))),
+
+        -- lib is a child of search_lib
+        (SELECT distance FROM actor.org_unit_descendants_distance($2) WHERE id = $1),
+
+        -- all others pay cash
+        1000
+    );
+$$ LANGUAGE SQL STABLE;
+
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0769', :eg_version);
+
+DROP FUNCTION IF EXISTS 
+    evergreen.ranked_volumes(BIGINT, INT, INT, HSTORE, HSTORE, INT);
+
+CREATE OR REPLACE FUNCTION evergreen.ranked_volumes(
+    bibid BIGINT, 
+    ouid INT,
+    depth INT DEFAULT NULL,
+    slimit HSTORE DEFAULT NULL,
+    soffset HSTORE DEFAULT NULL,
+    pref_lib INT DEFAULT NULL,
+    includes TEXT[] DEFAULT NULL::TEXT[]
+) RETURNS TABLE (id BIGINT, name TEXT, label_sortkey TEXT, rank BIGINT) AS $$
+    SELECT ua.id, ua.name, ua.label_sortkey, MIN(ua.rank) AS rank FROM (
+        SELECT acn.id, aou.name, acn.label_sortkey,
+            evergreen.rank_ou(aou.id, $2, $6), evergreen.rank_cp_status(acp.status),
+            RANK() OVER w
+        FROM asset.call_number acn
+            JOIN asset.copy acp ON (acn.id = acp.call_number)
+            JOIN actor.org_unit_descendants( $2, COALESCE(
+                $3, (
+                    SELECT depth
+                    FROM actor.org_unit_type aout
+                        INNER JOIN actor.org_unit ou ON ou_type = aout.id
+                    WHERE ou.id = $2
+                ), $6)
+            ) AS aou ON (acp.circ_lib = aou.id)
+        WHERE acn.record = $1
+            AND acn.deleted IS FALSE
+            AND acp.deleted IS FALSE
+            AND CASE WHEN ('exclude_invisible_acn' = ANY($7)) THEN 
+                EXISTS (
+                    SELECT 1 
+                    FROM asset.opac_visible_copies 
+                    WHERE copy_id = acp.id AND record = acn.record
+                ) ELSE TRUE END
+        GROUP BY acn.id, acp.status, aou.name, acn.label_sortkey, aou.id
+        WINDOW w AS (
+            ORDER BY evergreen.rank_ou(aou.id, $2, $6), evergreen.rank_cp_status(acp.status)
+        )
+    ) AS ua
+    GROUP BY ua.id, ua.name, ua.label_sortkey
+    ORDER BY rank, ua.name, ua.label_sortkey
+    LIMIT ($4 -> 'acn')::INT
+    OFFSET ($5 -> 'acn')::INT;
+$$
+LANGUAGE SQL STABLE;
+
+CREATE OR REPLACE FUNCTION unapi.holdings_xml (
+    bid BIGINT,
+    ouid INT,
+    org TEXT,
+    depth INT DEFAULT NULL,
+    includes TEXT[] DEFAULT NULL::TEXT[],
+    slimit HSTORE DEFAULT NULL,
+    soffset HSTORE DEFAULT NULL,
+    include_xmlns BOOL DEFAULT TRUE,
+    pref_lib INT DEFAULT NULL
+)
+RETURNS XML AS $F$
+     SELECT  XMLELEMENT(
+                 name holdings,
+                 XMLATTRIBUTES(
+                    CASE WHEN $8 THEN 'http://open-ils.org/spec/holdings/v1' ELSE NULL END AS xmlns,
+                    CASE WHEN ('bre' = ANY ($5)) THEN 'tag:open-ils.org:U2 at bre/' || $1 || '/' || $3 ELSE NULL END AS id,
+                    (SELECT record_has_holdable_copy FROM asset.record_has_holdable_copy($1)) AS has_holdable
+                 ),
+                 XMLELEMENT(
+                     name counts,
+                     (SELECT  XMLAGG(XMLELEMENT::XML) FROM (
+                         SELECT  XMLELEMENT(
+                                     name count,
+                                     XMLATTRIBUTES('public' as type, depth, org_unit, coalesce(transcendant,0) as transcendant, available, visible as count, unshadow)
+                                 )::text
+                           FROM  asset.opac_ou_record_copy_count($2,  $1)
+                                     UNION
+                         SELECT  XMLELEMENT(
+                                     name count,
+                                     XMLATTRIBUTES('staff' as type, depth, org_unit, coalesce(transcendant,0) as transcendant, available, visible as count, unshadow)
+                                 )::text
+                           FROM  asset.staff_ou_record_copy_count($2, $1)
+                                     UNION
+                         SELECT  XMLELEMENT(
+                                     name count,
+                                     XMLATTRIBUTES('pref_lib' as type, depth, org_unit, coalesce(transcendant,0) as transcendant, available, visible as count, unshadow)
+                                 )::text
+                           FROM  asset.opac_ou_record_copy_count($9,  $1)
+                                     ORDER BY 1
+                     )x)
+                 ),
+                 CASE 
+                     WHEN ('bmp' = ANY ($5)) THEN
+                        XMLELEMENT(
+                            name monograph_parts,
+                            (SELECT XMLAGG(bmp) FROM (
+                                SELECT  unapi.bmp( id, 'xml', 'monograph_part', evergreen.array_remove_item_by_value( evergreen.array_remove_item_by_value($5,'bre'), 'holdings_xml'), $3, $4, $6, $7, FALSE)
+                                  FROM  biblio.monograph_part
+                                  WHERE record = $1
+                            )x)
+                        )
+                     ELSE NULL
+                 END,
+                 XMLELEMENT(
+                     name volumes,
+                     (SELECT XMLAGG(acn ORDER BY rank, name, label_sortkey) FROM (
+                        -- Physical copies
+                        SELECT  unapi.acn(y.id,'xml','volume',evergreen.array_remove_item_by_value( evergreen.array_remove_item_by_value($5,'holdings_xml'),'bre'), $3, $4, $6, $7, FALSE), y.rank, name, label_sortkey
+                        FROM evergreen.ranked_volumes($1, $2, $4, $6, $7, $9, $5) AS y
+                        UNION ALL
+                        -- Located URIs
+                        SELECT unapi.acn(uris.id,'xml','volume',evergreen.array_remove_item_by_value( evergreen.array_remove_item_by_value($5,'holdings_xml'),'bre'), $3, $4, $6, $7, FALSE), 0, name, label_sortkey
+                        FROM evergreen.located_uris($1, $2, $9) AS uris
+                     )x)
+                 ),
+                 CASE WHEN ('ssub' = ANY ($5)) THEN 
+                     XMLELEMENT(
+                         name subscriptions,
+                         (SELECT XMLAGG(ssub) FROM (
+                            SELECT  unapi.ssub(id,'xml','subscription','{}'::TEXT[], $3, $4, $6, $7, FALSE)
+                              FROM  serial.subscription
+                              WHERE record_entry = $1
+                        )x)
+                     )
+                 ELSE NULL END,
+                 CASE WHEN ('acp' = ANY ($5)) THEN 
+                     XMLELEMENT(
+                         name foreign_copies,
+                         (SELECT XMLAGG(acp) FROM (
+                            SELECT  unapi.acp(p.target_copy,'xml','copy',evergreen.array_remove_item_by_value($5,'acp'), $3, $4, $6, $7, FALSE)
+                              FROM  biblio.peer_bib_copy_map p
+                                    JOIN asset.copy c ON (p.target_copy = c.id)
+                              WHERE NOT c.deleted AND p.peer_record = $1
+                            LIMIT ($6 -> 'acp')::INT
+                            OFFSET ($7 -> 'acp')::INT
+                        )x)
+                     )
+                 ELSE NULL END
+             );
+$F$ LANGUAGE SQL STABLE;
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0771', :eg_version);
+
+INSERT INTO action_trigger.hook (
+        key,
+        core_type,
+        description,
+        passive
+    ) VALUES (
+        'au.barred',
+        'au',
+        'A user was barred by staff',
+        FALSE
+    );
+
+INSERT INTO action_trigger.hook (
+        key,
+        core_type,
+        description,
+        passive
+    ) VALUES (
+        'au.unbarred',
+        'au',
+        'A user was un-barred by staff',
+        FALSE
+    );
+
+INSERT INTO action_trigger.validator (
+        module, 
+        description
+    ) VALUES (
+        'PatronBarred',
+        'Tests if a patron is currently marked as barred'
+    );
+
+INSERT INTO action_trigger.validator (
+        module, 
+        description
+    ) VALUES (
+        'PatronNotBarred',
+        'Tests if a patron is currently not marked as barred'
+    );
+
+
+SELECT evergreen.upgrade_deps_block_check('0772', :eg_version);
+
+INSERT INTO config.internal_flag (name) VALUES ('ingest.metarecord_mapping.preserve_on_delete');  -- defaults to false/off
+
+DROP RULE protect_bib_rec_delete ON biblio.record_entry;
+CREATE RULE protect_bib_rec_delete AS
+    ON DELETE TO biblio.record_entry DO INSTEAD (
+        UPDATE biblio.record_entry
+            SET deleted = TRUE
+            WHERE OLD.id = biblio.record_entry.id
+    );
+
+
+-- AFTER UPDATE OR INSERT trigger for biblio.record_entry
+CREATE OR REPLACE FUNCTION biblio.indexing_ingest_or_delete () RETURNS TRIGGER AS $func$
+DECLARE
+    transformed_xml TEXT;
+    prev_xfrm       TEXT;
+    normalizer      RECORD;
+    xfrm            config.xml_transform%ROWTYPE;
+    attr_value      TEXT;
+    new_attrs       HSTORE := ''::HSTORE;
+    attr_def        config.record_attr_definition%ROWTYPE;
+BEGIN
+
+    IF NEW.deleted IS TRUE THEN -- If this bib is deleted
+        PERFORM * FROM config.internal_flag WHERE
+            name = 'ingest.metarecord_mapping.preserve_on_delete' AND enabled;
+        IF NOT FOUND THEN
+            -- One needs to keep these around to support searches
+            -- with the #deleted modifier, so one should turn on the named
+            -- internal flag for that functionality.
+            DELETE FROM metabib.metarecord_source_map WHERE source = NEW.id;
+            DELETE FROM metabib.record_attr WHERE id = NEW.id;
+        END IF;
+
+        DELETE FROM authority.bib_linking WHERE bib = NEW.id; -- Avoid updating fields in bibs that are no longer visible
+        DELETE FROM biblio.peer_bib_copy_map WHERE peer_record = NEW.id; -- Separate any multi-homed items
+        DELETE FROM metabib.browse_entry_def_map WHERE source = NEW.id; -- Don't auto-suggest deleted bibs
+        RETURN NEW; -- and we're done
+    END IF;
+
+    IF TG_OP = 'UPDATE' THEN -- re-ingest?
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.reingest.force_on_same_marc' AND enabled;
+
+        IF NOT FOUND AND OLD.marc = NEW.marc THEN -- don't do anything if the MARC didn't change
+            RETURN NEW;
+        END IF;
+    END IF;
+
+    -- Record authority linking
+    PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_authority_linking' AND enabled;
+    IF NOT FOUND THEN
+        PERFORM biblio.map_authority_linking( NEW.id, NEW.marc );
+    END IF;
+
+    -- Flatten and insert the mfr data
+    PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_metabib_full_rec' AND enabled;
+    IF NOT FOUND THEN
+        PERFORM metabib.reingest_metabib_full_rec(NEW.id);
+
+        -- Now we pull out attribute data, which is dependent on the mfr for all but XPath-based fields
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_metabib_rec_descriptor' AND enabled;
+        IF NOT FOUND THEN
+            FOR attr_def IN SELECT * FROM config.record_attr_definition ORDER BY format LOOP
+
+                IF attr_def.tag IS NOT NULL THEN -- tag (and optional subfield list) selection
+                    SELECT  ARRAY_TO_STRING(ARRAY_ACCUM(value), COALESCE(attr_def.joiner,' ')) INTO attr_value
+                      FROM  (SELECT * FROM metabib.full_rec ORDER BY tag, subfield) AS x
+                      WHERE record = NEW.id
+                            AND tag LIKE attr_def.tag
+                            AND CASE
+                                WHEN attr_def.sf_list IS NOT NULL 
+                                    THEN POSITION(subfield IN attr_def.sf_list) > 0
+                                ELSE TRUE
+                                END
+                      GROUP BY tag
+                      ORDER BY tag
+                      LIMIT 1;
+
+                ELSIF attr_def.fixed_field IS NOT NULL THEN -- a named fixed field, see config.marc21_ff_pos_map.fixed_field
+                    attr_value := biblio.marc21_extract_fixed_field(NEW.id, attr_def.fixed_field);
+
+                ELSIF attr_def.xpath IS NOT NULL THEN -- and xpath expression
+
+                    SELECT INTO xfrm * FROM config.xml_transform WHERE name = attr_def.format;
+            
+                    -- See if we can skip the XSLT ... it's expensive
+                    IF prev_xfrm IS NULL OR prev_xfrm <> xfrm.name THEN
+                        -- Can't skip the transform
+                        IF xfrm.xslt <> '---' THEN
+                            transformed_xml := oils_xslt_process(NEW.marc,xfrm.xslt);
+                        ELSE
+                            transformed_xml := NEW.marc;
+                        END IF;
+            
+                        prev_xfrm := xfrm.name;
+                    END IF;
+
+                    IF xfrm.name IS NULL THEN
+                        -- just grab the marcxml (empty) transform
+                        SELECT INTO xfrm * FROM config.xml_transform WHERE xslt = '---' LIMIT 1;
+                        prev_xfrm := xfrm.name;
+                    END IF;
+
+                    attr_value := oils_xpath_string(attr_def.xpath, transformed_xml, COALESCE(attr_def.joiner,' '), ARRAY[ARRAY[xfrm.prefix, xfrm.namespace_uri]]);
+
+                ELSIF attr_def.phys_char_sf IS NOT NULL THEN -- a named Physical Characteristic, see config.marc21_physical_characteristic_*_map
+                    SELECT  m.value INTO attr_value
+                      FROM  biblio.marc21_physical_characteristics(NEW.id) v
+                            JOIN config.marc21_physical_characteristic_value_map m ON (m.id = v.value)
+                      WHERE v.subfield = attr_def.phys_char_sf
+                      LIMIT 1; -- Just in case ...
+
+                END IF;
+
+                -- apply index normalizers to attr_value
+                FOR normalizer IN
+                    SELECT  n.func AS func,
+                            n.param_count AS param_count,
+                            m.params AS params
+                      FROM  config.index_normalizer n
+                            JOIN config.record_attr_index_norm_map m ON (m.norm = n.id)
+                      WHERE attr = attr_def.name
+                      ORDER BY m.pos LOOP
+                        EXECUTE 'SELECT ' || normalizer.func || '(' ||
+                            COALESCE( quote_literal( attr_value ), 'NULL' ) ||
+                            CASE
+                                WHEN normalizer.param_count > 0
+                                    THEN ',' || REPLACE(REPLACE(BTRIM(normalizer.params,'[]'),E'\'',E'\\\''),E'"',E'\'')
+                                    ELSE ''
+                                END ||
+                            ')' INTO attr_value;
+        
+                END LOOP;
+
+                -- Add the new value to the hstore
+                new_attrs := new_attrs || hstore( attr_def.name, attr_value );
+
+            END LOOP;
+
+            IF TG_OP = 'INSERT' OR OLD.deleted THEN -- initial insert OR revivication
+                INSERT INTO metabib.record_attr (id, attrs) VALUES (NEW.id, new_attrs);
+            ELSE
+                UPDATE metabib.record_attr SET attrs = new_attrs WHERE id = NEW.id;
+            END IF;
+
+        END IF;
+    END IF;
+
+    -- Gather and insert the field entry data
+    PERFORM metabib.reingest_metabib_field_entries(NEW.id);
+
+    -- Located URI magic
+    IF TG_OP = 'INSERT' THEN
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_located_uri' AND enabled;
+        IF NOT FOUND THEN
+            PERFORM biblio.extract_located_uris( NEW.id, NEW.marc, NEW.editor );
+        END IF;
+    ELSE
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_located_uri' AND enabled;
+        IF NOT FOUND THEN
+            PERFORM biblio.extract_located_uris( NEW.id, NEW.marc, NEW.editor );
+        END IF;
+    END IF;
+
+    -- (re)map metarecord-bib linking
+    IF TG_OP = 'INSERT' THEN -- if not deleted and performing an insert, check for the flag
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.metarecord_mapping.skip_on_insert' AND enabled;
+        IF NOT FOUND THEN
+            PERFORM metabib.remap_metarecord_for_bib( NEW.id, NEW.fingerprint );
+        END IF;
+    ELSE -- we're doing an update, and we're not deleted, remap
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.metarecord_mapping.skip_on_update' AND enabled;
+        IF NOT FOUND THEN
+            PERFORM metabib.remap_metarecord_for_bib( NEW.id, NEW.fingerprint );
+        END IF;
+    END IF;
+
+    RETURN NEW;
+END;
+$func$ LANGUAGE PLPGSQL;
+
+
+-- Evergreen DB patch xxxx.data.authority_thesaurus_update.sql
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0773', :eg_version);
+
+
+INSERT INTO authority.thesaurus (code, name, control_set) VALUES
+    (' ', oils_i18n_gettext(' ','Alternate no attempt to code','at','name'), NULL);
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0774', :eg_version);
+
+CREATE TABLE config.z3950_source_credentials (
+    id SERIAL PRIMARY KEY,
+    owner INTEGER NOT NULL REFERENCES actor.org_unit(id),
+    source TEXT NOT NULL REFERENCES config.z3950_source(name) ON DELETE CASCADE ON UPDATE CASCADE DEFERRABLE INITIALLY DEFERRED,
+    -- do some Z servers require a username but no password or vice versa?
+    username TEXT,
+    password TEXT,
+    CONSTRAINT czsc_source_once_per_lib UNIQUE (source, owner)
+);
+
+-- find the most relevant set of credentials for the Z source and org
+CREATE OR REPLACE FUNCTION config.z3950_source_credentials_lookup
+        (source TEXT, owner INTEGER) 
+        RETURNS config.z3950_source_credentials AS $$
+
+    SELECT creds.* 
+    FROM config.z3950_source_credentials creds
+        JOIN actor.org_unit aou ON (aou.id = creds.owner)
+        JOIN actor.org_unit_type aout ON (aout.id = aou.ou_type)
+    WHERE creds.source = $1 AND creds.owner IN ( 
+        SELECT id FROM actor.org_unit_ancestors($2) 
+    )
+    ORDER BY aout.depth DESC LIMIT 1;
+
+$$ LANGUAGE SQL STABLE;
+
+-- since we are not exposing config.z3950_source_credentials
+-- via the IDL, providing a stored proc gives us a way to
+-- set values in the table via cstore
+CREATE OR REPLACE FUNCTION config.z3950_source_credentials_apply
+        (src TEXT, org INTEGER, uname TEXT, passwd TEXT) 
+        RETURNS VOID AS $$
+BEGIN
+    PERFORM 1 FROM config.z3950_source_credentials
+        WHERE owner = org AND source = src;
+
+    IF FOUND THEN
+        IF COALESCE(uname, '') = '' AND COALESCE(passwd, '') = '' THEN
+            DELETE FROM config.z3950_source_credentials 
+                WHERE owner = org AND source = src;
+        ELSE 
+            UPDATE config.z3950_source_credentials 
+                SET username = uname, password = passwd
+                WHERE owner = org AND source = src;
+        END IF;
+    ELSE
+        IF COALESCE(uname, '') <> '' OR COALESCE(passwd, '') <> '' THEN
+            INSERT INTO config.z3950_source_credentials
+                (source, owner, username, password) 
+                VALUES (src, org, uname, passwd);
+        END IF;
+    END IF;
+END;
+$$ LANGUAGE PLPGSQL;
+
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0775', :eg_version);
+
+ALTER TABLE config.z3950_attr
+    DROP CONSTRAINT z3950_attr_source_fkey,
+    ADD CONSTRAINT z3950_attr_source_fkey 
+        FOREIGN KEY (source) 
+        REFERENCES config.z3950_source(name) 
+        ON UPDATE CASCADE
+        ON DELETE CASCADE
+        DEFERRABLE INITIALLY DEFERRED;
+
+
+SELECT evergreen.upgrade_deps_block_check('0776', :eg_version);
+
+ALTER TABLE acq.lineitem_attr
+    ADD COLUMN order_ident BOOLEAN NOT NULL DEFAULT FALSE;
+
+INSERT INTO permission.perm_list ( id, code, description ) VALUES (
+    547, -- VERIFY
+    'ACQ_ADD_LINEITEM_IDENTIFIER',
+    oils_i18n_gettext(
+        547,-- VERIFY
+        'When granted, newly added lineitem identifiers will propagate to linked bib records',
+        'ppl',
+        'description'
+    )
+);
+
+INSERT INTO permission.perm_list ( id, code, description ) VALUES (
+    548, -- VERIFY
+    'ACQ_SET_LINEITEM_IDENTIFIER',
+    oils_i18n_gettext(
+        548,-- VERIFY
+        'Allows staff to change the lineitem identifier',
+        'ppl',
+        'description'
+    )
+);
+
+
+SELECT evergreen.upgrade_deps_block_check('0777', :eg_version);
+
+-- Listed here for reference / ease of access.  The update
+-- is not applied here (see the WHERE clause).
+UPDATE action_trigger.event_definition SET template = 
+$$
+[%- USE date -%]
+[%
+    # extract some commonly used variables
+
+    VENDOR_SAN = target.provider.san;
+    VENDCODE = target.provider.edi_default.vendcode;
+    VENDACCT = target.provider.edi_default.vendacct;
+    ORG_UNIT_SAN = target.ordering_agency.mailing_address.san;
+
+    # set the vendor / provider
+
+    VENDOR_BT      = 0; # Baker & Taylor
+    VENDOR_INGRAM  = 0;
+    VENDOR_BRODART = 0;
+    VENDOR_MW_TAPE = 0; # Midwest Tape
+    VENDOR_RB      = 0; # Recorded Books
+    VENDOR_ULS     = 0; # ULS
+
+    IF    VENDOR_SAN == '1556150'; VENDOR_BT = 1;
+    ELSIF VENDOR_SAN == '1697684'; VENDOR_BRODART = 1;
+    ELSIF VENDOR_SAN == '1697978'; VENDOR_INGRAM = 1;
+    ELSIF VENDOR_SAN == '2549913'; VENDOR_MW_TAPE = 1;
+    ELSIF VENDOR_SAN == '1113984'; VENDOR_RB = 1;
+    ELSIF VENDOR_SAN == '1699342'; VENDOR_ULS = 1;
+    END;
+
+    # if true, pass the PO name as a secondary identifier
+    # RFF+LI:<name>/li_id
+    INC_PO_NAME = 0;
+    IF VENDOR_INGRAM;
+        INC_PO_NAME = 1;
+    END;
+
+    # GIR configuration --------------------------------------
+
+    INC_COPIES = 1; # copies on/off switch
+    INC_FUND = 0;
+    INC_CALLNUMBER = 0;
+    INC_ITEM_TYPE = 1;
+    INC_LOCATION = 0;
+    INC_COLLECTION_CODE = 1;
+    INC_OWNING_LIB = 1;
+    INC_QUANTITY = 1;
+    INC_COPY_ID = 0;
+
+    IF VENDOR_BT;
+        INC_CALLNUMBER = 1;
+    END;
+
+    IF VENDOR_BRODART;
+        INC_FUND = 1;
+    END;
+
+    IF VENDOR_MW_TAPE;
+        INC_FUND = 1;
+        INC_COLLECTION_CODE = 0;
+        INC_ITEM_TYPE = 0;
+    END;
+
+    # END GIR configuration ---------------------------------
+
+-%]
+[%- BLOCK big_block -%]
+{
+   "recipient":"[% VENDOR_SAN %]",
+   "sender":"[% ORG_UNIT_SAN %]",
+   "body": [{
+     "ORDERS":[ "order", {
+
+        "po_number":[% target.id %],
+
+        [% IF INC_PO_NAME %]
+        "po_name":"[% target.name | replace('\/', ' ') | replace('"', '\"') %]",
+        [% END %]
+
+        "date":"[% date.format(date.now, '%Y%m%d') %]",
+
+        "buyer":[
+            [% IF VENDOR_BT %]
+                {"id-qualifier": 91, "id":"[% ORG_UNIT_SAN %] [% VENDCODE %]"}
+            [% ELSE %]
+                {"id":"[% ORG_UNIT_SAN %]"},
+                {"id-qualifier": 91, "id":"[% VENDACCT %]"}
+            [% END %]
+        ],
+
+        "vendor":[
+            "[% VENDOR_SAN %]",
+            {"id-qualifier": 92, "id":"[% target.provider.id %]"}
+        ],
+
+        "currency":"[% target.provider.currency_type %]",
+                
+        "items":[
+        [%- FOR li IN target.lineitems %]
+        {
+            "line_index":"[% li.id %]",
+            "identifiers":[   
+            [%- 
+                idval = '';
+                idqual = 'EN'; # default ISBN/UPC/EAN-13
+                ident_attr = helpers.get_li_order_ident(li.attributes);
+                IF ident_attr;
+                    idname = ident_attr.attr_name;
+                    idval = ident_attr.attr_value;
+                    IF idname == 'isbn' AND idval.length != 13;
+                        idqual = 'IB';
+                    ELSIF idname == 'issn';
+                        idqual = 'IS';
+                    END;
+                ELSE;
+                    idqual = 'IN';
+                    idval = li.id;
+                END -%]
+                {"id-qualifier":"[% idqual %]","id":"[% idval %]"}
+            ],
+            "price":[% li.estimated_unit_price || '0.00' %],
+            "desc":[
+                {"BTI":"[% helpers.get_li_attr_jedi('title',     '', li.attributes) %]"},
+                {"BPU":"[% helpers.get_li_attr_jedi('publisher', '', li.attributes) %]"},
+                {"BPD":"[% helpers.get_li_attr_jedi('pubdate',   '', li.attributes) %]"},
+                [% IF VENDOR_ULS -%]
+                {"BEN":"[% helpers.get_li_attr_jedi('edition',   '', li.attributes) %]"},
+                {"BAU":"[% helpers.get_li_attr_jedi('author',    '', li.attributes) %]"}
+                [%- ELSE -%]
+                {"BPH":"[% helpers.get_li_attr_jedi('pagination','', li.attributes) %]"}
+                [%- END %]
+            ],
+            [%- ftx_vals = []; 
+                FOR note IN li.lineitem_notes;
+                    NEXT UNLESS note.vendor_public == 't'; 
+                    ftx_vals.push(note.value); 
+                END; 
+                IF VENDOR_BRODART; # look for copy-level spec code
+                    FOR lid IN li.lineitem_details;
+                        IF lid.note;
+                            spec_note = lid.note.match('spec code ([a-zA-Z0-9_])');
+                            IF spec_note.0; ftx_vals.push(spec_note.0); END;
+                        END;
+                    END;
+                END; 
+                IF xtra_ftx;           ftx_vals.unshift(xtra_ftx); END; 
+
+                # BT & ULS want FTX+LIN for every LI, even if empty
+                IF ((VENDOR_BT OR VENDOR_ULS) AND ftx_vals.size == 0);
+                    ftx_vals.unshift('');
+                END;  
+            -%]
+
+            "free-text":[ 
+                [% FOR note IN ftx_vals -%] "[% note %]"[% UNLESS loop.last %], [% END %][% END %] 
+            ],            
+
+            "quantity":[% li.lineitem_details.size %],
+
+            [%- IF INC_COPIES -%]
+            "copies" : [
+                [%- compressed_copies = [];
+                    FOR lid IN li.lineitem_details;
+                        fund = lid.fund.code;
+                        item_type = lid.circ_modifier;
+                        callnumber = lid.cn_label;
+                        owning_lib = lid.owning_lib.shortname;
+                        location = lid.location;
+                        collection_code = lid.collection_code;
+    
+                        # when we have real copy data, treat it as authoritative for some fields
+                        acp = lid.eg_copy_id;
+                        IF acp;
+                            item_type = acp.circ_modifier;
+                            callnumber = acp.call_number.label;
+                            location = acp.location.name;
+                        END ;
+
+
+                        # collapse like copies into groups w/ quantity
+
+                        found_match = 0;
+                        IF !INC_COPY_ID; # INC_COPY_ID implies 1 copy per GIR
+                            FOR copy IN compressed_copies;
+                                IF  (fund == copy.fund OR (!fund AND !copy.fund)) AND
+                                    (item_type == copy.item_type OR (!item_type AND !copy.item_type)) AND
+                                    (callnumber == copy.callnumber OR (!callnumber AND !copy.callnumber)) AND
+                                    (owning_lib == copy.owning_lib OR (!owning_lib AND !copy.owning_lib)) AND
+                                    (location == copy.location OR (!location AND !copy.location)) AND
+                                    (collection_code == copy.collection_code OR (!collection_code AND !copy.collection_code));
+
+                                    copy.quantity = copy.quantity + 1;
+                                    found_match = 1;
+                                END;
+                            END;
+                        END;
+
+                        IF !found_match;
+                            compressed_copies.push({
+                                fund => fund,
+                                item_type => item_type,
+                                callnumber => callnumber,
+                                owning_lib => owning_lib,
+                                location => location,
+                                collection_code => collection_code,
+                                copy_id => lid.id, # for INC_COPY_ID
+                                quantity => 1
+                            });
+                        END;
+                    END;
+                    FOR copy IN compressed_copies;
+
+                    # If we assume owning_lib is required and set, 
+                    # it is safe to prepend each following copy field w/ a ","
+
+                    # B&T EDI requires expected GIR fields to be 
+                    # present regardless of whether a value exists.  
+                    # some fields are required to have a value in ACQ, 
+                    # though, so they are not forced into place below.
+
+                 %]{[%- IF INC_OWNING_LIB AND copy.owning_lib %] "owning_lib":"[% copy.owning_lib %]"[% END -%]
+                    [%- IF INC_FUND AND copy.fund %],"fund":"[% copy.fund %]"[% END -%]
+                    [%- IF INC_CALLNUMBER AND (VENDOR_BT OR copy.callnumber) %],"call_number":"[% copy.callnumber %]"[% END -%]
+                    [%- IF INC_ITEM_TYPE AND (VENDOR_BT OR copy.item_type) %],"item_type":"[% copy.item_type %]"[% END -%]
+                    [%- IF INC_LOCATION AND copy.location %],"copy_location":"[% copy.location %]"[% END -%]
+                    [%- IF INC_COLLECTION_CODE AND (VENDOR_BT OR copy.collection_code) %],"collection_code":"[% copy.collection_code %]"[% END -%]
+                    [%- IF INC_QUANTITY %],"quantity":"[% copy.quantity %]"[% END -%]
+                    [%- IF INC_COPY_ID %],"copy_id":"[% copy.copy_id %]" [% END %]}[% ',' UNLESS loop.last -%]
+                [%- END -%] [%# FOR compressed_copies -%]
+            ]
+            [%- END -%] [%# IF INC_COPIES %]
+
+        }[% UNLESS loop.last %],[% END -%]
+
+        [% END %] [%# END lineitems %]
+        ],
+        "line_items":[% target.lineitems.size %]
+     }]  [%# close ORDERS array %]
+   }]    [%# close  body  array %]
+}
+[% END %]
+[% tempo = PROCESS big_block; helpers.escape_json(tempo) %]
+$$
+WHERE ID = 23 AND FALSE; -- remove 'AND FALSE' to apply this update
+
+
+-- lineitem worksheet
+UPDATE action_trigger.event_definition SET template = 
+$$
+[%- USE date -%]
+[%-
+    # find a lineitem attribute by name and optional type
+    BLOCK get_li_attr;
+        FOR attr IN li.attributes;
+            IF attr.attr_name == attr_name;
+                IF !attr_type OR attr_type == attr.attr_type;
+                    attr.attr_value;
+                    LAST;
+                END;
+            END;
+        END;
+    END
+-%]
+
+<h2>Purchase Order [% target.id %]</h2>
+<br/>
+date <b>[% date.format(date.now, '%Y%m%d') %]</b>
+<br/>
+
+<style>
+    table td { padding:5px; border:1px solid #aaa;}
+    table { width:95%; border-collapse:collapse; }
+    #vendor-notes { padding:5px; border:1px solid #aaa; }
+</style>
+<table id='vendor-table'>
+  <tr>
+    <td valign='top'>Vendor</td>
+    <td>
+      <div>[% target.provider.name %]</div>
+      <div>[% target.provider.addresses.0.street1 %]</div>
+      <div>[% target.provider.addresses.0.street2 %]</div>
+      <div>[% target.provider.addresses.0.city %]</div>
+      <div>[% target.provider.addresses.0.state %]</div>
+      <div>[% target.provider.addresses.0.country %]</div>
+      <div>[% target.provider.addresses.0.post_code %]</div>
+    </td>
+    <td valign='top'>Ship to / Bill to</td>
+    <td>
+      <div>[% target.ordering_agency.name %]</div>
+      <div>[% target.ordering_agency.billing_address.street1 %]</div>
+      <div>[% target.ordering_agency.billing_address.street2 %]</div>
+      <div>[% target.ordering_agency.billing_address.city %]</div>
+      <div>[% target.ordering_agency.billing_address.state %]</div>
+      <div>[% target.ordering_agency.billing_address.country %]</div>
+      <div>[% target.ordering_agency.billing_address.post_code %]</div>
+    </td>
+  </tr>
+</table>
+
+<br/><br/>
+<fieldset id='vendor-notes'>
+    <legend>Notes to the Vendor</legend>
+    <ul>
+    [% FOR note IN target.notes %]
+        [% IF note.vendor_public == 't' %]
+            <li>[% note.value %]</li>
+        [% END %]
+    [% END %]
+    </ul>
+</fieldset>
+<br/><br/>
+
+<table>
+  <thead>
+    <tr>
+      <th>PO#</th>
+      <th>ISBN or Item #</th>
+      <th>Title</th>
+      <th>Quantity</th>
+      <th>Unit Price</th>
+      <th>Line Total</th>
+      <th>Notes</th>
+    </tr>
+  </thead>
+  <tbody>
+
+  [% subtotal = 0 %]
+  [% FOR li IN target.lineitems %]
+
+  <tr>
+    [% count = li.lineitem_details.size %]
+    [% price = li.estimated_unit_price %]
+    [% litotal = (price * count) %]
+    [% subtotal = subtotal + litotal %]
+    [% 
+        ident_attr = helpers.get_li_order_ident(li.attributes);
+        SET ident_value = ident_attr.attr_value IF ident_attr;
+    %]
+    <td>[% target.id %]</td>
+    <td>[% ident_value %]</td>
+    <td>[% PROCESS get_li_attr attr_name = 'title' %]</td>
+    <td>[% count %]</td>
+    <td>[% price %]</td>
+    <td>[% litotal %]</td>
+    <td>
+        <ul>
+        [% FOR note IN li.lineitem_notes %]
+            [% IF note.vendor_public == 't' %]
+                <li>[% note.value %]</li>
+            [% END %]
+        [% END %]
+        </ul>
+    </td>
+  </tr>
+  [% END %]
+  <tr>
+    <td/><td/><td/><td/>
+    <td>Subtotal</td>
+    <td>[% subtotal %]</td>
+  </tr>
+  </tbody>
+</table>
+
+<br/>
+
+Total Line Item Count: [% target.lineitems.size %]
+$$
+WHERE ID = 4; -- PO HTML
+
+
+SELECT evergreen.upgrade_deps_block_check('0778', :eg_version);
+
+CREATE OR REPLACE FUNCTION extract_marc_field_set
+        (TEXT, BIGINT, TEXT, TEXT) RETURNS SETOF TEXT AS $$
+DECLARE
+    query TEXT;
+    output TEXT;
+BEGIN
+    FOR output IN
+        SELECT x.t FROM (
+            SELECT id,t
+                FROM  oils_xpath_table(
+                    'id', 'marc', $1, $3, 'id = ' || $2)
+                AS t(id int, t text))x
+        LOOP
+        IF $4 IS NOT NULL THEN
+            SELECT INTO output (SELECT regexp_replace(output, $4, '', 'g'));
+        END IF;
+        RETURN NEXT output;
+    END LOOP;
+    RETURN;
+END;
+$$ LANGUAGE PLPGSQL IMMUTABLE;
+
+
+CREATE OR REPLACE FUNCTION 
+        public.extract_acq_marc_field_set ( BIGINT, TEXT, TEXT) 
+        RETURNS SETOF TEXT AS $$
+	SELECT extract_marc_field_set('acq.lineitem', $1, $2, $3);
+$$ LANGUAGE SQL;
+
+
+CREATE OR REPLACE FUNCTION public.ingest_acq_marc ( ) RETURNS TRIGGER AS $function$
+DECLARE
+	value		TEXT;
+	atype		TEXT;
+	prov		INT;
+	pos 		INT;
+	adef		RECORD;
+	xpath_string	TEXT;
+BEGIN
+	FOR adef IN SELECT *,tableoid FROM acq.lineitem_attr_definition LOOP
+
+		SELECT relname::TEXT INTO atype FROM pg_class WHERE oid = adef.tableoid;
+
+		IF (atype NOT IN ('lineitem_usr_attr_definition','lineitem_local_attr_definition')) THEN
+			IF (atype = 'lineitem_provider_attr_definition') THEN
+				SELECT provider INTO prov FROM acq.lineitem_provider_attr_definition WHERE id = adef.id;
+				CONTINUE WHEN NEW.provider IS NULL OR prov <> NEW.provider;
+			END IF;
+			
+			IF (atype = 'lineitem_provider_attr_definition') THEN
+				SELECT xpath INTO xpath_string FROM acq.lineitem_provider_attr_definition WHERE id = adef.id;
+			ELSIF (atype = 'lineitem_marc_attr_definition') THEN
+				SELECT xpath INTO xpath_string FROM acq.lineitem_marc_attr_definition WHERE id = adef.id;
+			ELSIF (atype = 'lineitem_generated_attr_definition') THEN
+				SELECT xpath INTO xpath_string FROM acq.lineitem_generated_attr_definition WHERE id = adef.id;
+			END IF;
+
+            xpath_string := REGEXP_REPLACE(xpath_string,$re$//?text\(\)$$re$,'');
+
+            IF (adef.code = 'title' OR adef.code = 'author') THEN
+                -- title and author should not be split
+                -- FIXME: once oils_xpath can grok XPATH 2.0 functions, we can use
+                -- string-join in the xpath and remove this special case
+    			SELECT extract_acq_marc_field(id, xpath_string, adef.remove) INTO value FROM acq.lineitem WHERE id = NEW.id;
+    			IF (value IS NOT NULL AND value <> '') THEN
+				    INSERT INTO acq.lineitem_attr (lineitem, definition, attr_type, attr_name, attr_value)
+	     			    VALUES (NEW.id, adef.id, atype, adef.code, value);
+                END IF;
+            ELSE
+                pos := 1;
+                LOOP
+                    -- each application of the regex may produce multiple values
+                    FOR value IN
+                        SELECT * FROM extract_acq_marc_field_set(
+                            NEW.id, xpath_string || '[' || pos || ']', adef.remove)
+                        LOOP
+
+                        IF (value IS NOT NULL AND value <> '') THEN
+                            INSERT INTO acq.lineitem_attr
+                                (lineitem, definition, attr_type, attr_name, attr_value)
+                                VALUES (NEW.id, adef.id, atype, adef.code, value);
+                        ELSE
+                            EXIT;
+                        END IF;
+                    END LOOP;
+                    IF NOT FOUND THEN
+                        EXIT;
+                    END IF;
+                    pos := pos + 1;
+               END LOOP;
+            END IF;
+
+		END IF;
+
+	END LOOP;
+
+	RETURN NULL;
+END;
+$function$ LANGUAGE PLPGSQL;
+
+
+SELECT evergreen.upgrade_deps_block_check('0779', :eg_version);
+
+CREATE TABLE vandelay.import_bib_trash_group(
+    id SERIAL PRIMARY KEY,
+    owner INT NOT NULL REFERENCES actor.org_unit(id),
+    label TEXT NOT NULL, --i18n
+    always_apply BOOLEAN NOT NULL DEFAULT FALSE,
+	CONSTRAINT vand_import_bib_trash_grp_owner_label UNIQUE (owner, label)
+);
+
+-- otherwise, the ALTER TABLE statement below
+-- will fail with pending trigger events.
+SET CONSTRAINTS ALL IMMEDIATE;
+
+ALTER TABLE vandelay.import_bib_trash_fields
+    -- allow null-able for now..
+    ADD COLUMN grp INTEGER REFERENCES vandelay.import_bib_trash_group;
+
+-- add any existing trash_fields to "Legacy" groups (one per unique field
+-- owner) as part of the upgrade, since grp is now required.
+-- note that vandelay.import_bib_trash_fields was never used before,
+-- so in most cases this should be a no-op.
+
+INSERT INTO vandelay.import_bib_trash_group (owner, label)
+    SELECT DISTINCT(owner), 'Legacy' FROM vandelay.import_bib_trash_fields;
+
+UPDATE vandelay.import_bib_trash_fields field SET grp = tgroup.id
+    FROM vandelay.import_bib_trash_group tgroup
+    WHERE tgroup.owner = field.owner;
+    
+ALTER TABLE vandelay.import_bib_trash_fields
+    -- now that have values, we can make this non-null
+    ALTER COLUMN grp SET NOT NULL,
+    -- drop outdated constraint
+    DROP CONSTRAINT vand_import_bib_trash_fields_idx,
+    -- owner is implied by the grp
+    DROP COLUMN owner, 
+    -- make grp+field unique
+    ADD CONSTRAINT vand_import_bib_trash_fields_once_per UNIQUE (grp, field);
+
+
+SELECT evergreen.upgrade_deps_block_check('0780', :eg_version);
+
+ALTER TABLE acq.distribution_formula_entry
+    ADD COLUMN fund INT REFERENCES acq.fund (id),
+    ADD COLUMN circ_modifier TEXT REFERENCES config.circ_modifier (code),
+    ADD COLUMN collection_code TEXT ;
+
+
+-- support option to roll distribution formula funds
+CREATE OR REPLACE FUNCTION acq.rollover_funds_by_org_tree(
+	old_year INTEGER,
+	user_id INTEGER,
+	org_unit_id INTEGER,
+    encumb_only BOOL DEFAULT FALSE,
+    include_desc BOOL DEFAULT TRUE
+) RETURNS VOID AS $$
+DECLARE
+--
+new_fund    INT;
+new_year    INT := old_year + 1;
+org_found   BOOL;
+perm_ous    BOOL;
+xfer_amount NUMERIC := 0;
+roll_fund   RECORD;
+deb         RECORD;
+detail      RECORD;
+roll_distrib_forms BOOL;
+--
+BEGIN
+	--
+	-- Sanity checks
+	--
+	IF old_year IS NULL THEN
+		RAISE EXCEPTION 'Input year argument is NULL';
+    ELSIF old_year NOT BETWEEN 2008 and 2200 THEN
+        RAISE EXCEPTION 'Input year is out of range';
+	END IF;
+	--
+	IF user_id IS NULL THEN
+		RAISE EXCEPTION 'Input user id argument is NULL';
+	END IF;
+	--
+	IF org_unit_id IS NULL THEN
+		RAISE EXCEPTION 'Org unit id argument is NULL';
+	ELSE
+		--
+		-- Validate the org unit
+		--
+		SELECT TRUE
+		INTO org_found
+		FROM actor.org_unit
+		WHERE id = org_unit_id;
+		--
+		IF org_found IS NULL THEN
+			RAISE EXCEPTION 'Org unit id % is invalid', org_unit_id;
+		ELSIF encumb_only THEN
+			SELECT INTO perm_ous value::BOOL FROM
+			actor.org_unit_ancestor_setting(
+				'acq.fund.allow_rollover_without_money', org_unit_id
+			);
+			IF NOT FOUND OR NOT perm_ous THEN
+				RAISE EXCEPTION 'Encumbrance-only rollover not permitted at org %', org_unit_id;
+			END IF;
+		END IF;
+	END IF;
+	--
+	-- Loop over the propagable funds to identify the details
+	-- from the old fund plus the id of the new one, if it exists.
+	--
+	FOR roll_fund in
+	SELECT
+	    oldf.id AS old_fund,
+	    oldf.org,
+	    oldf.name,
+	    oldf.currency_type,
+	    oldf.code,
+		oldf.rollover,
+	    newf.id AS new_fund_id
+	FROM
+    	acq.fund AS oldf
+    	LEFT JOIN acq.fund AS newf
+        	ON ( oldf.code = newf.code )
+	WHERE
+ 		    oldf.year = old_year
+		AND oldf.propagate
+        AND newf.year = new_year
+		AND ( ( include_desc AND oldf.org IN ( SELECT id FROM actor.org_unit_descendants( org_unit_id ) ) )
+                OR (NOT include_desc AND oldf.org = org_unit_id ) )
+	LOOP
+		--RAISE NOTICE 'Processing fund %', roll_fund.old_fund;
+		--
+		IF roll_fund.new_fund_id IS NULL THEN
+			--
+			-- The old fund hasn't been propagated yet.  Propagate it now.
+			--
+			INSERT INTO acq.fund (
+				org,
+				name,
+				year,
+				currency_type,
+				code,
+				rollover,
+				propagate,
+				balance_warning_percent,
+				balance_stop_percent
+			) VALUES (
+				roll_fund.org,
+				roll_fund.name,
+				new_year,
+				roll_fund.currency_type,
+				roll_fund.code,
+				true,
+				true,
+				roll_fund.balance_warning_percent,
+				roll_fund.balance_stop_percent
+			)
+			RETURNING id INTO new_fund;
+		ELSE
+			new_fund = roll_fund.new_fund_id;
+		END IF;
+		--
+		-- Determine the amount to transfer
+		--
+		SELECT amount
+		INTO xfer_amount
+		FROM acq.fund_spent_balance
+		WHERE fund = roll_fund.old_fund;
+		--
+		IF xfer_amount <> 0 THEN
+			IF NOT encumb_only AND roll_fund.rollover THEN
+				--
+				-- Transfer balance from old fund to new
+				--
+				--RAISE NOTICE 'Transferring % from fund % to %', xfer_amount, roll_fund.old_fund, new_fund;
+				--
+				PERFORM acq.transfer_fund(
+					roll_fund.old_fund,
+					xfer_amount,
+					new_fund,
+					xfer_amount,
+					user_id,
+					'Rollover'
+				);
+			ELSE
+				--
+				-- Transfer balance from old fund to the void
+				--
+				-- RAISE NOTICE 'Transferring % from fund % to the void', xfer_amount, roll_fund.old_fund;
+				--
+				PERFORM acq.transfer_fund(
+					roll_fund.old_fund,
+					xfer_amount,
+					NULL,
+					NULL,
+					user_id,
+					'Rollover into the void'
+				);
+			END IF;
+		END IF;
+		--
+		IF roll_fund.rollover THEN
+			--
+			-- Move any lineitems from the old fund to the new one
+			-- where the associated debit is an encumbrance.
+			--
+			-- Any other tables tying expenditure details to funds should
+			-- receive similar treatment.  At this writing there are none.
+			--
+			UPDATE acq.lineitem_detail
+			SET fund = new_fund
+			WHERE
+    			fund = roll_fund.old_fund -- this condition may be redundant
+    			AND fund_debit in
+    			(
+        			SELECT id
+        			FROM acq.fund_debit
+        			WHERE
+            			fund = roll_fund.old_fund
+            			AND encumbrance
+    			);
+			--
+			-- Move encumbrance debits from the old fund to the new fund
+			--
+			UPDATE acq.fund_debit
+			SET fund = new_fund
+			wHERE
+				fund = roll_fund.old_fund
+				AND encumbrance;
+		END IF;
+
+		-- Rollover distribution formulae funds
+		SELECT INTO roll_distrib_forms value::BOOL FROM
+			actor.org_unit_ancestor_setting(
+				'acq.fund.rollover_distrib_forms', org_unit_id
+			);
+
+		IF roll_distrib_forms THEN
+			UPDATE acq.distribution_formula_entry 
+				SET fund = roll_fund.new_fund_id
+				WHERE fund = roll_fund.old_fund;
+		END IF;
+
+		--
+		-- Mark old fund as inactive, now that we've closed it
+		--
+		UPDATE acq.fund
+		SET active = FALSE
+		WHERE id = roll_fund.old_fund;
+	END LOOP;
+END;
+$$ LANGUAGE plpgsql;
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0781', :eg_version);
+
+INSERT INTO config.org_unit_setting_type
+    (name, label, description, grp, datatype) 
+VALUES (
+    'acq.fund.rollover_distrib_forms',
+    oils_i18n_gettext(
+        'acq.fund.rollover_distrib_forms',
+        'Rollover Distribution Formulae Funds',
+        'coust',
+        'label'
+    ),
+     oils_i18n_gettext(
+        'acq.fund.rollover_distrib_forms',
+        'During fiscal rollover, update distribution formalae to use new funds',
+        'coust',
+        'description'
+    ),
+    'acq',
+    'bool'
+);
+
+
+-- No transaction needed. This can be run on a live, production server.
+SELECT evergreen.upgrade_deps_block_check('0782', :eg_version);
+
+/* ** Handled by the supplemental script ** */
+-- On a heavily used system, user activity lookup is painful.  This is used
+-- on the patron display in the staff client.
+--
+-- Measured speed increase: ~2s -> .01s
+-- CREATE INDEX CONCURRENTLY usr_activity_usr_idx on actor.usr_activity (usr);
+
+-- Finding open holds, often as a subquery within larger hold-related logic,
+-- can be sped up with the following.
+--
+-- Measured speed increase: ~3s -> .02s
+-- CREATE INDEX CONCURRENTLY hold_request_open_idx on action.hold_request (id) where cancel_time IS NULL AND fulfillment_time IS NULL;
+
+-- Hold queue position is a particularly difficult thing to calculate
+-- efficiently.  Recent changes in the query structure now allow some
+-- optimization via indexing.  These do that.
+--
+-- Measured speed increase: ~6s -> ~0.4s
+-- CREATE INDEX CONCURRENTLY cp_available_by_circ_lib_idx on asset.copy (circ_lib) where status IN (0,7);
+-- CREATE INDEX CONCURRENTLY hold_request_current_copy_before_cap_idx on action.hold_request (current_copy) where capture_time IS NULL AND cancel_time IS NULL;
+
+-- After heavy use, fetching EDI messages becomes time consuming.  The following
+-- index addresses that for large-data environments.
+-- 
+-- Measured speed increase: ~3s -> .1s
+-- CREATE INDEX CONCURRENTLY edi_message_account_status_idx on acq.edi_message (account,status);
+
+-- After heavy use, fetching POs becomes time consuming.  The following
+-- index addresses that for large-data environments.
+-- 
+-- Measured speed increase: ~1.5s -> .1s
+-- CREATE INDEX CONCURRENTLY edi_message_po_idx on acq.edi_message (purchase_order);
+
+-- Related to EDI messages, fetching of certain A/T events benefit from specific
+-- indexing.  This index is more general than necessary for the observed query
+-- but ends up speeding several other (already relatively fast) queries.
+--
+-- Measured speed increase: ~2s -> .06s
+-- CREATE INDEX CONCURRENTLY atev_def_state on action_trigger.event (event_def,state);
+
+-- Retrieval of hold transit by hold id (for transit completion or cancelation)
+-- is slow in some query formulations.
+--
+-- Measured speed increase: ~.5s -> .1s
+-- CREATE INDEX CONCURRENTLY hold_transit_copy_hold_idx on action.hold_transit_copy (hold);
+
+
+SELECT evergreen.upgrade_deps_block_check('0785', :eg_version);
+
+DROP INDEX actor.prox_adj_once_idx;
+
+CREATE UNIQUE INDEX prox_adj_once_idx ON actor.org_unit_proximity_adjustment (
+    COALESCE(item_circ_lib, -1),
+    COALESCE(item_owning_lib, -1),
+    COALESCE(copy_location, -1),
+    COALESCE(hold_pickup_lib, -1),
+    COALESCE(hold_request_lib, -1),
+    COALESCE(circ_mod, ''),
+    pos
+);
+
+
+--Check if we can apply the upgrade.
+SELECT evergreen.upgrade_deps_block_check('0786', :eg_version);
+
+
+CREATE TYPE search.search_result AS ( id BIGINT, rel NUMERIC, record INT, total INT, checked INT, visible INT, deleted INT, excluded INT );
+CREATE TYPE search.search_args AS ( id INT, field_class TEXT, field_name TEXT, table_alias TEXT, term TEXT, term_type TEXT );
+
+CREATE OR REPLACE FUNCTION search.query_parser_fts (
+
+    param_search_ou INT,
+    param_depth     INT,
+    param_query     TEXT,
+    param_statuses  INT[],
+    param_locations INT[],
+    param_offset    INT,
+    param_check     INT,
+    param_limit     INT,
+    metarecord      BOOL,
+    staff           BOOL,
+    param_pref_ou   INT DEFAULT NULL
+) RETURNS SETOF search.search_result AS $func$
+DECLARE
+
+    current_res         search.search_result%ROWTYPE;
+    search_org_list     INT[];
+    luri_org_list       INT[];
+    tmp_int_list        INT[];
+
+    check_limit         INT;
+    core_limit          INT;
+    core_offset         INT;
+    tmp_int             INT;
+
+    core_result         RECORD;
+    core_cursor         REFCURSOR;
+    core_rel_query      TEXT;
+
+    total_count         INT := 0;
+    check_count         INT := 0;
+    deleted_count       INT := 0;
+    visible_count       INT := 0;
+    excluded_count      INT := 0;
+
+BEGIN
+
+    check_limit := COALESCE( param_check, 1000 );
+    core_limit  := COALESCE( param_limit, 25000 );
+    core_offset := COALESCE( param_offset, 0 );
+
+    -- core_skip_chk := COALESCE( param_skip_chk, 1 );
+
+    IF param_search_ou > 0 THEN
+        IF param_depth IS NOT NULL THEN
+            SELECT array_accum(distinct id) INTO search_org_list FROM actor.org_unit_descendants( param_search_ou, param_depth );
+        ELSE
+            SELECT array_accum(distinct id) INTO search_org_list FROM actor.org_unit_descendants( param_search_ou );
+        END IF;
+
+        SELECT array_accum(distinct id) INTO luri_org_list FROM actor.org_unit_ancestors( param_search_ou );
+
+    ELSIF param_search_ou < 0 THEN
+        SELECT array_accum(distinct org_unit) INTO search_org_list FROM actor.org_lasso_map WHERE lasso = -param_search_ou;
+
+        FOR tmp_int IN SELECT * FROM UNNEST(search_org_list) LOOP
+            SELECT array_accum(distinct id) INTO tmp_int_list FROM actor.org_unit_ancestors( tmp_int );
+            luri_org_list := luri_org_list || tmp_int_list;
+        END LOOP;
+
+        SELECT array_accum(DISTINCT x.id) INTO luri_org_list FROM UNNEST(luri_org_list) x(id);
+
+    ELSIF param_search_ou = 0 THEN
+        -- reserved for user lassos (ou_buckets/type='lasso') with ID passed in depth ... hack? sure.
+    END IF;
+
+    IF param_pref_ou IS NOT NULL THEN
+        SELECT array_accum(distinct id) INTO tmp_int_list FROM actor.org_unit_ancestors(param_pref_ou);
+        luri_org_list := luri_org_list || tmp_int_list;
+    END IF;
+
+    OPEN core_cursor FOR EXECUTE param_query;
+
+    LOOP
+
+        FETCH core_cursor INTO core_result;
+        EXIT WHEN NOT FOUND;
+        EXIT WHEN total_count >= core_limit;
+
+        total_count := total_count + 1;
+
+        CONTINUE WHEN total_count NOT BETWEEN  core_offset + 1 AND check_limit + core_offset;
+
+        check_count := check_count + 1;
+
+        PERFORM 1 FROM biblio.record_entry b WHERE NOT b.deleted AND b.id IN ( SELECT * FROM unnest( core_result.records ) );
+        IF NOT FOUND THEN
+            -- RAISE NOTICE ' % were all deleted ... ', core_result.records;
+            deleted_count := deleted_count + 1;
+            CONTINUE;
+        END IF;
+
+        PERFORM 1
+          FROM  biblio.record_entry b
+                JOIN config.bib_source s ON (b.source = s.id)
+          WHERE s.transcendant
+                AND b.id IN ( SELECT * FROM unnest( core_result.records ) );
+
+        IF FOUND THEN
+            -- RAISE NOTICE ' % were all transcendant ... ', core_result.records;
+            visible_count := visible_count + 1;
+
+            current_res.id = core_result.id;
+            current_res.rel = core_result.rel;
+
+            tmp_int := 1;
+            IF metarecord THEN
+                SELECT COUNT(DISTINCT s.source) INTO tmp_int FROM metabib.metarecord_source_map s WHERE s.metarecord = core_result.id;
+            END IF;
+
+            IF tmp_int = 1 THEN
+                current_res.record = core_result.records[1];
+            ELSE
+                current_res.record = NULL;
+            END IF;
+
+            RETURN NEXT current_res;
+
+            CONTINUE;
+        END IF;
+
+        PERFORM 1
+          FROM  asset.call_number cn
+                JOIN asset.uri_call_number_map map ON (map.call_number = cn.id)
+                JOIN asset.uri uri ON (map.uri = uri.id)
+          WHERE NOT cn.deleted
+                AND cn.label = '##URI##'
+                AND uri.active
+                AND ( param_locations IS NULL OR array_upper(param_locations, 1) IS NULL )
+                AND cn.record IN ( SELECT * FROM unnest( core_result.records ) )
+                AND cn.owning_lib IN ( SELECT * FROM unnest( luri_org_list ) )
+          LIMIT 1;
+
+        IF FOUND THEN
+            -- RAISE NOTICE ' % have at least one URI ... ', core_result.records;
+            visible_count := visible_count + 1;
+
+            current_res.id = core_result.id;
+            current_res.rel = core_result.rel;
+
+            tmp_int := 1;
+            IF metarecord THEN
+                SELECT COUNT(DISTINCT s.source) INTO tmp_int FROM metabib.metarecord_source_map s WHERE s.metarecord = core_result.id;
+            END IF;
+
+            IF tmp_int = 1 THEN
+                current_res.record = core_result.records[1];
+            ELSE
+                current_res.record = NULL;
+            END IF;
+
+            RETURN NEXT current_res;
+
+            CONTINUE;
+        END IF;
+
+        IF param_statuses IS NOT NULL AND array_upper(param_statuses, 1) > 0 THEN
+
+            PERFORM 1
+              FROM  asset.call_number cn
+                    JOIN asset.copy cp ON (cp.call_number = cn.id)
+              WHERE NOT cn.deleted
+                    AND NOT cp.deleted
+                    AND cp.status IN ( SELECT * FROM unnest( param_statuses ) )
+                    AND cn.record IN ( SELECT * FROM unnest( core_result.records ) )
+                    AND cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+              LIMIT 1;
+
+            IF NOT FOUND THEN
+                PERFORM 1
+                  FROM  biblio.peer_bib_copy_map pr
+                        JOIN asset.copy cp ON (cp.id = pr.target_copy)
+                  WHERE NOT cp.deleted
+                        AND cp.status IN ( SELECT * FROM unnest( param_statuses ) )
+                        AND pr.peer_record IN ( SELECT * FROM unnest( core_result.records ) )
+                        AND cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                  LIMIT 1;
+
+                IF NOT FOUND THEN
+                -- RAISE NOTICE ' % and multi-home linked records were all status-excluded ... ', core_result.records;
+                    excluded_count := excluded_count + 1;
+                    CONTINUE;
+                END IF;
+            END IF;
+
+        END IF;
+
+        IF param_locations IS NOT NULL AND array_upper(param_locations, 1) > 0 THEN
+
+            PERFORM 1
+              FROM  asset.call_number cn
+                    JOIN asset.copy cp ON (cp.call_number = cn.id)
+              WHERE NOT cn.deleted
+                    AND NOT cp.deleted
+                    AND cp.location IN ( SELECT * FROM unnest( param_locations ) )
+                    AND cn.record IN ( SELECT * FROM unnest( core_result.records ) )
+                    AND cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+              LIMIT 1;
+
+            IF NOT FOUND THEN
+                PERFORM 1
+                  FROM  biblio.peer_bib_copy_map pr
+                        JOIN asset.copy cp ON (cp.id = pr.target_copy)
+                  WHERE NOT cp.deleted
+                        AND cp.location IN ( SELECT * FROM unnest( param_locations ) )
+                        AND pr.peer_record IN ( SELECT * FROM unnest( core_result.records ) )
+                        AND cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                  LIMIT 1;
+
+                IF NOT FOUND THEN
+                    -- RAISE NOTICE ' % and multi-home linked records were all copy_location-excluded ... ', core_result.records;
+                    excluded_count := excluded_count + 1;
+                    CONTINUE;
+                END IF;
+            END IF;
+
+        END IF;
+
+        IF staff IS NULL OR NOT staff THEN
+
+            PERFORM 1
+              FROM  asset.opac_visible_copies
+              WHERE circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                    AND record IN ( SELECT * FROM unnest( core_result.records ) )
+              LIMIT 1;
+
+            IF NOT FOUND THEN
+                PERFORM 1
+                  FROM  biblio.peer_bib_copy_map pr
+                        JOIN asset.opac_visible_copies cp ON (cp.copy_id = pr.target_copy)
+                  WHERE cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                        AND pr.peer_record IN ( SELECT * FROM unnest( core_result.records ) )
+                  LIMIT 1;
+
+                IF NOT FOUND THEN
+
+                    -- RAISE NOTICE ' % and multi-home linked records were all visibility-excluded ... ', core_result.records;
+                    excluded_count := excluded_count + 1;
+                    CONTINUE;
+                END IF;
+            END IF;
+
+        ELSE
+
+            PERFORM 1
+              FROM  asset.call_number cn
+                    JOIN asset.copy cp ON (cp.call_number = cn.id)
+              WHERE NOT cn.deleted
+                    AND NOT cp.deleted
+                    AND cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                    AND cn.record IN ( SELECT * FROM unnest( core_result.records ) )
+              LIMIT 1;
+
+            IF NOT FOUND THEN
+
+                PERFORM 1
+                  FROM  biblio.peer_bib_copy_map pr
+                        JOIN asset.copy cp ON (cp.id = pr.target_copy)
+                  WHERE NOT cp.deleted
+                        AND cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                        AND pr.peer_record IN ( SELECT * FROM unnest( core_result.records ) )
+                  LIMIT 1;
+
+                IF NOT FOUND THEN
+
+                    PERFORM 1
+                      FROM  asset.call_number cn
+                            JOIN asset.copy cp ON (cp.call_number = cn.id)
+                      WHERE cn.record IN ( SELECT * FROM unnest( core_result.records ) )
+                            AND NOT cp.deleted
+                      LIMIT 1;
+
+                    IF FOUND THEN
+                        -- RAISE NOTICE ' % and multi-home linked records were all visibility-excluded ... ', core_result.records;
+                        excluded_count := excluded_count + 1;
+                        CONTINUE;
+                    END IF;
+                END IF;
+
+            END IF;
+
+        END IF;
+
+        visible_count := visible_count + 1;
+
+        current_res.id = core_result.id;
+        current_res.rel = core_result.rel;
+
+        tmp_int := 1;
+        IF metarecord THEN
+            SELECT COUNT(DISTINCT s.source) INTO tmp_int FROM metabib.metarecord_source_map s WHERE s.metarecord = core_result.id;
+        END IF;
+
+        IF tmp_int = 1 THEN
+            current_res.record = core_result.records[1];
+        ELSE
+            current_res.record = NULL;
+        END IF;
+
+        RETURN NEXT current_res;
+
+        IF visible_count % 1000 = 0 THEN
+            -- RAISE NOTICE ' % visible so far ... ', visible_count;
+        END IF;
+
+    END LOOP;
+
+    current_res.id = NULL;
+    current_res.rel = NULL;
+    current_res.record = NULL;
+    current_res.total = total_count;
+    current_res.checked = check_count;
+    current_res.deleted = deleted_count;
+    current_res.visible = visible_count;
+    current_res.excluded = excluded_count;
+
+    CLOSE core_cursor;
+
+    RETURN NEXT current_res;
+
+END;
+$func$ LANGUAGE PLPGSQL;
+
+ 
+
+SELECT evergreen.upgrade_deps_block_check('0788', :eg_version);
+
+-- New view including 264 as a potential tag for publisher and pubdate
+CREATE OR REPLACE VIEW reporter.old_super_simple_record AS
+SELECT  r.id,
+    r.fingerprint,
+    r.quality,
+    r.tcn_source,
+    r.tcn_value,
+    FIRST(title.value) AS title,
+    FIRST(author.value) AS author,
+    ARRAY_TO_STRING(ARRAY_ACCUM( DISTINCT publisher.value), ', ') AS publisher,
+    ARRAY_TO_STRING(ARRAY_ACCUM( DISTINCT SUBSTRING(pubdate.value FROM $$\d+$$) ), ', ') AS pubdate,
+    ARRAY_ACCUM( DISTINCT REPLACE(SUBSTRING(isbn.value FROM $$^\S+$$), '-', '') ) AS isbn,
+    ARRAY_ACCUM( DISTINCT REGEXP_REPLACE(issn.value, E'^\\S*(\\d{4})[-\\s](\\d{3,4}x?)', E'\\1 \\2') ) AS issn
+  FROM  biblio.record_entry r
+    LEFT JOIN metabib.full_rec title ON (r.id = title.record AND title.tag = '245' AND title.subfield = 'a')
+    LEFT JOIN metabib.full_rec author ON (r.id = author.record AND author.tag IN ('100','110','111') AND author.subfield = 'a')
+    LEFT JOIN metabib.full_rec publisher ON (r.id = publisher.record AND (publisher.tag = '260' OR (publisher.tag = '264' AND publisher.ind2 = '1')) AND publisher.subfield = 'b')
+    LEFT JOIN metabib.full_rec pubdate ON (r.id = pubdate.record AND (pubdate.tag = '260' OR (pubdate.tag = '264' AND pubdate.ind2 = '1')) AND pubdate.subfield = 'c')
+    LEFT JOIN metabib.full_rec isbn ON (r.id = isbn.record AND isbn.tag IN ('024', '020') AND isbn.subfield IN ('a','z'))
+    LEFT JOIN metabib.full_rec issn ON (r.id = issn.record AND issn.tag = '022' AND issn.subfield = 'a')
+  GROUP BY 1,2,3,4,5;
+
+-- Update reporter.materialized_simple_record with new 264-based values for publisher and pubdate
+DELETE FROM reporter.materialized_simple_record WHERE id IN (
+    SELECT DISTINCT record FROM metabib.full_rec WHERE tag = '264' AND subfield IN ('b', 'c')
+);
+
+INSERT INTO reporter.materialized_simple_record
+    SELECT DISTINCT rossr.* FROM reporter.old_super_simple_record rossr INNER JOIN metabib.full_rec mfr ON mfr.record = rossr.id
+        WHERE mfr.tag = '264' AND mfr.subfield IN ('b', 'c')
+;
+
+SELECT evergreen.upgrade_deps_block_check('0789', :eg_version);
+SELECT evergreen.upgrade_deps_block_check('0790', :eg_version);
+
+ALTER TABLE config.metabib_class ADD COLUMN combined BOOL NOT NULL DEFAULT FALSE;
+UPDATE config.metabib_class SET combined = TRUE WHERE name = 'subject';
+
+
+--Check if we can apply the upgrade.
+SELECT evergreen.upgrade_deps_block_check('0791', :eg_version);
+
+
+
+CREATE OR REPLACE FUNCTION search.query_parser_fts (
+
+    param_search_ou INT,
+    param_depth     INT,
+    param_query     TEXT,
+    param_statuses  INT[],
+    param_locations INT[],
+    param_offset    INT,
+    param_check     INT,
+    param_limit     INT,
+    metarecord      BOOL,
+    staff           BOOL,
+    deleted_search  BOOL,
+    param_pref_ou   INT DEFAULT NULL
+) RETURNS SETOF search.search_result AS $func$
+DECLARE
+
+    current_res         search.search_result%ROWTYPE;
+    search_org_list     INT[];
+    luri_org_list       INT[];
+    tmp_int_list        INT[];
+
+    check_limit         INT;
+    core_limit          INT;
+    core_offset         INT;
+    tmp_int             INT;
+
+    core_result         RECORD;
+    core_cursor         REFCURSOR;
+    core_rel_query      TEXT;
+
+    total_count         INT := 0;
+    check_count         INT := 0;
+    deleted_count       INT := 0;
+    visible_count       INT := 0;
+    excluded_count      INT := 0;
+
+BEGIN
+
+    check_limit := COALESCE( param_check, 1000 );
+    core_limit  := COALESCE( param_limit, 25000 );
+    core_offset := COALESCE( param_offset, 0 );
+
+    -- core_skip_chk := COALESCE( param_skip_chk, 1 );
+
+    IF param_search_ou > 0 THEN
+        IF param_depth IS NOT NULL THEN
+            SELECT array_accum(distinct id) INTO search_org_list FROM actor.org_unit_descendants( param_search_ou, param_depth );
+        ELSE
+            SELECT array_accum(distinct id) INTO search_org_list FROM actor.org_unit_descendants( param_search_ou );
+        END IF;
+
+        SELECT array_accum(distinct id) INTO luri_org_list FROM actor.org_unit_ancestors( param_search_ou );
+
+    ELSIF param_search_ou < 0 THEN
+        SELECT array_accum(distinct org_unit) INTO search_org_list FROM actor.org_lasso_map WHERE lasso = -param_search_ou;
+
+        FOR tmp_int IN SELECT * FROM UNNEST(search_org_list) LOOP
+            SELECT array_accum(distinct id) INTO tmp_int_list FROM actor.org_unit_ancestors( tmp_int );
+            luri_org_list := luri_org_list || tmp_int_list;
+        END LOOP;
+
+        SELECT array_accum(DISTINCT x.id) INTO luri_org_list FROM UNNEST(luri_org_list) x(id);
+
+    ELSIF param_search_ou = 0 THEN
+        -- reserved for user lassos (ou_buckets/type='lasso') with ID passed in depth ... hack? sure.
+    END IF;
+
+    IF param_pref_ou IS NOT NULL THEN
+        SELECT array_accum(distinct id) INTO tmp_int_list FROM actor.org_unit_ancestors(param_pref_ou);
+        luri_org_list := luri_org_list || tmp_int_list;
+    END IF;
+
+    OPEN core_cursor FOR EXECUTE param_query;
+
+    LOOP
+
+        FETCH core_cursor INTO core_result;
+        EXIT WHEN NOT FOUND;
+        EXIT WHEN total_count >= core_limit;
+
+        total_count := total_count + 1;
+
+        CONTINUE WHEN total_count NOT BETWEEN  core_offset + 1 AND check_limit + core_offset;
+
+        check_count := check_count + 1;
+
+        IF NOT deleted_search THEN
+
+            PERFORM 1 FROM biblio.record_entry b WHERE NOT b.deleted AND b.id IN ( SELECT * FROM unnest( core_result.records ) );
+            IF NOT FOUND THEN
+                -- RAISE NOTICE ' % were all deleted ... ', core_result.records;
+                deleted_count := deleted_count + 1;
+                CONTINUE;
+            END IF;
+
+            PERFORM 1
+              FROM  biblio.record_entry b
+                    JOIN config.bib_source s ON (b.source = s.id)
+              WHERE s.transcendant
+                    AND b.id IN ( SELECT * FROM unnest( core_result.records ) );
+
+            IF FOUND THEN
+                -- RAISE NOTICE ' % were all transcendant ... ', core_result.records;
+                visible_count := visible_count + 1;
+
+                current_res.id = core_result.id;
+                current_res.rel = core_result.rel;
+
+                tmp_int := 1;
+                IF metarecord THEN
+                    SELECT COUNT(DISTINCT s.source) INTO tmp_int FROM metabib.metarecord_source_map s WHERE s.metarecord = core_result.id;
+                END IF;
+
+                IF tmp_int = 1 THEN
+                    current_res.record = core_result.records[1];
+                ELSE
+                    current_res.record = NULL;
+                END IF;
+
+                RETURN NEXT current_res;
+
+                CONTINUE;
+            END IF;
+
+            PERFORM 1
+              FROM  asset.call_number cn
+                    JOIN asset.uri_call_number_map map ON (map.call_number = cn.id)
+                    JOIN asset.uri uri ON (map.uri = uri.id)
+              WHERE NOT cn.deleted
+                    AND cn.label = '##URI##'
+                    AND uri.active
+                    AND ( param_locations IS NULL OR array_upper(param_locations, 1) IS NULL )
+                    AND cn.record IN ( SELECT * FROM unnest( core_result.records ) )
+                    AND cn.owning_lib IN ( SELECT * FROM unnest( luri_org_list ) )
+              LIMIT 1;
+
+            IF FOUND THEN
+                -- RAISE NOTICE ' % have at least one URI ... ', core_result.records;
+                visible_count := visible_count + 1;
+
+                current_res.id = core_result.id;
+                current_res.rel = core_result.rel;
+
+                tmp_int := 1;
+                IF metarecord THEN
+                    SELECT COUNT(DISTINCT s.source) INTO tmp_int FROM metabib.metarecord_source_map s WHERE s.metarecord = core_result.id;
+                END IF;
+
+                IF tmp_int = 1 THEN
+                    current_res.record = core_result.records[1];
+                ELSE
+                    current_res.record = NULL;
+                END IF;
+
+                RETURN NEXT current_res;
+
+                CONTINUE;
+            END IF;
+
+            IF param_statuses IS NOT NULL AND array_upper(param_statuses, 1) > 0 THEN
+
+                PERFORM 1
+                  FROM  asset.call_number cn
+                        JOIN asset.copy cp ON (cp.call_number = cn.id)
+                  WHERE NOT cn.deleted
+                        AND NOT cp.deleted
+                        AND cp.status IN ( SELECT * FROM unnest( param_statuses ) )
+                        AND cn.record IN ( SELECT * FROM unnest( core_result.records ) )
+                        AND cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                  LIMIT 1;
+
+                IF NOT FOUND THEN
+                    PERFORM 1
+                      FROM  biblio.peer_bib_copy_map pr
+                            JOIN asset.copy cp ON (cp.id = pr.target_copy)
+                      WHERE NOT cp.deleted
+                            AND cp.status IN ( SELECT * FROM unnest( param_statuses ) )
+                            AND pr.peer_record IN ( SELECT * FROM unnest( core_result.records ) )
+                            AND cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                      LIMIT 1;
+
+                    IF NOT FOUND THEN
+                    -- RAISE NOTICE ' % and multi-home linked records were all status-excluded ... ', core_result.records;
+                        excluded_count := excluded_count + 1;
+                        CONTINUE;
+                    END IF;
+                END IF;
+
+            END IF;
+
+            IF param_locations IS NOT NULL AND array_upper(param_locations, 1) > 0 THEN
+
+                PERFORM 1
+                  FROM  asset.call_number cn
+                        JOIN asset.copy cp ON (cp.call_number = cn.id)
+                  WHERE NOT cn.deleted
+                        AND NOT cp.deleted
+                        AND cp.location IN ( SELECT * FROM unnest( param_locations ) )
+                        AND cn.record IN ( SELECT * FROM unnest( core_result.records ) )
+                        AND cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                  LIMIT 1;
+
+                IF NOT FOUND THEN
+                    PERFORM 1
+                      FROM  biblio.peer_bib_copy_map pr
+                            JOIN asset.copy cp ON (cp.id = pr.target_copy)
+                      WHERE NOT cp.deleted
+                            AND cp.location IN ( SELECT * FROM unnest( param_locations ) )
+                            AND pr.peer_record IN ( SELECT * FROM unnest( core_result.records ) )
+                            AND cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                      LIMIT 1;
+
+                    IF NOT FOUND THEN
+                        -- RAISE NOTICE ' % and multi-home linked records were all copy_location-excluded ... ', core_result.records;
+                        excluded_count := excluded_count + 1;
+                        CONTINUE;
+                    END IF;
+                END IF;
+
+            END IF;
+
+            IF staff IS NULL OR NOT staff THEN
+
+                PERFORM 1
+                  FROM  asset.opac_visible_copies
+                  WHERE circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                        AND record IN ( SELECT * FROM unnest( core_result.records ) )
+                  LIMIT 1;
+
+                IF NOT FOUND THEN
+                    PERFORM 1
+                      FROM  biblio.peer_bib_copy_map pr
+                            JOIN asset.opac_visible_copies cp ON (cp.copy_id = pr.target_copy)
+                      WHERE cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                            AND pr.peer_record IN ( SELECT * FROM unnest( core_result.records ) )
+                      LIMIT 1;
+
+                    IF NOT FOUND THEN
+
+                        -- RAISE NOTICE ' % and multi-home linked records were all visibility-excluded ... ', core_result.records;
+                        excluded_count := excluded_count + 1;
+                        CONTINUE;
+                    END IF;
+                END IF;
+
+            ELSE
+
+                PERFORM 1
+                  FROM  asset.call_number cn
+                        JOIN asset.copy cp ON (cp.call_number = cn.id)
+                  WHERE NOT cn.deleted
+                        AND NOT cp.deleted
+                        AND cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                        AND cn.record IN ( SELECT * FROM unnest( core_result.records ) )
+                  LIMIT 1;
+
+                IF NOT FOUND THEN
+
+                    PERFORM 1
+                      FROM  biblio.peer_bib_copy_map pr
+                            JOIN asset.copy cp ON (cp.id = pr.target_copy)
+                      WHERE NOT cp.deleted
+                            AND cp.circ_lib IN ( SELECT * FROM unnest( search_org_list ) )
+                            AND pr.peer_record IN ( SELECT * FROM unnest( core_result.records ) )
+                      LIMIT 1;
+
+                    IF NOT FOUND THEN
+
+                        PERFORM 1
+                          FROM  asset.call_number cn
+                                JOIN asset.copy cp ON (cp.call_number = cn.id)
+                          WHERE cn.record IN ( SELECT * FROM unnest( core_result.records ) )
+                                AND NOT cp.deleted
+                          LIMIT 1;
+
+                        IF FOUND THEN
+                            -- RAISE NOTICE ' % and multi-home linked records were all visibility-excluded ... ', core_result.records;
+                            excluded_count := excluded_count + 1;
+                            CONTINUE;
+                        END IF;
+                    END IF;
+
+                END IF;
+
+            END IF;
+
+        END IF;
+
+        visible_count := visible_count + 1;
+
+        current_res.id = core_result.id;
+        current_res.rel = core_result.rel;
+
+        tmp_int := 1;
+        IF metarecord THEN
+            SELECT COUNT(DISTINCT s.source) INTO tmp_int FROM metabib.metarecord_source_map s WHERE s.metarecord = core_result.id;
+        END IF;
+
+        IF tmp_int = 1 THEN
+            current_res.record = core_result.records[1];
+        ELSE
+            current_res.record = NULL;
+        END IF;
+
+        RETURN NEXT current_res;
+
+        IF visible_count % 1000 = 0 THEN
+            -- RAISE NOTICE ' % visible so far ... ', visible_count;
+        END IF;
+
+    END LOOP;
+
+    current_res.id = NULL;
+    current_res.rel = NULL;
+    current_res.record = NULL;
+    current_res.total = total_count;
+    current_res.checked = check_count;
+    current_res.deleted = deleted_count;
+    current_res.visible = visible_count;
+    current_res.excluded = excluded_count;
+
+    CLOSE core_cursor;
+
+    RETURN NEXT current_res;
+
+END;
+$func$ LANGUAGE PLPGSQL;
+
+
+-- AFTER UPDATE OR INSERT trigger for biblio.record_entry
+CREATE OR REPLACE FUNCTION biblio.indexing_ingest_or_delete () RETURNS TRIGGER AS $func$
+DECLARE
+    transformed_xml TEXT;
+    prev_xfrm       TEXT;
+    normalizer      RECORD;
+    xfrm            config.xml_transform%ROWTYPE;
+    attr_value      TEXT;
+    new_attrs       HSTORE := ''::HSTORE;
+    attr_def        config.record_attr_definition%ROWTYPE;
+BEGIN
+
+    IF NEW.deleted IS TRUE THEN -- If this bib is deleted
+        PERFORM * FROM config.internal_flag WHERE
+            name = 'ingest.metarecord_mapping.preserve_on_delete' AND enabled;
+        IF NOT FOUND THEN
+            -- One needs to keep these around to support searches
+            -- with the #deleted modifier, so one should turn on the named
+            -- internal flag for that functionality.
+            DELETE FROM metabib.metarecord_source_map WHERE source = NEW.id;
+            DELETE FROM metabib.record_attr WHERE id = NEW.id;
+        END IF;
+
+        DELETE FROM authority.bib_linking WHERE bib = NEW.id; -- Avoid updating fields in bibs that are no longer visible
+        DELETE FROM biblio.peer_bib_copy_map WHERE peer_record = NEW.id; -- Separate any multi-homed items
+        DELETE FROM metabib.browse_entry_def_map WHERE source = NEW.id; -- Don't auto-suggest deleted bibs
+        RETURN NEW; -- and we're done
+    END IF;
+
+    IF TG_OP = 'UPDATE' THEN -- re-ingest?
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.reingest.force_on_same_marc' AND enabled;
+
+        IF NOT FOUND AND OLD.marc = NEW.marc THEN -- don't do anything if the MARC didn't change
+            RETURN NEW;
+        END IF;
+    END IF;
+
+    -- Record authority linking
+    PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_authority_linking' AND enabled;
+    IF NOT FOUND THEN
+        PERFORM biblio.map_authority_linking( NEW.id, NEW.marc );
+    END IF;
+
+    -- Flatten and insert the mfr data
+    PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_metabib_full_rec' AND enabled;
+    IF NOT FOUND THEN
+        PERFORM metabib.reingest_metabib_full_rec(NEW.id);
+
+        -- Now we pull out attribute data, which is dependent on the mfr for all but XPath-based fields
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_metabib_rec_descriptor' AND enabled;
+        IF NOT FOUND THEN
+            FOR attr_def IN SELECT * FROM config.record_attr_definition ORDER BY format LOOP
+
+                IF attr_def.tag IS NOT NULL THEN -- tag (and optional subfield list) selection
+                    SELECT  ARRAY_TO_STRING(ARRAY_ACCUM(value), COALESCE(attr_def.joiner,' ')) INTO attr_value
+                      FROM  (SELECT * FROM metabib.full_rec ORDER BY tag, subfield) AS x
+                      WHERE record = NEW.id
+                            AND tag LIKE attr_def.tag
+                            AND CASE
+                                WHEN attr_def.sf_list IS NOT NULL 
+                                    THEN POSITION(subfield IN attr_def.sf_list) > 0
+                                ELSE TRUE
+                                END
+                      GROUP BY tag
+                      ORDER BY tag
+                      LIMIT 1;
+
+                ELSIF attr_def.fixed_field IS NOT NULL THEN -- a named fixed field, see config.marc21_ff_pos_map.fixed_field
+                    attr_value := biblio.marc21_extract_fixed_field(NEW.id, attr_def.fixed_field);
+
+                ELSIF attr_def.xpath IS NOT NULL THEN -- and xpath expression
+
+                    SELECT INTO xfrm * FROM config.xml_transform WHERE name = attr_def.format;
+            
+                    -- See if we can skip the XSLT ... it's expensive
+                    IF prev_xfrm IS NULL OR prev_xfrm <> xfrm.name THEN
+                        -- Can't skip the transform
+                        IF xfrm.xslt <> '---' THEN
+                            transformed_xml := oils_xslt_process(NEW.marc,xfrm.xslt);
+                        ELSE
+                            transformed_xml := NEW.marc;
+                        END IF;
+            
+                        prev_xfrm := xfrm.name;
+                    END IF;
+
+                    IF xfrm.name IS NULL THEN
+                        -- just grab the marcxml (empty) transform
+                        SELECT INTO xfrm * FROM config.xml_transform WHERE xslt = '---' LIMIT 1;
+                        prev_xfrm := xfrm.name;
+                    END IF;
+
+                    attr_value := oils_xpath_string(attr_def.xpath, transformed_xml, COALESCE(attr_def.joiner,' '), ARRAY[ARRAY[xfrm.prefix, xfrm.namespace_uri]]);
+
+                ELSIF attr_def.phys_char_sf IS NOT NULL THEN -- a named Physical Characteristic, see config.marc21_physical_characteristic_*_map
+                    SELECT  m.value INTO attr_value
+                      FROM  biblio.marc21_physical_characteristics(NEW.id) v
+                            JOIN config.marc21_physical_characteristic_value_map m ON (m.id = v.value)
+                      WHERE v.subfield = attr_def.phys_char_sf
+                      LIMIT 1; -- Just in case ...
+
+                END IF;
+
+                -- apply index normalizers to attr_value
+                FOR normalizer IN
+                    SELECT  n.func AS func,
+                            n.param_count AS param_count,
+                            m.params AS params
+                      FROM  config.index_normalizer n
+                            JOIN config.record_attr_index_norm_map m ON (m.norm = n.id)
+                      WHERE attr = attr_def.name
+                      ORDER BY m.pos LOOP
+                        EXECUTE 'SELECT ' || normalizer.func || '(' ||
+                            COALESCE( quote_literal( attr_value ), 'NULL' ) ||
+                            CASE
+                                WHEN normalizer.param_count > 0
+                                    THEN ',' || REPLACE(REPLACE(BTRIM(normalizer.params,'[]'),E'\'',E'\\\''),E'"',E'\'')
+                                    ELSE ''
+                                END ||
+                            ')' INTO attr_value;
+        
+                END LOOP;
+
+                -- Add the new value to the hstore
+                new_attrs := new_attrs || hstore( attr_def.name, attr_value );
+
+            END LOOP;
+
+            IF TG_OP = 'INSERT' OR OLD.deleted THEN -- initial insert OR revivication
+                DELETE FROM metabib.record_attr WHERE id = NEW.id;
+                INSERT INTO metabib.record_attr (id, attrs) VALUES (NEW.id, new_attrs);
+            ELSE
+                UPDATE metabib.record_attr SET attrs = new_attrs WHERE id = NEW.id;
+            END IF;
+
+        END IF;
+    END IF;
+
+    -- Gather and insert the field entry data
+    PERFORM metabib.reingest_metabib_field_entries(NEW.id);
+
+    -- Located URI magic
+    IF TG_OP = 'INSERT' THEN
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_located_uri' AND enabled;
+        IF NOT FOUND THEN
+            PERFORM biblio.extract_located_uris( NEW.id, NEW.marc, NEW.editor );
+        END IF;
+    ELSE
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_located_uri' AND enabled;
+        IF NOT FOUND THEN
+            PERFORM biblio.extract_located_uris( NEW.id, NEW.marc, NEW.editor );
+        END IF;
+    END IF;
+
+    -- (re)map metarecord-bib linking
+    IF TG_OP = 'INSERT' THEN -- if not deleted and performing an insert, check for the flag
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.metarecord_mapping.skip_on_insert' AND enabled;
+        IF NOT FOUND THEN
+            PERFORM metabib.remap_metarecord_for_bib( NEW.id, NEW.fingerprint );
+        END IF;
+    ELSE -- we're doing an update, and we're not deleted, remap
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.metarecord_mapping.skip_on_update' AND enabled;
+        IF NOT FOUND THEN
+            PERFORM metabib.remap_metarecord_for_bib( NEW.id, NEW.fingerprint );
+        END IF;
+    END IF;
+
+    RETURN NEW;
+END;
+$func$ LANGUAGE PLPGSQL;
+ 
+SELECT evergreen.upgrade_deps_block_check('0792', :eg_version);
+
+UPDATE permission.perm_list SET code = 'URL_VERIFY_UPDATE_SETTINGS' WHERE id = 544 AND code = '544';
+
+
+SELECT evergreen.upgrade_deps_block_check('0793', :eg_version);
+
+UPDATE config.best_hold_order
+SET
+    approx = 1,
+    pprox = 2,
+    aprox = 3,
+    priority = 4,
+    cut = 5,
+    depth = 6,
+    rtime = 7,
+    hprox = NULL,
+    htime = NULL
+WHERE name = 'Traditional' AND
+    pprox = 1 AND
+    aprox = 2 AND
+    priority = 3 AND
+    cut = 4 AND
+    depth = 5 AND
+    rtime = 6 ;
+
+UPDATE config.best_hold_order
+SET
+    hprox = 1,
+    approx = 2,
+    pprox = 3,
+    aprox = 4,
+    priority = 5,
+    cut = 6,
+    depth = 7,
+    rtime = 8,
+    htime = NULL
+WHERE name = 'Traditional with Holds-always-go-home' AND
+    hprox = 1 AND
+    pprox = 2 AND
+    aprox = 3 AND
+    priority = 4 AND
+    cut = 5 AND
+    depth = 6 AND
+    rtime = 7 AND
+    htime = 8;
+
+UPDATE config.best_hold_order
+SET
+    htime = 1,
+    approx = 2,
+    pprox = 3,
+    aprox = 4,
+    priority = 5,
+    cut = 6,
+    depth = 7,
+    rtime = 8,
+    hprox = NULL
+WHERE name = 'Traditional with Holds-go-home' AND
+    htime = 1 AND
+    hprox = 2 AND
+    pprox = 3 AND
+    aprox = 4 AND
+    priority = 5 AND
+    cut = 6 AND
+    depth = 7 AND
+    rtime = 8 ;
+
+
+COMMIT;
+
+-- These are from 0789, and can and should be run outside of a transaction
+CREATE TEXT SEARCH CONFIGURATION title ( COPY = english_nostop );
+CREATE TEXT SEARCH CONFIGURATION author ( COPY = english_nostop );
+CREATE TEXT SEARCH CONFIGURATION subject ( COPY = english_nostop );
+CREATE TEXT SEARCH CONFIGURATION series ( COPY = english_nostop );
+CREATE TEXT SEARCH CONFIGURATION identifier ( COPY = english_nostop );
+
+\qecho Please run Open-ILS/src/sql/Pg/version-upgrade/2.3-2.4-supplemental.sh now, which contains additional required SQL to complete your Evergreen upgrade!
+
diff --git a/Open-ILS/xul/staff_client/chrome/content/main/about.html b/Open-ILS/xul/staff_client/chrome/content/main/about.html
index 2737f47..cfd3f4e 100644
--- a/Open-ILS/xul/staff_client/chrome/content/main/about.html
+++ b/Open-ILS/xul/staff_client/chrome/content/main/about.html
@@ -1,7 +1,7 @@
 <html><head><script></script></head><body onload="var x = document.getElementById('version'); var version ='/xul/server/'.split(/\//)[2]; if (version == 'server') { version = 'versionless debug build'; } x.appendChild(document.createTextNode(version));">
 <h1 style="text-decoration: underline">Evergreen</h1>
 <p>Target Server ID: <span id="version"></span></p>
-<p>$HeadURL$</p>
+<p>http://git.evergreen-ils.org/Evergreen.git?h=refs/heads/rel_2_4</p>
 <h2>What is Evergreen?</h2>
 <blockquote>
 <p>
diff --git a/Open-ILS/xul/staff_client/defaults/preferences/prefs.js b/Open-ILS/xul/staff_client/defaults/preferences/prefs.js
index 0613a13..c0d23b9 100644
--- a/Open-ILS/xul/staff_client/defaults/preferences/prefs.js
+++ b/Open-ILS/xul/staff_client/defaults/preferences/prefs.js
@@ -11,7 +11,7 @@ pref("toolkit.singletonWindowType", "eg_main");
 pref("open-ils.enable_join_tabs", true);
 
 // We'll use this one to help brand some build information into the client, and rely on subversion keywords
-pref("open-ils.repository.headURL","$HeadURL$");
+pref("open-ils.repository.headURL","http://git.evergreen-ils.org/Evergreen.git?h=refs/heads/rel_2_4");
 pref("open-ils.repository.author","$Author$");
 pref("open-ils.repository.revision","$Revision$");
 pref("open-ils.repository.date","$Date$");
diff --git a/Open-ILS/xul/staff_client/windowssetup.nsi b/Open-ILS/xul/staff_client/windowssetup.nsi
index e0bc1ef..0638a4e 100644
--- a/Open-ILS/xul/staff_client/windowssetup.nsi
+++ b/Open-ILS/xul/staff_client/windowssetup.nsi
@@ -3,7 +3,7 @@
 ; HM NIS Edit Wizard helper defines
 ; Old versions of makensis don't like this, moved to Makefile
 ;!define /file PRODUCT_VERSION "client/VERSION"
-!define PRODUCT_TAG "Master"
+!define PRODUCT_TAG "2.4"
 !define PRODUCT_INSTALL_TAG "${PRODUCT_TAG}"
 !define UI_IMAGESET "beta"
 ;!define UI_IMAGESET "release"
diff --git a/README b/README
deleted file mode 120000
index b57451a..0000000
--- a/README
+++ /dev/null
@@ -1 +0,0 @@
-docs/installation/server_installation.txt
\ No newline at end of file
diff --git a/README b/README
new file mode 100644
index 0000000..7041d9f
--- /dev/null
+++ b/README
@@ -0,0 +1,548 @@
+Installing the Evergreen server
+===============================
+:toc:
+:numbered:
+
+Preamble: referenced user accounts
+----------------------------------
+
+In subsequent sections, we will refer to a number of different accounts, as
+follows:
+
+  * Linux user accounts:
+    ** The *user* Linux account is the account that you use to log onto the
+       Linux system as a regular user.
+    ** The *root* Linux account is an account that has system administrator
+       privileges. On Debian and Fedora you can switch to this account from
+       your *user* account by issuing the `su -` command and entering the
+       password for the *root* account when prompted. On Ubuntu you can switch
+       to this account from your *user* account using the `sudo su -` command
+       and entering the password for your *user* account when prompted.
+    ** The *opensrf* Linux account is an account that you create when installing
+       OpenSRF. You can switch to this account from the *root* account by
+       issuing the `su - opensrf` command.
+    ** The *postgres* Linux account is created automatically when you install
+       the PostgreSQL database server. You can switch to this account from the
+       *root* account by issuing the `su - postgres` command.
+  * PostgreSQL user accounts:
+    ** The *evergreen* PostgreSQL account is a superuser account that you will
+       create to connect to the PostgreSQL database server.
+  * Evergreen administrator account:
+    ** The *egadmin* Evergreen account is an administrator account for
+       Evergreen that you will use to test connectivity and configure your
+       Evergreen instance.
+
+Preamble: developer instructions
+--------------------------------
+
+[NOTE]
+Skip this section if you are using an official release tarball downloaded
+from http://evergreen-ils.org/downloads
+
+Developers working directly with the source code from the Git repository,
+rather than an official release tarball, must install some extra packages
+and perform one step before they can proceed with the `./configure` step.
+
+As the *root* Linux account, install the following packages:
+
+  * autoconf
+  * automake
+  * libtool
+
+As the *user* Linux account, issue the following command in the Evergreen
+source directory to generate the configure script and Makefiles:
+
+[source, bash]
+------------------------------------------------------------------------------
+autoreconf -i
+------------------------------------------------------------------------------
+
+After running `make install`, developers also need to install the Dojo Toolkit
+set of JavaScript libraries. The appropriate version of Dojo is included
+in Evergreen release tarballs. Developers should install the Dojo 1.3.3
+version of Dojo by issuing the following commands as the *opensrf* Linux
+account:
+
+[source, bash]
+------------------------------------------------------------------------------
+wget http://download.dojotoolkit.org/release-1.3.3/dojo-release-1.3.3.tar.gz
+tar -C /openils/var/web/js -xzf dojo-release-1.3.3.tar.gz
+cp -r /openils/var/web/js/dojo-release-1.3.3/* /openils/var/web/js/dojo/.
+------------------------------------------------------------------------------
+
+Installing prerequisites
+------------------------
+
+Evergreen has a number of prerequisite packages that must be installed
+before you can successfully configure, compile, and install Evergreen.
+
+1. Begin by installing the most recent version of OpenSRF (2.2 or later).
+   You can download OpenSRF releases from http://evergreen-ils.org/opensrf.php
+2. On many distributions, it is necessary to install PostgreSQL 9 from external
+   repositories.
++
+  * On Debian Squeeze, open `/etc/apt/sources.list` in a text editor as the
+    *root* Linux account and add the following line:
++
+[source, bash]
+------------------------------------------------------------------------------
+deb http://backports.debian.org/debian-backports squeeze-backports main contrib
+------------------------------------------------------------------------------
++
+  * On Ubuntu Lucid, you can use a PPA (personal package archive), which are 
+    package sources hosted on Launchpad. The one most commonly used by Evergreen
+    Community members is maintained by Martin Pitt, who also maintains the
+    official PostgreSQL packages for Ubuntu. As the *root* Linux account, issue
+    the following commands to add the PPA source:
++
+[source, bash]
+------------------------------------------------------------------------------
+apt-get install python-software-properties
+add-apt-repository ppa:pitti/postgresql
+------------------------------------------------------------------------------
++
+  * Ubuntu Precise comes with PostgreSQL 9, so no additional steps are required.
++
+  * Fedora comes with PostgreSQL 9, so no additional steps are required.
++
+3. On Debian and Ubuntu, run `aptitude update` as the *root* Linux account to
+   retrieve the new packages from the backports repository.
+4. Issue the following commands as the *root* Linux account to install
+   prerequisites using the `Makefile.install` prerequisite installer,
+   substituting `debian-squeeze`, `fedora`, `ubuntu-lucid`, or
+   `ubuntu-precise` for <osname> below:
++
+[source, bash]
+------------------------------------------------------------------------------
+make -f Open-ILS/src/extras/Makefile.install <osname>
+------------------------------------------------------------------------------
++
+5. Add the libdbi-libdbd libraries to the system dynamic library path by
+   issuing the following commands as the *root* Linux account:
++
+[NOTE]
+You should skip this step if installing on Ubuntu Precise. The ubuntu-precise
+target uses libdbd-pgsql from packages.
++
+.Debian / Ubuntu Lucid
+[source, bash]
+------------------------------------------------------------------------------
+echo "/usr/local/lib/dbd" > /etc/ld.so.conf.d/eg.conf
+ldconfig
+------------------------------------------------------------------------------
++
+.Fedora
+[source, bash]
+------------------------------------------------------------------------------
+echo "/usr/lib64/dbd" > /etc/ld.so.conf.d/eg.conf
+ldconfig
+------------------------------------------------------------------------------
+
+Configuration and compilation instructions
+------------------------------------------
+
+For the time being, we are still installing everything in the `/openils/`
+directory. From the Evergreen source directory, issue the following commands as
+the *user* Linux account to configure and build Evergreen:
+
+[source, bash]
+------------------------------------------------------------------------------
+PATH=/openils/bin:$PATH ./configure --prefix=/openils --sysconfdir=/openils/conf
+make
+------------------------------------------------------------------------------
+
+These instructions assume that you have also installed OpenSRF under `/openils/`.
+If not, please adjust PATH as needed so that the Evergreen `configure` script
+can find `osrf_config`.
+
+Installation instructions
+-------------------------
+
+1. Once you have configured and compiled Evergreen, issue the following
+   command as the *root* Linux account to install Evergreen, build the server
+   portion of the staff client, and copy example configuration files to
+   `/openils/conf`.
+   Change the value of the `STAFF_CLIENT_STAMP_ID` variable to match the version
+   of the staff client that you will use to connect to the Evergreen server.
++
+[source, bash]
+------------------------------------------------------------------------------
+make STAFF_CLIENT_STAMP_ID=rel_2_4_0 install
+------------------------------------------------------------------------------
++
+2. The server portion of the staff client expects `http://hostname/xul/server`
+   to resolve. Issue the following commands as the *root* Linux account to
+   create a symbolic link pointing to the `server` subdirectory of the server
+   portion of the staff client that we just built using the staff client ID
+   'rel_name':
++
+[source, bash]
+------------------------------------------------------------------------------
+cd /openils/var/web/xul
+ln -sf rel_name/server server
+------------------------------------------------------------------------------
+
+Change ownership of the Evergreen files
+---------------------------------------
+
+All files in the `/openils/` directory and subdirectories must be owned by the
+`opensrf` user. Issue the following command as the *root* Linux account to
+change the ownership on the files:
+
+[source, bash]
+------------------------------------------------------------------------------
+chown -R opensrf:opensrf /openils
+------------------------------------------------------------------------------
+
+Configure the Apache Web server
+-------------------------------
+
+1. Use the example configuration files in `Open-ILS/examples/apache/` (for
+Apache versions below 2.4) or `Open-ILS/examples/apache_24/` (for Apache
+versions 2.4 or greater) to configure your Web server for the Evergreen
+catalog, staff client, Web services, and administration interfaces. Issue the
+following commands as the *root* Linux account:
++
+.Debian and Ubuntu
+[source,bash]
+------------------------------------------------------------------------------
+cp Open-ILS/examples/apache/eg.conf       /etc/apache2/sites-available/
+cp Open-ILS/examples/apache/eg_vhost.conf /etc/apache2/
+cp Open-ILS/examples/apache/eg_startup    /etc/apache2/
+# Now set up SSL
+mkdir /etc/apache2/ssl
+cd /etc/apache2/ssl
+------------------------------------------------------------------------------
++
+.Fedora 17
+[source,bash]
+------------------------------------------------------------------------------
+cp Open-ILS/examples/apache/eg.conf       /etc/httpd/conf.d/
+cp Open-ILS/examples/apache/eg_vhost.conf /etc/httpd/
+cp Open-ILS/examples/apache/eg_startup    /etc/httpd/
+# Now set up SSL
+mkdir /etc/httpd/ssl
+cd /etc/httpd/ssl
+------------------------------------------------------------------------------
++
+.Fedora 18
+[source,bash]
+------------------------------------------------------------------------------
+cp Open-ILS/examples/apache_24/eg.conf       /etc/httpd/conf.d/
+cp Open-ILS/examples/apache_24/eg_vhost.conf /etc/httpd/
+cp Open-ILS/examples/apache/startup.pl       /etc/httpd/
+# Now set up SSL
+mkdir /etc/httpd/ssl
+cd /etc/httpd/ssl
+------------------------------------------------------------------------------
++
+2. The `openssl` command cuts a new SSL key for your Apache server. For a
+production server, you should purchase a signed SSL certificate, but you can
+just use a self-signed certificate and accept the warnings in the staff client
+and browser during testing and development. Create an SSL key for the Apache
+server by issuing the following command as the *root* Linux account:
++
+[source,bash]
+------------------------------------------------------------------------------
+openssl req -new -x509 -days 365 -nodes -out server.crt -keyout server.key
+------------------------------------------------------------------------------
++
+3. As the *root* Linux account, edit the `eg.conf` file that you copied into
+place.
+  a. To enable access to the offline upload / execute interface from any
+     workstation on any network, make the following change (and note that
+     you *must* secure this for a production instance):
+     * (Apache 2.2): Replace `Allow from 10.0.0.0/8` with `Allow from all`
+     * (Apache 2.4): Replace `Require host 10.0.0.0/8` with `Require all granted`
+  b. (Fedora): Change references from the non-existent `/etc/apache2/` directory
+     to `/etc/httpd/`.
+4. Change the user for the Apache server.
+  * (Debian and Ubuntu): As the *root* Linux account, edit
+    `/etc/apache2/envvars`.  Change `export APACHE_RUN_USER=www-data` to 
+    `export APACHE_RUN_USER=opensrf`.
+  * (Fedora): As the *root* Linux account , edit `/etc/httpd/conf/httpd.conf`.
+    Change `User apache` to `User opensrf`.
+5. Configure Apache with performance settings appropriate for Evergreen:
+  * (Debian and Ubuntu): As the *root* Linux account, edit
+    `/etc/apache2/apache2.conf`:
+  * (Fedora): As the *root* Linux account, edit `/etc/httpd/conf/httpd.conf`:
+    a. Change `KeepAliveTimeout` to `1`. Higher values reduce the chance of
+       a request timing out unexpectedly, but increase the risk of using up
+       all available Apache child processes.
+    b. 'Optional': Change `MaxKeepAliveRequests` to `100`
+    c. Update the prefork configuration section to suit your environment. The
+       following settings apply to a busy system:
++
+[source,bash]
+------------------------------------------------------------------------------
+<IfModule mpm_prefork_module>
+   StartServers           20
+   MinSpareServers         5
+   MaxSpareServers        15
+   MaxClients            150
+   MaxRequestsPerChild 10000
+</IfModule>
+------------------------------------------------------------------------------
++
+6. (Fedora): As the *root* Linux account, edit the `/etc/httpd/eg_vhost.conf`
+   file to change references from the non-existent `/etc/apache2/` directory
+   to `/etc/httpd/`.
+7. (Debian and Ubuntu): As the *root* Linux account, enable the Evergreen site:
++
+[source,bash]
+------------------------------------------------------------------------------
+a2dissite default  # OPTIONAL: disable the default site (the "It Works" page)
+a2ensite eg.conf
+------------------------------------------------------------------------------
+
+Configure OpenSRF for the Evergreen application
+-----------------------------------------------
+There are a number of example OpenSRF configuration files in `/openils/conf/`
+that you can use as a template for your Evergreen installation. Issue the
+following commands as the *opensrf* Linux account:
+
+[source, bash]
+------------------------------------------------------------------------------
+cp -b /openils/conf/opensrf_core.xml.example /openils/conf/opensrf_core.xml
+cp -b /openils/conf/opensrf.xml.example /openils/conf/opensrf.xml
+------------------------------------------------------------------------------
+
+When you installed OpenSRF, you created four Jabber users on two
+separate domains and edited the `opensrf_core.xml` file accordingly. Please
+refer back to the OpenSRF README and, as the *opensrf* Linux account, edit the
+Evergreen version of the `opensrf_core.xml` file using the same Jabber users
+and domains as you used while installing and testing OpenSRF.
+
+[NOTE]
+The `-b` flag tells the `cp` command to create a backup version of the
+destination file. The backup version of the destination file has a tilde (`~`)
+appended to the file name, so if you have forgotten the Jabber users and
+domains, you can retrieve the settings from the backup version of the files.
+
+`eg_db_config`, described in the following section, sets the database
+connection information in `opensrf.xml` for you.
+
+Creating the Evergreen database
+-------------------------------
+
+By default, the `Makefile.install` prerequisite installer does not install
+the PostgreSQL 9 database server required by every Evergreen system;
+for production use, most libraries install the PostgreSQL database server on a
+dedicated machine. You can install the packages required by Debian or Ubuntu Lucid
+on the machine of your choice using the following commands as the *root*
+Linux account:
+
+.(Debian and Ubuntu Lucid) Installing PostgreSQL 9.1 server packages
+[source, bash]
+------------------------------------------------------------------------------
+make -f Open-ILS/src/extras/Makefile.install install_pgsql_server_backport_debs_91
+------------------------------------------------------------------------------
+
+.(Ubuntu Precise) Installing PostgreSQL 9.1 server packages
+[source, bash]
+------------------------------------------------------------------------------
+make -f Open-ILS/src/extras/Makefile.install install_pgsql_server_debs_91
+------------------------------------------------------------------------------
+
+You can install the packages required by Fedora on the machine of your choice
+using the following commands as the *root* Linux account:
+
+.(Fedora) Installing PostgreSQL server packages
+[source, bash]
+------------------------------------------------------------------------------
+make -f Open-ILS/src/extras/Makefile.install install_fedora_pgsql_server
+postgresql-setup initdb
+------------------------------------------------------------------------------
+
+For a standalone PostgreSQL server, install the following Perl modules as the
+*root* Linux account:
+
+.(Debian / Ubuntu) Installing additional Perl modules on a standalone PostgreSQL 9 server
+[source, bash]
+------------------------------------------------------------------------------
+aptitude install gcc libxml-libxml-perl libxml-libxslt-perl
+cpan Business::ISBN
+cpan JSON::XS
+cpan Library::CallNumber::LC
+cpan MARC::Record
+cpan MARC::File::XML
+cpan UUID::Tiny
+cpan Rose::URI
+------------------------------------------------------------------------------
+
+.(Fedora) Installing additional Perl modules on a standalone PostgreSQL 9 server
+[source, bash]
+------------------------------------------------------------------------------
+yum install gcc perl-XML-LibXML perl-XML-LibXSLT perl-Business-ISBN
+cpan Library::CallNumber::LC
+cpan MARC::Record
+cpan MARC::File::XML
+cpan UUID::Tiny
+------------------------------------------------------------------------------
+
+You need to create a PostgreSQL superuser to create and access the database.
+Issue the following command as the *postgres* Linux account to create a new
+PostgreSQL superuser named `evergreen`. When prompted, enter the new user's
+password:
+
+[source, bash]
+------------------------------------------------------------------------------
+createuser -s -P evergreen
+------------------------------------------------------------------------------
+
+Once you have created the *evergreen* PostgreSQL account, you also need to
+create the database and schema, and configure your configuration files to point
+at the database server. Issue the following command as the *root* Linux account
+from inside the Evergreen source directory, replacing <user>, <password>,
+<hostname>, <port>, and <dbname> with the appropriate values for your
+PostgreSQL database (where <user> and <password> are for the *evergreen*
+PostgreSQL account you just created), and replace <admin-user> and <admin-pass>
+with the values you want for the *egadmin* Evergreen administrator account:
+
+[source, bash]
+------------------------------------------------------------------------------
+perl Open-ILS/src/support-scripts/eg_db_config --update-config \
+       --service all --create-database --create-schema --create-offline \
+       --user <user> --password <password> --hostname <hostname> --port <port> \
+       --database <dbname> --admin-user <admin-user> --admin-pass <admin-pass>
+------------------------------------------------------------------------------
+
+This creates the database and schema and configures all of the services in
+your `/openils/conf/opensrf.xml` configuration file to point to that database.
+It also creates the configuration files required by the Evergreen `cgi-bin`
+administration scripts, and sets the user name and password for the *egadmin*
+Evergreen administrator account to your requested values.
+
+Creating the database on a remote server
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In a production instance of Evergreen, your PostgreSQL server should be
+installed on a dedicated server.
+
+PostgreSQL 9.1 and later
+^^^^^^^^^^^^^^^^^^^^^^^^
+To create the database instance on a remote database server running PostgreSQL
+9.1 or later, simply use the `--create-database` flag on `eg_db_config`.
+
+Starting Evergreen
+------------------
+1. As the *root* Linux account, start the `memcached` and `ejabberd` services
+(if they aren't already running):
++
+[source, bash]
+------------------------------------------------------------------------------
+/etc/init.d/ejabberd start
+/etc/init.d/memcached start
+------------------------------------------------------------------------------
++
+2. As the *opensrf* Linux account, start Evergreen. The `-l` flag in the
+following command is only necessary if you want to force Evergreen to treat the
+hostname as `localhost`; if you configured `opensrf.xml` using the real
+hostname of your machine as returned by `perl -ENet::Domain 'print
+Net::Domain::hostfqdn() . "\n";'`, you should not use the `-l` flag.
++
+[source, bash]
+------------------------------------------------------------------------------
+osrf_ctl.sh -l -a start_all
+------------------------------------------------------------------------------
++
+  ** If you receive the error message `bash: osrf_ctl.sh: command not found`,
+     then your environment variable `PATH` does not include the `/openils/bin`
+     directory; this should have been set in the *opensrf* Linux account's
+     `.bashrc` configuration file. To manually set the `PATH` variable, edit the
+     configuration file `~/.bashrc` as the *opensrf* Linux account and add the
+     following line:
++
+[source, bash]
+------------------------------------------------------------------------------
+export PATH=$PATH:/openils/bin
+------------------------------------------------------------------------------
++
+3. As the *opensrf* Linux account, generate the Web files needed by the staff
+   client and catalogue and update the organization unit proximity (you need to do
+   this the first time you start Evergreen, and after that each time you change
+   the library hierarchy in `config.cgi`):
++
+[source, bash]
+------------------------------------------------------------------------------
+autogen.sh -u
+------------------------------------------------------------------------------
++
+4. As the *root* Linux account, restart the Apache Web server:
++
+[source, bash]
+------------------------------------------------------------------------------
+/etc/init.d/apache2 restart
+------------------------------------------------------------------------------
++
+If the Apache Web server was running when you started the OpenSRF services, you
+might not be able to successfully log in to the OPAC or staff client until the
+Apache Web server is restarted.
+
+Testing connections to Evergreen
+--------------------------------
+
+Once you have installed and started Evergreen, test your connection to
+Evergreen via `srfsh`. As the *opensrf* Linux account, issue the following
+commands to start `srfsh` and try to log onto the Evergreen server using the
+*egadmin* Evergreen administrator user name and password that you set using the
+`eg_db_config` command:
+
+[source, bash]
+------------------------------------------------------------------------------
+/openils/bin/srfsh
+srfsh% login <admin-user> <admin-pass>
+------------------------------------------------------------------------------
+
+You should see a result like:
+
+    Received Data: "250bf1518c7527a03249858687714376"
+    ------------------------------------
+    Request Completed Successfully
+    Request Time in seconds: 0.045286
+    ------------------------------------
+
+    Received Data: {
+       "ilsevent":0,
+       "textcode":"SUCCESS",
+       "desc":" ",
+       "pid":21616,
+       "stacktrace":"oils_auth.c:304",
+       "payload":{
+          "authtoken":"e5f9827cc0f93b503a1cc66bee6bdd1a",
+          "authtime":420
+       }
+
+    }
+
+    ------------------------------------
+    Request Completed Successfully
+    Request Time in seconds: 1.336568
+    ------------------------------------
+
+If this does not work, it's time to do some troubleshooting.
+
+  * As the *opensrf* Linux acccount, run the `settings-tester.pl` script to see
+    if it finds any system configuration problems. The script is found at
+    `Open-ILS/src/support-scripts/settings-tester.pl` in the Evergreen source
+    tree.
+  * Follow the steps in the http://evergreen-ils.org/dokuwiki/doku.php?id=troubleshooting:checking_for_errors[troubleshooting guide].
+  * If you have faithfully followed the entire set of installation steps
+    listed here, you are probably extremely close to a working system.
+    Gather your configuration files and log files and contact the
+    http://open-ils.org/listserv.php[Evergreen development mailing list]
+    for assistance before making any drastic changes to your system
+    configuration.
+
+Getting help
+------------
+
+Need help installing or using Evergreen? Join the mailing lists at
+http://evergreen-ils.org/listserv.php or contact us on the Freenode
+IRC network on the #evergreen channel.
+
+License
+-------
+This work is licensed under the Creative Commons Attribution-ShareAlike 3.0
+Unported License. To view a copy of this license, visit
+http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative
+Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
diff --git a/configure.ac b/configure.ac
index fab6180..b340c25 100644
--- a/configure.ac
+++ b/configure.ac
@@ -20,8 +20,8 @@
 
 export PATH=${PATH}:/usr/sbin
 AC_PREREQ(2.61)
-AC_INIT(Open-ILS, trunk, open-ils-dev at list.georgialibraries.org)
-AM_INIT_AUTOMAKE([OpenILS], [trunk])
+AC_INIT(Open-ILS, 2.4.0, open-ils-dev at list.georgialibraries.org)
+AM_INIT_AUTOMAKE([OpenILS], [2.4.0])
 AC_REVISION($Revision: 0.1 $)
 AC_CONFIG_SRCDIR([configure.ac])
 AC_SUBST(prefix)

commit b42ec446b85c1339ad85f54f159c331cd0d224d1
Author: Mike Rylander <mrylander at gmail.com>
Date:   Thu May 2 18:49:53 2013 +0000

    Updating OpenILS module version
    
    Signed-off-by: Mike Rylander <mrylander at gmail.com>

diff --git a/Open-ILS/src/perlmods/lib/OpenILS.pm b/Open-ILS/src/perlmods/lib/OpenILS.pm
index d7235ce..820d63c 100644
--- a/Open-ILS/src/perlmods/lib/OpenILS.pm
+++ b/Open-ILS/src/perlmods/lib/OpenILS.pm
@@ -6,6 +6,6 @@ OpenILS - Client and server support for the Evergreen open source library system
 
 =cut
 
-our $VERSION = '2.4';
+our $VERSION = '2.0400';
 
 1;

commit 0486ba05c2d42151f07e9ab6ba240a275f8ccbfc
Author: Mike Rylander <mrylander at gmail.com>
Date:   Thu May 2 18:48:35 2013 +0000

    Correcting Finnish translator info
    
    Signed-off-by: Mike Rylander <mrylander at gmail.com>

diff --git a/build/i18n/po/AutoFieldWidget.js/fi-FI.po b/build/i18n/po/AutoFieldWidget.js/fi-FI.po
index b3a7b27..a251972 100644
--- a/build/i18n/po/AutoFieldWidget.js/fi-FI.po
+++ b/build/i18n/po/AutoFieldWidget.js/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2011-04-18 21:45-0400\n"
 "PO-Revision-Date: 2012-12-20 15:08+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/Searcher.js/fi-FI.po b/build/i18n/po/Searcher.js/fi-FI.po
index e1f694b..f5d563a 100644
--- a/build/i18n/po/Searcher.js/fi-FI.po
+++ b/build/i18n/po/Searcher.js/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2011-04-18 21:45-0400\n"
 "PO-Revision-Date: 2012-12-20 15:22+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/TranslatorPopup.js/fi-FI.po b/build/i18n/po/TranslatorPopup.js/fi-FI.po
index f580bac..315efdf 100644
--- a/build/i18n/po/TranslatorPopup.js/fi-FI.po
+++ b/build/i18n/po/TranslatorPopup.js/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2011-04-18 21:45-0400\n"
 "PO-Revision-Date: 2012-12-20 15:09+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/User.js/fi-FI.po b/build/i18n/po/User.js/fi-FI.po
index 9b1f378..98922b1 100644
--- a/build/i18n/po/User.js/fi-FI.po
+++ b/build/i18n/po/User.js/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2011-04-18 21:45-0400\n"
 "PO-Revision-Date: 2012-12-20 15:17+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/XULTermLoader.js/fi-FI.po b/build/i18n/po/XULTermLoader.js/fi-FI.po
index 6f541bf..965bb88 100644
--- a/build/i18n/po/XULTermLoader.js/fi-FI.po
+++ b/build/i18n/po/XULTermLoader.js/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2013-02-21 11:20-0400\n"
 "PO-Revision-Date: 2012-12-20 15:19+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/admin.properties/fi-FI.po b/build/i18n/po/admin.properties/fi-FI.po
index 899535e..3d868a6 100644
--- a/build/i18n/po/admin.properties/fi-FI.po
+++ b/build/i18n/po/admin.properties/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2012-04-28 14:17-0400\n"
 "PO-Revision-Date: 2012-12-20 15:22+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/auth.properties/fi-FI.po b/build/i18n/po/auth.properties/fi-FI.po
index 4448a18..f60576a 100644
--- a/build/i18n/po/auth.properties/fi-FI.po
+++ b/build/i18n/po/auth.properties/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2011-04-18 21:45-0400\n"
 "PO-Revision-Date: 2012-12-20 15:22+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/authority.js/fi-FI.po b/build/i18n/po/authority.js/fi-FI.po
index 66e31b0..c54a491 100644
--- a/build/i18n/po/authority.js/fi-FI.po
+++ b/build/i18n/po/authority.js/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2012-04-28 14:18-0400\n"
 "PO-Revision-Date: 2013-03-19 19:51+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/capture.js/fi-FI.po b/build/i18n/po/capture.js/fi-FI.po
index 394feb5..176e449 100644
--- a/build/i18n/po/capture.js/fi-FI.po
+++ b/build/i18n/po/capture.js/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2013-02-21 11:20-0400\n"
 "PO-Revision-Date: 2013-03-19 19:53+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/cat.properties/fi-FI.po b/build/i18n/po/cat.properties/fi-FI.po
index b57f955..b9cf7cf 100644
--- a/build/i18n/po/cat.properties/fi-FI.po
+++ b/build/i18n/po/cat.properties/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2012-09-04 13:44-0400\n"
 "PO-Revision-Date: 2013-03-19 19:54+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/circ.properties/fi-FI.po b/build/i18n/po/circ.properties/fi-FI.po
index f3c4894..f436de1 100644
--- a/build/i18n/po/circ.properties/fi-FI.po
+++ b/build/i18n/po/circ.properties/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2013-03-15 19:41+0000\n"
 "PO-Revision-Date: 2013-03-19 19:56+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/common.properties/fi-FI.po b/build/i18n/po/common.properties/fi-FI.po
index d0e62df..a16d3d6 100644
--- a/build/i18n/po/common.properties/fi-FI.po
+++ b/build/i18n/po/common.properties/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2012-12-20 09:37-0400\n"
 "PO-Revision-Date: 2013-03-19 19:59+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/conify.js/fi-FI.po b/build/i18n/po/conify.js/fi-FI.po
index 0cb05f6..8da22e5 100644
--- a/build/i18n/po/conify.js/fi-FI.po
+++ b/build/i18n/po/conify.js/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2013-03-15 19:42-0400\n"
 "PO-Revision-Date: 2013-03-19 19:58+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/db.seed/fi-FI.po b/build/i18n/po/db.seed/fi-FI.po
index 85287a2..41b4bfa 100644
--- a/build/i18n/po/db.seed/fi-FI.po
+++ b/build/i18n/po/db.seed/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2013-03-15 19:42-0400\n"
 "PO-Revision-Date: 2013-03-19 19:46+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/fm_IDL.dtd/fi-FI.po b/build/i18n/po/fm_IDL.dtd/fi-FI.po
index 7da43fb..c1c45f9 100644
--- a/build/i18n/po/fm_IDL.dtd/fi-FI.po
+++ b/build/i18n/po/fm_IDL.dtd/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2013-03-15 19:38-0400\n"
 "PO-Revision-Date: 2013-03-19 20:02+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/ils_events.xml/fi-FI.po b/build/i18n/po/ils_events.xml/fi-FI.po
index 78b8865..69a6fb7 100644
--- a/build/i18n/po/ils_events.xml/fi-FI.po
+++ b/build/i18n/po/ils_events.xml/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2013-03-15 19:41-0400\n"
 "PO-Revision-Date: 2013-03-19 20:02+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/lang.dtd/fi-FI.po b/build/i18n/po/lang.dtd/fi-FI.po
index 170df34..03731a9 100644
--- a/build/i18n/po/lang.dtd/fi-FI.po
+++ b/build/i18n/po/lang.dtd/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2013-03-15 19:37+0000\n"
 "PO-Revision-Date: 2013-03-19 20:03+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/offline.properties/fi-FI.po b/build/i18n/po/offline.properties/fi-FI.po
index e1320fa..0f4693b 100644
--- a/build/i18n/po/offline.properties/fi-FI.po
+++ b/build/i18n/po/offline.properties/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2013-03-15 19:41+0000\n"
 "PO-Revision-Date: 2013-03-19 20:09+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/opac.dtd/fi-FI.po b/build/i18n/po/opac.dtd/fi-FI.po
index 6662c0d..5bd8c1c 100644
--- a/build/i18n/po/opac.dtd/fi-FI.po
+++ b/build/i18n/po/opac.dtd/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2013-02-21 11:19-0400\n"
 "PO-Revision-Date: 2013-03-19 19:39+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/opac.js/fi-FI.po b/build/i18n/po/opac.js/fi-FI.po
index 4dafffa..b91d0b5 100644
--- a/build/i18n/po/opac.js/fi-FI.po
+++ b/build/i18n/po/opac.js/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2013-02-21 11:20-0400\n"
 "PO-Revision-Date: 2013-03-19 19:44+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/patron.properties/fi-FI.po b/build/i18n/po/patron.properties/fi-FI.po
index 01b0f86..4b0d330 100644
--- a/build/i18n/po/patron.properties/fi-FI.po
+++ b/build/i18n/po/patron.properties/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2013-03-15 19:42+0000\n"
 "PO-Revision-Date: 2013-03-19 20:04+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/pickup_and_return.js/fi-FI.po b/build/i18n/po/pickup_and_return.js/fi-FI.po
index 536348a..e41fb91 100644
--- a/build/i18n/po/pickup_and_return.js/fi-FI.po
+++ b/build/i18n/po/pickup_and_return.js/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2011-04-18 21:45-0400\n"
 "PO-Revision-Date: 2012-12-20 15:22+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/pull_list.js/fi-FI.po b/build/i18n/po/pull_list.js/fi-FI.po
index 50a0976..eb73e16 100644
--- a/build/i18n/po/pull_list.js/fi-FI.po
+++ b/build/i18n/po/pull_list.js/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2012-08-03 10:01-0400\n"
 "PO-Revision-Date: 2012-12-20 15:22+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/register.js/fi-FI.po b/build/i18n/po/register.js/fi-FI.po
index d79abb3..91df2b0 100644
--- a/build/i18n/po/register.js/fi-FI.po
+++ b/build/i18n/po/register.js/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2013-02-21 11:20-0400\n"
 "PO-Revision-Date: 2012-12-20 15:22+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/reports.dtd/fi-FI.po b/build/i18n/po/reports.dtd/fi-FI.po
index 2edf744..295f7d9 100644
--- a/build/i18n/po/reports.dtd/fi-FI.po
+++ b/build/i18n/po/reports.dtd/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2011-04-18 21:44-0400\n"
 "PO-Revision-Date: 2013-03-19 20:12+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/reports.js/fi-FI.po b/build/i18n/po/reports.js/fi-FI.po
index 4d88e63..6f6ce8e 100644
--- a/build/i18n/po/reports.js/fi-FI.po
+++ b/build/i18n/po/reports.js/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2011-04-18 21:45-0400\n"
 "PO-Revision-Date: 2012-12-20 15:22+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/reservation.js/fi-FI.po b/build/i18n/po/reservation.js/fi-FI.po
index 32791d8..b650a40 100644
--- a/build/i18n/po/reservation.js/fi-FI.po
+++ b/build/i18n/po/reservation.js/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2013-02-21 11:20-0400\n"
 "PO-Revision-Date: 2012-12-20 15:19+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/selfcheck.js/fi-FI.po b/build/i18n/po/selfcheck.js/fi-FI.po
index 0898ea4..39f5b67 100644
--- a/build/i18n/po/selfcheck.js/fi-FI.po
+++ b/build/i18n/po/selfcheck.js/fi-FI.po
@@ -4,7 +4,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: open-ils-dev at list.georgialibraries.org\n"
 "POT-Creation-Date: 2013-02-21 11:20-0400\n"
 "PO-Revision-Date: 2013-03-19 20:14+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
diff --git a/build/i18n/po/serial.properties/fi-FI.po b/build/i18n/po/serial.properties/fi-FI.po
index 373c11f..df24e6e 100644
--- a/build/i18n/po/serial.properties/fi-FI.po
+++ b/build/i18n/po/serial.properties/fi-FI.po
@@ -5,7 +5,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2013-03-15 19:42+0000\n"
 "PO-Revision-Date: 2013-03-19 20:13+0000\n"
-"Last-Translator: Finnish <Unknown>\n"
+"Last-Translator: Finnish <evergreen at jns.fi>\n"
 "Language-Team: Finnish <evergreen at jns.fi>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"

commit 2846d647934d86de015b17429fc7491962d4e155
Author: Mike Rylander <mrylander at gmail.com>
Date:   Thu May 2 18:47:11 2013 +0000

    Updating POT files changed since RC
    
    Signed-off-by: Mike Rylander <mrylander at gmail.com>

diff --git a/build/i18n/po/lang.dtd/lang.dtd.pot b/build/i18n/po/lang.dtd/lang.dtd.pot
index 21971e2..7471032 100644
--- a/build/i18n/po/lang.dtd/lang.dtd.pot
+++ b/build/i18n/po/lang.dtd/lang.dtd.pot
@@ -3,7 +3,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-03-15 19:37+0000\n"
+"POT-Creation-Date: 2013-05-02 18:35+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
 "Language-Team: LANGUAGE <LL at li.org>\n"
@@ -10153,14 +10153,16 @@ msgstr ""
 
 #: staff.hold_list.cancel_hold_dialog.cancel_btn.label
 #: staff.hold_list.cancel_hold_dialog.cancel_btn.accesskey
-msgctxt "staff.hold_list.cancel_hold_dialog.cancel_btn.label staff.hold_list.cancel_hold_dialog.cancel_btn.accesskey"
-msgid "&Cancel"
+msgid "&No"
 msgstr ""
 
 #: staff.hold_list.cancel_hold_dialog.apply_btn.label
 #: staff.hold_list.cancel_hold_dialog.apply_btn.accesskey
-msgctxt "staff.hold_list.cancel_hold_dialog.apply_btn.label staff.hold_list.cancel_hold_dialog.apply_btn.accesskey"
-msgid "&Apply"
+msgid "&Yes"
+msgstr ""
+
+#: staff.hold_list.cancel_hold_dialog.confirmation
+msgid "Are you sure you want to cancel the hold(s)?"
 msgstr ""
 
 #: staff.cat.manage_multi_bib_items.caption
diff --git a/build/i18n/po/tpac/tpac.pot b/build/i18n/po/tpac/tpac.pot
index b8f1436..66f795f 100644
--- a/build/i18n/po/tpac/tpac.pot
+++ b/build/i18n/po/tpac/tpac.pot
@@ -15,14 +15,6 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#. (ctx.result_start, ctx.result_stop, ctx.hit_count)
-#: ../../Open-ILS/src/templates/opac/parts/result/paginate.tt2:5
-msgid ""
-"\n"
-"                Results <strong>%1</strong> - <strong>%2</strong> of <strong>%3</strong>\n"
-"                "
-msgstr ""
-
 #. (bad_user)
 #: ../../Open-ILS/src/templates/opac/myopac/update_username.tt2:20
 msgid ""
@@ -31,6 +23,16 @@ msgid ""
 "        "
 msgstr ""
 
+#. ("<span class=\"result_count_number\">' _ (page + 1) _ '</span>", "<span class=\"result_count_number\">' _ page_count _ '</span>")
+#: ../../Open-ILS/src/templates/opac/parts/result/paginate.tt2:14
+msgid "                    (page %1 of %2)"
+msgstr ""
+
+#. ("<span class=\"result_count_number\">' _ ctx.result_start _ '</span>", "<span class=\"result_count_number\">' _ ctx.result_stop _ '</span>", "<span class=\"result_count_number\">' _ ctx.hit_count _ '</span>")
+#: ../../Open-ILS/src/templates/opac/parts/result/paginate.tt2:9
+msgid "                Results %1 - %2 of about %3"
+msgstr ""
+
 #: ../../Open-ILS/src/templates/opac/parts/record/copy_table.tt2:101
 msgid " / "
 msgstr ""
@@ -143,11 +145,6 @@ msgstr ""
 msgid "(not shown)"
 msgstr ""
 
-#. (page + 1, page_count)
-#: ../../Open-ILS/src/templates/opac/parts/result/paginate.tt2:9
-msgid "(page <strong>%1</strong> of <strong>%2</strong>)"
-msgstr ""
-
 #: ../../Open-ILS/src/templates/opac/myopac/prefs.tt2:30
 msgid "* Staff Notes *"
 msgstr ""
@@ -244,7 +241,7 @@ msgstr ""
 msgid "Add row"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/bookbag_actions.tt2:40 ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:39 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:312
+#: ../../Open-ILS/src/templates/opac/parts/bookbag_actions.tt2:40 ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:39 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:310
 msgid "Add to my list"
 msgstr ""
 
@@ -593,7 +590,7 @@ msgstr ""
 msgid "Bottom Link 5"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:287
+#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:285
 msgid "Browse in Google Books Search"
 msgstr ""
 
@@ -613,11 +610,11 @@ msgstr ""
 msgid "Call Number Browse"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/myopac/circs.tt2:67 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:229
+#: ../../Open-ILS/src/templates/opac/myopac/circs.tt2:67 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:227
 msgid "Call number"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:107
+#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:105
 msgid "Call number:"
 msgstr ""
 
@@ -686,7 +683,7 @@ msgstr ""
 msgid "Checked Out"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:259
+#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:257
 msgid "Checked Out Before"
 msgstr ""
 
@@ -1081,7 +1078,7 @@ msgid "Discard Pending Address"
 msgstr ""
 
 #. (attrs.title)
-#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:54
+#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:53
 msgid "Display record details for \"%1\""
 msgstr ""
 
@@ -1153,7 +1150,7 @@ msgstr ""
 msgid "Editing Hold"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:170 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:176
+#: ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:170 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:174
 msgid "Edition:"
 msgstr ""
 
@@ -1165,7 +1162,7 @@ msgstr ""
 msgid "Electrician"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:210
+#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:208
 msgid "Electronic resource"
 msgstr ""
 
@@ -1516,7 +1513,7 @@ msgstr ""
 msgid "Host"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:260
+#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:258
 msgid "I have checked this item out before"
 msgstr ""
 
@@ -1524,7 +1521,7 @@ msgstr ""
 msgid "ISBN"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:150 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:143
+#: ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:150 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:141
 msgid "ISBN:"
 msgstr ""
 
@@ -1532,7 +1529,7 @@ msgstr ""
 msgid "ISSN"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:157 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:151
+#: ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:157 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:149
 msgid "ISSN:"
 msgstr ""
 
@@ -1794,7 +1791,7 @@ msgstr ""
 msgid "Libelee-appellee"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:227
+#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:225
 msgid "Library"
 msgstr ""
 
@@ -2068,7 +2065,7 @@ msgstr ""
 msgid "New password:"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/myopac/circ_history.tt2:27 ../../Open-ILS/src/templates/opac/myopac/hold_history.tt2:40 ../../Open-ILS/src/templates/opac/myopac/holds.tt2:46 ../../Open-ILS/src/templates/opac/myopac/lists.tt2:76 ../../Open-ILS/src/templates/opac/myopac/main_payment_form.tt2:175 ../../Open-ILS/src/templates/opac/myopac/main_payments.tt2:18 ../../Open-ILS/src/templates/opac/parts/record/issues-db.tt2:197 ../../Open-ILS/src/templates/opac/parts/record/navigation.tt2:33 ../../Open-ILS/src/templates/opac/parts/result/paginate.tt2:51
+#: ../../Open-ILS/src/templates/opac/myopac/circ_history.tt2:27 ../../Open-ILS/src/templates/opac/myopac/hold_history.tt2:40 ../../Open-ILS/src/templates/opac/myopac/holds.tt2:46 ../../Open-ILS/src/templates/opac/myopac/lists.tt2:76 ../../Open-ILS/src/templates/opac/myopac/main_payment_form.tt2:175 ../../Open-ILS/src/templates/opac/myopac/main_payments.tt2:18 ../../Open-ILS/src/templates/opac/parts/record/issues-db.tt2:197 ../../Open-ILS/src/templates/opac/parts/record/navigation.tt2:33 ../../Open-ILS/src/templates/opac/parts/result/paginate.tt2:56
 msgid "Next"
 msgstr ""
 
@@ -2085,7 +2082,7 @@ msgstr ""
 msgid "Next Record"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/paginate.tt2:51
+#: ../../Open-ILS/src/templates/opac/parts/result/paginate.tt2:56
 msgid "Next page"
 msgstr ""
 
@@ -2241,7 +2238,7 @@ msgstr ""
 msgid "Papermaker"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/record/copy_table.tt2:39 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:231
+#: ../../Open-ILS/src/templates/opac/parts/record/copy_table.tt2:39 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:229
 msgid "Part"
 msgstr ""
 
@@ -2317,7 +2314,7 @@ msgstr ""
 msgid "Pending Addresses"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:74
+#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:72
 msgid "Perform an Author Search"
 msgstr ""
 
@@ -2346,7 +2343,7 @@ msgstr ""
 msgid "Photographer"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:200
+#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:198
 msgid "Phys. Desc.:"
 msgstr ""
 
@@ -2366,7 +2363,7 @@ msgstr ""
 msgid "Pickup location:"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/place_hold.tt2:6 ../../Open-ILS/src/templates/opac/parts/place_hold_result.tt2:10 ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:32 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:305 ../../Open-ILS/src/templates/opac/place_hold.tt2:1
+#: ../../Open-ILS/src/templates/opac/parts/place_hold.tt2:6 ../../Open-ILS/src/templates/opac/parts/place_hold_result.tt2:10 ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:32 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:303 ../../Open-ILS/src/templates/opac/place_hold.tt2:1
 msgid "Place Hold"
 msgstr ""
 
@@ -2448,7 +2445,7 @@ msgstr ""
 msgid "Preview"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/myopac/circ_history.tt2:24 ../../Open-ILS/src/templates/opac/myopac/hold_history.tt2:26 ../../Open-ILS/src/templates/opac/myopac/holds.tt2:32 ../../Open-ILS/src/templates/opac/myopac/lists.tt2:71 ../../Open-ILS/src/templates/opac/myopac/main_payments.tt2:15 ../../Open-ILS/src/templates/opac/parts/record/issues-db.tt2:194 ../../Open-ILS/src/templates/opac/parts/record/navigation.tt2:21 ../../Open-ILS/src/templates/opac/parts/result/paginate.tt2:23
+#: ../../Open-ILS/src/templates/opac/myopac/circ_history.tt2:24 ../../Open-ILS/src/templates/opac/myopac/hold_history.tt2:26 ../../Open-ILS/src/templates/opac/myopac/holds.tt2:32 ../../Open-ILS/src/templates/opac/myopac/lists.tt2:71 ../../Open-ILS/src/templates/opac/myopac/main_payments.tt2:15 ../../Open-ILS/src/templates/opac/parts/record/issues-db.tt2:194 ../../Open-ILS/src/templates/opac/parts/record/navigation.tt2:21 ../../Open-ILS/src/templates/opac/parts/result/paginate.tt2:28
 msgid "Previous"
 msgstr ""
 
@@ -2461,7 +2458,7 @@ msgstr ""
 msgid "Previous Record"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/paginate.tt2:23
+#: ../../Open-ILS/src/templates/opac/parts/result/paginate.tt2:28
 msgid "Previous page"
 msgstr ""
 
@@ -2565,7 +2562,7 @@ msgstr ""
 msgid "Publisher"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:191 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:119
+#: ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:191 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:117
 msgid "Publisher:"
 msgstr ""
 
@@ -2637,7 +2634,7 @@ msgstr ""
 msgid "Remove from list"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:39 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:312
+#: ../../Open-ILS/src/templates/opac/parts/record/summary.tt2:39 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:310
 msgid "Remove from my list"
 msgstr ""
 
@@ -2721,11 +2718,11 @@ msgstr ""
 msgid "Reviews"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:331
+#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:329
 msgid "Reviews &amp; More"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:326
+#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:324
 msgid "Reviews and More"
 msgstr ""
 
@@ -2825,6 +2822,10 @@ msgstr ""
 msgid "Search for related items by subject"
 msgstr ""
 
+#: ../../Open-ILS/src/templates/opac/myopac/prefs_settings.tt2:23
+msgid "Search hits per page"
+msgstr ""
+
 #: ../../Open-ILS/src/templates/opac/parts/searchbar.tt2:55
 msgid "Search only within the chosen list"
 msgstr ""
@@ -2929,7 +2930,7 @@ msgstr ""
 msgid "Shelving Location"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:228
+#: ../../Open-ILS/src/templates/opac/parts/result/table.tt2:226
 msgid "Shelving location"
 msgstr ""
 
@@ -3070,7 +3071,7 @@ msgstr ""
 msgid "State or Province"
 msgstr ""
 
-#: ../../Open-ILS/src/templates/opac/myopac/hold_history.tt2:64 ../../Open-ILS/src/templates/opac/myopac/holds.tt2:123 ../../Open-ILS/src/templates/opac/myopac/holds.tt2:99 ../../Open-ILS/src/templates/opac/myopac/holds/edit.tt2:38 ../../Open-ILS/src/templates/opac/parts/record/copy_table.tt2:50 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:233
+#: ../../Open-ILS/src/templates/opac/myopac/hold_history.tt2:64 ../../Open-ILS/src/templates/opac/myopac/holds.tt2:123 ../../Open-ILS/src/templates/opac/myopac/holds.tt2:99 ../../Open-ILS/src/templates/opac/myopac/holds/edit.tt2:38 ../../Open-ILS/src/templates/opac/parts/record/copy_table.tt2:50 ../../Open-ILS/src/templates/opac/parts/result/table.tt2:231
 msgid "Status"
 msgstr ""
 

-----------------------------------------------------------------------


hooks/post-receive
-- 
Evergreen ILS


More information about the open-ils-commits mailing list