LP#1793585: Add Release Notes
[working/Evergreen.git] / docs / RELEASE_NOTES_3_1.adoc
1 Evergreen 3.1 Release Notes
2 ===========================
3 :toc:
4 :numbered:
5
6 Evergreen 3.1.8
7 ----------------
8 This release contains bug fixes improving on Evergreen 3.1.7.
9 All bug fixes refer to the web staff client unless otherwise specified.
10
11 Bug fixes
12 ~~~~~~~~~
13
14 General
15 ^^^^^^^
16
17 * Fixes a bug that blocked logging in from mobile browsers
18 * Fixes a readability issue with mobile menus
19 * Fixes performance issue related to grid tooltips.
20
21 Cataloging
22 ^^^^^^^^^^
23
24 * Improves the functionality of setting a default tab of a bib record
25 * The web client now remembers the most recently selected copy template
26 * Adds help tips to Print Item Labels Settings tab
27 * If you add or edit copies and/or volumes from the Holdings View tab,
28 the view now automatically refreshes to show your changes.
29 * Provides an upgrade to MODS 3.3 for older Evergreen installations.
30 * Improves usability of Z39.50 MARC View.
31
32 Circulation
33 ^^^^^^^^^^^
34
35 * Staff can now place multiple email addresses into the patron registration/
36 edit form, depending on the value of the `ui.patron.edit.au.email.regex`
37 library setting.
38 * Fixes an issue with the offline circulation module.
39 * When merging two users, the non-lead account is now completely purged from
40 the database, rather than simply being marked as deleted.
41
42 Public catalog
43 ^^^^^^^^^^^^^^
44
45 * Removes incorrect copy counts from metarecord search results pages
46 * Electronic resources now display in the browse interfaces
47
48 System administration
49 ^^^^^^^^^^^^^^^^^^^^^
50
51 * The example Apache 2.4 configuration now enables remoteip.
52 * Improves syntax in the fm_idl file.
53
54
55 Acknowledgements
56 ~~~~~~~~~~~~~~~~
57 We would like to thank the following individuals who contributed code,
58 tests and documentation patches to the 3.1.8 point release of
59 Evergreen:
60
61 * Jason Boyer
62 * Galen Charlton
63 * Garry Collum
64 * Bill Erickson
65 * Rogan Hamby
66 * Rosie Le Faive
67 * Jeanette Lundgren
68 * Kathy Lussier
69 * Mike Rylander
70 * Jane Sandberg
71 * Janet Schrader
72 * Chris Sharp
73 * Ben Shum
74 * Remington Steed
75 * Jason Stephenson
76 * Cesar Velez
77 * Dan Wells
78
79
80 Evergreen 3.1.7
81 ----------------
82 This release contains bug fixes improving on Evergreen 3.1.6.
83 All bug fixes refer to the web staff client unless otherwise specified.
84
85 Bug fixes
86 ~~~~~~~~~
87
88 * Adds several columns to the items out grid.
89 * Adds the ability to copy patron addresses to the clipboard.
90 * Fixes several issues with adding new items and call numbers.
91 * Adds links to catalog records from the query and pending tabs of the Record Buckets interface.
92 * Corrects the date format used in several bucket interfaces.
93 * Adds a loading spinner to interfaces that are embedded in the web staff client via iframe
94 (such as the catalog).
95
96 Acknowledgements
97 ~~~~~~~~~~~~~~~~
98 We would like to thank the following individuals who contributed code,
99 tests and documentation patches to the 3.1.7 point release of
100 Evergreen:
101
102 * John Amundson
103 * a. bellenir
104 * Jason Boyer
105 * Galen Charlton
106 * Garry Collum
107 * Dawn Dale
108 * Bill Erickson
109 * Jason Etheridge
110 * Kathy Lussier
111 * Mike Rylander
112 * Jane Sandberg
113 * Jason Stephenson
114 * Cesar Velez
115 * Dan Wells
116
117 Evergreen 3.1.6
118 ----------------
119 This release contains bug fixes improving on Evergreen 3.1.5.
120 All bug fixes refer to the web staff client unless otherwise specified.
121
122 Bug fixes
123 ~~~~~~~~~
124
125 * Fixes an issue that caused catalog searches to fail after a new library was added to the org tree.
126 * When you mouse over a grid cell in the client, a tooltip will display the full contents of the cell.
127 * Fixes issues with columns in the Item Status, Holdings View, Checkout, Patron Bill, Recent Circ History,
128 * Fixes various misspellings and capitalization issues in the interface.
129 * Circulation staff can now override a patron block that is placed from Messages/Apply Penalty.
130 * Fixes an issue with checking in hourly loans.
131 * Staff can now approve pending patron addresses in the patron edit interface.
132 * Prevents patron records from being merged with themselves.
133 * Fixes a bug where the patron card dialog would not allow the user to change the primary barcode under certain circumstances.
134 * Fixes issues with duplicate transit records.
135 * Adds the transit cancel time to the Most Recent Transits section of the Item Status Holds / Transit tab.
136 * Adds the "Show in Catalog" action back to the Item Status grid.
137 * Improvements to the Item Attribute Editor.
138 * Staff can now set a default search box in the Z39.50 search interface.
139 * Staff can now delete copy notes.
140 * Fixes an issue in which transferring items and vol/items caused statistical categories to disappear.
141 * In the MARC editor, the 007 physical characteristics wizard now has a different icon than the authority linker.
142 * Protects backordered acquisitions items from having their catalog items deleted.
143 * Fixes a problem where EDI ORDERS message were not visible in the EDI Messages interface.
144 * Fixes problems that occur when cloning a report template created in the XUL client.
145 * Fixes bugs that caused activity metric data when performing searches.
146 * Fixes an issue where the "Predict New Issues" button in the Serials module did not use the correct pattern. 
147 * The KPAC now respects the `opac.holds.org_unit_not_pickup_lib` setting.
148
149 Acknowledgements
150 ~~~~~~~~~~~~~~~~
151 We would like to thank the following individuals who contributed code,
152 tests and documentation patches to the 3.1.6 point release of
153 Evergreen:
154
155 * John Amundson
156 * a. bellenir
157 * Jason Boyer
158 * Steven Callender
159 * Galen Charlton
160 * Garry Collum
161 * Amy Constantino
162 * Jeff Davis
163 * Bill Erickson
164 * Jason Etheridge
165 * Joan Kranich
166 * Sam Link
167 * Jeanette Lundgren
168 * Kathy Lussier
169 * Michele Morgan
170 * Mike Rylander
171 * Jane Sandberg
172 * Dan Scott
173 * Chris Sharp
174 * Ben Shum
175 * Jason Stephenson
176 * Dan Wells
177 * Beth Willis
178
179
180 Evergreen 3.1.5
181 ----------------
182 This release contains bug fixes improving on Evergreen 3.1.4.
183 All bug fixes refer to the web staff client unless otherwise specified.
184
185 Bug fixes
186 ~~~~~~~~~
187
188 * Several strings are now displayed in the correct translation.
189 * Right clicking in grids results in more intuitive behavior.
190 * Usernames and barcodes containging the _%_ character no longer
191 experience problems logging in.
192 * Fixes cases in which the web client stops loading after the toolbar.
193 * Fixes problems in which using the web client in multiple tabs leads
194 to data inconsistency.
195 * Fixes an issue that caused authentication session checks to spam
196 the system and needlessly fill up logs.
197 * Boolean fields within grid views now say "Yes"/"No" instead of 
198 "true"/"false".
199 * Fixes sorting issues in the patron search.
200 * Staff can now choose to print out only a selection of items out,
201 instead of having to print them all.
202 * The patron triggered event screen now respects the
203 `circ.staff.max_visible_event_age` library setting.
204 * Fixes an issue which caused an exception to be thrown during
205 non-cataloged item checkout.
206 * Fixes permission issues related to merging users.
207 * The bibliographic record summary now displays the call number that
208 matches the library's classification system.
209 * The copy editor now makes shelving locations visible to catalogers
210 from other libraries as needed.
211 * Once a record is overlayed in the Z39.50 screen, it is no longer
212 marked for overlay.
213 * Fixes several issues with the item status list view.
214 * When adding new copies, the circulation library now defaults to the
215 call number's owning library.
216 * Fixes display issues with the Print Item Labels page.
217 * Fixes an issue in which the staff client and the OPAC displayed
218 different counts of available items.
219
220 Acknowledgements
221 ~~~~~~~~~~~~~~~~
222 We would like to thank the following individuals who contributed code,
223 tests and documentation patches to the 3.1.5 point release of
224 Evergreen:
225
226 * John Amundson
227 * a. bellenir
228 * Jason Boyer
229 * Garry Collum
230 * Jeff Davis
231 * Bill Erickson
232 * Rogan Hamby
233 * Kathy Lussier
234 * Terran McCanna
235 * Michele Morgan
236 * Mike Rylander
237 * Jane Sandberg
238 * Chris Sharp
239 * Jason Stephenson
240 * Ben Shum
241 * Cesar Velez
242 * John Yorio
243
244
245 Evergreen 3.1.4
246 ----------------
247 This release contains bug fixes improving on Evergreen 3.1.3.  Note that
248 all bug fixes refer to the web staff client unless otherwise specified.
249
250 Bug fixes
251 ~~~~~~~~~
252
253 * Fixes right-click issues with the Web client grids
254 * Fixes an issue with the Default SMS Carrier in the patron edit form.
255 * Fixes an issue that allowed overdue notices to be sent to a patron
256 whose long overdue item has been paid for.
257 * Checking in precat items now displays the "Route to Cataloging" alert each
258 time the item is checked in.
259 * Fixes an issue where alerts that had been cleared by a check-in continued
260 to display.
261 * Fixes an issue in which the Adjust to Zero feature
262 does not close a checked-in lost circ.
263 * Deleted copies that are still checked out can now be checked in.
264 * Fixes a mislabeled column in the patron checkout grid.
265 * Grocery bills are no longer styled the same way as overdue bills.
266 * Fixes an error with the missing pieces functionality.
267 * Courier codes now display in the transit slip receipt preview.
268 * Fixes several issues related to adding volumes.
269 * Fixes several issues related to empty volumes.
270 * Fixes several issues related to item and volume transfers.
271 * Fixes several issues with checkboxes in the volume/copy editor.
272 * The Item Status grid now displays OU shortnames instead of full names
273 for the "Circulation Library" column.
274 * The Volume/Copy editor now allows users to remove a value from the Age
275 Hold Protection field.
276 * Barcode completion now works in copy buckets.
277 * The Z39.50 interface now notices when another record has been marked
278 for overlay.
279 * Fixes a display issue for the Remove MARC Field Groups checkboxes in
280 the Z39.50 interface.
281 * Fixes a performance issue for the Validate button in the MARC Editor.
282 * Fixes an incorrect close tag in the Print Item Labels toolbar.
283 * Better scoping of copy tags in search results.
284 * Prevents sending invalid search.highlight_display_fields calls.
285 * Electronic Resource links now open in a new tab.
286 * Fixes an issue with the fiscal year close-out operation.
287
288 Acknowledgements
289 ~~~~~~~~~~~~~~~~
290 We would like to thank the following individuals who contributed code,
291 tests and documentation patches to the 3.1.4 point release of
292 Evergreen:
293
294 * A. Bellenir
295 * Adam Bowling
296 * Jason Boyer
297 * Galen Charlton
298 * Garry Collum
299 * Jeff Davis
300 * Bill Erickson
301 * Kathy Lussier
302 * Terran McCanna
303 * Michele Morgan
304 * Jennifer Pringle
305 * Mike Rylander
306 * Jane Sandberg
307 * Chris Sharp
308 * Jason Stephenson
309 * Cesar Velez
310 * Dan Wells
311
312 Evergreen 3.1.3
313 ---------------
314 This release contains bug fixes improving on Evergreen 3.1.2.  Note that
315 all bug fixes refer to the web staff client unless otherwise specified.
316
317 Bug fixes
318 ~~~~~~~~~
319
320 * Fixes specific cases in which deleted records appear in search results.
321 * Fixes a performance issue with deleting patrons.
322 * The hold shelf dialog popup now lists the patron's notification
323 preferences.
324 * Fixes an issue that prevented editing items when a monograph part
325 is present.
326 * Patron information is now available for use in the bills_current
327 and bills_historical receipt templates.
328 * The browser's "This page may contain unsaved data" warning now 
329 appears when users click the update
330 expire date button in a patron account and attempt to navigate away
331 without saving.
332 * The holds tab of the patron record now includes a monograph part
333 column.
334 * The barcode box in the checkout screen
335 no longer hovers above patron record tabs when
336 staff users scroll down.
337 * Fixes an issue with the date of birth in the patron edit scren.
338 * The patron account bills grid are now color-coded by the item's
339 status.
340 * Fixes an issue with the dropdown of billing type options.
341 * The Item Status screen now includes as a floating group column.
342
343 Acknowledgements
344 ~~~~~~~~~~~~~~~~
345 We would like to thank the following individuals who contributed code,
346 tests and documentation patches to the 3.1.3 point release of
347 Evergreen:
348
349 * BC Libraries Cooperative
350 * A. Bellenir
351 * Jason Boyer
352 * Galen Charlton
353 * Garry Collum
354 * Dawn Dale
355 * Bill Erickson
356 * Blake Graham-Henderson
357 * Kyle Huckins
358 * Jeanette Lundgren
359 * Kathy Lussier
360 * Terran McCanna
361 * Michele Morgan
362 * Dan Pearl
363 * Mike Rylander
364 * Geoff Sams
365 * Jane Sandberg
366 * Chris Sharp
367 * Remington Steed
368 * Jason Stephenson
369 * Cesar Velez
370 * Dan Wells
371
372
373 Evergreen 3.1.2
374 ---------------
375
376 This release contains bug fixes improving on Evergreen 3.1.1.   Note that
377 all bug fixes refer to the web staff client unless otherwise specified.
378
379 Bug fixes
380 ~~~~~~~~~
381
382 Cataloging
383 ^^^^^^^^^^
384
385 * The MARC editor now handles 008 fields better.
386 * Adds spaces between subfields when suggesting a call
387 number for a new volume.
388 * MarcXML exports from the MARC Batch Import/Export ->
389 Export Records screen now downloads the file, rather than opening
390 it in the browser.
391 * The Item Status Circulation Library column now displays a 
392 shortname rather than the full library name.
393 * The Item Status Remaining Renewals column now displays
394 correctly.
395 * The Item Status now has a "Last Renewal Workstation" column
396 available.
397 * Fixes the circulation counts displayed in Item Status Details.
398 * Removes an error that got thrown in the Holdings View when a call number
399 contains no copy.
400 * Fixes an issue where multiple copies with different values for required
401 statistical categories could not be edited and saved in batch.
402 * Add an option to remove floating in the copy editor.
403 * Fixes an issue with the floating dropdown in the copy editor.
404 * Fixes a problem in which the copy template didn't properly copy
405 certain objects.
406 * Reduces the number of API calls that the MARC Editor requires.
407 * The order of the Z39.50 servers on the Z39.50 import screen
408 no longer relies on capitalization.
409
410 Circulation
411 ^^^^^^^^^^^
412
413 * Fixes an issue that prevented the offline patron registration
414 screen from loading.
415 * Fixes an issue with searching patrons by permission group.
416 * The barcodes in the patron search are now clickable.
417 * Staff members can now manually override the patron juvenile
418 flag value, regardless of the patron's date of birth.
419 * Checkboxes on patron registration screen are now properly aligned
420 with other fields.
421 * The user permission group dropdowns in the patron registration,
422 edit, and search interfaces now have scrollbars.
423 * The date picker on the checkout screen is now hidden unless
424 circ staff activates a specific due date option.
425 * The check-in screen now includes a copy status column.
426 * The Merge Patrons interface now displays the date of birth.
427 * The user bucket screen now displays the Bucket ID.
428 * The payment button on patron bills screen is now inactive if the
429 Payment Received field is blank.
430 * The Bill History receipt now includes a Finish date and a Last
431 Payment date.
432 * When a patron summary contains an image of the patron,
433 that image tag now has a null alt attribute to remove it from
434 the flow of a screen reader.
435 * Corrects an issue that caused the transit dialog to show the
436 wrong branch.
437 * Corrects an issue with printing transit lists.
438 * "Find another target" on transiting hold no longer leaves the 
439 copy "in-transit".
440 * The images now display to distinguish hold and transit slips.
441 * The Clearable Holds list printout now only shows holds that have
442 expired.
443 * Restores the call number prefix and suffix fields to the holds
444 pull list.
445 * The documentation at the top of the hold shelf slip template
446 adds `patron.alias`.
447 * The cursor in the in-house use screen now automatically goes
448 to the barcode field.
449 * The in-house use screen now shows a copy status column.
450 * Add support for converting change to patron credit in the patron bills
451 interface, consistent with the XUL feature.
452 * Fixes a bug that caused pickup/request library fields to be
453 blank sometimes.
454 * Fixes a bug in the offline org unit tree.
455
456 Command-line system administration
457 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
458
459 * The novelist entry in `eg_vhost.conf` includes two new
460 parameters.
461 * Corrects an issue with the `--max-sleep` argument on the
462 `action_trigger_runner.pl` support script.
463 * Corrects an issue with how the `eg_pbx_allocator.pl` script
464 detects an existing lock file.
465 * The 3.0.2-3.0.3 upgrade script disables triggers before
466 recalculating bib visibility.
467
468 Public catalog
469 ^^^^^^^^^^^^^^
470
471 * Fixes an issue that caused records with located URIs to be
472 retrieved in Copy Location and Copy Location Group searches.
473 * Fixes an error message that appeared in the search box
474 in the public catalog while placing hold after an advanced search.
475 * Restores the display of copy information for the user's
476 preferred library in the public catalog.
477 * Author and contributor names are no longer highlighted in 
478 search results when the user has turned off highlighting.
479 * Fixes regression errors in the search results page.
480 * Removes redundant call numbers from the Show More Details
481 search results.
482 * The cast field in the catalog is now taken from the 511 field
483 when first indicator = 1, rather than the 508.
484 * Fixes a display issue caused by editing holds.
485 * Repairs broken author search links on the catalog record page.
486
487 Serials
488 ^^^^^^^
489
490 * Fixes an issue that prevented users from searching for
491 receivable issues using Database ID or ISSN in the Serials
492 Batch Receive interface.
493
494 General
495 ^^^^^^^
496 * Pins AngularJS support to version 1.6, which prevents unsupported
497 AngularJS versions (such as 1.7) from breaking the build process.
498 * Adds some padding to the bottom of Web Client interfaces.
499 * Logins now honor all org unit timeout settings.
500 * Evergreen will now identify and handle invalid timezones.
501 * Fixes an issue where a column header in some interfaces were automatically
502 highlighted in green when retrieving the interface.
503 * The parts column in the Item Status screen now displays parts data.
504
505
506 Acknowledgements
507 ~~~~~~~~~~~~~~~~
508 We would like to thank the following individuals who contributed code,
509 tests and documentation patches to the 3.1.2 point release of
510 Evergreen:
511
512 * John Amundson
513 * Jason Boyer
514 * Galen Charlton
515 * Garry Collum
516 * Dawn Dale
517 * Jeff Davis
518 * Bill Erickson
519 * Lynn Floyd
520 * Rogan Hamby
521 * Kyle Huckins
522 * Sam Link
523 * Jeanette Lundgren
524 * Kathy Lussier
525 * Katie G. Martin
526 * Terran McCanna
527 * Michele Morgan
528 * Dan Pearl
529 * Mike Rylander
530 * Laura Sachjen
531 * Jane Sandberg
532 * Chris Sharp
533 * Ben Shum
534 * Remington Steed
535 * Jason Stephenson
536 * Josh Stompro
537 * Cesar Velez
538 * Dan Wells
539 * Bob Wicksall
540
541
542
543 Evergreen 3.1.1
544 ---------------
545 This release contains bug fixes improving on Evergreen 3.1.0.
546
547 * Fixes a performance issue with the Patron Billing History screen and
548 other screens that cause Flattener.pm to re-create joins
549 unnecessarily.
550 * Fixes an issue that prevented patron alerts from showing to staff at
551 other libraries.
552 * Corrects the "Holdable" attribute display on the Item Status detailed
553 view.
554 * Fixes the ability to delete multiple copies from Item Status.
555
556 Acknowledgements
557 ~~~~~~~~~~~~~~~~
558 We would like to thank the following individuals who contributed code,
559 tests and documentation patches to the 3.1.1 point release of
560 Evergreen:
561
562 * Jason Boyer
563 * Bill Erickson
564 * Morkor Quarshie
565 * Jane Sandberg
566 * Remington Steed
567 * Jason Stephenson
568 * Kevin Tran
569 * Dan Wells
570
571
572 3.1.0 Upgrade Notes
573 -------------------
574 Like many major Evergreen upgrades, 3.1 requires a full reingest of your
575 bibliographic records before the system is usable again.  While a basic reingest
576 is included at the end of the upgrade script, it happens after the main
577 COMMIT, so it is safe to cancel that and run the required reingest as you see
578 fit (e.g. via pingest.pl).
579
580
581 3.1.0 New Features
582 ------------------
583
584 Administration
585 ~~~~~~~~~~~~~~
586
587 New Latency Tester Tool
588 ^^^^^^^^^^^^^^^^^^^^^^^
589 The Evergreen Web Staff Client now includes a section called *Tests* linked from
590 *Administration -> Workstation*. The *Tests* page houses a simple tool
591 that can be used to test the latency of the websocket connection between the
592 client and the server (via the `opensrf.echo` service).
593
594 This page displays which Evergreen host server is being queried. Upon hitting
595 the blue "Start Test" button for the first time, it will issue 10 sequentially
596 fired requests in order to get a solid initial average. Clicking the button a
597 second time will take one more measurement and recalculate the average
598 latency. The results can be copied to clipboard for troubleshooting purposes
599 and also cleared from display.
600
601 marc_export --uris option
602 ^^^^^^^^^^^^^^^^^^^^^^^^^
603 The marc_export support script now has a `--uris` option (short form:
604 `-u`) to export records with located URIs (i.e. electronic resources).  When
605 used by itself, it will export only records that have located URIs.  When
606 used in conjunction with `--items`, it will add records with located URIs
607 but no items/copies to the output.  If combined with a `--library` or
608 `--descendants` option, this option will limit its output to those
609 records with URIs at the designated libraries.  The best way to use
610 this option is in combination with the `--items` and one of the
611 `--library` or `--descendants` options to export *all* of a library's
612 holdings both physical and electronic.
613
614
615 Architecture
616 ~~~~~~~~~~~~
617
618 Sample Data Includes Surveys
619 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
620 The Concerto sample data set now includes patron surveys, questions,
621 answers, and responses.
622
623 Virtual Index Definitions
624 ^^^^^^^^^^^^^^^^^^^^^^^^^
625 The practical purpose of Virtual Index Definitions is to supply an Evergreen
626 administrator with the ability to control the weighting and field inclusion of
627 values in the general keyword index, commonly referred to as "the blob,"
628 without requiring tricky configuration that has subtle semantics, an
629 over-abundance of index definitions which can slow search generally, or the
630 need to reingest all records on a regular basis as experiments are performed
631 and the configuration refined. Significant results of recasting keyword indexes
632 as a set of one or more Virtual Index Definitions will be simpler search
633 configuration management, faster search speed overall, and more practical
634 reconfiguration and adjustment as needed.
635
636 Previously, in order to provide field-specific weighting to
637 keyword matches against titles or authors, an administrator must duplicate many
638 other index definitions and supply overriding weights to those duplicates. This
639 not only complicates configuration, but slows down record ingest as well as
640 search. It is also fairly ineffective at achieving the goal of weighted keyword
641 fields. Virtual Index Definitions will substantially alleviate the need for
642 these workarounds and their consequences.
643
644   * A Virtual Index Definition does not require any configuration for
645 extracting bibliographic data from records, but instead can become a sink for
646 data collected by other index definitions, which is then colocated together to
647 supply a search target made up of the separately extracted data. Virtual Index
648 Definitions are effectively treated as aggregate definitions, matching across
649 all values extracted from constituent non-virtual index definitions.  They can
650 further make use of the Combined class functionality to colocate all values in a
651 class together for matching even across virtual fields.
652
653   * Configuration allows for weighting of constituent index definitions that
654 participate in a Virtual Index Definition. This weighting is separate from the
655 weighting supplied when the index definition itself is a search target.
656
657   * The Evergreen QueryParser driver returns the list of fields actually
658 searched using every user-supplied term set, including constituent expansion
659 when a Virtual Index Definition is searched. In particular, this will facilitate
660 Search Term Highlighting described below.
661
662   * Stock configuration changes make use of pre-existing, non-virtual index
663 definitions mapped to new a Virtual Index Definition that implements the
664 functionality provided by the `keyword|keyword` index definition. The
665 `keyword|keyword` definition is left in place for the time being, until more data
666 can be gathered about the real-world effect of removing it entirely and
667 replacing it with Virtual Index Definition mappings.
668
669   * New system administration functions will be created to facilitate
670 modification of Virtual Index Definition mapping, avoiding the need for a full
671 reingest when existing index definitions are added or removed from a virtual
672 field.
673
674 Increased use of Metabib Display Fields
675 +++++++++++++++++++++++++++++++++++++++
676 We use Metabib Display Fields (newly available in 3.0) to render catalog search
677 results, intermediate metarecord results, and record detail pages. This requires
678 the addition of several new Metabib Display Field definitions, as well as Perl
679 services to gather and render the data.
680
681 We also use more Metabib Display Fields in the client. As a result,
682 bibliographic fields will display in proper case in more client interfaces and
683 in Evergreen reports.
684
685 Interfaces
686 ++++++++++
687 A new AngularJS "MARC Search/Facet Fields" interface has been created to replace
688 the Dojo version, and both have been extended to support Virtual Index
689 Definition data supplier mapping and weighting.
690
691 Settings & Permissions
692 ++++++++++++++++++++++
693 The new Virtual Index Definition data supplier mapping table,
694 `config.metabib_field_virtual_map`, requires the same permissions as the
695 MARC Search/Facet Fields interface: CREATE_METABIB_FIELD, UPDATE_METABIB_FIELD,
696 DELETE_METABIB_FIELD, or ADMIN_METABIB_FIELD for all actions
697
698 Backend
699 +++++++
700 There now exist several new database tables and functions primarily in support
701 of search highlighting. Additionally, the QueryParser driver for Evergreen has
702 been augmented to be able to return a data structure describing how the search
703 was performed, in a way that allows a separate support API to gather a
704 highlighted version of the Display Field data for a given record.
705
706 Default Weights
707 +++++++++++++++
708 By default, the following fields will be weighted more heavily in keyword
709 searches. Administrators can change these defaults by changing the values in the
710  "All searchable fields" virtual index in the "MARC Search/Facet Fields"
711 interface.
712
713   * Title proper
714   * Main title (a new index limited to the words in the 245a)
715   * Personal author
716   * All subjects
717
718 In addition, note indexes and the physical description index will receive
719 less weight in default keyword searches.
720
721 Re-ingest or Indexing Dependencies
722 ++++++++++++++++++++++++++++++++++
723 With the addition and modification of many Index Definitions, a full reingest is
724 recommended.  However, search will continue to work as it did previously
725 for those records that have not yet been reingested. Therefore a slow, rolling
726 reingest is recommended.
727
728 Performance Implications or Concerns
729 ++++++++++++++++++++++++++++++++++++
730 Because the Metabib Display Fields infrastructure will eventually replace
731 functionality that is significantly more CPU-intensive in the various forms of
732 XML parsing, XSLT transformation, XPath calculation, and
733 Metabib Virtual Record construction, it is expected that the overall CPU load
734 will be reduced by this development, and ideally the overall time required to
735 perform and render a search will likewise drop. It is unlikely that the speed
736 increase will be visible to users on a per-search basis, but that search in
737 aggregate will become a smaller consumer of resources.
738
739
740 Cataloging
741 ~~~~~~~~~~
742
743 Track Record Merges
744 ^^^^^^^^^^^^^^^^^^^
745 When 2 or more bib records are merged, all records involved are stamped
746 with a new `merge_date` value.  For any bib record, this field indicates
747 the last time it was involved in a merge.  At the same time, all
748 subordinate records (i.e. those deleted as a product of the merge) are
749 stamped with a `merged_to` value indicating which bib record the source
750 record was merged with.
751
752 In the browser client bib record display, a warning alert now appears
753 along the top of the page (below the Deleted alert) indicating when a
754 record was used in a merge, when it was merged, and which record it was
755 merge with, rendered as a link to the target record.
756
757
758 Circulation
759 ~~~~~~~~~~~
760
761 Alternate Patron Hold Pickup
762 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
763 This feature adds a bit of convenience to a common task: checking out
764 an item on hold to another patron (typically a family member or helper).
765
766 When you checkout the item, you will get a pop-up window with warnings associated
767 with this item.  The "ITEM_ON_HOLDS_SHELF" message is now expanded to
768
769  * Let you know the name of the person who had placed the hold.
770  * Give you the option (in the form of a checkbox) of cancelling the
771    hold placed by the above-named patron.  (Checked = Cancel the hold;
772    Unchecked = Leave the hold in place)
773
774 The initial value of the checkbox is derived from the
775 `circ.clear_hold_on_checkout` organizational setting.
776
777 If the operator has CANCEL_HOLD privilege, then if the checkbox is checked and
778 the checkout is allowed to proceed, the hold will be cancelled with a note that
779 the item was checked out to another patron.
780
781 This feature is available in the browser-based staff client.
782
783 New Patron Billing Statement
784 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
785 The Evergreen web staff client now includes a patron billing statement,
786 which summarizes a patron's bills, credits and payments in a familiar
787 layout.  This can be found on the "Statement" tab of the Patron Bill
788 Details page. (From the Patron Bills page, double-click a row to view
789 its details, or choose "Full Details" from the Actions menu.)
790
791 Enhanced Billing Timestamp Support
792 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
793 Previously, billings had to make do with a single timestamp attempting
794 to fill two different roles.  In the case of an overdue fine, the
795 timestamp represented the *end* of the fine period for that billing,
796 while for all other fines, the timestamp was merely the time the bill
797 was created.  This setup generally worked, but not without confusion,
798 and limited our ability to understand and process the data.
799
800 Billings will now have up to three timestamps: a create date, and when
801 applicable, a fine period start and a fine period end.  This clarifies
802 and simplifies things like backdating, retrospective fine generation,
803 account balancing for negative balance avoidance, and billing timeline
804 views.
805
806 Copy Alerts and Suppression Matrix
807 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
808 The Copy Alerts feature allows library staff to add customized alert
809 messages to copies. The copy alerts will appear when a specific event
810 takes place, such as when the copy is checked in, checked out, or
811 renewed. Alerts can be temporary or persistent: temporary alerts will be
812 disabled after the initial alert and acknowledgement from staff, while
813 persistent alerts will display each time the alert event takes place.
814 Copy Alerts can be configured to display at the circulating or owning
815 library only or, alternatively, when the library at which the alert
816 event takes place is not the circulating or owning library.  Copy Alerts
817 can also be configured to provide options for the next copy status that
818 should be applied to an item.  Library administrators will have the
819 ability to create and customize Copy Alert Types and to suppress copy
820 alerts at specific org units.
821
822 Copy alerts can be added via the volume/creator and the check in,
823 check out, and renew pages.  Copy alerts can also be managed at the
824 item status page.
825
826 Copy alert types can be managed via the Copy Alert Types page in
827 Local Administration, and suppression of them can be administered
828 via the Copy Alert Suppression page under Local Administration.
829
830 Place Multiple Holds At Once
831 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
832 Users with the appropriate permissions now have the ability to place multiple
833 title/metarecords holds at once. This feature is especially beneficial for book
834 clubs and reading groups, which need to place holds on multiple copies of a
835 title.
836
837 In order to use the feature:
838
839   * Set the _Maximum number of duplicate holds allowed_ Library Setting
840     (`circ.holds.max_duplicate_holds`) to a number higher than 1
841   * Log in as a user with the CREATE_DUPLICATE_HOLDS
842
843 When placing a title or metarecord hold, a _Number of copies_ field will
844 display for these users. This field is not available when placing part, volume
845 or copy holds.
846
847 This feature does not change the way in which the system fills holds. The
848 multiple holds will fill in the same way that they would if the user had placed
849 multiple holds separately.
850
851 New Notice Columns in Items Out Grid
852 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
853 The grid in the patron "items out" page in the Evergreen web staff client has two new
854 columns indicating the number of notifications generated for a given loan and the date of
855 the most recent notification. These columns will allow circulation staff to better respond to
856 patron questions about whether they were sent notification about an overdue item.
857
858 The columns are based on the number of completed Action Trigger events on the
859 loan that have a 'checkout.due' hook. In other words, they would include overdue
860 and courtesy notices.
861
862 A new library setting, "Exclude Courtesy Notices from Patrons Itemsout Notices Count",
863 if set will cause the notice count and date fields to exclude courtesy notices.
864
865 Patron Email Addresses Now Clickable In Web Staff Client
866 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
867 Adds a mailto link to the patron's email in their profile so it can
868 be clicked to send and email to the patron. No new settings or
869 permissions are included in this feature.
870
871 Pickup Library for Staff-placed Holds
872 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
873 Adds a new library setting, _circ.staff_placed_holds_fallback_to_ws_ou_,
874 that helps determine the hold pickup library in cases where patrons don't
875 have a preferred hold pickup library in their account and a staff member
876 is placing the hold on their behalf.
877
878   * When this setting is true and the patron doesn't have a preferred
879   library listed, the hold pickup library will default to the
880   workstation's organizational unit.
881   * When this setting is false and the patron doesn't have a preferred
882   library listed, the hold pickup library will default to the
883   patron's home library.
884
885 Public Catalog
886 ~~~~~~~~~~~~~~
887
888 Search Term Highlighting
889 ^^^^^^^^^^^^^^^^^^^^^^^^
890 Evergreen now highlights search terms on the public catalog's main search
891 results page, the record detail page, and intermediate pages such as metarecord
892 grouped results page. Highlighting search terms will help the user determine why
893 a particular record (or set of records) was retrieved.
894
895 Highlighting of matched terms uses the same stemming used to accomplish the
896 search, as configured per field and class.
897
898 This feature will help the user more quickly determine the relevance of a
899 particular record by calling their attention to search terms in context. Lastly,
900 it will help familiarize the user with how records are searched, including which
901 fields are searched as well as exposing concepts like stemming.
902
903 You can turn off search term highlighting by uncommenting the line
904 `search.no_highlight = 1;` in `config.tt2`.
905
906 When highlighting is generally enabled, it may be turned on or off on a per-page
907 basis through the use of a UI component which will request the page again
908 without highlighting.
909
910 Highlighting of terms uses Template::Toolkit-driven CSS. A generic CSS class
911 identifying a highlighted term, along with CSS classes identifying the search
912 class and each search field are available for use for customization of the
913 highlighting. A stock CSS template is provided as a baseline upon which sites
914 may expand.
915
916
917 Copy Location Filter Displays for System Searches
918 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
919 The Shelving Location filter now displays on the advanced search page when
920 a search is scoped to a library system, not just to an individual branch. If
921 a library system is selected as the Search Library, the shelving location
922 limiter will display any shelving location that is owned by the selected system
923 or by the consortium. It will NOT display shelving locations owned by child
924 branches.
925
926 Multi-source Attributes
927 ^^^^^^^^^^^^^^^^^^^^^^^
928 We now allow record attribute definitions to extract data using more than
929 one strategy (XPath, tag+subfield, fixed field, etc.) as long as the values
930 from various sources would, after normalization, have the same shape.
931
932 Multilingual Search
933 +++++++++++++++++++
934 This change allows us to configure multilingual search, by extracting values
935 from both the 008 controlfield and the 041 datafield.  Because the values
936 in each can be normalized to the same controlled list (and, in practice, are
937 already from the same normalized value set), catalog searches can now use normal
938 boolean search semantics to find records with various combinations of
939 language attributes.
940
941 E.g., in the concerto test data:
942
943   * `keyword: piano item_lang(eng) item_lang(ita)`
944
945
946 Optional Display of Badges in Catalog
947 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
948 A new setting controls whether badges (popularity, etc.) are displayed
949 in the catalog. If you do not wish badges to be displayed, set the
950 `ctx.hide_badge_scores` setting to "true" in `config.tt2`.
951
952
953 Miscellaneous
954 ~~~~~~~~~~~~~
955
956 Fixes to patron name/username search indexes
957 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
958 When using pg_restore to restore an Evergreen database, some of the
959 indexes used to speed up patron searches on names and usernames
960 could be lost.
961
962 This release fixes the underlying issue and re-creates the indexes
963 in question.
964
965 Details
966 +++++++
967 When using pg_restore to restore an affected database, the
968 "unaccent" indexes on actor.usr would not be created due to an
969 unqualified function reference in `evergreen.unaccent_and_squash`.
970
971 The function will be replaced to resolve the search path issue,
972 and the following indexes on actor.usr will be dropped and then
973 re-created:
974
975   * actor_usr_first_given_name_unaccent_idx;
976   * actor_usr_second_given_name_unaccent_idx;
977   * actor_usr_family_name_unaccent_idx;
978   * actor_usr_usrname_unaccent_idx;
979
980 This will be done even if the indexes are already present, and may
981 take a few minutes on a database with many patrons.
982
983
984 3.1.0 Acknowledgments
985 ---------------------
986 The Evergreen project would like to acknowledge the following
987 organizations that commissioned developments in this release of
988 Evergreen:
989
990 * Albany Public Library (Oregon)
991 * Consortium of Ohio Libraries
992 * CW MARS
993 * Indiana State Library
994 * Georgia Public Library Service
995 * Hagerstown - Jefferson Township Library
996 * Linn-Benton Community College
997 * MassLNC
998 * Pennsylvania Integrated Library System
999 * Sage Library System
1000 * Union County Public Library (Indiana)
1001
1002 We would also like to thank the following individuals who contributed
1003 code, translations, documentations patches and tests to this release of
1004 Evergreen:
1005
1006 * Eva Cerninakova
1007 * Andi Chandler
1008 * Galen Charlton
1009 * Jeff Davis
1010 * Bill Erickson
1011 * Jeff Godin
1012 * Rogan Hamby
1013 * Angela Kilsdonk
1014 * Sam Link
1015 * Jeanette Lundgren
1016 * Kathy Lussier
1017 * Fares Othman
1018 * Dan Pearl
1019 * Mike Rylander
1020 * Jane Sandberg
1021 * Chris Sharp
1022 * Ben Shum
1023 * Remington Steed
1024 * Jason Stephenson
1025 * Kevin Tran
1026 * Cesar Velez
1027 * Dan Wells
1028
1029
1030 We also thank the following organizations whose employees contributed
1031 patches:
1032
1033 * Bibliomation
1034 * British Columbia Libraries Cooperative
1035 * Calvin College
1036 * CW MARS
1037 * Equinox Open Library Initiative
1038 * Georgia Public Library Service
1039 * Greater Clarks Hill Regional Library System
1040 * Jordanian Library and Information Association
1041 * King County Library System
1042 * Knihovna Jabok
1043 * Linn-Benton Community College
1044 * MassLNC
1045 * Sigio
1046 * Traverse Area District Library
1047
1048 We regret any omissions.  If a contributor has been inadvertently
1049 missed, please open a bug at http://bugs.launchpad.net/evergreen/
1050 with a correction.