1 Evergreen 2.12 Release Notes
2 ============================
8 This release contains bug fixes improving on Evergreen 2.12.9:
10 * The patron bills screen now prevents staff members from double-clicking
11 on the Apply Payment button (which otherwise would apply two payments).
12 * Fixes a performance bug related to patrons logging in by barcode.
16 We would like to thank the following individuals who contributed code,
17 tests and documentation patches to the 2.12.10 point release of
27 This release contains bug fixes improving on Evergreen 2.12.8:
29 * NodeJs is now installed from source, rather than using a pre-compiled binary.
30 * NodeJs is now at version 6.11.3, which is the most recent LTS release.
34 We would like to thank the following individuals who contributed code,
35 tests and documentation patches to the 2.12.9 point release of
44 This release contains several bug fixes improving on Evergreen 2.12.7:
46 * Many patron fields have been redacted from the web staff client's patron
47 and record holds grids, leaving patron name, username, and ID.
48 * Fixes two bugs where patron records could fail to be saved upon editing.
49 * The patron summary in the web staff client now correctly displays
50 primary and secondary ID values.
51 * Patron barcode search completion in the web staff client now allows
52 the user to select from all of the matching patron records.
53 * The web staff print templates for current and historical bills can
54 now include copy barcode and title.
55 * Fixes a bug that resulted in some catalog searches unexpectedly
57 * Fixes a bug where placing a hold request in the public catalog could result
58 in "forgetting" the type and library of the user's previous search.
59 * Fixes a bug that made using the volume/copy editor to change a copy's
61 * The administration interface for hard due dates now ensures that
62 new (or edited) ceiling dates have their time component set to end
63 of day, resolving an issue where ceiling dates would not be applied
64 during the ceiling date itself.
65 * Asset merging during bibliographic record merging now correctly
66 recognizes call number prefixes and suffixes and deletes disused
68 * The Concerto sample data set now includes data allowing for testing
69 placing holds on monographic parts.
70 * Fixes a bug where displaying user surveys could result in PCRUD
72 * Fixes a bug where pg_restore of an Evergreen database could fail
73 to create certain indexes on the `actor.usr` table.
77 We would like to thank the following individuals who contributed code,
78 tests and documentation patches to the 2.12.8 point release of
100 This release contains several bug fixes improving on Evergreen 2.12.6
102 * Fixes a bug in the web staff client that prevented initials from being
103 stored with copy notes.
104 * Adds billing types that may have been missed by systems that were
105 running Evergreen prior to the 1.4 release.
106 * Fixes a web staff client bug with the CSV export option available from
107 the Import Queue in the MARC Batch Import/Export interface.
108 * Adds the missing copy alert field in the web client's volume/copy
110 * Fixes a bug where the setting to require date of birth in patron
111 registration was not being honored in the web staff client.
112 * Fixes a bug in the web staff client patron registration form where the
113 password wasn't generating from the last four digits of the patron's
115 * Fixes an issue in the web staff client where the complete barcode did
116 not display in some interfaces when partial barcodes were scanned.
120 We would like to thank the following individuals who contributed code,
121 tests and documentation patches to the 2.12.7 point release of
138 This release contains several bug fixes improving on Evergreen 2.12.5.
140 * Removes the option to add a title to My List from Group Formats and
141 Editions searches where the option never worked correctly due to a bad id.
142 * Removes deleted shelving locations from the web client's volume/copy editor. Since there is no database constraint that prevents a copy from a deleted shelving location, if there are already copies attached to those shelving locations, the copy location selector will be blank. Evergreen admins can identify those items by running the following query:
145 select acp.id, acp.barcode, acpl.name
147 join asset.copy_location acpl on (acpl.id = acp.location)
148 where not acp.deleted
152 * Adds the patron opt-in check in the web client whenever a patron is retrieved
153 by barcode scan, patron search, or item circ history.
154 * Fixes a bug where the price and acquisitions cost fields did not display
156 * Fixes a bug where a patron's circulation history no longer moved to the lead
157 account when merging patron accounts.
158 * Now hides the ebook tabs in My Account for sites that have not yet enabled the
160 * Trims spaces from patron barcodes in the web client check out interface.
161 * Makes a string in the holds validation alert translatable.
162 * Fixes a bug that prevented the web client patron registration screen from
163 loading when there is an opt-in action triggers, such as the email checkout
164 receipt, t set to be a registration default.
165 * Fixes a bug where barcode validation in the web client patron editor was
166 using the incorrect regular expression.
167 * Replaces an empty string in the mobile carrier dropdown menu with a 'Please
168 select your mobile carrier' label to improve usability and resolve a problem
170 * Restores the ability to display a photo in the web client patron editor for
171 accounts that have an actor.usr.photo_url.
172 * Fixes a Firefox display issue in the web client that occurred when retrieving
173 a bib record by TCN when the MARC Edit tab was set as the default view.
174 * Fixes an bug where setting a patron's default pickup location in the web
175 client patron editor inadvertently changed the home library. It also disables
176 any locations that are not viable pickup locations.
177 * Fixes a bug where a misscan in a copy bucket failed silently.
181 We would like to thank the following individuals who contributed code,
182 tests and documentation patches to the 2.12.6 point release of
200 This release contains several bug fixes improving on Evergreen 2.12.4.
202 * Hides the _Hold is Behind Circ Desk_ checkbox in the XUL client's patron
203 registration screen for those libraries that have not enabled Behind Desk Pickup
204 support via the Library Settings Editor
205 * Adds a missing error string that appears when marking an item damaged from
207 * Changes the hold request form so that it no longer defaults to the first SMS
208 carrier for text notifications.
209 * Adds a requirement for users to enter a phone/SMS number when they have
210 enabled that notification method on the hold request form.
211 * Changes the URL pointing to catalog images, CSS and javascript files to a full
212 absolute URL instead of the relative URL previously used. This change fixes an
213 issue with the Open Graph image property, which requires a full URL.
214 * Fixes an issue where payment amounts sent to Stripe can be one cent less than
215 the actual Evergreen payment.
216 * Fixes an issue where the open-ils.storage OpenSRF module fails to start when
217 using perl 5.24 or higher.
218 * Fixes a problem in the web client where marking a transaction as claims
219 returned or claims never checked out at the same time the patron's record is
220 edited would not increase the count once the patron's record is saved.
221 * Changes the cursor to a pointer for the record menus in the web client.
222 * Fixes hardcoded patchs in srfsh support scripts.
223 * Prevents a "Use of freed value in iteration" error that appeared in logs when
224 adjusting a transaction to zero.
225 * Prevents the temporary list page from crashing when a user adds the same title
226 to the list more than once.
227 * Removes duplicate rows from localized 950.data.seed-values.sql files.
228 * Fixes the following two issues with conjoined items:
229 - Foreign items previously did not display there was no extra copy attached
231 - Conjoined items did not display unless there were two or more items in a
233 * Fixes an issue in the web client where the Hold Verify prompt did not display
234 for items in a Copy Location where the hold verify flag is enabled.
235 * Fixes support for automatic item barcode completion in the web client check in,
236 check out, renew, and item status interfaces.
237 * Makes the courier code variable available for transit slips in the web client.
238 * Fixes the ability to apply funds from the acquisitions selection list,
239 View/Place Order, and MARC Federated Search interfaces.
243 We would like to thank the following individuals who contributed code,
244 tests and documentation patches to the 2.12.5 point release of
268 * This release of Evergreen contains a fix to the _Hold/Copy Ratio per Bib
269 and Pickup Library (and Descendants)_ data source. Report templates using
270 this data source will need to be re-created to improve accuracy of the
271 data reported from this source.
272 * This release also contains a fix to downloading large checkout histories from
273 My Account. This feature no longer uses the action/trigger mechanism and the
274 OPAC now generates the CSV directly. The old action/trigger code is still
275 present in the database and should be removed at some point in the
280 This release contains several bug fixes improving on Evergreen 2.12.3
283 * A fix to a web client bug where adding copies through the _Add Volumes
284 and Copies_ menu item could fail silently.
285 * A fix to a bug that allowed users to access some web client admin interfaces
287 * A fix to the display of the loan duration and fine level fields in the web
288 client Item Status Detail view.
289 * A fix to the display of duplicate data on the bib record View Holds page when
290 toggling between the holds and OPAC view.
291 * A fix to a bug that prevented the web client patron registration page from
293 * Support for Org Unit Includes alert text, notice text, event text, header
294 text, and footer text in the web client print templates.
295 * A fix to make the web client MARC Editor's flat text editor selection sticky.
296 * A fix to make the Patron Search library selector sticky.
297 * A fix to a bug in the web client that prevented the user from saving a new
298 copy after using the MARC Edit _Add Item_ option.
299 * A fix to a patron registration bug that did not require the entry of a required
300 user statistical category for stat cats that do not allow free-text entries.
301 * The addition of the bad bacode image file in the web client.
302 * An improvement to the MARC Batch Edit progress indicator to reduce the
303 likelihood of system backlogs.
304 * Downloading checkout history as a CSV from My Account has been fixed
305 for users with a large circulation history. Previously, this would
306 time out for patrons with more than 100 or so circulations.
307 * A fix to syntax in the Spanish lang.dtd file that was creating an error
308 when using the Closed Date Editor.
309 * Improvements to CSS to silence some Mozilla extension warnings.
310 * A fix to a failure to update targeted circulations when utilzing the recall
312 * The addition of text wrapping in the copy details table on the bib
313 record to prevent contents from falling off the page.
314 * A fix to the adjust to zero option so that it can be applied correctly
315 to multiple billings.
316 * A fix to the "Hold/Copy Ratio per Bib and Pickup Library
317 (and Descendants)" data source so that it will now include counts of eligible
318 copies at locations that are not a pickup library for bib's holds.
319 * A fix to the XUL client Item Status -> Alternate View -> Holds / Transit
320 tab so that it properly refreshes all data when switching between copies.
324 We would like to thank the following individuals who contributed code,
325 tests and documentation patches to the 2.12.4 point release of
349 This release contains several bug fixes improving on Evergreen 2.12.2.
353 The web client, which is available for trial production use in libraries,
354 received several fixes in this release:
356 * The receipt on payment checkbox now prints a receipt at time of payment.
357 * The Items Out count in the patron screen now includes long overdue
359 * A fix was added to prevent values from a previously-edited patron from
360 appearing in the edit form of a subsequent patron.
361 * User notification preferences now save correctly in the patron
362 registration and edit forms.
363 * The UPDATE_MARC permission is no longer requested when performing a
364 search from the staff catalog.
365 * Non-cataloged circulations now display in the Items Out screen without
367 * Required statistical categories are now required to be entered in the
368 copy editor. (A similar bug for the patron editor was fixed in the 2.12.1
370 * Voiding bills now requires confirmation.
371 * Staff can no longer use the copy editor to put items into or out of the
372 following statuses: checked out, lost, in transit, on holds shelf, long
373 overdue, and canceled transit.
374 * The contrast is improved for alert text showing the amount a patron owes
376 * Circ modifiers now sort alphabetically in the copy editor.
380 * Code to prevent a hold already on the Holds Shelf from being
381 transferred to another title.
382 * A fix to a bug that prevented users from scheduling reports with a
383 relative month if the report template used a date that applied the Year +
384 Month transform with the On or After (>=) operator.
385 * A fix to a bug where the max fines threshold was reached prematurely
386 due to the presence of account adjustments.
387 * A check that prevents a SMS message from attempting to sending when the SMS
389 * For systems that provide search format as a filter on the advanced
390 search page, a fix so that the format selected in the search bar when
391 launching a new search from the results page overrides any previously-set
393 * The addition of an optional new Apache/mod_perl configuration variable for
394 defining the port Apache listens on for HTTP traffic. This resolves an issue
395 where added content lookups attempting HTTP requests on the local Apache
396 instance on port 80 failed because Apache was using non-standard ports.
397 * A fix to the public catalog's My List page responsive design so that it now
398 displays properly on mobile devices and allows users to place holds from My List.
399 * A fix to a bug where the second (and subsequent)
400 pages of search results in the public catalog (when group
401 formats and editions is in effect) does not correctly generate
402 links to hits that are not part of of a multi-bib metarecords.
406 We would like to thank the following individuals who contributed code,
407 testing and documentation patches to the 2.12.3 point release of
427 This release is a security release that also contains several other bug
428 fixes improving on Evergreen 2.12.1.
430 Security Issue: XSS Vulnerability in Public Catalog
431 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
432 This release fixes several cross-site scripting (XSS) vulnerabilities
433 in the public catalog. When upgrading, Evergreen administrators should
434 review whether any of the following templates have been customized
435 or overridden. If so, either the template should be replaced with the
436 stock version or the XSS fix (which entails adding the `| html` filter
437 in several places) applied to the customized version.
439 * `Open-ILS/src/templates/opac/parts/locale_picker.tt2`
440 * `Open-ILS/src/templates/opac/parts/login/form.tt2`
441 * `Open-ILS/src/templates/opac/parts/searchbar.tt2`
445 * Administrators of Evergreen who use RTL locales and who have customized
446 `style-rtl.css.tt2` should now incorporate their customizations into
448 * The `reporter.classic_current_circ` view, which is part of some
449 extra views defined in `Open-ILS/src/sql/Pg/example.reporter-extension.sql`,
450 has been fixed to not exclude loans for patrons who do not have a
451 billing address set. Users of this view should rerun
452 `Open-ILS/src/sql/Pg/example.reporter-extension.sql` during upgrade.
454 Hold Targeter Repairs and Improvements
455 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
456 A series of changes were made to the new hold targeter available in 2.12.
458 * Make the batch targeter more resilient to a single-hold failure.
459 * Additional batch targeter info logging.
460 * Set OSRF_LOG_CLIENT in hold_targeter_v2.pl for log tracing
461 * Removes the confusingly named --target-all option
462 ** The same behavior can be achieved by using --retarget-interval "0s"
463 * Removes --skip-viable (see --soft-retarget-interval below)
465 New --next-check-interval Option
466 ++++++++++++++++++++++++++++++++
467 Specify how long after the current run time the targeter will retarget
468 the currently affected holds. Applying a specific interval is useful
469 when the retarget-interval is shorter than the time between targeter
472 For example, if the targeter is run nightly at midnight with a
473 --retarget-interval 36h, you would set --next-check-interval to 48hr,
474 since the holds won't be processed again until 48 hours later. This
475 ensures that the org unit closed date checks are looking at the correct
478 This setting overrides the default behavior of calculating the next
479 retarget time from the retarget-interval.
481 New --soft-retarget-interval Option
482 +++++++++++++++++++++++++++++++++++
483 This is a replacement for (and rebranding of) the --skip-viable option.
484 The new option allows for time-based soft-targeting instead simple binary
485 on/off soft-targeting.
487 How soft-targeting works:
488 * Update hold copy maps for all affected holds
489 * Holds with viable targets (on the pull list) are otherwise left alone.
490 * Holds without viable targets are retargeted in the usual manner.
494 * A fix to remove the Chilifresh patron reviews header for Evergreen sites
495 that do not use Chilifresh.
496 * A fix that marks acquisitions POs as received when all line items on the
497 PO are received or canceled.
498 * A typo fix to the long overdue override permission that prevented staff
499 from being able to override long overdue check ins.
500 * A fix to use a library's configured currency in SIP patron responses
501 instead of always using US dollars.
502 * A fix to SIP timeouts caused by invalid sessions
503 * A fix that allows boolean fields to be recognized in queries to the
505 * A fix to use the correct method during adjust to zero on negative
507 * A correction to the datatype for the Vandelay Default Record Match Set
509 * The removal of the _Keep_ field from MARC Batch Import Item Attributes.
510 The field was not previously implemented.
511 * A fix to set the complete time value for grouped Action/Trigger events
512 when an event's state reach complete, consistent with non-grouped events.
513 * A fix to a bug in the rollover_phone_to_print.pl script that kept failed
514 call files from being moved.
515 * A new index for acq.edi_message that speeds up the check for duplicate
517 * A fix that ensures JSON strings are converted to UTF8, ensuring that
518 non-ASCII data display correctly.
519 * A fix to avoid an erroneous unsaved data popup to appear during MARC
521 * A typo fix in the web client's bill payment receipt template.
522 * A correction to ebook account links on the My Account Summary page.
523 * Improved responsive design for the ebook My Account screens so that
524 they display better on mobile devices.
525 * A fix to a bug that prevented a patron opt-in dialog from loading.
526 * The RTL stylesheet for the public catalog,
527 `templates/opac/css/style-rtl.css.tt2`, has been merged into the LTR
528 one (`templates/opac/css/style.css.tt2`). The combined stylesheet
529 template will emit RTL or LTR styles based on the value of
530 the `rtl` flag of the active locale. An `rtl` variable is also available
531 in the template to allow the correct style to be chosen.
532 * A fix to leaking of the internal port number to the client when
533 Apache is configured to use nonstandard ports in combination with a proxy
535 * The addition of the vandelay.auto_overlay_bib_record upgrade script,
536 which was missed in a 2.1-2.2 era upgrade script. It isn't necessary for
537 sites that began using Evergreen since then to run the script, but
538 it is harmless to run.
539 * A web staff client fix that will hid the behind-desk option for
540 for libraries that do not support "Behind Desk Pickup".
541 * A web staff client fix that caused hold transit check ins to fail
542 silently when the transit destination does not have a holds address.
543 * A web staff client fix that now requires the entry of user statistical
544 categories in the patron editor if those stat cats are configured to
546 * A fix to a problem with the "Exclude Electronic Resources" checkbox
547 that prevented users from removing a selection from the box.
548 * The removal of the search format limiters from the new advanced search
549 limiter block on the search results page. The search format limiters
550 should not display there because they can be selected from the search bar.
557 We would like to thank the following individuals who contributed code,
558 testing and documentation patches to the 2.12.2 point release of
581 This release contains several bug fixes improving on Evergreen 2.12.0
583 * A fix to the 2.12 upgrade of the subject|temporal and subject|geographic
584 indexes, where the above-mentioned browse indexes were not turned off in favor
585 of new browse versions of the indexes. Sites that are upgrading from 2.12.0
586 can cancel the browse reingest that comes with the new upgrade script.
588 * A change to the default pickup library when staff place a hold. The place hold
589 screen will now default to the preferred pickup location for the patron. If the
590 patron does not have a preferred pickup location, it will default to the
591 patron's home library.
592 * A fix to a problem where users could not change the selected Org Unit on the
593 MARC Tag Tables server admin page.
594 * A fix to the seed data for translations for some Coded Value Map entries.
595 * The ability to skip the XUL staff client build when in make_release.
596 * Revised layout and styling for the advanced search limiter block that displays
597 on the search results page.
598 * A fix that silences a log warning that appears for every checkout where a hard
599 due date is not used.
600 * Tweaks for sounds that are used in the web staff client.
601 * The addition of f4 and ctrl-f2 as hotkeys in the web staff client.
602 * Additional help text for receipt templates in the web staff client.
603 * The reinstatement of the Reprint Last Receipt functionality in the web staff client.
604 * The ability in the web staff client copy editor to add new volumes to
605 libraries that were not selected in holdings view.
606 * A fix to a billing issue where transactions were not re-opened after they
607 acquired a non-zero balance at check in.
608 * A change to the web staff client work log to prevent it from storing
610 * A fix to a translation issue for the record attributes displayed in the
611 advanced search limiter block on the search results page.
612 * A fix to hold targeting for metarecord holds when the new hold targeter is
613 run in parallel mode.
617 We would like to thank the following individuals who contributed code,
618 testing and documentation patches to the 2.12.1 point release of
639 Evergreen 2.12 now requires OpenSRF 2.5 or later; certain functionality
640 will not work if you attempt to run Evergreen 2.12 on OpenSRF 2.4. Evergreen
641 2.12 recommends PostgreSQL 9.4. The minimum supported version of PostgreSQL is
644 The stock schema upgrade script performs a browse and facet reingest,
645 recalculates bib fingerprints, and remaps metarecords.
647 This version also adds two new services, `open-ils.ebook_api` and
648 `open-ils.hold-targeter`.
655 Default status for received line items
656 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
657 A new Library Setting has been added to allow libraries to set the default
658 status for received line items. The previous behavior was to use the
659 "In process" status for all acquisitions items that are received.
667 Additional SMS Carriers
668 ^^^^^^^^^^^^^^^^^^^^^^^
669 SMS carrier definitions are now included for Google Fi and
670 Republic Wireless. These will be automatically loaded when
671 installing a new Evergreen system; admins who wish to
672 add these definitions during an upgrade can use the following
673 email gateway values:
675 * Google Fi: `$number@msg.fi.google.com`
676 * Republic Wireless: `$number@text.republicwireless.com`
681 Bibliographic Fingerprint Improvements
682 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
683 The bibliographic fingerprint will now incorporate subfields $n and $p from MARC
684 title fields to better distinguish among records of the same series that
685 may share the same title but have a different part. With this change, these
686 MARC records will no longer be grouped together in a 'Group Formats & Editions'
689 The bibliographic fingerprint was also changed to better distinguish among
690 the fields contributing to the fingerprint. This change will help the system
691 distinguish between a record for the movie _Blue Steel_ and another record for
692 the book _Blue_ written by Danielle Steel.
699 Batch Hold Targeter Speed-up and New Features
700 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
702 Adds a new `open-ils.hold-targeter` service, supporting new targeting options
703 and runtime optimizations to speed up targeting. The service is launched
704 from a new targeting script, `hold_targeter_v2.pl` (default location:
705 `/openils/bin/hold_targeter_v2.pl`).
707 This code has no effect on the existing hold targeter, which is still
708 available as of this release and functions as before.
713 * Adds a global configuration flag 'circ.holds.retarget_interval' for
714 setting the hold retarget interval.
716 * `--target-all` option forces the targeter to process all active
717 holds, regardless of when they were last targeted.
719 * `--retarget-interval` option make is possible to override the new
720 'circ.holds.retarget_interval' setting via the command line
721 when calling the hold targeter.
723 * `--skip-viable` option causes the hold targeter to avoid modifying
724 the currently targeted copy (i.e. the copy on the pull list) for holds
725 that target a viable (capturable) copy.
728 For skipped holds, no entry is added to the unfulfilled_hold_list.
729 The set of potential copies (hold copy maps) are refreshed for all
730 processed holds, regardless of target viability.
733 This option is useful for 1.) finding targets for holds that require
734 new targets and 2.) adding new/modified copies to the potential copy
735 lists (for opportunistic capture) more frequently than you may want to do full
736 retargeting of all holds.
738 * `--newest-first` option processes holds in reverse order of request_time,
739 so that newer holds are (re)targeted first. This is primarily useful
740 when a large backlog of old, un-targetable holds exist. With
741 `--newest-first`, the older holds will be processed last.
743 * `--parallel` option overrides the parallel settings found in `opensrf.xml`
744 for simpler modification and testing.
746 * `--lockfile` option allows the caller to specify a lock file instead
747 of using the default /tmp/hold_targeter-LOCK
749 * `--verbose` option prints progress info to STDOUT, showing the number of
750 holds processed per parallel targeter instance.
752 * When configured, hold target loops cycle through all org units (with
753 targetable copies) instead of repeatedly targeting copies at the pickup
754 library when multiple targetable copies exist at the pickup library.
756 * When configured, hold target loops prioritize (targetable) org units
757 first by the number of previous target attempts, then by their
758 weight/proximity. This effectively back-fills org units that had no
759 targetable copies during earlier target loops so that they are
760 targeted as many times as other org units (to the extent possible,
766 * Traditional daily hold targeter with a value set for
767 'circ.holds.retarget_interval'.
770 --------------------------------------------------------------------------
771 /openils/bin/hold_targeter_v2.pl
772 --------------------------------------------------------------------------
774 * (Re)target non-viable holds twice a day, only processing holds that
775 have never been targeter or those that have not been re-targeted in
779 --------------------------------------------------------------------------
780 /openils/bin/hold_targeter_v2.pl --skip-viable --retarget-interval "12h"
781 --------------------------------------------------------------------------
783 * (Re)target non-viable holds twice a day, processing all holds regardless
784 of when or if they were targeted before, running 3 targeters in
788 --------------------------------------------------------------------------
789 /openils/bin/hold_targeter_v2.pl --skip-viable --target-all --parallel 3
790 --------------------------------------------------------------------------
796 Add separate make target for translators
797 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
798 For those only interested in building Evergreen translations, a separate
799 "translator" make target has been added to allow for easier installation
800 of i18n prerequisites.
803 Allow admin to specify where Perl modules will be installed
804 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
805 Add `--with-perlbase` option to `configure` to specify an alternative
806 location for installing the Perl modules. This can be useful for setups
807 that want to run the Perl modules from a shared filesystem or
808 environments that need to run multiple versions of Evergreen
811 Users of `--with-perlbase` are responsible for ensuring that `PERL5LIB`
812 is set appropriately.
816 Addition of missing permissions
817 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
818 Required permissions that were previously missing from the stock data have now
819 been added. If Evergreen sites have already manually added these permissions,
820 the upgrade script will remove the old permission and create the new one,
821 maintaining any maps to permission groups, with the stock permission ID.
827 get_org_unit_ancestor_at_depth Helper Added to Action Trigger Reactor Helpers
828 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
829 In action trigger templates it's now possible to call
830 `helpers.get_org_unit_ancestor_at_depth($id_or_aou, $depth)` in order to retrieve
831 a fleshed aou for the target aou's ancestor at the chosen depth. This could be
832 used to retrieve the name of the library system rather than a specific branch
838 Removed unused selfcheck password setting
839 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
840 There was an unused duplicate selfcheck password setting that was removed
841 to avoid confusion over which library setting was supposed to be set to
842 enable passwords for selfcheck. After upgrading, verify that your library
843 policy remains consistent for this setting.
849 Credit Processor Stripe Settings Permissions
850 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
851 Unprivileged users can retrieve organizational unit setting values for
852 setting types lacking a "view" permission. When the feature adding
853 Stripe credit card processing was added, the upgrade script neglected
854 to add the VIEW_CREDIT_CARD_PROCESSING permission to the
855 organizational unit setting type. This means that anyone can retrieve
856 and view the settings for Stripe credit card processing.
858 Any system that upgraded from Evergreen version 2.5 to 2.6 is
859 affected. If you use Stripe for credit card processing, it is
860 strongly recommended that you apply this upgrade. Even if you do not
861 use Stripe, applying this upgrade is still recommended. If you did
862 not upgrade from version 2.5 to 2.6 of Evergreen, but started with a
863 later version, applying this upgrade is harmless.
873 New Access Points for MARC Merge/Overlay Profiles
874 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
875 Catalogers can now select a MARC merge/overlay profile to apply when
876 merging records in the (browser client) record bucket merge and Z39.50
877 record overlay interfaces. In both interfaces, if the user selects
878 a merge profile, the results of the merge are displayed, giving the
879 user the opportunity to choose a different merge profile or edit
880 the records involved prior to committing to the merge.
882 A new library setting, "Default Merge Profile (Z39.50 and Record Buckets)",
883 specifies the merge profile to preselect in the new merge profile
884 selectors in the record bucket merge and Z39.50 overlay logs. The
885 selectors will also remember the last selection that the user made.
895 Display Copy Alerts With In-House-Use
896 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
898 Two library settings are used to control the display of copy alert
899 messages or copy location check in alerts when recording in-house-use
902 Setting 'Display copy alert for in-house-use' to true for an
903 organization will cause an alert to appear with the copy's alert
904 message, if it has one, when recording in-house-use for the copy.
906 Setting 'Display copy location check in alert for in-house-use' to true
907 for an organization will cause an alert to display a message
908 indicating that the item needs to be routed to its location if the
909 location has check in alert set to true.
911 The settings are independent of one another because you may want to
912 display one and not the other when recording in-house-use.
922 Active Date Column Picker Option
923 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
924 The active date will now be available as a column picker option in the Item
930 Punctuation Insensitive Patron Search
931 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
932 When performing a patron search, punctuation characters will be
933 ignored. So if the patron is named O'Brien, then you can enter Obrien,
934 O'Brien, O Brien, etc. in the search box.
936 This behavior affects the Last Name (internally: family_name), First Name
937 (first_given_name), and Middle Name (second_given_name) fields of the search.
944 Touch screen improvements for Evergreen self-check interface
945 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
946 Improvements were made to the Evergreen self-check interface to make it easier
947 to use in a touch-screen environment.
949 * The pay fines link is now a pay fines button, matching other buttons on the
951 * The checkboxes have been enlarged, making them easier to activate when using
958 Trial Production Use of the Web Staff Client
959 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
960 The new web staff client is ready for trial production use in all functional
961 areas with the exception of serials and offline transactions. In addition to
962 many bug fixes in the areas of circulation, cataloging, administration and
963 reporting, Release 2.12 sees the following additions to web client
966 * Acquisitions interfaces and functionality have been integrated into the web
968 * Booking interfaces and functionality have been integrated into the web staff
970 * Hatch, the program that will allow for unmediated printing to multiple
971 printers, sharing of workstation settings, and, eventually, offline
972 transactions is now available. A windows installer for Hatch will be available
973 on the Evergreen-ILS Downloads page.
975 The Evergreen developers will keep pilot libraries updated about known web
976 client issues by posting known bugs to https://wiki.evergreen-ils.org/doku.php?id=dev:browser_staff:known_issues .
980 Hatch is not required to use the web client, but should be used for workstations
981 that need to perform the following tasks.
983 * Unmediated printing to multiple printers. Workstations can print to multiple
984 printers without Hatch, but will need to click through a dialog to select a
985 printer. Hatch allows workstations to automatically print, without dialog, to
987 * Storage of workstation settings in a place outside the browser. Storing local
988 preferences in hatch will prevent tampering with preferences via the browser
989 developer tools and protect the settings from possible deletion if the browser
990 deletes settings in local storage.
991 * When offline functionality is available, hatch will be required to perform
992 offline transactions.
994 Hatch is currently run as a Chrome extension and is not available in Firefox. To
995 use hatch on Windows, Evergreen sites should:
997 . install a java runtime environment version 8 (or higher) if not already
999 . download and execute the installer from the Evergreen downloads page,
1000 . open Chrome and navigate to chrome://extensions,
1001 . enable _Developer Mode_ along the top right of the page,
1002 . click the _Load Unpacked Extension_ button,
1003 . load the directory at Hatch -> extension -> app,
1004 .. In Windows, the default location for the app directory will be
1005 C:\Program Files (x86)\Hatch\extension\app
1006 . enable hatch features in the web client by going to Administration ->
1007 Workstation Administration -> Print/Storage Service ("Hatch") and choosing
1008 which services to use with Hatch.
1009 .. this page will also inform you that hatch is connected.
1019 Client Timezone Awareness
1020 ^^^^^^^^^^^^^^^^^^^^^^^^^
1022 Previously, adjusting the time zone in which a database session operates
1023 could not be done in any way except globally, directly within the database.
1024 However, allowing modification of the timezone parameter now supports
1025 localization efforts for those consortia that span multiple time zones.
1030 CStore and other services that interact with the primary Evergreen database
1031 make use of the functionality provided by LP#1485371 in OpenSRF in order to
1032 set the time zone configuration parameter available in PostgreSQL. This has
1033 the effect of interpreting all timestamps written to or read from the database
1034 in the client's time zone.
1036 Within CStore (and related, C-based services), all stateful sessions make use
1037 of this capability, setting the database time zone upon a successful CONNECT
1038 message from the client. The time zone is reset to the database default when
1039 a session is terminated either due to client DISCONNECT or server keepalive
1042 All stateless requests record the current database time zone, set the database
1043 time zone to that of the client's, run the query, and then reset the database
1044 time zone on each request that carries a client time zone value. It is expected
1045 that this will not cause any noticeable increase in latency or query execution
1046 time, as this setting is local to the specific PostgreSQL server backend process.
1048 Within the Storage service, the timezone will be set automatically by a simple
1049 wrapper method used by the existing method registration mechanism for method
1050 publishing. Disconnect and error callbacks are registered to revert the time
1051 zone setting within the database. This provides completely transparent time
1052 zone manipulation for backend services that make use of open-ils.storage.
1062 New Subject Browse Index Definitions
1063 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1064 New subject browse index definitions have been added that display the entire
1065 heading as a unit with hyphens between terms instead of displaying individual
1068 For example, the browse heading for:
1070 =650 \0$aCats$zUnited States$vCorrespondence.
1072 will display in a single entry as:
1074 Cats -- United States -- Correspondence
1076 Rather than separate entries for Cats and United States.
1078 Name subjects will continue to display as separate entries because additional
1079 work would be required for the heading to be punctuated correctly.
1084 Advanced Search Limiters Enhancement
1085 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1086 Advanced search limiters will no longer propagate to the basic search box in
1087 the catalog. Instead, the limiters applied to the search will appear underneath
1088 the search box where they can be easily cleared by clicking an 'x.' On a small,
1089 mobile device, the advanced search limiters can be seen by clicking an 'x filter
1092 The selected limiters will be applied to any search from the search bar until:
1093 * The user actively removes the filters from the search or
1094 * The user starts a new basic or advanced search from scratch.
1099 Arabic and Right-to-Left Language Support for the catalog
1100 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1101 New stylesheets and other changes to the catalog to allow for
1102 better support of right-to-left (RTL) languages, such as Arabic.
1104 Also adds Arabic (Jordan) as a new supported language.
1109 Ebook API integration
1110 ^^^^^^^^^^^^^^^^^^^^^
1111 Evergreen 2.12 supports partial integration with third-party APIs
1112 provided by OverDrive and OneClickdigital. When ebook API integration
1113 is enabled, bibliographic records from these vendors that appear in your
1114 public catalog will include vendor holdings and availability information. Also,
1115 when a user is logged in, the public catalog dashboard and My Account interface
1116 will include information about that user's checkouts and holds for
1119 For API integration to work, you need to request API access from the
1120 vendor and configure your Evergreen system according to the instructions
1121 below. You also need to configure the new `open-ils.ebook_api` service.
1123 This feature assumes that you are importing MARC records supplied by the
1124 vendor into your Evergreen system, using Vandelay or some other MARC
1125 import method. This feature does not search the vendor's online
1126 collections or automatically import vendor records into your system; it
1127 merely augments records that are already in Evergreen.
1129 A future Evergreen release will add the ability for users to check out
1130 titles, place holds, etc., directly via the public catalog.
1132 Ebook API service configuration
1133 +++++++++++++++++++++++++++++++
1134 This feature uses the new `open-ils.ebook_api` OpenSRF service. This
1135 service must be configured in your `opensrf.xml` and `opensrf_core.xml`
1136 config files for ebook API integration to work. See
1137 `opensrf.xml.example` and `opensrf_core.xml.example` for guidance.
1139 OverDrive API integration
1140 +++++++++++++++++++++++++
1141 Before enabling OverDrive API integration, you will need to request API
1142 access from OverDrive. OverDrive will provide the values to be used for
1143 the following new org unit settings:
1145 * *OverDrive Basic Token*: The basic token used for API client
1146 authentication. To generate your basic token, combine your client
1147 key and client secret provided by OverDrive into a single string
1148 ("key:secret"), and then base64-encode that string. On Linux, you
1149 can use the following command: `echo -n "key:secret" | base64 -`
1150 * *OverDrive Account ID*: The account ID (a.k.a. library ID) for your
1151 OverDrive API account.
1152 * *OverDrive Website ID*: The website ID for your OverDrive API
1154 * *OverDrive Authorization Name*: The authorization name (a.k.a.
1155 library name) designated by OverDrive for your library. If your
1156 OverDrive subscription includes multiple Evergreen libraries, you
1157 will need to add a separate value for this setting for each
1158 participating library.
1159 * *OverDrive Password Required*: If your library's OverDrive
1160 subscription requires the patron's PIN (password) to be provided
1161 during patron authentication, set this setting to "true." If you do
1162 not require the patron's PIN for OverDrive authentication, set this
1163 setting to "false." (If set to "true," the password entered by a
1164 patron when logging into the public catalog will be cached in plain text in
1166 * *OverDrive Discovery API Base URI* and *OverDrive Circulation API
1167 Base URI*: By default, Evergreen uses OverDrive's production API, so
1168 you should not need to set a value for these settings. If you want
1169 to use OverDrive's integration environment, you will need to add the
1170 appropriate base URIs for the discovery and circulation APIs. See
1171 OverDrive's developer documentation for details.
1172 * *OverDrive Granted Authorization Redirect URI*: Evergreen does not
1173 currently support granted authorization with OverDrive, so this
1174 setting is not currently in use.
1176 For more information, consult the
1177 https://developer.overdrive.com/docs/getting-started[OverDrive API
1180 To enable OverDrive API integration, adjust the following public catalog settings
1183 * `ebook_api.enabled`: set to "true".
1184 * `ebook_api.overdrive.enabled`: set to "true".
1185 * `ebook_api.overdrive.base_uris`: list of regular expressions
1186 matching OverDrive URLs found in the 856$9 field of older OverDrive
1187 MARC records. As of fall 2016, OverDrive's URL format has changed,
1188 and the record identifier is now found in the 037$a field of their
1189 MARC records, with "OverDrive" in 037$b. Evergreen will check the
1190 037 field for OverDrive record identifiers; if your system includes
1191 older-style OverDrive records with the record identifier embedded in
1192 the 856 URL, you need to specify URL patterns with this setting.
1194 OneClickdigital API integration
1195 +++++++++++++++++++++++++++++++
1196 Before enabling OneClickdigital API integration, you will need to
1197 request API access from OneClickdigital. OneClickdigital will provide
1198 the values to be used for the following new org unit settings:
1200 * *OneClickdigital Library ID*: The identifier assigned to your
1201 library by OneClickdigital.
1202 * *OneClickdigital Basic Token*: Your client authentication token,
1203 supplied by OneClickdigital when you request access to their API.
1205 For more information, consult the
1206 http://developer.oneclickdigital.us/[OneClickdigital API documentation].
1208 To enable OneClickdigital API integration, adjust the following public catalog
1209 settings in `config.tt2`:
1211 * `ebook_api.enabled`: set to "true".
1212 * `ebook_api.oneclickdigital.enabled`: set to "true".
1213 * `ebook_api.oneclickdigital.base_uris`: list of regular expressions
1214 matching OneClickdigital URLs found in the 859$9 field of your MARC
1215 records. Evergreen uses the patterns specified here to extract
1216 record identifiers for OneClickdigital titles.
1218 Additional configuration
1219 ++++++++++++++++++++++++
1220 Evergreen communicates with third-party vendor APIs using the new
1221 `OpenILS::Utils::HTTPClient` module. This module is configured using
1222 settings in `opensrf.xml`. The default settings should work for most
1223 environments by default, but you may need to specify a custom location
1224 for the CA certificates installed on your server. You can also disable
1225 SSL certificate verification on HTTPClient requests altogether, but
1226 doing so is emphatically discouraged.
1230 Links to Other Formats and Editions
1231 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1232 The record summary pages in the catalog will now link to other formats and
1233 editions of a title. The links will allow users to quickly jump to another
1234 format of the title or an edition written in another language.
1240 Metarecord Search Improvements
1241 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1242 This release brings several improvement to the Group Formats and Editions
1245 * Limiters on the advanced search page can now be successfully applied to
1246 Group Formats and Editions searches,
1247 * Electronic resources are now retrievable through these searches,
1248 * Paged navigation has improved.
1253 Allow Metarecord Search by default
1254 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1255 Before the TPAC, a site could configure the public catalog to use metarecord searching
1256 by default, via a configuration file. Here we bring that back.
1258 A new setting called search.metarecord_default is present in
1259 `templates/opac/parts/config.tt2` to enable this feature. By setting this to
1260 a true value (normally 1) the TPAC will silently include the #metabib search
1261 modifier in the search form on any interfaces that do not have a UI component
1262 that allows the user to control the setting.
1268 * Author fields are now normalized to strip ending periods so that authors from
1269 RDA and non-RDA records are collapsed in browse and facet headings.
1270 * All author/contributor roles will now display in the record detail page.
1271 Previously, some of the roles were omitted or were duplicated.
1274 Obalkyknih.cz Integration
1275 ^^^^^^^^^^^^^^^^^^^^^^^^^
1276 Evergreen now integrates with Czech added content provider obalkyknih.cz. A new
1277 setting called obalkyknih_cz.enabled is available in
1278 `templates/opac/parts/config.tt2` to enable this new feature.
1281 2.12.0 Acknowledgments
1282 ----------------------
1283 The Evergreen project would like to acknowledge the following
1284 organizations that commissioned developments in this release of
1288 * British Columbia Libraries Cooperative
1291 * King County Library System
1292 * Linn Libraries Consortium
1294 * Pennsylvania Integrated Library System
1295 * Pioneer Library System
1297 We would also like to thank the following individuals who contributed
1298 code, translations, documentations patches and tests to this release of
1331 * Job Diógenes Ribeiro Borges
1348 We also thank the following organizations whose employees contributed
1351 * British Columbia Libraries Cooperative
1355 * Emerald Data Networks, Inc.
1356 * Equinox Open Library Initiative
1358 * Indiana State Library
1359 * The Institute for the Study of Totalitarian Regimes, Prague
1361 * Jordanian Library and Information Association
1362 * King County Library System
1363 * Lake Agassiz Regional Library
1364 * Laurentian University
1365 * Linn-Benton Community College
1367 * Merrimack Valley Library Consortium
1369 * North of Boston Library Exchange
1370 * Pioneer Library System
1371 * Rodgers Memorial Library
1373 * Traverse Area District Library
1376 We regret any omissions. If a contributor has been inadvertently
1377 missed, please open a bug at https://bugs.launchpad.net/evergreen/