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