From a762c1794ac2a0ffbd5de149630dead0e537d7fd Mon Sep 17 00:00:00 2001 From: Chris Sharp Date: Fri, 21 Jun 2019 15:47:32 -0400 Subject: [PATCH] Bumping version numbers, adding Upgrade Script and Changelog Signed-off-by: Chris Sharp --- ChangeLog | 717 ++++++++++++++++++++- Open-ILS/src/perlmods/lib/OpenILS/Application.pm | 2 +- Open-ILS/src/sql/Pg/002.schema.config.sql | 1 + .../version-upgrade/3.1.12-3.1.13-upgrade-db.sql | 5 + .../staff_client/chrome/content/main/about.html | 2 +- .../xul/staff_client/defaults/preferences/prefs.js | 2 +- Open-ILS/xul/staff_client/windowssetup.nsi | 2 +- README | 686 +++++++++++++++++++- configure.ac | 4 +- 9 files changed, 1411 insertions(+), 10 deletions(-) create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/3.1.12-3.1.13-upgrade-db.sql mode change 120000 => 100644 README diff --git a/ChangeLog b/ChangeLog index 1f72b2c73e..401419e973 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,714 @@ -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 a910baec13106ad1b81b7fe293929c0220967e98 +Author: Chris Sharp +Date: Fri Jun 21 15:47:28 2019 -0400 + + Updating upgrade docs for 3.1.13. + + Signed-off-by: Chris Sharp + +15 15 docs/installation/server_upgrade.adoc + +commit 2a86d1c07c52483b98c8974d3accbd9c403f9c64 +Author: Chris Sharp +Date: Fri Jun 21 15:47:08 2019 -0400 + + Bumping Perl version string for 3.1.13 + + Signed-off-by: Chris Sharp + +1 1 Open-ILS/src/perlmods/lib/OpenILS.pm + +commit 2526b07975e90d3d416b6b5a0f1a289dc76e8ed1 +Author: Dan Wells +Date: Fri Jun 21 11:16:59 2019 -0400 + + LP#1759343 Fix annotate payment setting name + + This setting was added to the database with the 'eg.' prefix, but in + the code it was not used. The end effect was that the setting likely + worked, but was not saved in the way expected. + + This makes the setting name in the code match the DB. + + Signed-off-by: Dan Wells + Signed-off-by: Chris Sharp + +2 2 Open-ILS/web/js/ui/default/staff/circ/patron/bills.js + +commit 6a89835cdb2fcb2e5dee43ea9058b0a0cf8e5643 +Author: Jason Stephenson +Date: Thu Jun 20 11:37:02 2019 -0400 + + Lp 1759343: Remove database upgrade script from 3.1 backport + + Evergreen 3.1 cannot store workstation settings in the database, so + the database updates needed for Evergreen 3.2 and beyond are not + needed in 3.1 and cause errors when building or upgrading the + database. + + Signed-off-by: Jason Stephenson + Signed-off-by: Dan Wells + +0 8 Open-ILS/src/sql/Pg/upgrade/XXXX.data.annotate_payment_setting.sql + delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.annotate_payment_setting.sql + +commit d7b067f435f35ba97b459cb15adaa981eb4d2f24 +Author: Jason Stephenson +Date: Thu Jun 20 11:35:59 2019 -0400 + + Revert "LP1759343 (follow-up): Add bill annotation setting to seed data" + + This reverts commit 7f7c1291edb75c8e596eacf1c35eb5c46c684f21. + + This commit was backported to rel_3_1 where it does not work. + + Signed-off-by: Jason Stephenson + Signed-off-by: Dan Wells + +0 22 Open-ILS/src/sql/Pg/950.data.seed-values.sql + +commit 93a4bed2fa510655ddb835061f76917c26643661 +Author: Jason Stephenson +Date: Thu Jun 20 11:35:04 2019 -0400 + + Revert "LP1759343: Stamping upgrade: annotate payment setting" + + This reverts commit d36620734f4f1ab10b70f48d4beef34fad18d36b. + + This commit was backported to rel_3_1 where it does not work. + + Signed-off-by: Jason Stephenson + Signed-off-by: Dan Wells + +1 1 Open-ILS/src/sql/Pg/002.schema.config.sql +0 8 Open-ILS/src/sql/Pg/upgrade/1167.data.annotate_payment_setting.sql +8 0 Open-ILS/src/sql/Pg/upgrade/XXXX.data.annotate_payment_setting.sql + delete mode 100644 Open-ILS/src/sql/Pg/upgrade/1167.data.annotate_payment_setting.sql + create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.annotate_payment_setting.sql + +commit 999c1b5fabc7d11de4f251b27512aa0babef9be6 +Author: Jane Sandberg +Date: Wed Jun 19 06:31:26 2019 -0700 + + Docs: 3.1.13 release notes + + Signed-off-by: Jane Sandberg + +126 0 docs/RELEASE_NOTES_3_1.adoc + +commit d36620734f4f1ab10b70f48d4beef34fad18d36b +Author: Jane Sandberg +Date: Thu Jun 13 13:57:14 2019 -0700 + + LP1759343: Stamping upgrade: annotate payment setting + + Signed-off-by: Jane Sandberg + +1 1 Open-ILS/src/sql/Pg/002.schema.config.sql +8 0 Open-ILS/src/sql/Pg/upgrade/1167.data.annotate_payment_setting.sql +0 8 Open-ILS/src/sql/Pg/upgrade/XXXX.data.annotate_payment_setting.sql + create mode 100644 Open-ILS/src/sql/Pg/upgrade/1167.data.annotate_payment_setting.sql + delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.annotate_payment_setting.sql + +commit 7f7c1291edb75c8e596eacf1c35eb5c46c684f21 +Author: Jane Sandberg +Date: Thu Jun 13 11:33:20 2019 -0700 + + LP1759343 (follow-up): Add bill annotation setting to seed data + + Signed-off-by: Jane Sandberg + +22 0 Open-ILS/src/sql/Pg/950.data.seed-values.sql + +commit 10eea7f19e457cc9e35ea2b0bc1db58944209d5a +Author: Jason Boyer +Date: Fri Jan 18 12:38:22 2019 -0500 + + LP1759343: Bills Annotation Persistance + + Make the Annotate option on the patron Bills page + persistant and a workstation setting. + + Signed-off-by: Jason Boyer + Signed-off-by: Terran McCanna + Signed-off-by: Jane Sandberg + +8 0 Open-ILS/src/sql/Pg/upgrade/XXXX.data.annotate_payment_setting.sql +1 1 Open-ILS/src/templates/staff/circ/patron/t_bills.tt2 +10 1 Open-ILS/web/js/ui/default/staff/circ/patron/bills.js + create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.annotate_payment_setting.sql + +commit cf5c12e442e043cc2d25c8d6345917e00e348e91 +Author: Galen Charlton +Date: Fri Apr 19 16:29:21 2019 -0400 + + LP#1812900: fix retention of saved defaults in holdings editor + + Because the $watch on the statistical category default OU filter + in the holdings editor can fire before the form is fully initialized, + saved defaults (i.e., the cat.copy.defaults workstation setting) + could get overwritten with the hard-coded default value for that, er, + set of defaults. + + This patch ensures that that $watch saves the defaults only when the + value of the default stat cat OU filter has changed. + + To test + ------- + [1] Use the holdings editor on an item. Change to the defaults + tab and check or uncheck checkboxes such as "Use checkdigit" + and "Print Item Labels on Save and Exit" + [2] Refresh the page or open the holdings editor on a different item. + Note that the settings from step #1 are not retained. + [3] Apply the patch. + [4] Repeat steps #1 and #2. This time, the settings should be retained. + [5] Set the Default Filter Library in the same tab and refresh. Verify + that the OU you chose is retained. + + Signed-off-by: Galen Charlton + Signed-off-by: Remington Steed + Signed-off-by: John Amundson + Signed-off-by: Janet Schrader + Signed-off-by: Jason Stephenson + +3 2 Open-ILS/web/js/ui/default/staff/cat/volcopy/app.js + +commit aa8449b24641ebb2c065e2bbe74d2396157e2c85 +Author: Sam Link +Date: Thu Dec 13 15:27:58 2018 -0500 + + LP#1796914: Right Navbar Menu Title + + Add a title attribute to the top-right menu in the AngularJS form of the + navbar. + + Signed-off-by: Sam Link + Signed-off-by: Galen Charlton + Signed-off-by: Jane Sandberg + +1 1 Open-ILS/src/templates/staff/navbar.tt2 + +commit 2431aacd734227b61487224986a0d52cbfd800d0 +Author: Jason Stephenson +Date: Tue Aug 7 10:02:10 2018 -0400 + + LP 115706: Avoid Internal Server Errors with Hold Count Retrieval + + It can happen that the query to get a record's hold count can run too + long and timeout or fail for some other reason. When this happens, + the user sees an Internal Server Error. The underlying cause is the + following Perl error: + + Can't use an undefined value as an ARRAY reference at + /usr/local/share/perl/5.22.1/OpenILS/Application/Circ/Holds.pm line + 4264. + + This commit rearranges the code around that line to avoid this + particular undefined value reference error. + + Signed-off-by: Jason Stephenson + Signed-off-by: Cesar Velez + Signed-off-by: Galen Charlton + +10 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm + +commit bee1f478878b7d06732da716932e52d2601a7ab3 +Author: Kyle Huckins +Date: Fri May 24 19:55:44 2019 +0000 + + LP#1789256 Monograph Part Column in Check Out + + Retrieve and display the label of all monograph parts for + copy listed in the Check Out table + + Signed-off-by: Kyle Huckins + Signed-off-by: Garry Collum + Signed-off-by: Galen Charlton + +1 0 Open-ILS/src/templates/staff/circ/patron/t_checkout.tt2 +6 0 Open-ILS/web/js/ui/default/staff/circ/services/circ.js + +commit 7a607fc74533318b1da061adf61c17806f43ac66 +Author: Kyle Huckins +Date: Fri May 24 17:16:00 2019 +0000 + + lp1789257 Items Out Monograph Part Column + + Retrieve and display the label of all monograph parts for + copy listed in the Items Out table + + To test + ------- + [1] Apply the patch. + [2] Check out an item that has one or more monograph parts + linked to it. + [3] Verify that the Monograph Part column is available in the + Items Out grid and displays the part label(s). An example + of an item in the Concerto set that has a part is + CONC70001420. + + Signed-off-by: Kyle Huckins + Signed-off-by: Garry Collum + Signed-off-by: Galen Charlton + +1 0 Open-ILS/src/templates/staff/circ/patron/t_items_out.tt2 +5 1 Open-ILS/web/js/ui/default/staff/circ/patron/items_out.js + +commit 1cce56abb3b439f49bf590129da8bc6db47f8f5f +Author: McCanna +Date: Fri Feb 15 14:55:59 2019 -0500 + + LP#1816180 Pending Patron - No Address Type + + When registering a patron from Pending Patrons, inserts + default address type to match behavior of registering a + new patron from scratch. + + Signed-off-by: McCanna + Signed-off-by: Garry Collum + Signed-off-by: Galen Charlton + +1 0 Open-ILS/web/js/ui/default/staff/circ/patron/regctl.js + +commit 39b5e2cfeeda1d5b788d7753530551776d0be0f9 +Author: Geoff Sams +Date: Mon Mar 4 10:52:56 2019 -0600 + + Docs: LP1776913: Fixes references to Circulation Limit Sets in docs. + + Signed-off-by: Geoff Sams + Signed-off-by: Lynn Floyd + Signed-off-by: Jane Sandberg + +1 1 docs/admin/circulation_limit_groups.adoc +3 3 docs/admin_initial_setup/borrowing_items.adoc + +commit 412e9af63318c582ad5dcf2baa376815920b4693 +Author: Geoff Sams +Date: Mon Mar 4 10:41:13 2019 -0600 + + LP1776913: Corrects Local Administration menu to use correct form Circulation Limit Sets and Age Overdue Circulations to Lost. + + Signed-off-by: Geoff Sams + Signed-off-by: Lynn Floyd + Signed-off-by: Jane Sandberg + +2 2 Open-ILS/src/templates/staff/admin/local/t_splash.tt2 + +commit e46332db715b919ec339d3bfae423d73996fca89 +Author: Bill Erickson +Date: Fri Mar 8 10:38:43 2019 -0500 + + LP1748265 Hold fetch API sms_carrier option + + Support a new "include_sms_carrier" option to the holds retrieve API so + the data may be fetched along with the hold instead after the fact in + the patron holds list, etc. + + Signed-off-by: Bill Erickson + Signed-off-by: Garry Collum + Signed-off-by: Galen Charlton + +1 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm + +commit ff62a98d0459aef0e3fe0b03c8e997d784255804 +Author: Garry Collum +Date: Sun Jun 3 15:54:25 2018 -0400 + + LP#1748265 SMS Carrier not an option in the patron's list of holds. + + Adds SMS Carrier name as an option in the patron's list of holds. + + To test: + 1. Set 'Enable features that send SMS text messages' in the Library Settings to true. + 2. Place a few holds for a patron, selecting text message notification. + 3. Go to the patron's record and view their holds. + 4. Display the 'Notifications SMS Carrier' column to view the carrier name. + + Signed-off-by: Garry Collum + Signed-off-by: Dawn Dale + Signed-off-by: Bill Erickson + Signed-off-by: Galen Charlton + +1 0 Open-ILS/src/templates/staff/circ/patron/t_holds_list.tt2 +7 0 Open-ILS/web/js/ui/default/staff/circ/services/holds.js + +commit c03bea253077c87ff6c6812cad23d034d9a81679 +Author: Garry Collum +Date: Sat May 19 17:00:40 2018 -0400 + + LP1772206 Tooltips missing from Patron Summary + + Adds tooltips for home branch and Last Activity to emulate the XUL + client. The home branch tool tip displays the long OU name. The + last activity tooltip displays the last type of activity. + + To test: + + Home branch + 1. Perform a patron search. + 2. Click on one of the patrons in the results. + 3. Hover over the home branch location in the patron summary. + + Last Activity + 4. Log into the opac with a patron account to some patron activity. + 5. Bring up the patron in the staff client. + 6. Hover over the last activity date. + + 7. Apply the patch and repeat 1-3 and 5-6. + + Signed-off-by: Garry Collum + Signed-off-by: Terran McCanna + Signed-off-by: Galen Charlton + +2 2 Open-ILS/src/templates/staff/circ/patron/t_summary.tt2 + +commit 46111cc283637939e5f1f2bcbceaa94eaddbddb4 +Author: Dan Pearl +Date: Tue Apr 10 14:45:47 2018 -0400 + + LP1760893 Add Holdings Part dropdown should list items in order + + Without a defined sort, the Part dropdown when editing a holding simply + displays in database order. Let's be more deterministic about it. + + In this case, while slightly surprising, consensus opinion was that + reverse order on label_sortkey provides the best overall usability. + This is obviously true on records with many parts, but can help in all + cases. + + Signed-off-by: Dan Pearl + Signed-off-by: Dan Wells + +2 1 Open-ILS/web/js/ui/default/staff/cat/volcopy/app.js + +commit 4f01a25a2018d04e1108a061afd4878b4396cb07 +Author: Bill Ott +Date: Fri May 18 09:52:46 2018 -0400 + + LP#1772028 Add some FK violation functions just in case they are missing + + Depending on your data, upgrade 1063 may not have created the functions + being re-applied in this upgrade script. Let's make sure they are + there. + + Signed-off-by: Bill Ott + Signed-off-by: Dan Wells + +48 0 Open-ILS/src/sql/Pg/version-upgrade/3.0.1-3.0.2-upgrade-db.sql + +commit bc70a2473bcd53edb8f15d402e9b96b8595ffb4b +Author: Galen Charlton +Date: Thu May 23 10:32:44 2019 -0400 + + LP#1642337: more tweaks to the patch series + + This patch makes the following changes: + + - ensures that the Boolean values get saved as 't' or 'f', as + the reporter builder doesn't recognize JSON true or false in + this context. + - pretty-prints the current filter value in the dialog + - removes a logging line + + To test + ------- + [1] Apply the patch. + [2] Create or clone one or more report templates and add Boolean + column filters. Change the filter value and verify that + it displays the current value and lets you change it. + [3] Run reports from the template(s) created in step 2 and + verify that the reports produce the expected results. + + Signed-off-by: Galen Charlton + Signed-off-by: Dawn Dale + Signed-off-by: Galen Charlton + +7 4 Open-ILS/web/js/ui/default/staff/reporter/template/app.js + +commit af421cc30f4e4bf530baea21a03f3ebb80b1159e +Author: Jason Boyer +Date: Tue Jan 29 12:15:25 2019 -0500 + + LP1642337: Reporter Boolean Filters + + The dialog controller doesn't appreciate getting + a bare boolean as a message, so if the current item + is a boolean call toString() on it before calling + the egConfirmDialog. + + An string is also added to the reporter + strings for further use, but if there are no + strong feelings re: using it, it can be dumped and + a '' used in its place. + + Signed-off-by: Jason Boyer + Signed-off-by: Galen Charlton + Signed-off-by: Dawn Dale + Signed-off-by: Galen Charlton + +1 0 Open-ILS/src/templates/staff/reporter/share/report_strings.tt2 +1 1 Open-ILS/web/js/ui/default/staff/reporter/template/app.js + +commit b7d9be1b3cc4cec548a94a2b9ad2b4e3f67acd52 +Author: Kyle Huckins +Date: Thu Nov 16 20:56:51 2017 +0000 + + lp1642337 Boolean Filters in Reporter + + - Add condition check to see if filter is boolean, and if so, + substitute a confirm dialog for the default prompt, repalcing + the text input with buttons for True/False values. + + Signed-off-by: Kyle Huckins + Signed-off-by: Jason Boyer + Signed-off-by: Galen Charlton + Signed-off-by: Dawn Dale + Signed-off-by: Galen Charlton + +17 5 Open-ILS/web/js/ui/default/staff/reporter/template/app.js + +commit eeaf64f15460084c8231a4af637385a8b870e52a +Author: Dan Wells +Date: Fri May 24 14:26:44 2019 -0400 + + Forward-port 3.1.12 upgrade script + + Signed-off-by: Dan Wells + +5 0 Open-ILS/src/sql/Pg/version-upgrade/3.1.11-3.1.12-upgrade-db.sql + create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/3.1.11-3.1.12-upgrade-db.sql + +commit 3d9eb86466d35067444e1e12395ceecea4362684 +Author: a. bellenir +Date: Mon Mar 11 13:39:00 2019 -0400 + + LP1775639: Refresh required to see Patron Credit + + reload patron data when applying a payment + if the payment will change the patron's credit forward balance. + + To test + ------- + [1] Bill a patron, then make sure that the "Convert Change to Patron + Credit" checkbox is checked. Pay bill with more than the total + balance. Note that the Credit Available amount in the billing + summary does not change. Refresh the page. + [2] Bill a patron, then use the patron credit added in step 1 to + pay off the bill. Note that again, the Credit Available amount + does not change. + [3] Apply the patch and repeats steps 1 and 2. This time, the Credit + Available field should get updated. + + Signed-off-by: a. bellenir + Signed-off-by: Garry Collum + Signed-off-by: Galen Charlton + +4 0 Open-ILS/web/js/ui/default/staff/circ/patron/bills.js + +commit 4ca2225267a699a9adddb463c41a38c2145e0e84 +Author: Suzanne Paterno +Date: Tue Apr 9 10:42:15 2019 -0400 + + LP 1744386 & LP 1777184 - stat cats & stat cat entries not alphabetical + + Statistical categories will be alphabetized first by library and then by category. + + The entires within each category will also be alphabetized. + + Signed-off-by: Jason Etheridge + Signed-off-by: Cesar Velez + Signed-off-by: Galen Charlton + +2 1 Open-ILS/web/js/ui/default/staff/cat/volcopy/app.js + +commit 9248aa3bb003f23d017703e29fff55e3f0fe2776 +Author: Jane Sandberg +Date: Wed Apr 17 16:46:46 2019 -0400 + + LP1744386: Alphabetize stat cats in volcopy attr editor + + To test: + 1. Go to the volume copy editor. Confirm that the stat + cats do not display in order of owning library or stat cat + name. + 2. Apply this commit. + 3. Go to the volume copy editor. Confirm that the stat + cats now display in alphabetical order by owning library, + then stat cat name. + + Signed-off-by: Jane Sandberg + Signed-off-by: Jason Etheridge + Signed-off-by: Galen Charlton + +1 1 Open-ILS/src/templates/staff/cat/volcopy/t_attr_edit.tt2 + +commit 42f336f016f9282b27d497e6223ae84aca17d764 +Author: Rogan Hamby +Date: Fri Apr 19 11:25:19 2019 -0400 + + LP#1440890: add vandelay_queue to the types of containers retrieved by batch edit + + To test + ------- + [1] Perform a batch bibliographic record import, then add the import + queue to a new bucket. + [2] In the web staff client, go to Cataloging | Batch Edit. + [3] Note that the bucket created in step 1 does _not_ appear in the + bucket selector on the batch edit page. + [4] In the web staff client, go to the record bucket and hit the + Batch edit button. + [5] Note that the bucket created in step 1 does _not_ appear in the + bucket selector on the batch edit page. + [6] Apply the patch and repeat steps 2-3. This time, the bucket + should appear in the selector. + [7] Repeat steps 4-5. This time, the bucket should appear in the selector + (and be the active choice). + + Signed-off-by: Rogan Hamby + Signed-off-by: Galen Charlton + +1 1 Open-ILS/src/perlmods/lib/OpenILS/WWW/TemplateBatchBibUpdate.pm + +commit 9dfd0466c9cc721790ebc914b2041f762ab23cea +Author: Jane Sandberg +Date: Thu Dec 6 15:49:40 2018 -0800 + + LP1760599: Only show merge records action when multiple bucket records selected + + To test: + 1) Create a bucket. + 2) Select one record from your bucket. Right-click on your record or click on the Actions drop-down. + 3) Note that "Merge Selected Records" is clickable. + 4) Apply this commit. + 5) Repeat steps 2-3. Note that "Merge Selected Records" is no longer + clickable, unless you select two or more records. + + Signed-off-by: Jane Sandberg + Signed-off-by: Rogan Hamby + Signed-off-by: Galen Charlton + +1 0 Open-ILS/src/templates/staff/cat/bucket/record/t_view.tt2 +6 0 Open-ILS/web/js/ui/default/staff/cat/bucket/record/app.js + +commit 649f4a3d5e7c4d91f62dd0b055224dff2cb6ad12 +Author: Jason Boyer +Date: Thu Feb 7 13:48:13 2019 -0500 + + LP1790896: Receipt Errors with invalid emails + + The attempt at belt-and-suspenders checking for a valid + email for use in the has_email template field sadly + causes the JS to trip over said suspenders if there is + a value in the field but it doesn't contain a '@'. + + The raw return from "".match() (either an array or null) + is enough to do the right thing when converted into a + Boolean and doesn't cause the same problems. + + To test + ------- + [1] Set up a patron record with an invalid email address, + e.g., one that lacks the '@' character. + [2] Check out an item the patron, then from the Items Out + tab, print an item receipt. + [3] Note that nothing happens and an error is logged in the + browser console. + [4] Apply the patch and repeat step 2. This time, a receipt + should be generated. + + Signed-off-by: Jason Boyer + Signed-off-by: Josh Stompro + Signed-off-by: Galen Charlton + +3 3 Open-ILS/web/js/ui/default/staff/circ/patron/bills.js +1 1 Open-ILS/web/js/ui/default/staff/circ/patron/checkout.js +1 1 Open-ILS/web/js/ui/default/staff/circ/patron/items_out.js + +commit 6c065675237f07e5139ce1a47ddf1359d041bfcd +Author: Jason Stephenson +Date: Thu May 3 17:31:07 2018 -0400 + + Lp 1768987: Use FindBin in 24-sql-gettext-unique.t. + + Use FindBin in the 24-sql-gettext-unique.t test file so that it can be + run from directories other than Open-ILS/src/perlmods. + + To test + ------- + [1] Apply the patch. + [2] From the root of the Evergreen checkout, run + prove Open-ILS/src/perlmods/t/24-sql-gettext-unique.t + [3] Verify that the tests pass. + + Signed-off-by: Jason Stephenson + Signed-off-by: Galen Charlton + +2 1 Open-ILS/src/perlmods/t/24-sql-gettext-unique.t + +commit f706a6081268681bfcc6195c3b5a015c8f0f4bc8 +Author: Remington Steed +Date: Thu May 23 13:44:22 2019 -0400 + + Docs: Fix list formatting in 3.1 release notes + + Single list items that wrap across multiple lines accidentally start + each line with a bullet. This commit removes the extra bullets. + + Signed-off-by: Remington Steed + +12 12 docs/RELEASE_NOTES_3_1.adoc + +commit 63a41ffce4d92023b9607964ba1c9268ffcec894 +Author: Jeff Godin +Date: Tue Oct 2 08:32:54 2018 -0400 + + LP#1796942 Treat VISA SIP payments as credit card + + Treat sip_payment_type 01 (VISA) as a credit_card_payment. + + Previously, we only handled payment type 02 (credit card) and 01 + fell through to be treated as a cash_payment. + + Signed-off-by: Jeff Godin + Signed-off-by: Galen Charlton + Signed-off-by: Bill Erickson + +2 1 Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction/FeePayment.pm + +commit a072c700e72815373c6f11b14c170532c83f5f35 +Author: Bill Erickson +Date: Thu Aug 3 15:01:34 2017 -0400 + + LP#1704819 Fine generator avoids int() rounding + + Avoid using the Perl int() function for rounding in the fine generator, + since it can have unexpected outcomes. + + For example: + + $ perl -e 'print "230 = " . int(100 * 2.30) . "\n"' + 230 = 229 + + Signed-off-by: Bill Erickson + Signed-off-by: Galen Charlton + +5 5 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CircCommon.pm + +commit 7001d89f8528783fadfa948801c0d1db3be0a65a +Author: Daniel Pearl +Date: Wed Dec 12 12:51:07 2018 -0500 + + LP#1029601: Prevent duplicate holds from double clicks + + Double clicking on hold submit buttons causes multiple holds to be + generated. This commits adds code to disable the Submit button(s) + after the first click, so subsequent clicks don't "work" in unintended + ways. + + Signed-off-by: Dan Pearl + Signed-off-by: Jeff Davis + Signed-off-by: Jason Stephenson + +11 3 Open-ILS/src/templates/opac/parts/place_hold_result.tt2 +6 1 Open-ILS/web/js/ui/default/opac/holds-validation.js diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application.pm index d750216454..ad4ef02b06 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 "3-1-13"; } __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 5327949f13..4c6d52d93b 100644 --- a/Open-ILS/src/sql/Pg/002.schema.config.sql +++ b/Open-ILS/src/sql/Pg/002.schema.config.sql @@ -93,6 +93,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 ('1157', :eg_version); -- berick/sandbergja/Dyrcona +INSERT INTO config.upgrade_log (version, applied_to) VALUES ('3.1.13', :eg_version); CREATE TABLE config.bib_source ( id SERIAL PRIMARY KEY, diff --git a/Open-ILS/src/sql/Pg/version-upgrade/3.1.12-3.1.13-upgrade-db.sql b/Open-ILS/src/sql/Pg/version-upgrade/3.1.12-3.1.13-upgrade-db.sql new file mode 100644 index 0000000000..8a32ea2e3f --- /dev/null +++ b/Open-ILS/src/sql/Pg/version-upgrade/3.1.12-3.1.13-upgrade-db.sql @@ -0,0 +1,5 @@ +--Upgrade Script for 3.1.12 to 3.1.13 +\set eg_version '''3.1.13''' +BEGIN; +INSERT INTO config.upgrade_log (version, applied_to) VALUES ('3.1.13', :eg_version); +COMMIT; 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 b2b87b683f..721a1fb748 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 @@

