]> git.evergreen-ils.org Git - working/Evergreen.git/blob - docs/RELEASE_NOTES_2_12.adoc
Docs: Point release notes for 2.12.1 release
[working/Evergreen.git] / docs / RELEASE_NOTES_2_12.adoc
1 Evergreen 2.12 Release Notes
2 ============================
3 :toc:
4 :numbered:
5
6 Evergreen 2.12.1 
7 ----------------
8
9 This release contains several bug fixes improving on Evergreen 2.12.0
10
11 * A change to the default pickup library when staff place a hold. The place hold
12 screen will now default to the preferred pickup location for the patron. If the
13 patron does not have a preferred pickup location, it will default to the
14 patron's home library.
15 * A fix to a problem where users could not change the selected Org Unit on the
16 MARC Tag Tables server admin page.
17 * A fix to the seed data for translations for some Coded Value Map entries.
18 * The ability to skip the XUL staff client build when in make_release.
19 * Revised layout and styling for the advanced search limiter block that displays
20 on the search results page.
21 * A fix that silences a log warning that appears for every checkout where a hard
22 due date is not used.
23 * Tweaks for sounds that are used in the web staff client.
24 * The addition of f4 and ctrl-f2 as hotkeys in the web staff client.
25 * Additional help text for receipt templates in the web staff client.
26 * The reinstatement of the Reprint Last Receipt functionality in the web staff client.
27 * The ability in the web staff client copy editor to add new volumes to
28 libraries that were not selected in holdings view.
29 * A fix to a billing issue where transactions were not re-opened after they
30 acquired a non-zero balance at check in.
31 * A change to the web staff client work log to prevent it from storing 
32 unnecessary data.
33 * A fix to a translation issue for the record attributes displayed in the 
34 advanced search limiter block on the search results page.
35 * A fix to hold targeting for metarecord holds when the new hold targeter is
36 run in parallel mode.
37
38 Acknowledgements
39 ~~~~~~~~~~~~~~~~
40 We would like to thank the following individuals who contributed code,
41 testing and documentation patches to the 2.12.1 point release of
42 Evergreen:
43
44 * Eva Cerniňáková
45 * Galen Charlton
46 * Bill Erickson
47 * Jason Etherige
48 * Jeanette Lundgren
49 * Kathy Lussier
50 * Mike Rylander
51 * Jane Sandberg
52 * Dan Scott
53 * Ben Shum
54 * Robert Soulliere
55 * Jason Stephenson
56 * Josh Stompro
57 * Dan Wells
58
59
60 2.12.0 Upgrade notes
61 --------------------
62 Evergreen 2.12 now requires OpenSRF 2.5 or later; certain functionality
63 will not work if you attempt to run Evergreen 2.12 on OpenSRF 2.4. Evergreen
64 2.12 recommends PostgreSQL 9.4. The minimum supported version of PostgreSQL is
65 9.3.
66
67 The stock schema upgrade script performs a browse and facet reingest,
68 recalculates bib fingerprints, and remaps metarecords.
69
70 This version also adds two new services, `open-ils.ebook_api` and
71 `open-ils.hold-targeter`.
72
73 2.12.0 New Features
74 -------------------
75
76 Administration
77 ~~~~~~~~~~~~~~
78
79
80
81 Additional SMS Carriers
82 ^^^^^^^^^^^^^^^^^^^^^^^
83 SMS carrier definitions are now included for Google Fi and
84 Republic Wireless. These will be automatically loaded when
85 installing a new Evergreen system; admins who wish to
86 add these definitions during an upgrade can use the following
87 email gateway values:
88
89  * Google Fi: `$number@msg.fi.google.com`
90  * Republic Wireless: `$number@text.republicwireless.com`
91
92
93
94
95 Bibliographic Fingerprint Improvements
96 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
97 The bibliographic fingerprint will now incorporate subfields $n and $p from MARC
98 title fields to better distinguish among records of the same series that
99 may share the same title but have a different part. With this change, these
100 MARC records will no longer be grouped together in a 'Group Formats & Editions'
101 search.
102
103 The bibliographic fingerprint was also changed to better distinguish among
104 the fields contributing to the fingerprint. This change will help the system
105 distinguish between a record for the movie _Blue Steel_ and another record for
106 the book _Blue_ written by Danielle Steel.
107
108
109
110
111
112
113 Batch Hold Targeter Speed-up and New Features
114 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
115
116 Adds a new `open-ils.hold-targeter` service, supporting new targeting options
117 and runtime optimizations to speed up targeting.  The service is launched
118 from a new targeting script, `hold_targeter_v2.pl` (default location:
119 `/openils/bin/hold_targeter_v2.pl`).
120
121 This code has no effect on the existing hold targeter, which is still
122 available as of this release and functions as before.
123
124 New Features/Options
125 ++++++++++++++++++++
126
127 * Adds a global configuration flag 'circ.holds.retarget_interval' for 
128   setting the hold retarget interval.
129
130 * `--target-all` option forces the targeter to process all active
131   holds, regardless of when they were last targeted.
132
133 * `--retarget-interval` option make is possible to override the new
134   'circ.holds.retarget_interval' setting via the command line 
135   when calling the hold targeter.
136
137 * `--skip-viable` option causes the hold targeter to avoid modifying 
138   the currently targeted copy (i.e. the copy on the pull list) for holds 
139   that target a viable (capturable) copy.  
140   {empty} +
141   {empty} +
142   For skipped holds, no entry is added to the unfulfilled_hold_list.
143   The set of potential copies (hold copy maps) are refreshed for all
144   processed holds, regardless of target viability.
145   {empty} +
146   {empty} +
147   This option is useful for 1.) finding targets for holds that require 
148   new targets and 2.) adding new/modified copies to the potential copy 
149   lists (for opportunistic capture) more frequently than you may want to do full
150   retargeting of all holds.
151
152 * `--newest-first` option processes holds in reverse order of request_time,
153   so that newer holds are (re)targeted first.  This is primarily useful
154   when a large backlog of old, un-targetable holds exist.  With 
155   `--newest-first`, the older holds will be processed last.
156
157 * `--parallel` option overrides the parallel settings found in `opensrf.xml`
158   for simpler modification and testing.
159
160 * `--lockfile` option allows the caller to specify a lock file instead
161   of using the default /tmp/hold_targeter-LOCK
162
163 * `--verbose` option prints progress info to STDOUT, showing the number of
164   holds processed per parallel targeter instance.
165
166 * When configured, hold target loops cycle through all org units (with 
167   targetable copies) instead of repeatedly targeting copies at the pickup
168   library when multiple targetable copies exist at the pickup library.
169
170 * When configured, hold target loops prioritize (targetable) org units
171   first by the number of previous target attempts, then by their 
172   weight/proximity.  This effectively back-fills org units that had no
173   targetable copies during earlier target loops so that they are 
174   targeted as many times as other org units (to the extent possible, 
175   anyway).
176
177 Examples
178 ++++++++
179
180 * Traditional daily hold targeter with a value set for 
181   'circ.holds.retarget_interval'.
182
183 [source,sh]
184 --------------------------------------------------------------------------
185 /openils/bin/hold_targeter_v2.pl
186 --------------------------------------------------------------------------
187
188 * (Re)target non-viable holds twice a day, only processing holds that 
189   have never been targeter or those that have not been re-targeted in
190   the last 12 hours.
191
192 [source,sh]
193 --------------------------------------------------------------------------
194 /openils/bin/hold_targeter_v2.pl --skip-viable --retarget-interval "12h"
195 --------------------------------------------------------------------------
196
197 * (Re)target non-viable holds twice a day, processing all holds regardless
198   of when or if they were targeted before, running 3 targeters in
199   parallel.
200
201 [source,sh]
202 --------------------------------------------------------------------------
203 /openils/bin/hold_targeter_v2.pl --skip-viable --target-all --parallel 3
204 --------------------------------------------------------------------------
205
206
207
208
209
210 Add separate make target for translators
211 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
212 For those only interested in building Evergreen translations, a separate
213 "translator" make target has been added to allow for easier installation
214 of i18n prerequisites.
215
216
217 Allow admin to specify where Perl modules will be installed
218 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
219 Add `--with-perlbase` option to `configure` to specify an alternative
220 location for installing the Perl modules. This can be useful for setups
221 that want to run the Perl modules from a shared filesystem or
222 environments that need to run multiple versions of Evergreen
223 simultaneously.
224
225 Users of `--with-perlbase` are responsible for ensuring that `PERL5LIB`
226 is set appropriately.
227
228
229
230 Addition of missing permissions
231 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
232 Required permissions that were previously missing from the stock data have now
233 been added. If Evergreen sites have already manually added these permissions,
234 the upgrade script will remove the old permission and create the new one,
235 maintaining any maps to permission groups, with the stock permission ID.
236
237
238
239
240
241 get_org_unit_ancestor_at_depth Helper Added to Action Trigger Reactor Helpers
242 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
243 In action trigger templates it's now possible to call
244 `helpers.get_org_unit_ancestor_at_depth($id_or_aou, $depth)` in order to retrieve
245 a fleshed aou for the target aou's ancestor at the chosen depth. This could be
246 used to retrieve the name of the library system rather than a specific branch
247 name, for instance.
248
249
250
251
252 Removed unused selfcheck password setting
253 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
254 There was an unused duplicate selfcheck password setting that was removed
255 to avoid confusion over which library setting was supposed to be set to
256 enable passwords for selfcheck. After upgrading, verify that your library
257 policy remains consistent for this setting.
258
259
260
261
262
263 Credit Processor Stripe Settings Permissions
264 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
265 Unprivileged users can retrieve organizational unit setting values for
266 setting types lacking a "view" permission.  When the feature adding
267 Stripe credit card processing was added, the upgrade script neglected
268 to add the VIEW_CREDIT_CARD_PROCESSING permission to the
269 organizational unit setting type.  This means that anyone can retrieve
270 and view the settings for Stripe credit card processing.
271
272 Any system that upgraded from Evergreen version 2.5 to 2.6 is
273 affected.  If you use Stripe for credit card processing, it is
274 strongly recommended that you apply this upgrade.  Even if you do not
275 use Stripe, applying this upgrade is still recommended.  If you did
276 not upgrade from version 2.5 to 2.6 of Evergreen, but started with a
277 later version, applying this upgrade is harmless.
278
279
280
281
282 Cataloging
283 ~~~~~~~~~~
284
285
286
287 New Access Points for MARC Merge/Overlay Profiles
288 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
289 Catalogers can now select a MARC merge/overlay profile to apply when
290 merging records in the (browser client) record bucket merge and Z39.50
291 record overlay interfaces. In both interfaces, if the user selects
292 a merge profile, the results of the merge are displayed, giving the
293 user the opportunity to choose a different merge profile or edit
294 the records involved prior to committing to the merge.
295
296 A new library setting, "Default Merge Profile (Z39.50 and Record Buckets)",
297 specifies the merge profile to preselect in the new merge profile
298 selectors in the record bucket merge and Z39.50 overlay logs. The
299 selectors will also remember the last selection that the user made.
300
301
302
303
304 Circulation
305 ~~~~~~~~~~~
306
307
308
309 Display Copy Alerts With In-House-Use
310 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
311
312 Two library settings are used to control the display of copy alert
313 messages or copy location check in alerts when recording in-house-use
314 in Evergreen.
315
316 Setting 'Display copy alert for in-house-use' to true for an
317 organization will cause an alert to appear with the copy's alert
318 message, if it has one, when recording in-house-use for the copy.
319
320 Setting 'Display copy location check in alert for in-house-use' to true
321 for an organization will cause an alert to display a message
322 indicating that the item needs to be routed to its location if the
323 location has check in alert set to true.
324
325 The settings are independent of one another because you may want to
326 display one and not the other when recording in-house-use.
327
328
329
330
331 Client
332 ~~~~~~
333
334
335
336 Active Date Column Picker Option
337 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
338 The active date will now be available as a column picker option in the Item
339 Status screen.
340
341
342
343
344 Punctuation Insensitive Patron Search
345 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
346 When performing a patron search, punctuation characters will be
347 ignored.  So if the patron is named O'Brien, then you can enter Obrien,
348 O'Brien, O Brien, etc. in the search box.
349
350 This behavior affects the Last Name (internally: family_name), First Name
351 (first_given_name), and Middle Name (second_given_name) fields of the search.
352
353
354
355
356
357
358 Touch screen improvements for Evergreen self-check interface
359 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
360 Improvements were made to the Evergreen self-check interface to make it easier
361 to use in a touch-screen environment.
362
363  * The pay fines link is now a pay fines button, matching other buttons on the
364 page.
365  * The checkboxes have been enlarged, making them easier to activate when using
366 a touch screen.
367
368
369
370
371
372 Trial Production Use of the Web Staff Client
373 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
374 The new web staff client is ready for trial production use in all functional
375 areas with the exception of serials and offline transactions. In addition to
376 many bug fixes in the areas of circulation, cataloging, administration and
377 reporting, Release 2.12 sees the following additions to web client
378 functionality.
379
380  * Acquisitions interfaces and functionality have been integrated into the web
381  staff client.
382  * Booking interfaces and functionality have been integrated into the web staff
383  client.
384  * Hatch, the program that will allow for unmediated printing to multiple
385  printers, sharing of workstation settings, and, eventually, offline 
386  transactions is now available. A windows installer for Hatch will be available
387  on the Evergreen-ILS Downloads page.
388
389 The Evergreen developers will keep pilot libraries updated about known web
390 client issues by posting known bugs to https://wiki.evergreen-ils.org/doku.php?id=dev:browser_staff:known_issues .
391
392 About Hatch
393 +++++++++++
394 Hatch is not required to use the web client, but should be used for workstations
395 that need to perform the following tasks.
396
397  * Unmediated printing to multiple printers. Workstations can print to multiple
398  printers without Hatch, but will need to click through a dialog to select a
399  printer. Hatch allows workstations to automatically print, without dialog, to
400  different printers. 
401  * Storage of workstation settings in a place outside the browser. Storing local
402  preferences in hatch will prevent tampering with preferences via the browser
403  developer tools and protect the settings from possible deletion if the browser
404  deletes settings in local storage.
405  * When offline functionality is available, hatch will be required to perform
406  offline transactions.
407  
408 Hatch is currently run as a Chrome extension and is not available in Firefox. To
409 use hatch on Windows, Evergreen sites should:
410
411  . install a java runtime environment version 8 (or higher) if not already
412  installed,
413  . download and execute the installer from the Evergreen downloads page, 
414  . open Chrome and navigate to chrome://extensions,
415  . enable _Developer Mode_ along the top right of the page,
416  . click the _Load Unpacked Extension_ button,
417  . load the directory at Hatch -> extension -> app,
418  .. In Windows, the default location for the app directory will be
419  C:\Program Files (x86)\Hatch\extension\app
420  . enable hatch features in the web client by going to Administration ->
421  Workstation Administration -> Print/Storage Service ("Hatch") and choosing
422  which services to use with Hatch.
423  .. this page will also inform you that hatch is connected. 
424
425
426
427
428 Infrastructure
429 ~~~~~~~~~~~~~~
430
431
432
433 Client Timezone Awareness
434 ^^^^^^^^^^^^^^^^^^^^^^^^^
435
436 Previously, adjusting the time zone in which a database session operates
437 could not be done in any way except globally, directly within the database.
438 However, allowing modification of the timezone parameter now supports
439 localization efforts for those consortia that span multiple time zones.
440
441 Implementation
442 ++++++++++++++
443
444 CStore and other services that interact with the primary Evergreen database
445 make use of the functionality provided by LP#1485371 in OpenSRF in order to
446 set the time zone configuration parameter available in PostgreSQL.  This has
447 the effect of interpreting all timestamps written to or read from the database
448 in the client's time zone.
449
450 Within CStore (and related, C-based services), all stateful sessions make use
451 of this capability, setting the database time zone upon a successful CONNECT
452 message from the client.  The time zone is reset to the database default when
453 a session is terminated either due to client DISCONNECT or server keepalive
454 timeout.
455
456 All stateless requests record the current database time zone, set the database
457 time zone to that of the client's, run the query, and then reset the database
458 time zone on each request that carries a client time zone value.  It is expected
459 that this will not cause any noticeable increase in latency or query execution
460 time, as this setting is local to the specific PostgreSQL server backend process.
461
462 Within the Storage service, the timezone will be set automatically by a simple
463 wrapper method used by the existing method registration mechanism for method
464 publishing.  Disconnect and error callbacks are registered to revert the time
465 zone setting within the database.  This provides completely transparent time
466 zone manipulation for backend services that make use of open-ils.storage.
467
468
469
470
471 Public Catalog
472 ~~~~~~~~~~~~~~
473
474
475
476 New Subject Browse Index Definitions
477 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
478 New subject browse index definitions have been added that display the entire
479 heading as a unit with hyphens between terms instead of displaying individual
480 terms separately. 
481
482 For example, the browse heading for:
483
484 =650 \0$aCats$zUnited States$vCorrespondence.
485
486 will display in a single entry as:
487
488 Cats -- United States -- Correspondence
489
490 Rather than separate entries for Cats and United States. 
491
492 Name subjects will continue to display as separate entries because additional
493 work would be required for the heading to be punctuated correctly.
494
495
496
497
498 Advanced Search Limiters Enhancement
499 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
500 Advanced search limiters will no longer propagate to the basic search box in
501 the catalog. Instead, the limiters applied to the search will appear underneath
502 the search box where they can be easily cleared by clicking an 'x.' On a small,
503 mobile device, the advanced search limiters can be seen by clicking an 'x filter
504 applied' link. 
505
506 The selected limiters will be applied to any search from the search bar until:
507  * The user actively removes the filters from the search or
508  * The user starts a new basic or advanced search from scratch.
509
510
511
512
513 Arabic and Right-to-Left Language Support for the catalog
514 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
515 New stylesheets and other changes to the catalog to allow for 
516 better support of right-to-left (RTL) languages, such as Arabic.
517
518 Also adds Arabic (Jordan) as a new supported language.
519
520
521
522
523 Ebook API integration
524 ^^^^^^^^^^^^^^^^^^^^^
525 Evergreen 2.12 supports partial integration with third-party APIs
526 provided by OverDrive and OneClickdigital.  When ebook API integration
527 is enabled, bibliographic records from these vendors that appear in your
528 public catalog will include vendor holdings and availability information.  Also,
529 when a user is logged in, the public catalog dashboard and My Account interface
530 will include information about that user's checkouts and holds for
531 supported vendors.
532
533 For API integration to work, you need to request API access from the
534 vendor and configure your Evergreen system according to the instructions
535 below.  You also need to configure the new `open-ils.ebook_api` service.
536
537 This feature assumes that you are importing MARC records supplied by the
538 vendor into your Evergreen system, using Vandelay or some other MARC
539 import method.  This feature does not search the vendor's online
540 collections or automatically import vendor records into your system; it
541 merely augments records that are already in Evergreen.
542
543 A future Evergreen release will add the ability for users to check out
544 titles, place holds, etc., directly via the public catalog.
545
546 Ebook API service configuration
547 +++++++++++++++++++++++++++++++
548 This feature uses the new `open-ils.ebook_api` OpenSRF service.  This
549 service must be configured in your `opensrf.xml` and `opensrf_core.xml`
550 config files for ebook API integration to work.  See
551 `opensrf.xml.example` and `opensrf_core.xml.example` for guidance.
552
553 OverDrive API integration
554 +++++++++++++++++++++++++
555 Before enabling OverDrive API integration, you will need to request API
556 access from OverDrive.  OverDrive will provide the values to be used for
557 the following new org unit settings:
558
559   * *OverDrive Basic Token*: The basic token used for API client
560     authentication.  To generate your basic token, combine your client
561     key and client secret provided by OverDrive into a single string
562     ("key:secret"), and then base64-encode that string.  On Linux, you
563     can use the following command: `echo -n "key:secret" | base64 -`
564   * *OverDrive Account ID*: The account ID (a.k.a. library ID) for your
565     OverDrive API account.
566   * *OverDrive Website ID*: The website ID for your OverDrive API
567     account.
568   * *OverDrive Authorization Name*: The authorization name (a.k.a.
569     library name) designated by OverDrive for your library.  If your
570     OverDrive subscription includes multiple Evergreen libraries, you
571     will need to add a separate value for this setting for each
572     participating library.
573   * *OverDrive Password Required*: If your library's OverDrive
574     subscription requires the patron's PIN (password) to be provided
575     during patron authentication, set this setting to "true."  If you do
576     not require the patron's PIN for OverDrive authentication, set this
577     setting to "false."  (If set to "true," the password entered by a
578     patron when logging into the public catalog will be cached in plain text in
579     memcached.)
580   * *OverDrive Discovery API Base URI* and *OverDrive Circulation API
581     Base URI*: By default, Evergreen uses OverDrive's production API, so
582     you should not need to set a value for these settings.  If you want
583     to use OverDrive's integration environment, you will need to add the
584     appropriate base URIs for the discovery and circulation APIs.  See
585     OverDrive's developer documentation for details.
586   * *OverDrive Granted Authorization Redirect URI*: Evergreen does not
587     currently support granted authorization with OverDrive, so this
588     setting is not currently in use.
589
590 For more information, consult the
591 https://developer.overdrive.com/docs/getting-started[OverDrive API
592 documentation].
593
594 To enable OverDrive API integration, adjust the following public catalog settings
595 in `config.tt2`:
596
597   * `ebook_api.enabled`: set to "true".
598   * `ebook_api.overdrive.enabled`: set to "true".
599   * `ebook_api.overdrive.base_uris`: list of regular expressions
600     matching OverDrive URLs found in the 856$9 field of older OverDrive
601     MARC records.  As of fall 2016, OverDrive's URL format has changed,
602     and the record identifier is now found in the 037$a field of their
603     MARC records, with "OverDrive" in 037$b.  Evergreen will check the
604     037 field for OverDrive record identifiers; if your system includes
605     older-style OverDrive records with the record identifier embedded in
606     the 856 URL, you need to specify URL patterns with this setting.
607
608 OneClickdigital API integration
609 +++++++++++++++++++++++++++++++
610 Before enabling OneClickdigital API integration, you will need to
611 request API access from OneClickdigital.  OneClickdigital will provide
612 the values to be used for the following new org unit settings:
613
614   * *OneClickdigital Library ID*: The identifier assigned to your
615     library by OneClickdigital.
616   * *OneClickdigital Basic Token*: Your client authentication token,
617     supplied by OneClickdigital when you request access to their API.
618
619 For more information, consult the
620 http://developer.oneclickdigital.us/[OneClickdigital API documentation].
621
622 To enable OneClickdigital API integration, adjust the following public catalog
623 settings in `config.tt2`:
624
625   * `ebook_api.enabled`: set to "true".
626   * `ebook_api.oneclickdigital.enabled`: set to "true".
627   * `ebook_api.oneclickdigital.base_uris`: list of regular expressions
628     matching OneClickdigital URLs found in the 859$9 field of your MARC
629     records.  Evergreen uses the patterns specified here to extract
630     record identifiers for OneClickdigital titles.
631
632 Additional configuration
633 ++++++++++++++++++++++++
634 Evergreen communicates with third-party vendor APIs using the new
635 `OpenILS::Utils::HTTPClient` module.  This module is configured using
636 settings in `opensrf.xml`.  The default settings should work for most
637 environments by default, but you may need to specify a custom location
638 for the CA certificates installed on your server.  You can also disable
639 SSL certificate verification on HTTPClient requests altogether, but
640 doing so is emphatically discouraged.
641
642
643
644 Links to Other Formats and Editions
645 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
646 The record summary pages in the catalog will now link to other formats and
647 editions of a title. The links will allow users to quickly jump to another
648 format of the title or an edition written in another language. 
649
650
651
652
653
654 Metarecord Search Improvements
655 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
656 This release brings several improvement to the Group Formats and Editions
657 search. 
658
659  * Limiters on the advanced search page can now be successfully applied to 
660 Group Formats and Editions searches,
661  * Electronic resources are now retrievable through these searches,
662  * Paged navigation has improved.
663
664
665
666
667 Allow Metarecord Search by default
668 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
669 Before the TPAC, a site could configure the public catalog to use metarecord searching
670 by default, via a configuration file.  Here we bring that back.
671
672 A new setting called search.metarecord_default is present in
673 `templates/opac/parts/config.tt2` to enable this feature.  By setting this to
674 a true value (normally 1) the TPAC will silently include the #metabib search
675 modifier in the search form on any interfaces that do not have a UI component
676 that allows the user to control the setting.
677
678
679
680 RDA Improvements
681 ^^^^^^^^^^^^^^^^
682  * Author fields are now normalized to strip ending periods so that authors from
683 RDA and non-RDA records are collapsed in browse and facet headings.
684  * All author/contributor roles will now display in the record detail page.
685 Previously, some of the roles were omitted or were duplicated.
686
687
688 Obalkyknih.cz Integration
689 ^^^^^^^^^^^^^^^^^^^^^^^^^
690 Evergreen now integrates with Czech added content provider obalkyknih.cz. A new
691 setting called obalkyknih_cz.enabled is available in
692 `templates/opac/parts/config.tt2` to enable this new feature.
693
694
695 2.12.0 Acknowledgments
696 ----------------------
697 The Evergreen project would like to acknowledge the following
698 organizations that commissioned developments in this release of
699 Evergreen:
700
701 * Bibliomation
702 * British Columbia Libraries Cooperative
703 * C/W MARS
704 * Georgia PINES
705 * King County Library System
706 * Linn Libraries Consortium
707 * MassLNC
708 * Pennsylvania Integrated Library System
709 * Pioneer Library System
710
711 We would also like to thank the following individuals who contributed
712 code, translations, documentations patches and tests to this release of
713 Evergreen:
714
715 * Adam Bowling
716 * Anahi Valdez
717 * Ben Shum
718 * Bill Erickson
719 * Billy Horn
720 * Blake Henderson
721 * Bob Wicksall
722 * Chris Sharp
723 * Christine Burns
724 * Christine Morgan
725 * Clare Sobotka
726 * Dan Pearl
727 * Dan Scott
728 * Dan Wells
729 * Darrell Rodgers
730 * Debbie Luchenbill
731 * Eva Cerninakova
732 * Fares Othman
733 * Galen Charlton
734 * Jakub Kotrla
735 * Jane Sandberg
736 * Jason Boyer
737 * Jason Etheridge
738 * Jason Stephenson
739 * Jeanette Lundgren
740 * Jeff Davis
741 * Jeff Godin
742 * Jennifer Pringle
743 * Jillianne Presley
744 * Jim Keenan
745 * Job Diógenes Ribeiro Borges
746 * Jonathan Schatz
747 * Josh Stompro
748 * Kate Butler
749 * Kathy Lussier
750 * Kyle Huckins
751 * Linda Jansová 
752 * Michele Morgan
753 * Michelle Purcell
754 * Mike Rylander
755 * Nawras Othman
756 * Remington Steed
757 * Rogan Hamby
758 * Terran McCanna
759 * Thomas Berezansky
760 * Victoria Lewis
761
762 We also thank the following organizations whose employees contributed
763 patches:
764
765 * British Columbia Libraries Cooperative
766 * Calvin College
767 * Catalyst DevWorks
768 * C/W MARS
769 * Emerald Data Networks, Inc.
770 * Equinox Open Library Initiative
771 * Georgia PINES
772 * Indiana State Library
773 * The Institute for the Study of Totalitarian Regimes, Prague
774 * Jabok Library
775 * Jordanian Library and Information Association
776 * King County Library System
777 * Lake Agassiz Regional Library
778 * Laurentian University
779 * Linn-Benton Community College
780 * MassLNC
781 * Merrimack Valley Library Consortium
782 * MOBIUS Consortium
783 * North of Boston Library Exchange
784 * Pioneer Library System
785 * Rodgers Memorial Library
786 * Sigio
787 * Traverse Area District Library
788
789
790 We regret any omissions.  If a contributor has been inadvertently
791 missed, please open a bug at https://bugs.launchpad.net/evergreen/
792 with a correction.
793