]> git.evergreen-ils.org Git - Evergreen.git/blob - docs/RELEASE_NOTES_3_5.adoc
1fae3761b70a0c4908c17af719a842cca61a4fae
[Evergreen.git] / docs / RELEASE_NOTES_3_5.adoc
1 Evergreen 3.5 Release Notes
2 ===========================
3 :toc:
4 :numbered:
5
6 Upgrade notes
7 -------------
8
9 New Action Trigger hook for patron registration
10 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
11 Use of the new Action Trigger stgu.created hook requires changes to 
12 your action_trigger_filters.json file.  See below for more details.
13
14 New prerequisite - Email::MIME Perl module
15 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 The Email::MIME Perl module is now required, so be sure to run the 
17 prerequisite installation procedure for your Linux distribution before 
18 upgrading Evergreen.
19
20
21
22 New Features for 3.5.0
23 ----------------------
24
25 Administration
26 ~~~~~~~~~~~~~~
27
28 Do not cache the Angular application root
29 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
30
31 Evergreen administrators should update existing apache configuration files
32 so that the Angular index.html file is never cached by the client.  This
33 can be done by changing the Angular setup section of the apache configuration
34 that starts with:
35
36 [source, conf]
37 ----
38 <Directory "/openils/var/web/eg2/en-US">
39 ----
40
41 or similar in the apache configuration. Add the following after the
42 FallbackResource directive:
43
44 [source, conf]
45 ----
46     <Files "index.html">
47       <IfModule mod_headers.c>
48         Header set Cache-Control "no-cache, no-store, must-revalidate"
49         Header set Pragma "no-cache"
50         Header set Expires 0
51       </IfModule>
52     </Files>
53 ----
54
55 Finally, ensure that the mod_headers apache module is enabled by running the
56 following commands on all apache servers as the root user:
57
58 [source, sh]
59 ----
60 a2enmod headers
61 /etc/init.d/apache2 restart
62 ----
63
64
65 Repair of Self-closing HTML Tags
66 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
67 The most recent release of JQuery requires valid closing tags for X/HTML elements.
68 These were repaired within affected OPAC/Staff Client TT2 templates, but care should
69 be taken in Action/Trigger templates to make sure closing tags are present where 
70 appropriate.  The stock template for PO HTML was affected. 
71 See https://bugs.launchpad.net/evergreen/+bug/1873286[LP#1873286] for details. 
72
73 Aged Money Changes
74 ^^^^^^^^^^^^^^^^^^
75
76 Two new global flag settings have been added to control if/when billings and
77 payments are aged.  Both settings are disabled by default.
78
79 * 'history.money.age_with_circs' 
80  ** Age billings and payments linked to circulations when the cirulcation 
81     is aged.
82 * 'history.money.retention_age'
83   ** Age billings and payments based on the age of the finish date for
84      the linked transaction.
85   ** To age money based on this setting, there is a new srfsh script
86      at (by default) /openils/bin/age_money.srfsh.
87
88 Aged Payment Additional Fields
89 ++++++++++++++++++++++++++++++
90
91 The aged payment table now has accepting_usr, cash_drawer, and billing
92 columns to improve reporting of aged money.
93
94 Manual Data Migration of Aged Money
95 +++++++++++++++++++++++++++++++++++
96
97 For users that wish to age money along with circulations (global flag 
98 'history.money.age_with_circs' is set to true), it's necessary to manaully
99 age money for circulations which have already been aged.  This can be
100 done directly in the database with SQL:
101
102 NOTE: This SQL can take a very long time to run on large databases, so
103 it may be necessary to process aged circulations in batches instead
104 of all at once.
105
106 [source,sql]
107 -------------------------------------------------------------------------
108 SELECT money.age_billings_and_payments_for_xact(circ.id)
109 FROM action.aged_circulation circ
110 -- limit to aged circs with billings
111 JOIN money.billing mb ON mb.xact = circ.id;
112 -------------------------------------------------------------------------
113
114
115 PostgreSQL 10 Support
116 ^^^^^^^^^^^^^^^^^^^^^
117 PostgreSQL 10 is now available for installation with Evergreen.  Please
118 see the installation documentation for details.
119
120 New Action Trigger hook for patron registration
121 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
122 Evergreen now includes a new type of Action Trigger hook: stgu.created. 
123 This hook will trigger upon the patron registration submission form. In 
124 addition to the new hook, an example Action Trigger definition is 
125 provided (disabled by default) entitled "Patron Registered for a card 
126 stgu.created". With clever timing and delay settings, a library can 
127 receive a single notification containing all of the pending patron 
128 registrations for a given time interval. No special server-side 
129 considerations required unless you introduce a new granularity. There 
130 is, however, a new clause introduced to the 
131 "action_trigger_filters.json.example" file.
132
133 If you wish to use this new hook, be sure to include this clause in your 
134 local "action_trigger_filters.json" file:
135
136 ----
137 "stgu.created" : {
138         "context_org": "home_ou",
139         "filter": {
140             "complete": "f"
141         }
142     }
143 ----
144
145 SendEmail Reactor Updated to use Email::MIME
146 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
147 The SendEmail reactor for Action/Trigger has been updated to use the
148 Email::MIME Perl module for proper encoding of the email message
149 header fields.  You should notice no functional difference in the
150 sending of emails.
151
152
153
154 Cataloging
155 ~~~~~~~~~~
156
157 Enriched/Full MARC Editor Ported to Angular
158 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
159 The full MARC editor is now implemented in Angular.  This change impacts
160 both the experimental Angular catalog and the MARC edit option within
161 MARC Batch Import/Export (Vandelay) Queue manager.
162
163 Patron View tab in Experimental Catalog
164 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
165 The record view screen in the Experimental Catalog now has a 
166 _Patron View_ tab.  This tab displays a view of the record in
167 the OPAC, as a patron would see it.
168
169 The _Patron View_ tab replaces the previous _View in Catalog_
170 button.
171
172
173
174 Circulation
175 ~~~~~~~~~~~
176
177 New Hold Sort Order: Traditional with Holds-chase-home-lib-patrons
178 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
179
180 This is a new entry under Administration -> Server Administration -> 
181 Best-Hold Selection Sort Order in the staff client.  It prioritizes holds 
182 such that a given item, based on its owning library, will prefer patrons with 
183 a matching home library, no matter the pickup library.
184
185
186 Angular Staff Catalog Holds Patron Search Support
187 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
188 The Angular staff catalog now supports patron searching directly from 
189 the holds placement interace.
190
191 Hide Print List Button On Self Check Home Page
192 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
193 The _Print List_ button is no longer displayed on the main page
194 of the self check interface. This addresses an issue where
195 users were observed to either hit the _Print List_ button and
196 walk away or hit it *and* the _Logout_ button, causing duplicate
197 receipts to be printed.  The _Print List_ button continues to
198 be displayed on the _Items Out_, _Holds_, and _Fines Details_ pages
199 of the self check interface.
200
201 Update Hold Notification Information
202 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
203 The public catalog and staff client now have the ability to update 
204 existing holds if a patron or a staff member changes certain 
205 notification preferences or contact information.  Evergreen will detect 
206 these changes and prompt the staff user or patron user and ask if they 
207 want to update existing holds with the new contact information and/or 
208 notification preferences.
209
210
211
212 Client
213 ~~~~~~
214
215 Angular Staff Catalog Preferences Page
216 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
217 Adds a new "Catalog Preferences" interface, accessible directly from the
218 catalog.  The UI houses the search preferences (default search lib,
219 preferred library, default search tab) and a new staff-specific
220 hits-per-page setting.  Other preferences may be added later.
221
222 Adds support for selecting a default search tab using the existing
223 'eg.search.adv_pane' setting.
224
225 Hatch File Writer Print Option
226 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
227 Adds a new stock print option in the Hatch printer configuration interface
228 called Hatch File Writer (translatable).  When selected, any print content
229 that is delivered to this printer is translated into text where necessary
230 and written to a file in the Hatch profile directory.
231
232 The name of the file written is based on the print context: 
233 "receipt.<context>.txt".  For example, 'receipt.label.txt'.
234
235 Angular Staff Catalog gets Search Highlighting
236 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
237 Search text highlighting is now supported on the search results and
238 record details pages in the Angular staff catalog for searches that
239 support highlighting.
240
241
242
243 OPAC
244 ~~~~
245
246 Custom CSS in OPAC 
247 ^^^^^^^^^^^^^^^^^^
248 There is now a library setting called opac.patron.custom_css. This can be
249 populated with CSS that will load in the OPAC after the stylesheets and
250 allow for custom CSS without editing server side templates. The permission
251 UPDATE_ORG_UNIT_SETTING.opac.patron.custom_css manages access to it.
252
253
254
255 SIP
256 ~~~
257
258 Add patron_status_always_permit_loans Option to SIP Server
259 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
260 Evergreen now has a new `oils_sip.xml` login attribute called
261 `patron_status_always_permit_loans` that specifies whether
262 the charge privileges denied, renewal privilges denied, and
263 card reported lost flags in the patron status block should be
264 coerced to permissive values regardless of the actual state
265 of the patron record. Turning this on works around an issue
266 where a 2019-12 change by the Hoopla SIP2 client takes those flag
267 fields into account, but some libraries may not wish those
268 to block a patron's access to online resources that use
269 SIP2 to authenticate. This setting can also be set as
270 an `implementation_config` option; note that if it is set to
271 'true' or 'false' as a login attribute, the login attribute will
272 override whatever is set in the `implementation_config`.
273
274
275
276
277 Acknowledgments
278 ---------------
279 The Evergreen project would like to acknowledge the following
280 organizations that commissioned developments in this release of
281 Evergreen:
282
283 * King County Library System 
284 * MassLNC
285 * PaILS
286
287 We would also like to thank the following individuals who contributed
288 code, translations, documentations patches and tests to this release of
289 Evergreen:
290
291 * Jason Boyer
292 * Galen Charlton
293 * Garry Collum
294 * Dawn Dale
295 * Jeff Davis
296 * Bill Erickson
297 * Jason Etheridge
298 * Lynn Floyd
299 * Ruth Frasur
300 * Blake Graham-Henderson
301 * Rogan Hamby
302 * Terran McCanna
303 * Mike Risher
304 * Mike Rylander
305 * Jane Sandberg
306 * Chris Sharp
307 * Josh Stompro
308 * Cesar Velez
309
310
311 We also thank the following organizations whose employees contributed
312 patches:
313
314 * BC Libraries Cooperative
315 * Catalyte
316 * Equinox Open Library Initiative
317 * Georgia Public Library Service
318 * Indiana State Library
319 * King County Library System 
320 * Lake Agassiz Regional Library
321 * Linn-Benton Community College
322 * MOBIUS
323
324 We regret any omissions.  If a contributor has been inadvertently
325 missed, please open a bug at http://bugs.launchpad.net/evergreen/
326 with a correction.
327