Docs: correcting typos in release notes
[Evergreen.git] / docs / RELEASE_NOTES_3_5.adoc
1 Evergreen 3.5 Release Notes
2 ===========================
3 :toc:
4 :numbered:
5
6 Evergreen 3.5.1
7 ---------------
8
9 This release contains bug fixes improving on Evergreen 3.5.0.
10
11 Bug Fixes
12 ~~~~~~~~~
13
14
15 Administration
16 ^^^^^^^^^^^^^^
17
18 * Fixes a bug that caused the Emergency Closing handler to skip circulations with fines (https://bugs.launchpad.net/evergreen/+bug/1870605[Bug 1870605])
19 * The column headers in the Copy Status configuration screen have improved labels (https://bugs.launchpad.net/evergreen/+bug/1848573[Bug 1848573])
20 * Fixes an incorrect link to the Match Set configuration screen (https://bugs.launchpad.net/evergreen/+bug/1840294[Bug 1840294])
21 * Updates the descriptions of the _circ.staff_client.receipt_ library settings (https://bugs.launchpad.net/evergreen/+bug/1705302[Bug 1705302])
22 * The labels of the All Circulations reporter sources have been clarified (https://bugs.launchpad.net/evergreen/+bug/1852443[Bug 1852443])
23 * The emergency closing form provides additional guidance about end dates (https://bugs.launchpad.net/evergreen/+bug/1867524[Bug 1867524])
24 * The badge_score_generator.pl script is now installed as part of an Evergreen install (https://bugs.launchpad.net/evergreen/+bug/1847784[Bug 1847784])
25 * User preferred names and name keywords are now purged from the database when the user is purged
26 (https://bugs.launchpad.net/evergreen/+bug/1802166[Bug 1802166])
27 * Fixes a bug with the "months ago" functionality in the reporter (https://bugs.launchpad.net/evergreen/+bug/1885759[Bug 1885759])
28 * Angular call number prefix/suffix admin pages no longer let you edit sort key (https://bugs.launchpad.net/evergreen/+bug/1889251[Bug 1889251])
29
30 Cataloging
31 ^^^^^^^^^^
32
33 * Various improvements to the MARC Editor (Bugs https://bugs.launchpad.net/evergreen/+bug/1735568[Bug 1735568] and
34 https://bugs.launchpad.net/evergreen/+bug/1830443[Bug 1830443])
35 * Fixes an issue with undeleting bibliographic records (https://bugs.launchpad.net/evergreen/+bug/1845241[Bug 1845241])
36 * Item status now alerts the user about invalid barcodes uploaded from a file (https://bugs.launchpad.net/evergreen/+bug/1847784[Bug 1847784])
37 * You can now open multiple items in Item Status from an item bucket (https://bugs.launchpad.net/evergreen/+bug/1735828[Bug 1735828])
38 * The experimental catalog now allows searching by format (https://bugs.launchpad.net/evergreen/+bug/1886118[Bug 1886118])
39 * The experimental catalog now displays the bib call number according to the search library's org unit setting
40 (https://bugs.launchpad.net/evergreen/+bug/1874897[Bug 1874897])
41 * Fixes an issue with adding and editing call numbers in the experimental catalog (https://bugs.launchpad.net/evergreen/+bug/1878079[Bug 1878079])
42 * Newly added items and call numbers have distinct styling (https://bugs.launchpad.net/evergreen/+bug/1731370[Bug 1731370])
43 * Fixes an issue with hold activation dates (https://bugs.launchpad.net/evergreen/+bug/1783793[Bug 1783793])
44 * Adds item creator and editor to holdings editor grids (https://bugs.launchpad.net/evergreen/+bug/1811466[Bug 1811466])
45 * The experimental catalog authority MARC editor can now delete and undelete authority records
46 (https://bugs.launchpad.net/evergreen/+bug/1866546[Bug 1866546])
47
48 Circulation
49 ^^^^^^^^^^^
50
51 * Overdue items are now highlighted in red in the Items Out screen (https://bugs.launchpad.net/evergreen/+bug/1775286[Bug 1775286])
52 * Fixes an issue that caused patron stat cat information to persist between patrons in the Patron Edit screen
53 (https://bugs.launchpad.net/evergreen/+bug/1844365[Bug 1844365])
54 * The Pending User Buckets now allow more than 100 users (https://bugs.launchpad.net/evergreen/+bug/1754387[Bug 1754387])
55 * Fixes an issue that caused long patron names to obscure important parts of circulation screens
56 (https://bugs.launchpad.net/evergreen/+bug/1805860[Bug 1805860])
57 * Prevents an incorrect "Input is out of range" validation error in the date pickers of the check out and renewal
58 screens (https://bugs.launchpad.net/evergreen/+bug/1864056[Bug 1864056])
59 * Long overdue and lost and paid items now count toward patron limits (https://bugs.launchpad.net/evergreen/+bug/1747542[Bug 1747542])
60 * The holds shelf list now includes columns for "User Alias" and "User Alias or Display Name" (https://bugs.launchpad.net/evergreen/+bug/1712854[Bug 1712854])
61 * In the messages tab of a patron's account, you can now change the date range of displayed archived penalties
62 (https://bugs.launchpad.net/evergreen/+bug/1775940[Bug 1775940])
63 * Fixes an issue with hanging transits (https://bugs.launchpad.net/evergreen/+bug/1819542[Bug 1819542])
64 * Fixes some hold targeting logic (https://bugs.launchpad.net/evergreen/+bug/1886852[Bug 1886852])
65 * Fixes an issue with default billing type prices (https://bugs.launchpad.net/evergreen/+bug/1776757[Bug 1776757])
66 * The experimental catalog's hold grid now includes both date and time for hold request time (https://bugs.launchpad.net/evergreen/+bug/1889296[Bug 1889296])
67 * Sounds now play when an item alert pops up in the web client (https://bugs.launchpad.net/evergreen/+bug/1851541[Bug 1851541])
68 * Autorenewal notifications now display a more intelligible message (https://bugs.launchpad.net/evergreen/+bug/1842431[Bug 1842431])
69
70 Client
71 ^^^^^^
72
73 * New installations of Evergreen will prevent problematic caching of the Angular client (https://bugs.launchpad.net/evergreen/+bug/1775276[Bug 1775276])
74 * All screens in the angular client now have a banner to indicate which screen it is (https://bugs.launchpad.net/evergreen/+bug/1474874[Bug 1474874])
75 * Fixes a bug that caused inconsistent hotkey behavior (https://bugs.launchpad.net/evergreen/+bug/1886713[Bug 1886713])
76 * The Angular client has been upgraded to be compatible with moment-timezone 0.5.29 (https://bugs.launchpad.net/evergreen/+bug/1884787[Bug 1884787])
77 * Fixes an issue with comboboxes (typeaheads) in the Angular client (https://bugs.launchpad.net/evergreen/+bug/1882591[Bug 1882591])
78 * Publicly visible buckets are now known as Shareable buckets (https://bugs.launchpad.net/evergreen/+bug/1717996[Bug 1717996])
79
80 Feeds
81 ^^^^^
82
83 * Fixes an issue with HTML item feed cover images (https://bugs.launchpad.net/evergreen/+bug/1674364[Bug 1674364])
84
85 Public catalog
86 ^^^^^^^^^^^^^^
87
88 * The list of holdings in the OPAC now considers call number suffix in its sorting (https://bugs.launchpad.net/evergreen/+bug/1795469[Bug 1795469])
89 * The Exclude Electronic Resources checkbox now works properly when locale picker is enabled (https://bugs.launchpad.net/evergreen/+bug/1847343[Bug 1847343])
90
91 QA
92 ^^
93
94 * Adds automated tests for the barcode completion feature (https://bugs.launchpad.net/evergreen/+bug/1847680[Bug 1847680])
95
96 Search
97 ^^^^^^
98
99 * Fixes an issue with SRU search (https://bugs.launchpad.net/evergreen/+bug/1833300[Bug 1833300])
100 * Fixes an issue with searching the catalog from the staff client (https://bugs.launchpad.net/evergreen/+bug/1858701[Bug 1858701])
101 * The experimental catalog basket clears when a staff member logs out (https://bugs.launchpad.net/evergreen/+bug/1867834[Bug 1867834])
102 * Fixes an accessibility issue with the catalog search on the splash page (https://bugs.launchpad.net/evergreen/+bug/1839369[Bug 1839369])
103
104 Upgrade notes
105 ~~~~~~~~~~~~~
106
107 Evergreen administrators should update existing apache configuration files
108 so that the Angular index.html file is never cached by the client.  This
109 can be done by changing the Angular setup section of the apache configuration
110 that starts with:
111
112 [source,xml]
113 ----
114 <Directory "/openils/var/web/eg2/en-US">
115 ----
116
117 or similar in the apache configuration. Add the following after the
118 FallbackResource directive:
119
120 [source,xml]
121 ----
122     <Files "index.html">
123       <IfModule mod_headers.c>
124         Header set Cache-Control "no-cache, no-store, must-revalidate"
125         Header set Pragma "no-cache"
126         Header set Expires 0
127       </IfModule>
128     </Files>
129 ----
130
131 Finally, ensure that the mod_headers apache module is enabled by running the
132 following commands on all apache servers as the root user:
133
134 [source,bash]
135 ----
136 a2enmod headers
137 sudo /etc/init.d/apache2 restart
138 ----
139
140 Purge User Preferred Names
141 ^^^^^^^^^^^^^^^^^^^^^^^^^^
142 The new, user preferred name fields are now set to NULL in the
143 database when a user account is purged via the staff client or using
144 the actor.usr_delete function in the database.
145
146 To clear the preferred name fields from records that have already been
147 purged, run the following SQL update:
148
149 [source,sql]
150 ----
151 UPDATE actor.usr
152 SET pref_prefix = NULL,
153     pref_first_given_name = NULL,
154     pref_second_given_name = NULL,
155     pref_family_name = NULL,
156     pref_suffix = NULL,
157     name_keywords = NULL
158 WHERE usrname ~ ('^' || id || '-PURGED')
159 AND NOT active
160 AND deleted
161 AND (
162   pref_prefix IS NOT NULL OR
163   pref_first_given_name IS NOT NULL OR
164   pref_second_given_name IS NOT NULL OR
165   pref_family_name IS NOT NULL OR
166   pref_suffix IS NOT NULL OR
167   name_keywords IS NOT NULL
168 );
169 ----
170
171 Acknowledgements
172 ~~~~~~~~~~~~~~~~
173 We would like to thank the following individuals who contributed code,
174 testing and documentation patches to the 3.5.1 point release of Evergreen:
175
176 * John Amundson
177 * A. Bellenir
178 * Jason Boyer
179 * Steven Callender
180 * Galen Charlton
181 * Jeff Davis
182 * Bill Erickson
183 * Jason Etheridge
184 * Ruth Frasur
185 * Blake Graham Henderson
186 * Rogan Hamby
187 * Elaine Hardy
188 * Kyle Huckins
189 * Shula Link
190 * Tiffany Little
191 * Christine Morgan
192 * Michele Morgan
193 * Terran McCanna
194 * Gina Monti
195 * Mike Risher
196 * Mike Rylander
197 * Jane Sandberg
198 * Dan Scott
199 * Jason Stephenson
200 * Josh Stompro
201 * John Yorio
202
203 Evergreen 3.5.0
204 ---------------
205
206 Upgrade notes
207 -------------
208
209 New Action Trigger hook for patron registration
210 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
211 Use of the new Action Trigger stgu.created hook requires changes to 
212 your action_trigger_filters.json file.  See below for more details.
213
214 New prerequisite - Email::MIME Perl module
215 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
216 The Email::MIME Perl module is now required, so be sure to run the 
217 prerequisite installation procedure for your Linux distribution before 
218 upgrading Evergreen.
219
220
221
222 New Features for 3.5.0
223 ----------------------
224
225 Administration
226 ~~~~~~~~~~~~~~
227
228 Do not cache the Angular application root
229 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
230
231 Evergreen administrators should update existing apache configuration files
232 so that the Angular index.html file is never cached by the client.  This
233 can be done by changing the Angular setup section of the apache configuration
234 that starts with:
235
236 [source, conf]
237 ----
238 <Directory "/openils/var/web/eg2/en-US">
239 ----
240
241 or similar in the apache configuration. Add the following after the
242 FallbackResource directive:
243
244 [source, conf]
245 ----
246     <Files "index.html">
247       <IfModule mod_headers.c>
248         Header set Cache-Control "no-cache, no-store, must-revalidate"
249         Header set Pragma "no-cache"
250         Header set Expires 0
251       </IfModule>
252     </Files>
253 ----
254
255 Finally, ensure that the mod_headers apache module is enabled by running the
256 following commands on all apache servers as the root user:
257
258 [source, sh]
259 ----
260 a2enmod headers
261 /etc/init.d/apache2 restart
262 ----
263
264
265 Repair of Self-closing HTML Tags
266 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
267 The most recent release of JQuery requires valid closing tags for X/HTML elements.
268 These were repaired within affected OPAC/Staff Client TT2 templates, but care should
269 be taken in Action/Trigger templates to make sure closing tags are present where 
270 appropriate.  The stock template for PO HTML was affected. 
271 See https://bugs.launchpad.net/evergreen/+bug/1873286[LP#1873286] for details. 
272
273 Aged Money Changes
274 ^^^^^^^^^^^^^^^^^^
275
276 Two new global flag settings have been added to control if/when billings and
277 payments are aged.  Both settings are disabled by default.
278
279 * 'history.money.age_with_circs' 
280  ** Age billings and payments linked to circulations when the cirulcation 
281     is aged.
282 * 'history.money.retention_age'
283   ** Age billings and payments based on the age of the finish date for
284      the linked transaction.
285   ** To age money based on this setting, there is a new srfsh script
286      at (by default) /openils/bin/age_money.srfsh.
287
288 Aged Payment Additional Fields
289 ++++++++++++++++++++++++++++++
290
291 The aged payment table now has accepting_usr, cash_drawer, and billing
292 columns to improve reporting of aged money.
293
294 Manual Data Migration of Aged Money
295 +++++++++++++++++++++++++++++++++++
296
297 For users that wish to age money along with circulations (global flag 
298 'history.money.age_with_circs' is set to true), it's necessary to manaully
299 age money for circulations which have already been aged.  This can be
300 done directly in the database with SQL:
301
302 NOTE: This SQL can take a very long time to run on large databases, so
303 it may be necessary to process aged circulations in batches instead
304 of all at once.
305
306 [source,sql]
307 -------------------------------------------------------------------------
308 SELECT money.age_billings_and_payments_for_xact(circ.id)
309 FROM action.aged_circulation circ
310 -- limit to aged circs with billings
311 JOIN money.billing mb ON mb.xact = circ.id;
312 -------------------------------------------------------------------------
313
314
315 PostgreSQL 10 Support
316 ^^^^^^^^^^^^^^^^^^^^^
317 PostgreSQL 10 is now available for installation with Evergreen.  Please
318 see the installation documentation for details.
319
320 New Action Trigger hook for patron registration
321 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
322 Evergreen now includes a new type of Action Trigger hook: stgu.created. 
323 This hook will trigger upon the patron registration submission form. In 
324 addition to the new hook, an example Action Trigger definition is 
325 provided (disabled by default) entitled "Patron Registered for a card 
326 stgu.created". With clever timing and delay settings, a library can 
327 receive a single notification containing all of the pending patron 
328 registrations for a given time interval. No special server-side 
329 considerations required unless you introduce a new granularity. There 
330 is, however, a new clause introduced to the 
331 "action_trigger_filters.json.example" file.
332
333 If you wish to use this new hook, be sure to include this clause in your 
334 local "action_trigger_filters.json" file:
335
336 ----
337 "stgu.created" : {
338         "context_org": "home_ou",
339         "filter": {
340             "complete": "f"
341         }
342     }
343 ----
344
345 SendEmail Reactor Updated to use Email::MIME
346 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
347 The SendEmail reactor for Action/Trigger has been updated to use the
348 Email::MIME Perl module for proper encoding of the email message
349 header fields.  You should notice no functional difference in the
350 sending of emails.
351
352
353
354 Cataloging
355 ~~~~~~~~~~
356
357 Enriched/Full MARC Editor Ported to Angular
358 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
359 The full MARC editor is now implemented in Angular.  This change impacts
360 both the experimental Angular catalog and the MARC edit option within
361 MARC Batch Import/Export (Vandelay) Queue manager.
362
363 Patron View tab in Experimental Catalog
364 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
365 The record view screen in the Experimental Catalog now has a 
366 _Patron View_ tab.  This tab displays a view of the record in
367 the OPAC, as a patron would see it.
368
369 The _Patron View_ tab replaces the previous _View in Catalog_
370 button.
371
372
373
374 Circulation
375 ~~~~~~~~~~~
376
377 New Hold Sort Order: Traditional with Holds-chase-home-lib-patrons
378 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
379
380 This is a new entry under Administration -> Server Administration -> 
381 Best-Hold Selection Sort Order in the staff client.  It prioritizes holds 
382 such that a given item, based on its owning library, will prefer patrons with 
383 a matching home library, no matter the pickup library.
384
385
386 Angular Staff Catalog Holds Patron Search Support
387 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
388 The Angular staff catalog now supports patron searching directly from 
389 the holds placement interace.
390
391 Hide Print List Button On Self Check Home Page
392 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
393 The _Print List_ button is no longer displayed on the main page
394 of the self check interface. This addresses an issue where
395 users were observed to either hit the _Print List_ button and
396 walk away or hit it *and* the _Logout_ button, causing duplicate
397 receipts to be printed.  The _Print List_ button continues to
398 be displayed on the _Items Out_, _Holds_, and _Fines Details_ pages
399 of the self check interface.
400
401 Update Hold Notification Information
402 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
403 The public catalog and staff client now have the ability to update 
404 existing holds if a patron or a staff member changes certain 
405 notification preferences or contact information.  Evergreen will detect 
406 these changes and prompt the staff user or patron user and ask if they 
407 want to update existing holds with the new contact information and/or 
408 notification preferences.
409
410
411
412 Client
413 ~~~~~~
414
415 Angular Staff Catalog Preferences Page
416 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
417 Adds a new "Catalog Preferences" interface, accessible directly from the
418 catalog.  The UI houses the search preferences (default search lib,
419 preferred library, default search tab) and a new staff-specific
420 hits-per-page setting.  Other preferences may be added later.
421
422 Adds support for selecting a default search tab using the existing
423 'eg.search.adv_pane' setting.
424
425 Hatch File Writer Print Option
426 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
427 Adds a new stock print option in the Hatch printer configuration interface
428 called Hatch File Writer (translatable).  When selected, any print content
429 that is delivered to this printer is translated into text where necessary
430 and written to a file in the Hatch profile directory.
431
432 The name of the file written is based on the print context: 
433 "receipt.<context>.txt".  For example, 'receipt.label.txt'.
434
435 Angular Staff Catalog gets Search Highlighting
436 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
437 Search text highlighting is now supported on the search results and
438 record details pages in the Angular staff catalog for searches that
439 support highlighting.
440
441
442
443 OPAC
444 ~~~~
445
446 Custom CSS in OPAC 
447 ^^^^^^^^^^^^^^^^^^
448 There is now a library setting called opac.patron.custom_css. This can be
449 populated with CSS that will load in the OPAC after the stylesheets and
450 allow for custom CSS without editing server side templates. The permission
451 UPDATE_ORG_UNIT_SETTING.opac.patron.custom_css manages access to it.
452
453
454
455 SIP
456 ~~~
457
458 Add patron_status_always_permit_loans Option to SIP Server
459 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
460 Evergreen now has a new `oils_sip.xml` login attribute called
461 `patron_status_always_permit_loans` that specifies whether
462 the charge privileges denied, renewal privilges denied, and
463 card reported lost flags in the patron status block should be
464 coerced to permissive values regardless of the actual state
465 of the patron record. Turning this on works around an issue
466 where a 2019-12 change by the Hoopla SIP2 client takes those flag
467 fields into account, but some libraries may not wish those
468 to block a patron's access to online resources that use
469 SIP2 to authenticate. This setting can also be set as
470 an `implementation_config` option; note that if it is set to
471 'true' or 'false' as a login attribute, the login attribute will
472 override whatever is set in the `implementation_config`.
473
474
475
476
477 Acknowledgments
478 ---------------
479 The Evergreen project would like to acknowledge the following
480 organizations that commissioned developments in this release of
481 Evergreen:
482
483 * King County Library System 
484 * MassLNC
485 * PaILS
486
487 We would also like to thank the following individuals who contributed
488 code, translations, documentations patches and tests to this release of
489 Evergreen:
490
491 * Jason Boyer
492 * Galen Charlton
493 * Garry Collum
494 * Dawn Dale
495 * Jeff Davis
496 * Bill Erickson
497 * Jason Etheridge
498 * Lynn Floyd
499 * Ruth Frasur
500 * Blake Graham-Henderson
501 * Rogan Hamby
502 * Terran McCanna
503 * Mike Risher
504 * Mike Rylander
505 * Jane Sandberg
506 * Chris Sharp
507 * Josh Stompro
508 * Cesar Velez
509
510
511 We also thank the following organizations whose employees contributed
512 patches:
513
514 * BC Libraries Cooperative
515 * Catalyte
516 * Equinox Open Library Initiative
517 * Georgia Public Library Service
518 * Indiana State Library
519 * King County Library System 
520 * Lake Agassiz Regional Library
521 * Linn-Benton Community College
522 * MOBIUS
523
524 We regret any omissions.  If a contributor has been inadvertently
525 missed, please open a bug at http://bugs.launchpad.net/evergreen/
526 with a correction.
527