Evergreen

Target Server ID:

-

$HeadURL$

+

http://git.evergreen-ils.org/?p=Evergreen.git;a=shortlog;h=refs/heads/tags/rel_3_1_13

What is Evergreen?

diff --git a/Open-ILS/xul/staff_client/defaults/preferences/prefs.js b/Open-ILS/xul/staff_client/defaults/preferences/prefs.js index 0613a13ddf..f6c1547545 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/?p=Evergreen.git;a=shortlog;h=refs/heads/tags/rel_3_1_13"); 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 a9543579a8..ae0bbdf527 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 "3.1" !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 1ee2103e6f..0000000000 --- a/README +++ /dev/null @@ -1 +0,0 @@ -docs/installation/server_installation.adoc \ No newline at end of file diff --git a/README b/README new file mode 100644 index 0000000000..94f3889147 --- /dev/null +++ b/README @@ -0,0 +1,685 @@ +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 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/egdownloads + +Developers working directly with the source code from the Git repository, +rather than an official release tarball, must perform one step before they +can proceed with the `./configure` step. + +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 +------------------------------------------------------------------------------ + +Installing prerequisites +------------------------ + + * **PostgreSQL**: The minimum supported version is 9.4. + * **Linux**: Evergreen has been tested on Debian Stretch (9), + Debian Jessie (8), Debian Wheezy (7), Ubuntu Xenial Xerus (16.04), + and Ubuntu Trusty Tahr (14.04). + If you are running an older version of these distributions, you may want + to upgrade before upgrading Evergreen. For instructions on upgrading these + distributions, visit the Debian or Ubuntu websites. + * **OpenSRF**: The minimum supported version of OpenSRF is 3.0.0. + + +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 (3.0.0 or later). + You can download OpenSRF releases from http://evergreen-ils.org/opensrf-downloads/ +2. On some distributions, it is necessary to install PostgreSQL 9.4+ from external + repositories. ++ + * Debian (Wheezy) and Ubuntu (Trusty) comes with older versions of + PostgreSQL, so steps are taken to automatically utilize the + PostgreSQL community's apt sources. + (For complete details, see: https://wiki.postgresql.org/wiki/Apt) + * Debian (Jessie/Stretch) and Ubuntu (Xenial) comes with PostgreSQL 9.4+, + so no additional steps are required. ++ +3. Issue the following commands as the *root* Linux account to install + prerequisites using the `Makefile.install` prerequisite installer, + substituting `debian-stretch`, `debian-jessie`, `debian-wheezy`, + `ubuntu-xenial`, or `ubuntu-trusty` for below: ++ +[source, bash] +------------------------------------------------------------------------------ +make -f Open-ILS/src/extras/Makefile.install +------------------------------------------------------------------------------ ++ +4. 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 Trusty/Xenial or Debian Jessie/Stretch. The Ubuntu +and Debian Jessie/Stretch targets use libdbd-pgsql from packages. ++ +.Debian Wheezy +[source, bash] +------------------------------------------------------------------------------ +echo "/usr/local/lib/dbd" > /etc/ld.so.conf.d/eg.conf +ldconfig +------------------------------------------------------------------------------ + +[[optional_developer_additions]] +5. OPTIONAL: Developer additions ++ +To perform certain developer tasks from a Git source code checkout, +additional packages may be required. As the *root* Linux account: ++ + * To install packages needed for retrieving and managing web dependencies, + use the -developer Makefile.install target. Currently, + this is only needed for building and installing the (preview) browser + staff client. ++ +[source, bash] +------------------------------------------------------------------------------ +make -f Open-ILS/src/extras/Makefile.install -developer +------------------------------------------------------------------------------ ++ + * To install packages required for building Evergreen translations, use + the -translator Makefile.install target. ++ +[source, bash] +------------------------------------------------------------------------------ +make -f Open-ILS/src/extras/Makefile.install -translator +------------------------------------------------------------------------------ ++ + * To install packages required for building Evergreen release bundles, use + the -packager Makefile.install target. ++ +[source, bash] +------------------------------------------------------------------------------ +make -f Open-ILS/src/extras/Makefile.install -packager +------------------------------------------------------------------------------ + +Extra steps for web staff client +-------------------------------- + +[NOTE] +Skip this entire section if you are using an official release tarball downloaded +from http://evergreen-ils.org/downloads + +Install dependencies for web staff client +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +[NOTE] +You may skip this section if you have installed the +<>. You will still need to do the following +steps in <>. + +1. Install the long-term stability (LTS) release of +https://nodejs.org[Node.js]. Add the Node.js `/bin` directory to your +environment variable `PATH`. + +[[install_files_for_web_staff_client]] +Install files for web staff client +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +1. Building, Testing, Minification: The remaining steps all take place within + the staff JS web root: ++ +[source,sh] +------------------------------------------------------------------------------ +cd $EVERGREEN_ROOT/Open-ILS/web/js/ui/default/staff/ +------------------------------------------------------------------------------ ++ +2. Install Project-local Dependencies. npm inspects the 'package.json' file + for dependencies and fetches them from the Node package network. ++ +[source,sh] +------------------------------------------------------------------------------ +npm install # fetch JS dependencies +------------------------------------------------------------------------------ ++ +3. Run the build script. ++ +[source,sh] +------------------------------------------------------------------------------ +# build, run tests, concat+minify +npm run build-prod +npm run test +------------------------------------------------------------------------------ + +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_3_1_13 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 +------------------------------------------------------------------------------ + +Run ldconfig +------------ + +On Debian Stretch, run the following command as the root user: + +[source, bash] +------------------------------------------------------------------------------ +ldconfig +------------------------------------------------------------------------------ + +Additional Instructions for Developers +-------------------------------------- + +[NOTE] +Skip this section if you are using an official release tarball downloaded +from http://evergreen-ils.org/egdownloads + +Developers working directly with the source code from the Git repository, +rather than an official release tarball, 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/. +------------------------------------------------------------------------------ + + +Configure the Apache Web server +------------------------------- + +. 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 Wheezy +[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 +------------------------------------------------------------------------------ ++ +.Ubuntu Trusty/Xenial and Debian Jessie/Stretch +[source,bash] +------------------------------------------------------------------------------------ +cp Open-ILS/examples/apache_24/eg_24.conf /etc/apache2/sites-available/eg.conf +cp Open-ILS/examples/apache_24/eg_vhost_24.conf /etc/apache2/eg_vhost.conf +cp Open-ILS/examples/apache/eg_startup /etc/apache2/ +# Now set up SSL +mkdir /etc/apache2/ssl +cd /etc/apache2/ssl +------------------------------------------------------------------------------------ ++ +. 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 +------------------------------------------------------------------------------ ++ +. 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` +. 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`. +. As the *root* Linux account, configure Apache with KeepAlive settings + appropriate for Evergreen. Higher values can improve the performance of a + single client by allowing multiple requests to be sent over the same TCP + connection, but increase the risk of using up all available Apache child + processes and memory. + * (Debian and Ubuntu): Edit `/etc/apache2/apache2.conf`. + a. Change `KeepAliveTimeout` to `1`. + b. Change `MaxKeepAliveRequests` to `100`. +. As the *root* Linux account, configure the prefork module to start and keep + enough Apache servers available to provide quick responses to clients without + running out of memory. The following settings are a good starting point for a + site that exposes the default Evergreen catalogue to the web: ++ +.Debian Wheezy (`/etc/apache2/apache2.conf`) +[source,bash] +------------------------------------------------------------------------------ + + StartServers 15 + MinSpareServers 5 + MaxSpareServers 15 + MaxClients 75 + MaxRequestsPerChild 500 + +------------------------------------------------------------------------------ ++ +.Ubuntu Trusty/Xenial, Debian Jessie/Stretch (`/etc/apache2/mods-available/mpm_prefork.conf`) +[source,bash] +------------------------------------------------------------------------------ + + StartServers 15 + MinSpareServers 5 + MaxSpareServers 15 + MaxRequestWorkers 75 + MaxConnectionsPerChild 500 + +------------------------------------------------------------------------------ ++ +. (Ubuntu Trusty/Xenial, Debian Jessie/Stretch) As the *root* user, + enable the mpm_prefork module: ++ +[source,bash] +------------------------------------------------------------------------------ +a2dismod mpm_event +a2enmod mpm_prefork +------------------------------------------------------------------------------ ++ +. (Debian Wheezy): 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 +------------------------------------------------------------------------------ ++ +(Ubuntu Trusty/Xenial, Debian Jessie/Stretch): ++ +[source,bash] +------------------------------------------------------------------------------ +a2dissite 000-default # OPTIONAL: disable the default site (the "It Works" page) +a2ensite eg.conf +------------------------------------------------------------------------------ ++ +. (Debian and Ubuntu): As the *root* Linux account, enable Apache to write + to the lock directory; this is currently necessary because Apache + is running as the `opensrf` user: ++ +[source,bash] +------------------------------------------------------------------------------ +chown opensrf /var/lock/apache2 +------------------------------------------------------------------------------ + +Learn more about additional Apache options in the following sections: + + * <<_apache_rewrite_tricks,Apache Rewrite Tricks>> + * <<_apache_access_handler_perl_module,Apache Access Handler Perl Module>> + +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 <<_creating_the_evergreen_database,Creating the Evergreen +database>>, sets the database connection information in `opensrf.xml` for you. + +Configure action triggers for the Evergreen application +------------------------------------------------------- +_Action Triggers_ provide hooks for the system to perform actions when a given +event occurs; for example, to generate reminder or overdue notices, the +`checkout.due` hook is processed and events are triggered for potential actions +if there is no checkin time. + +To enable the default set of hooks, issue the following command as the +*opensrf* Linux account: + +[source, bash] +------------------------------------------------------------------------------ +cp -b /openils/conf/action_trigger_filters.json.example /openils/conf/action_trigger_filters.json +------------------------------------------------------------------------------ + +For more information about configuring and running action triggers, see +<<_processing_action_triggers,Notifications / Action Triggers>>. + +Creating the Evergreen database +------------------------------- + +Setting up the PostgreSQL server +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +For production use, most libraries install the PostgreSQL database server on a +dedicated machine. Therefore, by default, the `Makefile.install` prerequisite +installer does *not* install the PostgreSQL 9 database server that is required +by every Evergreen system. You can install the packages required by Debian or +Ubuntu on the machine of your choice using the following commands as the +*root* Linux account: + +.(Debian / Ubuntu) Installing PostgreSQL server packages + +Each OS build target provides the postgres server installation packages +required for each operating system. To install Postgres server packages, +use the make target 'postgres-server-'. Choose the most appropriate +command below based on your operating system. + +[source, bash] +------------------------------------------------------------------------------ +make -f Open-ILS/src/extras/Makefile.install postgres-server-debian-stretch +make -f Open-ILS/src/extras/Makefile.install postgres-server-debian-jessie +make -f Open-ILS/src/extras/Makefile.install postgres-server-debian-wheezy +make -f Open-ILS/src/extras/Makefile.install postgres-server-ubuntu-trusty +make -f Open-ILS/src/extras/Makefile.install postgres-server-ubuntu-xenial +------------------------------------------------------------------------------ + +For a standalone PostgreSQL server, install the following Perl modules for your +distribution as the *root* Linux account: + +.(Debian and Ubuntu) +No extra modules required for these distributions. + +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 +------------------------------------------------------------------------------ + +.Enabling connections to the PostgreSQL database + +Your PostgreSQL database may be configured by default to prevent connections, +for example, it might reject attempts to connect via TCP/IP or from other +servers. To enable TCP/IP connections from localhost, check your `pg_hba.conf` +file, found in the `/etc/postgresql/` directory on Debian and Ubuntu. +A simple way to enable TCP/IP +connections from localhost to all databases with password authentication, which +would be suitable for a test install of Evergreen on a single server, is to +ensure the file contains the following entries _before_ any "host ... ident" +entries: + +------------------------------------------------------------------------------ +host all all ::1/128 md5 +host all all 127.0.0.1/32 md5 +------------------------------------------------------------------------------ + +When you change the `pg_hba.conf` file, you will need to reload PostgreSQL to +make the changes take effect. For more information on configuring connectivity +to PostgreSQL, see +http://www.postgresql.org/docs/devel/static/auth-pg-hba-conf.html + +Creating the Evergreen database and schema +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +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 , , +, , and with the appropriate values for your +PostgreSQL database (where and are for the *evergreen* +PostgreSQL account you just created), and replace and +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 --password --hostname --port \ + --database --admin-user --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. + +You can get a complete set of options for `eg_db_config` by passing the +`--help` parameter. + +Loading sample data +~~~~~~~~~~~~~~~~~~~ +If you add the `--load-all-sample` parameter to the `eg_db_config` command, +a set of authority and bibliographic records, call numbers, copies, staff +and regular users, and transactions will be loaded into your target +database. This sample dataset is commonly referred to as the _concerto_ +sample data, and can be useful for testing out Evergreen functionality and +for creating problem reports that developers can easily recreate with their +own copy of the _concerto_ sample data. + +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.4 and later +^^^^^^^^^^^^^^^^^^^^^^^^ +To create the database instance on a remote database server running PostgreSQL +9.4 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_control -l --start-all +------------------------------------------------------------------------------ ++ + ** If you receive the error message `bash: osrf_control: 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 org unit configuration. +): ++ +[source, bash] +------------------------------------------------------------------------------ +autogen.sh +------------------------------------------------------------------------------ ++ +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 +------------------------------------------------------------------------------ + +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 + ------------------------------------ +[[install-troubleshooting-1]] +If this does not work, it's time to do some troubleshooting. + + * As the *opensrf* Linux account, 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://evergreen-ils.org/communicate/mailing-lists/[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/communicate/mailing-lists/ 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 dacb5a36b7..566f7a2f5b 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@list.georgialibraries.org) -AM_INIT_AUTOMAKE([OpenILS], [trunk]) +AC_INIT(Open-ILS, 3.1.13, open-ils-dev@list.georgialibraries.org) +AM_INIT_AUTOMAKE([OpenILS], [3.1.13]) AC_REVISION($Revision: 0.1 $) AC_CONFIG_SRCDIR([configure.ac]) AC_CONFIG_SUBDIRS([Open-ILS/xul/staff_client/external/libmar]) -- 2.11.0