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