]> git.evergreen-ils.org Git - Evergreen.git/blob - docs/RELEASE_NOTES_3_10.adoc
Docs: 3.10.1 release notes
[Evergreen.git] / docs / RELEASE_NOTES_3_10.adoc
1 = Evergreen 3.10.0 Release Notes =
2 :toc:
3 :numbered:
4 :toclevels: 4
5
6 == Evergreen 3.10.1 ==
7
8 This release contains bug fixes improving on Evergreen 3.10.0.
9
10 === Upgrade notes ===
11
12 * https://bugs.launchpad.net/evergreen/+bug/2003707[Bug 2003707] - During upgrade, if you're running with `opensrf_core.xml` located anywhere other than `/openils/conf` in a single-tenant manner, make sure that `SYSCONFDIR` as set in `autogen.sh` matches what's set in the installed `Cronscript.pm`
13 * https://bugs.launchpad.net/evergreen/+bug/1998355[Bug 1998355) requires a schema update
14 * https://bugs.launchpad.net/evergreen/+bug/1441750[Bug 1441750] requires a schema update
15 * https://bugs.launchpad.net/evergreen/+bug/1995623[Bug 1995623] requires a schema update
16
17 === Bug Fixes ===
18
19 ==== Acquisitions ====
20
21 * Fixes funds dropdown in new acqusitions interfaces (https://bugs.launchpad.net/evergreen/+bug/1999544[Bug 1999544])
22 * Opens provider link in new tab (https://bugs.launchpad.net/evergreen/+bug/2004187[Bug 2004187])
23 * Adds line item count to line item search results (https://bugs.launchpad.net/evergreen/+bug/2003947[Bug 2003947])
24 * Fixes error with saving circ mods using batch line item update (https://bugs.launchpad.net/evergreen/+bug/2002920[Bug 2002920])
25 * Fixes issue where closed invoices were showing in the link to invoice modal (https://bugs.launchpad.net/evergreen/+bug/1999268[Bug 1999268])
26 * Moves line item loading progress bar to the summary area (https://bugs.launchpad.net/evergreen/+bug/1999410[Bug 1999410])
27
28 ==== Administration ====
29
30 * `autogen.sh` can now accept a `-c` switch to specify the location of `opensrf_core.xml`. This is useful for certain multi-tenant setups of Evergreen. (https://bugs.launchpad.net/evergreen/+bug/2003707[Bug 2003707])
31 * Avoids permission lookup when there's no authtoken (https://bugs.launchpad.net/evergreen/+bug/1990306[Bug 1990306])
32 * Fixes an issue with `marc_stream_importer.pl` temp file creation (https://bugs.launchpad.net/evergreen/+bug/1943634[Bug 1943634])
33 * Adds patron database ID to Stripe payment record (https://bugs.launchpad.net/evergreen/+bug/1969994[Bug 1969994])
34 * Fix to prevent multiple server processes from being created by `oils_ct.sh` (https://bugs.launchpad.net/evergreen/+bug/1908455[Bug 1908455])
35 * Fixes an issue where last-copy delete was not creating hold notices (https://bugs.launchpad.net/evergreen/+bug/2007591[Bug 2007591])
36 * Fix to reduce bloating of `search.symspell_dictionary` (https://bugs.launchpad.net/evergreen/+bug/1998355[Bug 1998355)]
37 * Fix to allow legacy `mod_perl` handlers to check `eg.auth.token` (https://bugs.launchpad.net/evergreen/+bug/1996908[Bug 1996908])
38 * Fix to change legacy `ARRAY_TO_STRING(ARRAY_AGG())\ functions to `STRING_AGG()` functions (https://bugs.launchpad.net/evergreen/+bug/1441750[Bug 1441750])
39 * Fixes typo in `AddedContent.pm` (https://bugs.launchpad.net/evergreen/+bug/2012105[Bug 2012105])
40 * Fixes permissions check in Library Settings Editor (https://bugs.launchpad.net/evergreen/+bug/2006749[Bug 2006749])
41 * Fixes regression introduced in patch for https://bugs.launchpad.net/evergreen/+bug/2006749[Bug 2006749] (https://bugs.launchpad.net/evergreen/+bug/2007880[Bug 2007880])
42 * Search performance improvements for PostgreSQL 12+ (https://bugs.launchpad.net/evergreen/+bug/1999274[Bug 1999274])
43
44 ==== Catalog ==== 
45
46 * Fixes an error emailing records from the staff catalog & OPAC (https://bugs.launchpad.net/evergreen/+bug/1955079[Bug 1955079])
47 * Removes deleted call numbers from shelf browse (https://bugs.launchpad.net/evergreen/+bug/2003742[Bug 2003742])
48 * Adds accessible search form labels to staff catalog search form (https://bugs.launchpad.net/evergreen/+bug/1998855[Bug 1998855])
49 * Adjusts styling of disable search menu items in staff catalog search (https://bugs.launchpad.net/evergreen/+bug/1998969[Bug 1998969])
50 * Adds keyboard navigation support to menus within staff catalog bib records (https://bugs.launchpad.net/evergreen/+bug/1814978[Bug 1814978])
51
52 ==== Cataloging ====
53
54 * Fixes issue where holdings template importer wouldn't import the full file (https://bugs.launchpad.net/evergreen/+bug/1980544[Bug 1980544])
55 * Fixes an issue where statcats in holding templates wouldn't save correctly (https://bugs.launchpad.net/evergreen/+bug/1999696[Bug 1999696])
56 * Fixes inconsistent button placement in delete holdings modal (https://bugs.launchpad.net/evergreen/+bug/1945355[Bug 1945355])
57 * Adds styling to show that a holding template changed a statcat value (https://bugs.launchpad.net/evergreen/+bug/2003755[Bug 2003755])
58 * Fixes erroneous error messge in cover image upload modal (https://bugs.launchpad.net/evergreen/+bug/1988321[Bug 1988321])
59 * Fixes an issue where last-copy delete was not creating hold notices (https://bugs.launchpad.net/evergreen/+bug/2007591[Bug 2007591])
60 * Restores the ability to create empty call numbers in the holdings editor (https://bugs.launchpad.net/evergreen/+bug/1998494[Bug 1998494])
61 * Adds input labels in the manage authorities interface fields (https://bugs.launchpad.net/evergreen/+bug/1989284[Bug 1989284)]
62 * Fixes MARC editor heading linker for fields 600, 651, and 655 (https://bugs.launchpad.net/evergreen/+bug/2007351[Bug 2007351])
63 * Protects "magic" statuses from overwrite when using holdings editor template (https://bugs.launchpad.net/evergreen/+bug/1999401[Bug 1999401])
64 * Prevents deletion of shelving locations with items attached + adds undelete action on shelving location editor  (https://bugs.launchpad.net/evergreen/+bug/2002435[Bug 2002435])
65 * Fixes item tag scoping in holdings editor (https://bugs.launchpad.net/evergreen/+bug/1965447[Bug 1965447])
66
67 ==== Circulation ====
68
69 * Clears `hopeless_date` when hold is captured (https://bugs.launchpad.net/evergreen/+bug/1915440[Bug 1915440])
70 * Fixes an issue where large hold shelf lists could fail to load  (https://bugs.launchpad.net/evergreen/+bug/1971745[Bug 1971745])
71 * Fixes slowness in the holds shelf query (https://bugs.launchpad.net/evergreen/+bug/1971745[Bug 1971745])
72 * Fixes an issue where the patron registration form sent unnecessarily large amount of data upon save (https://bugs.launchpad.net/evergreen/+bug/1976126[Bug 1976126])
73 * Fixes display issue with depth selector in patron note modal (https://bugs.launchpad.net/evergreen/+bug/1980874[Bug 1980874])
74 * Adds labels to metarecord holds checkboxes in staff client + alt-text for decorative image (https://bugs.launchpad.net/evergreen/+bug/1999304[Bug 1999304])
75 * Removes extra "pre-fetch all holds" checkbox from view holds page (https://bugs.launchpad.net/evergreen/+bug/2002337[Bug 2002337])
76
77 ==== Client ====
78
79 * Adds localization to Record Summary heading (https://bugs.launchpad.net/evergreen/+bug/1999446[Bug 1999446])
80 * Fixes color contrast on modal headers (https://bugs.launchpad.net/evergreen/+bug/1999954[Bug 1999954])
81 * Adds a user-visible error if a user attempts to login to the staff client without STAFF_LOGIN permissions (https://bugs.launchpad.net/evergreen/+bug/1969641[Bug 1969641])
82 * Fixes grid refresh issue on old Dojo grids (https://bugs.launchpad.net/evergreen/+bug/1625192[Bug 1625192])
83 * Fixes shelving location selector that was broken in several interfaces (https://bugs.launchpad.net/evergreen/+bug/1995418[Bug 1995418]
84 * Angular fixes including removing alert_message from print template, adding min/max to date picker, and preventing selecting a past date at checkout (https://bugs.launchpad.net/evergreen/+bug/1995623[Bug 1995623])
85 * Adds offline message to Angular login page (https://bugs.launchpad.net/evergreen/+bug/1958258[Bug 1958258])
86 * Adjusts staff interface badges to comply with color contrast guidelines (https://bugs.launchpad.net/evergreen/+bug/1999282[Bug 1999282])
87 * Fixes Angular login redirect issue (https://bugs.launchpad.net/evergreen/+bug/2006513[Bug 2006513])
88 * Increases color contrast on staff client links and buttons (https://bugs.launchpad.net/evergreen/+bug/1991562[Bug 1991562])
89
90
91 ==== Documentation ====
92
93 * Updates to Standing Penalties and Group Penalty Thresholds documentation
94 * Updates `create_release_notes.sh` to use asciidoctor formatting (https://bugs.launchpad.net/evergreen/+bug/1995653[Bug 1995653)]
95 * Adds Evergreen Web Services documentation
96 * Adds Mark Item as Missing Pieces documentation (https://bugs.launchpad.net/evergreen/+bug/1706664[Bug 1706664])
97 * Updates to Server Installation documentation for current ng-build parameters (https://bugs.launchpad.net/evergreen/+bug/1863921[Bug 1863921])
98 * Updates to Web Client Best Practices documentation
99 * Updates to Describing Your Organization documentation
100 * Updates to Load MARC Order Records documentation
101 * Updates to Purchase Order, Selection Lists, and Line Items documentation
102
103 ==== OPAC ====
104
105 * Fixes Google Books preview (https://bugs.launchpad.net/evergreen/+bug/1955403[Bug 1955403])
106 * Fixes patron address alignment (https://bugs.launchpad.net/evergreen/+bug/1944602[Bug 1944602])
107 * Fixes button arrangement in MyAccount holds interface (https://bugs.launchpad.net/evergreen/+bug/1980275[Bug 1980275])
108 * Fixes alignment in publication year search filter fields (https://bugs.launchpad.net/evergreen/+bug/1974581[Bug 1974581])
109 * Fixes an issue with holds history pagination (https://bugs.launchpad.net/evergreen/+bug/1422927[Bug 1422927])
110 * Adds localization to sr-only, aria-label, and title fields (https://bugs.launchpad.net/evergreen/+bug/1992490[Bug 1992490])
111 * Fixes an error emailing records from the staff catalog & OPAC (https://bugs.launchpad.net/evergreen/+bug/1955079[Bug 1955079])
112 * Fixes display problem in 856 subfields $n, $z, and $3 (https://bugs.launchpad.net/evergreen/+bug/1966995[Bug 1966995])
113 * Fixes facet display issue in grouped record search results (https://bugs.launchpad.net/evergreen/+bug/1980304[Bug 1980304])
114 * Fixes small-screen display issue with navigation links in copy table (https://bugs.launchpad.net/evergreen/+bug/1983729[Bug 1983729])
115 * Fixes small-screen display issue with table displays (https://bugs.launchpad.net/evergreen/+bug/1984269[Bug 1984269])
116 * Corrects duplicate DOB display in patron self-registration form (https://bugs.launchpad.net/evergreen/+bug/1965065[Bug 1965065])
117 * Fixes display issue with applied filters (https://bugs.launchpad.net/evergreen/+bug/1980302[Bug 1980302])
118 * Fixes syntax error introduced in bug https://bugs.launchpad.net/evergreen/+bug/1992490[Bug 1992490]  (https://bugs.launchpad.net/evergreen/+bug/2008925[Bug 2008925])
119 * Fixes styling of patron messages (https://bugs.launchpad.net/evergreen/+bug/1980142[Bug 1980142])
120
121 ==== Miscellaneous ====
122
123 * Fixes field order in New Survey modal (https://bugs.launchpad.net/evergreen/+bug/1991590[Bug 1991590])
124 * Changes Angular `styleext` setting to `style` (https://bugs.launchpad.net/evergreen/+bug/1995211[Bug 1995211])
125
126 ==== Reports ====
127
128 * Fixes an error with display of certain shared reports folders (https://bugs.launchpad.net/evergreen/+bug/1999944[Bug 1999944])
129
130
131 === Acknowledgements ===
132
133 We would like to thank the following individuals who contributed code, testing, and documentation to the 3.10.1 point release of Evergreen:
134
135 * John Amundson
136 * Scott Angel
137 * Jason Boyer
138 * Dan Briem
139 * Eva Cerninakova
140 * Galen Charlton
141 * Garry Collum
142 * Elizabeth Davis
143 * Jeff Davis
144 * Bill Erickson
145 * Blake Graham-Henderson
146 * Elaine Hardy
147 * Stephanie Leary
148 * Clayton Liddell
149 * Shula Link
150 * Tiffany Little
151 * Mary Llewellyn
152 * Debbie Luchenbill
153 * Llewellyn Marshall
154 * Terran  McCanna
155 * Gina Monti
156 * Christine Morgan
157 * Michele Morgan
158 * Susan Morrison
159 * Andrea Buntz Neiman
160 * Jennifer Pringle
161 * Mike Rylander
162 * Jane Sandberg
163 * Chris Sharp
164 * Jason Stephenson
165 * Josh Stompro
166 * Jennifer Weston
167 * Beth Willis
168 * Carol Witt
169 * Adam Woolford
170 * Jessica Woolford
171
172 == Evergreen 3.10.0 ==
173
174 === Upgrade notes ===
175
176 The database update includes a partial reingest.
177
178 === New Features ===
179
180
181 ====  Acquisitions ====
182
183 ===== Further Angularization of Acquisitions Interfaces =====
184
185 The following acquisitions interfaces were rewritten in Angular:
186
187  * Purchase Orders and Selection Lists
188  * Line Item management, including
189    ** Receiving and claiming
190    ** Creation of line item items singly and in batch
191  * Load MARC Order Records
192
193 Improvements over the previous interfaces include:
194
195  * The line item table can now be sorted and filtered
196  * New settings to control the owning library that is
197    applied to auto-created line item items.
198
199 ===== Support for Advanced Shipment Notices in Acquisitions =====
200
201 This version of Evergreen supports DESADV EDI messages.  These messages are
202 created by vendors when they pack and ship items, and contain:
203
204 * A list of dispatched POs, lineitems, and the number of items per lineitem.
205 * A package-level barcode (e.g. https://en.wikipedia.org/wiki/Serial_shipping_container_code) that represents the package as a whole.
206
207 Staff can scan that package-level barcode to retrieve information on every
208 item in the package, including an option to auto-receive every item in the box.
209
210 ===== New column in General Acquisitions Search =====
211
212 The general acquisitions search grid now has a column
213 for purchase order ID.
214
215 ===== New Permission for Fund Rollovers =====
216
217 A new permission, `ADMIN_FUND_ROLLOVER`, is added to control access
218 to the fund rollover function. This allows having some users be able
219 to manage funds without being to invoke the rollover action, as
220 rollovers can be hard to undo.
221
222 During upgrade, any permission group with the `ADMIN_FUND` permission
223 will get the new `ADMIN_FUND_ROLLOVER` permission to avoid surprises.
224 Consequently, an Evergreen administrator who wishes to lock down
225 access to the feature should follow up by removing the new permission
226 where necessary.
227
228 In new databases, `ADMIN_FUND_ROLLOVER` is granted only to the stock
229 Acquisitions Administrators permission group.
230
231 ===== Inactive funds can no longer make allocations or transfers =====
232
233 In the Funds Administration page, if a fund is not marked as
234 active, the "Create allocation" and "Transfer money" options
235 will no longer be available.
236
237 In the occassional cases where these operations are necessary,
238 you can edit the fund to mark it active, perform your financial
239 operations, then mark it inactive again.
240
241 ==== Administration ====
242
243 ===== Geosort feature can now use Bing Maps API =====
244
245 The API can be configured at *Server Administration*
246 -> *Geographic Location Service*.
247
248 ===== Refresh Time for Carousel =====
249
250 This adds the time (rather than just the date) to the 
251 Last Refresh Time column of the Local Administration > 
252 Carousels grid. 
253
254 ===== Hours of Operation Note field =====
255
256 Adds a note field to each day's hours to record split hours or service related notes. The notes appear enclosed in parentheses next to each day's hours when viewing a library's hours in the Bootstrap OPAC and TPAC
257
258 ===== HTML email =====
259
260 Administrators can now configure action triggers to send HTML-formatted
261 email.  Evergreen continues to send emails in plain-text by default, but
262 you can now configure an email template to send as HTML by adding the appropriate
263 header to the email.  For example: Content-Type: text/html;charset=utf-8
264
265 ===== Match Quality Ratio Option Added to marc_stream_importer.pl =====
266
267 Command line options have been added to the marc_stream_importer.pl
268 support script to specify the match quality ratio used when matching
269 bibliographic or authority records for overlay:
270
271 * --bib-match-quality-ratio
272 * --auth-match-quality-ratio
273
274 These options specify the match quality ratio, as a decimal number
275 (i.e. 1.0), for overlay of records with the overlay on 1 match
276 options.  They correspond to the similar options in the staff client
277 Vandelay import.
278
279 ===== Configuring sign-on to OpenAthens =====
280 :toc:
281
282 ====== Purpose ======
283
284 If your institution uses OpenAthens, you can configure Evergreen to sign 
285 patrons in to OpenAthens using their Evergreen account. This will let them 
286 connect to OpenAthens resources seamlessly once they have logged in to 
287 Evergreen. Patrons are assigned an OpenAthens identity dynamically based 
288 on their Evergreen login, and do not need accounts created manually in 
289 OpenAthens.
290
291 ====== Registering your Evergreen installation with the OpenAthens service ======
292
293 Using your OpenAthens administrator account at https://admin.openathens.net/, 
294 complete the following steps:
295
296 . Register a local authentication connection for Evergreen:
297   .. Go to *Management* -> *Connections*.
298   .. Under *Local authentication* click *Create*.
299   .. In the wizard that appears, select *Evergreen* as the local authentication 
300   system type (or *API* if Evergreen is not listed) and click *Configure*.
301   .. For *Display name*, enter the name of your Evergreen portal that your 
302   patrons will be familiar with. They will need to be able to recognise and 
303   select this name from a list of sign-in options on OpenAthens.
304   .. For *Callback URL* enter *https://<HOSTNAME>/eg/opac/sso/openathens* where 
305   <HOSTNAME> is the public hostname of your Evergreen installation, and click 
306   *Save*. (If you have installed Evergreen somewhere other than /eg, modify the
307   URL accordingly.)
308   .. On the details page that appears, take a copy of the *Connection ID* and 
309   *Connection URI* that have been generated. You will need these when 
310   configuring Evergreen.
311 . Generate an API key:
312   .. Go to *Management* -> *API keys* and click *Create*.
313   .. For *Name*, enter 'Evergreen' or whatever name you use for your Evergreen 
314   portal internally, and click *Save*.
315   .. Take a copy of the 36-character key that has been generated. You will need 
316   this when configuring Evergreen.
317
318 Full OpenAthens documentation for local authentication API connections is 
319 available at http://docs.openathens.net/display/public/MD/API+connector.
320
321 ====== Configuring Evergreen ======
322
323 OpenAthens sign-on is configured in the staff client under *Local 
324 Administration* -> *OpenAthens Sign-on*. To make a connection, select *New 
325 Sign-on to OpenAthens*, and set the values as follows:
326
327 * *Owner* - the organisation within your library hierarchy that owns the 
328 connection to OpenAthens. If your whole consortium has signed up to OpenAthens 
329 as a single customer, then you would select the top-level. If only one 
330 regional library system or branch is the OpenAthens customer, select that. 
331 Whichever organisation you select, the OpenAthens connection will take effect 
332 for all libraries below it in your organisational hierarchy. A single 
333 OpenAthens sign-on configuration normally equates to a single *domain* in the 
334 OpenAthens service. If in doubt refer to your OpenAthens account manager or 
335 implementation partner.
336 * *Active* - Enable this connection (enabled by default). N.B. Evergreen
337   does not support more than one active connection to OpenAthens at a time per 
338   organisation. If more than one connection is added per organisation, 
339   Evergreen will use only the _first_ connection that has *Active* enabled.
340 * *API key* - the 36-character OpenAthens *API key* that was generated in step 
341   2 above.
342 * *Connection ID* - the numerical *Connection ID* that was generated for the 
343   OpenAthens local authentication connection in step 1 above.
344 * *Connection URI* - the *Connection URI* that was generated for the 
345   OpenAthens local authentication connection in step 1 above.
346 * *Auto sign-on* - controls _when_ patrons are signed on to OpenAthens:
347   ** *enabled* (recommended) - As soon as a patron logs in to Evergreen, they 
348   are signed in to OpenAthens. This happens via a quick redirect that the user 
349   should not notice.
350   ** *disabled* - The patron is not signed in to OpenAthens to start with. When 
351   they first access an OpenAthens-protected resource, they will need to search 
352   for your institution at the OpenAthens log-in page and choose your Evergreen 
353   portal as the sign-in method (they will see the name you entered as the 
354   *Display name* in step 1 above). Evergreen will then prompt for log-in if 
355   they have not already logged in. After that, they are signed in to OpenAthens 
356   and OpenAthens redirects them to the resource.
357 * *Auto sign-out* - controls whether the patron is signed out of OpenAthens 
358   when they log out of Evergreen. If *enabled* the patron will be sent to the 
359   OpenAthens sign-out page when they log out of Evergreen. You can optionally 
360   configure the OpenAthens service to send them back to your home page again 
361   after this; the setting can be found at https://admin.openathens.net/ under 
362   *Preferences* -> *Domain* -> *After sign out*.
363 * *Unique identifier field* - controls which attribute of patron accounts is 
364   used as the unique identifier in OpenAthens. The supported values are 'id' 
365   and 'usrname', but you should leave this set to the default value of 'id' 
366   unless you have a reason to do otherwise. It is important that this attribute 
367   does not change during the lifetime of a patron account, otherwise they would 
368   lose any personalised settings they have saved on third party resources. It 
369   is also important that you do not re-use old patron accounts for new users, 
370   otherwise a new user could see personalised settings saved by an old user.
371 * *Display name field* - controls which attribute of patron accounts is 
372   displayed in the OpenAthens portal at https://admin.openathens.net/. (This 
373   is where you can see which accounts have been used, and what use patrons are 
374   making of third party resources.) The supported values are 'id', 'usrname' 
375   and 'fullname'. Whichever you choose, OpenAthens will only use it within 
376   your portal view; it won't be released to third-party resources.
377 * *Release X* - one setting for each of the attributes that it is possible to 
378   release to OpenAthens. Depending on your user privacy policy, you can 
379   configure any of these attributes to be released to OpenAthens as part of 
380   the sign-on process. None are enabled by default. OpenAthens in turn doesn't 
381   store or release any of these attributes to third party resources, unless 
382   you configure that separately in the OpenAthens portal. You have to 
383   configure this in two stages. Firstly, mapping Evergreen attributes to 
384   OpenAthens attributes, and secondly releasing OpenAthens attributes to third 
385   party resources. See the OpenAthens documenation pages at 
386   http://docs.openathens.net/display/public/MD/Attribute+mapping and 
387   http://docs.openathens.net/display/public/MD/Attribute+release. You will need 
388   to know the exact names of the attributes that are released. These are listed 
389   in the following table:
390
391 |===
392 |Setting|Attribute released|Description
393
394 |Release prefix
395 |prefix
396 |the patron's prefix, overriden by the preferred prefix if that is set
397
398 |Release first name
399 |first_given_name
400 |the patron's first name, overriden by the preferred first name if that is set
401
402 |Release middle name
403 |second_given_name
404 |the patron's middle name, overriden by the preferred middle name if that is set
405
406 |Release surname
407 |family_name
408 |the patron's last name, overriden by the preferred last name if that is set
409
410 |Release suffix
411 |suffix
412 |the patron's suffix, overriden by the preferred suffix if that is set
413
414 |Release email
415 |email
416 |the patron's email address
417
418 |Release home library
419 |home_ou
420 |the _shortcode_ of the patron's home library (e.g. 'BR1' in the Concerto 
421 sample data set)
422
423 |Release barcode
424 |barcode
425 |the patron's barcode
426 |===
427
428 Click 'Save' to finish creating the connection. (If you can't see the 
429 connection you just created for a branch library, enable the "+ Descendants" 
430 option.)
431
432 ====== Network access - server ======
433
434 As part of the sign-on process, Evergreen makes a connection to the OpenAthens
435 service to transfer details of the user that is signing on. This data does not
436 go via the user's browser, to avoid revealing the private API key and to avoid
437 the risk of spoofing. You need to open up port 443 outbound in your firewall,
438 from your Evergreen server to login.openathens.net.
439
440 ====== Network access - web client ======
441
442 If you restrict internet access for your web client machines, you need to open
443 up port 443 outbound in your firewall, from your web clients to the following
444 three domains:
445
446 * connect.openathens.net
447 * login.openathens.net
448 * wayfinder.openathens.net
449
450 ====== Admin permissions ======
451
452 To delegate OpenAthens configuration to other staff users, assign the 
453 *ADMIN_OPENATHENS* permission.
454
455 ===== Optionally allow patrons to renew after hitting fine maximum =====
456
457 When a patron hits the max fine limit, a standing penalty is applied to their account. By default, that penalty (PATRON_EXCEEDS_FINES)
458 is configured to block renewals.
459
460 This release adds a new org unit setting, _circ.permit_renew_when_exceeds_fines_.  If enabled for a particular org unit, renewals are
461 permitted (as long as all other circulation eligibility criteria are met).
462
463 ===== Optionally remove traditional catalog from menu =====
464
465 Libraries that have fully migrated to the Angular staff catalog
466 may optionally hide the "Staff Catalog (Traditional)" menu
467 options.  To do so, in the Library Settings Editor, set the
468 "ui.staff.traditional_catalog.enabled" setting to False.
469
470 After changing the setting, you will need to log out and log
471 back in to see the changes to the menu.
472
473 ==== Architecture ====
474
475 ===== (Developer-focused) Use ESLint for eg2 =====
476
477 The `eg2` Angular application now uses ESLint rather than TSLint for
478 source code linting. This is motivated by the deprecation of TSLint
479 by the Angular CLI, but ESLint also offer some improvements.
480
481 In particular, ESLint checks the HTML templates in addition to the
482 TypeScript code. For example, it will catch uses of `==` in the
483 templates when `===` is preferred.
484
485 The primary ESLint rules applied to the project are configured in
486 `Open-ILS/src/eg2/.eslintrc.json`. To override them for specific
487 directories, `.eslintrc` files can be used. An example of this
488 is `Open-ILS/src/eg2/src/app/share/.eslintrc`, which turns off
489 the `angular-eslint/no-output-on-prefix` check that discourages
490 using `onFoo` as the name of `@Output()` properties. This rule
491 is now enforced in most of `eg2`, but it was decided not to immediately
492 mandate for shared components.
493
494 The command to run the lint checks remains the same: from
495 `Open-ILS/src/eg2/`, run `ng lint`.
496
497 ===== Operating System Requirements =====
498
499 Evergreen 3.10 now supports installation on Ubuntu 22.04 (Jammy Jellyfish).
500
501 This release removes support for Debian Stretch and Ubuntu 18.04 (Bionic Beaver).
502
503 ==== Cataloging ====
504
505 ===== Record Note Merges =====
506
507 During a merge of bibliographic records notes will now merge and a
508 notation on each added that they were originally from another record.
509 A note is also added that the merge was performed.
510
511 ==== Circulation ====
512
513 ===== Experimental Angular Circulation Interfaces =====
514
515 This Evergreen release includes new, experimental versions of many
516 circulation interfaces.  To enable these interfaces:
517
518 . In the Library Settings Editor, enable the setting called
519 _Enable Angular Circulation Menu_.
520 . Add the _ACCESS_ANGULAR_CIRC_ permission to any users who
521 will be testing the experimental interfaces.
522
523 These interfaces are experimental, and should not be used for production
524 work.  Please report any issues with the interfaces at
525 https://bugs.launchpad.net/evergreen
526
527 ===== New Patrons with Negative Balances interface =====
528
529 The _Patrons with Negative Balances_ interface has been re-implemented
530 in Angular.
531
532 ===== OPAC-visible statisitical categories are now visible in the OPAC =====
533
534 This release restores a previously available feature: the ability to 
535 display statistical categories (stat cats) in the OPAC.  If an
536 item stat cat has "OPAC Visibility" set to true, its values will
537 display in the record page's item table, underneath the call number.
538 If a patron stat cat has "OPAC Visibility" set to true, its values
539 will display in the patron's account under Preferences ->
540 Personal Information (below the account expiration date).
541
542 Since these values have not been visible for some time, Evergreen
543 libraries may wish to review them before making them public.  To
544 set all stat cats to private, so that OPAC visibility can be
545 restored on a case-by-case basis after review, you can use the
546 following SQL:
547
548 [,sql]
549 ----
550 -- Item stat cats
551 UPDATE asset.stat_cat SET opac_visible=false WHERE opac_visible=true;
552
553 -- Patron stat cats
554 UPDATE actor.stat_cat SET opac_visible=false WHERE opac_visible=true;
555 ----
556
557 ===== Renewal Due Date Extended to Cover Lost Time =====
558
559 When an item is renewed before it's due date, libraries now have the option
560 to extend the renewal's due date to include any time lost from the early 
561 renewal.
562
563 For example, a 14 day checkout renewed after 12 days will result in a due date
564 on the renewal of 14 days plus 2 days to cover the lost time.
565
566 ====== Settings ======
567
568 Two new fields are available under Admin => Local Administration => 
569 Circulation Policies.
570
571 *Early Renewal Extends Due Date*
572
573 Enables this new feature for a circulation policy.
574
575 *Early Renewal Minimum Duration Interval*
576
577 Specifies the amount of time a circulation has to be checked out before a 
578 renewal will result in an extended due date.
579
580 For example, if you wanted to support due date extensions on 14-day checkout
581 renewals, but only if the item has been checked out at least 8 days, you 
582 would enter "8 days" for the value of this field.
583
584 If no value is set for a given matchpoint that supports renewal extension, 
585 all renewals using that matchpoint will be eligible.
586
587 ===== Override All Option when Placing Multiple Staff Holds =====
588
589 When placing multiple holds in the Angular Staff Catalog, staff users with permission to override the failed holds will see an Override All button which will perform all overrides at once.
590
591 Overriding each failed hold individually remains an option.
592
593 ===== Source library addresses now available on transit slips =====
594
595 Transit slip templates previously could include the address of
596 the library that the item is being transitted _to_.  With this
597 release, the address of the library the item is being transitted
598 _from_ is also available.
599 This change applies to both the Hold Transit Slip and the Transit
600 Slip templates.
601
602 ===== Courses can be un-archived =====
603
604 Course reserves staff can now un-archive a course that was previously archived, either from
605 its course page, or from the course list.
606
607 Un-archiving a course makes it active again.  Users with public roles in the course (such
608 as instructors) remain associated with the course.  Non-public users (such as students)
609 are removed.
610
611 ==== OPAC ====
612
613 ===== Additional trailing punctuation removed from certain fields =====
614
615 MarcXML facet, display, and browse fields will undergo some extra
616 cleanup before displaying to a user.  Of particular note for any
617 title fields that match these criteria, ending `/`, `:`, `;`, and
618 `=` will be removed.
619
620 This change does not affect MODS fields.  You can check if a
621 particular field uses MarcXML or MODS in Server Administration
622 -> MARC Search/Facet Fields by consulting the Format column.
623
624
625 ==== Miscellaneous ====
626
627 * The Field Documentation interface (under Local Administration) has
628   been ported to Angular with an org selector as an additional filter.
629 * The Pending Users and Bucket View grids in the User Buckets interface
630   now includes a column for the patron's balance owed. (LP#1980257)
631 * Patron Interface Gets a New Penalty Refresh Action. (LP#1823225)
632 * A new workstation setting optionally allows the full library name to be
633   added to the Angular Org Unit Selector. (LP#1771636)
634 * The tabs on the Claiming Administration page have been reordered to
635   Claim Policies, Claim Policy Actions, Claim Event Types, and Claim
636   Types. This reflects the fact that Claim Types tend to be configured
637   once and are not typically adjusted when setting up a new claim
638   policy. (LP#1947045)
639 * Links in the staff catalog summary area now open in a new tab. (LP#1953692)
640 * The Item Status list view now includes an optional column for
641   Total Circulations. (LP#1964629)
642 * The credit card payment approval code is now available as a column in
643   the bill history payments table in the patron record. (LP#1818303)
644 * The group member details grid now contains columns for preferred names.
645   (LP#1951996)
646 * The patron profile name is now available to the Hold Shelf Slip
647   print template as `patron.profile.name`. (LP#1724032)
648 * Removed the Message Center from the Patron -> Other Menu (deprecated),
649   added action for unarchiving Notes, and added confirmation dialogs
650   for Remove Note, Archive Note, and Unarchive Note. (LP#1977877)
651 * Curbside request notes and user messages are now purged when a user
652   record is deleted. (LP#1934162)
653 * If the patron record has a preferred name set, the SIP server now
654   returns it in response to patron lookups. (LP#1984114)
655 * The label and description of the acq.fund.allow_rollover_without_money
656   library setting are updated for greater clarity (LP#1982031)
657 * The Cash Reports interface (under Local Administration) is ported to
658   Angular.
659
660 ==== Acknowledgments ====
661
662 The Evergreen project would like to acknowledge the following
663 organizations that commissioned developments in this release of
664 Evergreen:
665
666 * CW MARS
667 * Evergreen Community Development Initiative
668 * Equinox Open Library Initiative
669 * King County Library System
670
671 We would also like to thank the following individuals who contributed
672 code, translations, documentations patches and tests to this release of
673 Evergreen:
674
675 * John Amundson
676 * Zavier Banks
677 * Jason Boyer
678 * Dan Briem
679 * Christine Burns
680 * Steven Callender
681 * Galen Charlton
682 * Julian Clementson
683 * Garry Collum
684 * Dawn Dale
685 * Jeff Davis
686 * Bill Erickson
687 * Jason Etheridge
688 * Ruth Frasur
689 * Blake Graham Henderson
690 * Rogan Hamby
691 * Elaine Hardy
692 * Kyle Huckins
693 * Linda Jansova
694 * Stephanie Leary
695 * Shula Link
696 * Tiffany Little
697 * Mary Llewellyn
698 * Llewellyn Marshall
699 * Terran McCanna
700 * Gina Monti
701 * Christine Morgan
702 * Michele Morgan
703 * Susan Morrison
704 * Andrea Buntz Neiman
705 * Jennifer Pringle
706 * Erica Rohlfs
707 * Mike Risher
708 * Mike Rylander
709 * Jane Sandberg
710 * Lindsay Stratton
711 * Chris Sharp
712 * Jason Stephenson
713 * Jennifer Weston
714 * Beth Willis
715 * Carol Witt
716 * Jessica Woolford
717
718 We also thank the following organizations whose employees contributed
719 patches:
720
721 * BC Libraries Coop
722 * Bibliomation
723 * Catalyte
724 * CW MARS
725 * Equinox Open Library Initiative
726 * Georgia Public Library Service
727 * Greater Clarks Hill Regional Library
728 * Kenton County Library
729 * King County Library System
730 * Lake Agassiz Regional Library
731 * Linn Benton Community College
732 * MOBIUS
733 * NC Cardinal
734 * NOBLE
735 * Princeton University
736 * Sigio
737 * Westchester Library System
738
739 We regret any omissions.  If a contributor has been inadvertently
740 missed, please open a bug at http://bugs.launchpad.net/evergreen/
741 with a correction.
742