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