]> git.evergreen-ils.org Git - Evergreen.git/blob - docs/RELEASE_NOTES_3_6.adoc
docs: fix typo in 3.6 release notes
[Evergreen.git] / docs / RELEASE_NOTES_3_6.adoc
1 = Evergreen 3.6 Release Notes =
2 :toc:
3 :numbered:
4
5 == Evergreen  3.6.3 ==
6
7 This release contains bug fixes improving on Evergreen 3.6.2,
8 including a security bug fix.
9
10 === Bug Fixes ===
11
12 ==== Security ====
13
14 * Fixes an XSS bug in MARC fields that are rendered as HTML (https://bugs.launchpad.net/bugs/1902965[Bug 1902965])
15
16
17 ==== Administration ====
18
19 * Angular admin pages "Library" scope (https://bugs.launchpad.net/bugs/1873322[Bug 1873322])
20 * No Access to Composite Attribute Entry Definitions from MARC Coded Value Maps (https://bugs.launchpad.net/bugs/1843969[Bug 1843969])
21 * Use consistent terminology in Local Admin Interfaces (https://bugs.launchpad.net/bugs/1871510[Bug 1871510])
22
23
24 ==== Circulation ====
25
26 * In house use: it would be nice if the item barcode column linked to item status (https://bugs.launchpad.net/bugs/1859513[Bug 1859513])
27
28 ==== Client ====
29
30 * Angular grids: interval columns are not filterable (https://bugs.launchpad.net/bugs/1848579[Bug 1848579])
31 * Angular Staff Client Hamburger Menu no longer clipped off screen (https://bugs.launchpad.net/bugs/1915323[Bug 1915323])
32
33 ==== Course materials ====
34
35 * Display course name when editing reserve item (https://bugs.launchpad.net/bugs/1907977[Bug 1907977])
36 * "Instructor" search/browse option does not always display in OPAC (https://bugs.launchpad.net/bugs/1907979[Bug 1907979])
37
38 ==== OPAC ====
39
40 * Bootstrap OPAC: add support for Stripe v3 (Elements) (https://bugs.launchpad.net/bugs/1895679[Bug 1895679])
41 * Bootstrap OPAC: Pagination on copy table now works (https://bugs.launchpad.net/bugs/1916085[Bug 1916085])
42 * Terms Governing Use and Reproduction Note Displays Twice in Record Details (https://bugs.launchpad.net/bugs/1917804[Bug 1917804])
43 * Email now displays when editing hold prefs in OPAC (https://bugs.launchpad.net/bugs/1908616[Bug 1908616])
44 * Bootstrap OPAC:  Call number on search results page (https://bugs.launchpad.net/bugs/1916904[Bug 1916904])
45
46 ==== Performance ====
47
48 * Search indexes now use GIN by default (https://bugs.launchpad.net/bugs/1703658[Bug 1703658])
49 * Record bucket 'Add To Bucket' actions should be batched or serialized. (https://bugs.launchpad.net/bugs/1913458[Bug 1913458])
50
51 ==== Staff catalog ====
52
53 * Angular Catalog: Part column no longer missing from Item table (https://bugs.launchpad.net/bugs/1899405[Bug 1899405])
54 * Publication information in angular search results now displays from tag 260 or 264 (https://bugs.launchpad.net/bugs/1896840[Bug 1896840])
55 * Angular catalog can now sort browse result record lists (https://bugs.launchpad.net/bugs/1908444[Bug 1908444])
56 * No Pagination Navigation at the Bottom of a Catalog Search (https://bugs.launchpad.net/bugs/1912380[Bug 1912380])
57
58 === Upgrade Notes ===
59
60 A partial reingest is required to extract the new publisher data for display.
61 This query may be long-running.
62
63 [source,sql]
64 --------------------------------------------------------------------------
65 WITH affected_bibs AS (
66     SELECT DISTINCT(bre.id) AS id
67     FROM biblio.record_entry bre
68     JOIN metabib.real_full_rec mrfr
69     ON (mrfr.record = bre.id AND mrfr.tag = '264')
70     WHERE NOT bre.deleted
71 )
72 SELECT metabib.reingest_metabib_field_entries(id, TRUE, FALSE, TRUE, TRUE)
73 FROM affected_bibs;
74 --------------------------------------------------------------------------
75
76
77
78 === Acknowledgements ===
79
80 We would like to thank the following individuals who contributed code,
81 testing and documentation patches to the 3.6.3 point release of Evergreen:
82
83
84 * Jason Boyer
85 * Dan Briem
86 * Galen Charlton
87 * Garry Collum
88 * Jeff Davis
89 * Bill Erickson
90 * Tiffany Little
91 * Terran McCanna
92 * Michele Morgan
93 * Jennifer Pringle
94 * Mike Risher
95 * Jane Sandberg
96 * Chris Sharp
97 * Jason Stephenson
98 * Beth Willis
99
100 == Evergreen 3.6.2 ==
101
102
103 This release contains bug fixes improving on Evergreen 3.6.1,
104 including a security bug fix.
105
106 === Bug Fixes ===
107
108 ==== Security ====
109
110 * Fix an issue where `open-ils.pcrud` backends could crash with
111 a segmentation fault under certain conditions that could be invoked
112 by an external attacker, thus leading to a potential denial
113 of service attack.
114
115 ==== Staff Interface ====
116 * Expert Search in the staff interface now respects the search library.
117 (https://bugs.launchpad.net/evergreen/+bug/1468132[Bug 1468132])
118 * The Items Out page is now less prone to cause `open-ils.actor` backend
119 exhaustion. It now also displays a progress bar while loading.
120 (https://bugs.launchpad.net/evergreen/+bug/1913811[Bug 1913811])
121 * Grids in the staff interface no longer require that a row
122 be selected in order to activate a grid action that doesn't
123 logically require that at least one row be selected.
124 (https://bugs.launchpad.net/evergreen/+bug/1670457[Bug 1670457])
125 * The display of total amounted billed, owed, and paid on the patron
126 Bills page now reflects just open bills with a non-zero balance, fixing
127 an issue where the totals could include paid billings for transactions
128 that are still open.
129 (https://bugs.launchpad.net/evergreen/+bug/1772955[Bug 1772955])
130 * The pending patron interface now respects the library setting whether
131 to set the patron's initial password to the last four digits of their
132 phone number.
133 (https://bugs.launchpad.net/evergreen/+bug/1887852[Bug 1887852])
134 * Several interfaces, including Mark Missing, adding patrons to a bucket
135 from a search, and applying a default item status now use batch
136 API calls for better efficiency.
137 (https://bugs.launchpad.net/evergreen/+bug/1896285[Bug 1896285])
138 * Fix an issue where the holdings editor would not close its window
139 when the Save & Exit button was clicked.
140 (https://bugs.launchpad.net/evergreen/+bug/1913219[Bug 1913219])
141 * Fix an issue where a double barcode scan could create a precat
142 item without giving the staff member the chance to review the
143 form before submitting it.
144 (https://bugs.launchpad.net/evergreen/+bug/1778522[Bug 1778522])
145 * Fix an issue preventing the staff interface from being used
146 on various Android and iOS devices.
147 (https://bugs.launchpad.net/evergreen/+bug/1901760[Bug 1901760])
148 * Fix an issue where the report editor could supply the wrong
149 kind of input for an aggregate filter.
150 (https://bugs.launchpad.net/evergreen/+bug/1858114[Bug 1858114])
151 * The staff interfaces now warns if the user attempts to delete
152 a bib record that has active holds on it.
153 (https://bugs.launchpad.net/evergreen/+bug/1398107[Bug 1398107])
154 * Expired staff accounts can no longer log into the staff interface
155 (https://bugs.launchpad.net/evergreen/+bug/1474029[Bug 1474029])
156 * Most Angular administration pages now include grid filters
157 (https://bugs.launchpad.net/evergreen/+bug/1846042[Bug 1846042])
158 * The grid header in most Angular admin interfaces is now sticky
159 (https://bugs.launchpad.net/evergreen/+bug/1855457[Bug 1855457])
160 * The Angular staff catalog now supports more easily placing multiple
161 holds on the same target
162 (https://bugs.launchpad.net/evergreen/+bug/1889128[Bug 1889128])
163 * The Angular staff catalog now respects the 'Not a Pickup Library'
164 setting
165 (https://bugs.launchpad.net/evergreen/+bug/1908743[Bug 1908743])
166 * Fix an issue where the staff catalog hold request form was not
167 registering a change of pickup library.
168 (https://bugs.launchpad.net/evergreen/+bug/1911031[Bug 1911031])
169 * In some cases, an upgraded database would fail to honor a request
170 to delete an item tag. This is now fixed.
171 (https://bugs.launchpad.net/evergreen/+bug/1786100[Bug 1786100])
172 * The order of fields in various staff interface record editing
173 forms has been improved.
174 (https://bugs.launchpad.net/evergreen/+bug/1857351[Bug 1857351])
175 * Fix an issue where the Angular MARC editor would sometimes fail
176 to display fields.
177 (https://bugs.launchpad.net/evergreen/+bug/1907115[Bug 1907115])
178 * Fix the retrieve last bib record feature in the Angular staff
179 catalog
180 (https://bugs.launchpad.net/evergreen/+bug/1907286[Bug 1907286])
181 * Improve the placement of the 'Add Materials' button in the Course
182 Material interface
183 (https://bugs.launchpad.net/evergreen/+bug/1907923[Bug 1907923])
184 * Catalog links in the line item manager now link to the Angular
185 staff catalog
186 (https://bugs.launchpad.net/evergreen/+bug/1908420[Bug 1908420])
187 * Fix an issue where MARC Batch Edit's Go button could be disabled
188 during a CSV file upload.
189 (https://bugs.launchpad.net/evergreen/+bug/1910409[Bug 1910409])
190 * Improve the labeling of publication date sort option in the
191 Angular staff catalog
192 (https://bugs.launchpad.net/evergreen/+bug/1908724[Bug 1908724])
193 * Fix sorting of the surveys administration grid.
194 (https://bugs.launchpad.net/evergreen/+bug/1908763[Bug 1908763])
195 * Saving a record created via 'Create New MARC Record' now directs
196 the user to the Angular staff catalog.
197 (https://bugs.launchpad.net/evergreen/+bug/1914630[Bug 1914630])
198 * Fix a couple typos.
199
200 ==== Public Catalog ====
201
202 * Fix an issue where titles could run together when viewing a
203 carousel with a mobile browser.
204 (https://bugs.launchpad.net/evergreen/+bug/1868147[Bug 1868147])
205 * The order that items in a carousel display in is now more
206 predictable. For example, for 'Top Circulated Items' carousels,
207 the order is from most circulated to least circulated.
208 (https://bugs.launchpad.net/evergreen/+bug/1866406[Bug 1866406])
209 * Carousels no longer display deleted items.
210 (https://bugs.launchpad.net/evergreen/+bug/1836254[Bug 1836254])
211 * CGI parameters in the public catalog are now consistently forced
212 to be separated by ampersands rather than semicolons.
213 (https://bugs.launchpad.net/evergreen/+bug/1687545[Bug 1687545]) and
214 (https://bugs.launchpad.net/evergreen/+bug/1914116[Bug 1914116])
215
216 ==== Public Catalog (Bootstrap theme) ====
217
218 * The Bootstrap public catalog now allows patrons to update
219 hold notification preferences.
220 (https://bugs.launchpad.net/evergreen/+bug/1902265[Bug 1902265])
221 * Fix an issue where email and phone number notification information
222 was not saved when placing a hold.
223 (https://bugs.launchpad.net/evergreen/+bug/1903424[Bug 1903424])
224 * Suspending a hold at the time of placement now works in the Bootstrap
225 public catalog.
226 (https://bugs.launchpad.net/evergreen/+bug/1903594[Bug 1903594])
227 * Add the Type filter to the Bootstrap public catalog's Advanced
228 Search page
229 (https://bugs.launchpad.net/evergreen/+bug/1908298[Bug 1908298])
230 * The Bootstrap public catalog now includes the record emailing
231 and printing enhancements added in 3.6.0.
232 (https://bugs.launchpad.net/evergreen/+bug/1895676[Bug 1895676])
233 * The Bootstrap public catalog is now implements course
234 materials search and display.
235 (https://bugs.launchpad.net/evergreen/+bug/1895678[Bug 1895678])
236 * Carousels in the Bootstrap public catalog now link to their titles.
237 (https://bugs.launchpad.net/evergreen/+bug/1908113[Bug 1908113])
238 * Fix an issue with saving list notes in the Bootstrap public catalog.
239 (https://bugs.launchpad.net/evergreen/+bug/1908766[Bug 1908766])
240 * The My Account circulation history display now includes the
241 title and author of loans of precat items.
242 (https://bugs.launchpad.net/evergreen/+bug/1910138[Bug 1910138])
243 * Fix an issue with adding a basket to an existing list.
244 (https://bugs.launchpad.net/evergreen/+bug/1907866[Bug 1907866])
245
246 ==== Administration ====
247
248 * The EDI Webrick installer now works on Ubuntu 18.04
249 (https://bugs.launchpad.net/evergreen/+bug/1901900[Bug 1901900])
250
251 === Acknowledgements ===
252
253 We would like to thank the following individuals who contributed code,
254 testing and documentation patches to the 3.6.1 point release of Evergreen:
255
256 * John Amundson
257 * Zavier Banks
258 * Jason Boyer
259 * Dan Briem
260 * Galen Charlton
261 * Garry Collum
262 * Jeff Davis
263 * Bill Erickson
264 * Ruth Frasur
265 * Blake Graham-Henderson
266 * Rogan Hamby
267 * Elaine Hardy
268 * Angela Kilsdonk
269 * Tiffany Little
270 * Terran McCanna
271 * Michele Morgan
272 * Jane Sandberg
273 * Mike Risher
274 * Mike Rylander
275 * Chris Sharp
276 * Jason Stephenson
277
278 == Evergreen 3.6.1 ==
279
280 This release contains bug fixes improving on Evergreen 3.6.0.
281
282 === Bug Fixes ===
283
284 ==== Administration ====
285
286 * Improves description of an org unit setting
287 (https://bugs.launchpad.net/evergreen/+bug/1325704[Bug 1325704])
288
289 ==== Cataloging ====
290
291 * Fixes the journal title search in the Angular Staff Catalog
292 (https://bugs.launchpad.net/evergreen/+bug/1901038[Bug 1901038])
293
294 ==== Circulation ====
295
296 * The Register Patron form can now set default password according to a patron's
297 phone number when the org setting "Patron: password from phone #" is TRUE
298 (https://bugs.launchpad.net/evergreen/+bug/1900184[Bug 1900184])
299 * Fixes an issue with the hold targeter
300 (https://bugs.launchpad.net/evergreen/+bug/1508208[Bug 1508208])
301 * Fixes an issue that prevents items from circulating when OpenSRF is installed
302 with non-default router names
303 (https://bugs.launchpad.net/evergreen/+bug/1904220[Bug 1904220])
304
305
306 ==== Client ====
307
308 * Fixes an issue that caused a blank screen to appear
309 (https://bugs.launchpad.net/evergreen/+bug/1855737[Bug 1855737])
310
311
312 === Acknowledgements ===
313
314 We would like to thank the following individuals who contributed code,
315 testing and documentation patches to the 3.6.1 point release of Evergreen:
316
317 * Jason Boyer
318 * Dan Briem
319 * Galen Charlton
320 * Garry Collum
321 * Bill Erickson
322 * Jason Etheridge
323 * Katie Greenleaf Martin
324 * Terran McCanna
325 * Mike Rylander
326 * Jane Sandberg
327 * Chris Sharp
328 * Remington Steed
329
330
331 == Evergreen 3.6.0 ==
332
333 === Upgrade notes ===
334
335 This release adds a new OpenSRF service called `open-ils.courses`.
336 While strictly speaking this is an optional service and could be
337 omitted if you are not planning on using the new Course Materials
338 module, it is recommended that the service be run in case future
339 work bakes in an assumption that it will always be present.
340
341 This release also a new OpenSRF service, `open-ils.curbside`, which
342 must be enabled and registered with the public router for the
343 Curbside Pickup feature to function.
344
345 This release also includes a new experimental public catalog skin
346 based on the Bootstrap framework. Instructions for turning it on
347 can be found below.
348
349 This release adds a new Perl module dependency, `Config::General`.
350
351 This release adds two new rows to action_trigger.event_definition,
352 two into action_trigger.hook, and six into action_trigger.environment.
353
354 === New Features ===
355
356 ==== Acquisitions ====
357
358 ===== Angular Acquisitions Search =====
359
360 The acquisitions search interfaces are now written in Angular
361 and provide a new centralized place for searching Line Items,
362 Purchase Orders, Invoices, and Selection Lists in the Acquisitions
363 module of Evergreen. The Acquisitions Search interface can be accessed
364 under Acquisitions -> General Search.
365
366 The search interface has four tabs for line item search, purchase order
367 search, invoices search, and selection list search.  Each tab
368 offers a search form allowing the user to select one or more
369 fields to search on. Each search tab stores a separate default search
370 that the user can update; for example, a user could have their
371 line item search default to showing all on-order line items from
372 a particular provider.
373
374 The grid that displays search results in each tab is filterable.
375
376 The line items and PO search interfaces allow the user to navigate to
377 linked POs, invoices, and so forth, but offers no direct actions. The
378 invoices search tab includes a 'Print Selected Invoices' action,
379 while the selection lists search tab offers actions to create,
380 clone, delete, and merge selection lists.
381
382 The Angular search page contains a link to the legacy Dojo search
383 interface if needed. The Dojo interface will be removed in a future
384 release of Evergreen.
385
386 The Angular search interface offers various usability improvements
387 over the Dojo interface, including:
388
389 * only the search operators that are relevant for a given field
390   are displayed.
391 * search fields that are associated with controlled vocabularies
392   will display drop-downs on the search form.
393 * results are sortable.
394 * the line item and PO state fields have been relabeled to "Status".
395 * greater than and less than are now available as search operators.
396 * publication date searches are more flexible.
397
398 As part of this feature, the stock permissions for the Acquisitions
399 and Acquisitions Administrator profiles have been expanded. In
400 particular, the Acquisitions Administrator profile can now be
401 more readily used to perform normal acquisitions work in addition
402 to configuring the acquisitions module.
403
404 ===== Angular Providers Interface =====
405
406 The interfaces for searching for and managing Acquisitions provider
407 records have been rewritten in Angular. This rewrite includes the
408 following significant changes:
409
410 * The provider search interface is now available directly from the
411   Acquisitions menu, supplementing its longstanding availability from
412   the Acquisitions Administration page.
413 * The search interface is modeled after the patron interface, including
414   a search form that can be hidden or displayed, a provider summary box,
415   and a multi-tabbed interface for managing the provider itself.
416 * The grid displaying search results is filterable and sortable.
417 * The provider display tabs are
418 ** Details, allowing the user to view, and if permitted, edit the base provider record.
419 ** Addresses
420 ** Contacts
421 ** Attribute Definitions
422 ** Holdings Definitions
423 ** EDI
424 ** Invoices, providing an interface for viewing the invoices associated with the provider.
425 ** POs, providing an interface for viewing the purchase orders associated with the provider.
426 * The new interface makes it possible to edit contact addresses.
427 * The base provider record now has an optional primary contact field.
428   Selecting a contact as the primary one is managed on the Contacts
429   tab.  The primary contact, if set, is displayed on the provider
430   summary box.
431
432 Interfaces that used to link to the Dojo provider interface now link
433 to the Angular one instead.
434
435 ==== Administration ====
436
437
438 ===== Changes to Autorenewal Action/Trigger Failure Reasons =====
439
440 Previously the "reason" field in the userdata for an Autorenewal
441 event would contain both the failure code and the description for
442 the failure event as a single string such as
443 "MAX_RENEWALS_REACHED : Circulation has no more renewals remaining."
444
445 Now the "reason" field will only contain the description of the issue
446 (Circulation has ...) while a new "textcode" field will contain the
447 event code (MAX_RENEWALS_REACHED) if administrators still want to
448 display it in template outputs.
449
450
451 ===== EZProxy authentication =====
452
453 Evergreen can now provide CGI authentication for EZProxy.
454 To enable this, you will need to:
455
456 . Add a new User Activity Type to Evergreen for EZProxy CGI authentications.
457 . Add a new Remote Authentication Profile to Evergreen. You will probably want
458 to use `EZProxyCGI` as the name.
459 . Edit the `<Location /api/ezproxy>` stanza in Evergreen's eg_vhost configuration
460 file. In particular, you will need to allow access to from your EZProxy server,
461 fill in the base uri of your EZProxy server, and add a secret to the
462 _OILSRemoteAuthEZProxySecret_ variable.
463 . Restart Apache.
464 . Edit the EZProxy user.txt file.  You will likely want to add a stanza such
465 as the following:
466
467 .Sample user.txt stanza
468 ----
469 ::CGI=http://your-evergreen-catalog.com/api/ezproxy?url=^R
470 ::Ticket
471 MD5 <same secret as in eg_vhost config>
472 Expired; Deny expiredticket.htm
473 /Ticket
474 ----
475
476 When this feature is enabled, users will see an Evergreen-based login screen.
477 You may customize the look and feel of this login screen by editing the relevant
478 template toolkit files.
479
480 ===== Matomo Support =====
481
482 Support for the open source web analytics platform Matomo is now
483 native to Evergreen. Support is on an org unit level so different
484 libraries can have separate or no analytics. Once you setup
485 a Matomo service you will need the URL and site ID. Typically
486 Matomo will give you a block of javascript you can insert into
487 web sites. One line will look like :
488
489 `var u="http://mylibrary.lib/matomo/";`
490
491 The full URL in the double quotes will be your URL.  Another line
492 will look like:
493
494 `_paq.push(['setSiteId', '1']);`
495
496 In this case the number 1 will be your site ID.
497
498 These are set by the Library Settings opac.analytics.matomo_url and
499 opac.analytics.matomo_id respectively.  A new permission,
500 MATOMO_UPDATE_SETTINGS, controls access to these.
501
502 ===== "PatronAPI" authentication =====
503
504 Evergreen now supports the III "PatronAPI" scheme for authenticating
505 patrons and supplying some information about them.
506
507 To enable this, you will need to:
508
509 . Add a new User Activity Type to Evergreen for PatronAPI authentications.
510 . Add a new Remote Authentication Profile to Evergreen. You will probably want
511 to use `PatronAPI` as the name.
512 . Edit the `<Location /api/patronapi>` stanza in Evergreen's eg_vhost configuration
513 file. In particular, you will need to allow access to it from the server(s)
514 wanting to make PatronAPI requests, determine whether to enable the PatronAPI
515 "dump" feature, and specify whether users can be identified by username
516 or barcode.
517 . Restart Apache.
518 . Update the PatronAPI client to use https://your.evergreen.server/api/patronapi
519   as its base URL.
520
521 Example PatronAPI URLs look something like this:
522
523 .PatronAPI URLs
524 ----
525 # test a patron's PIN:
526 https://evergreen.example.org/api/patronapi/USERNAME/PASSWORD/pintest
527
528 # dump some information about the patron. Note that this
529 # does _not_ require the the patron's password be supplied.
530 https://evergreen.example.org/api/patronapi/USERNAME/dump
531 ----
532
533 The responses for the `pintest` and `dump` actions are specified by
534 Template Toolkit templates under (e.g.) `/openils/var/templates/remoteauth`.
535
536
537 ===== Preloaded Audio Icon and Search Format =====
538
539 A new search and icon format called Preloaded Audio now exists
540 that overlaps with the eAudio format.  If you want to exclude
541 the Preloaded Audio format from overlapping with eAudio
542 you can use the following SQL:
543
544 ----
545 UPDATE config.composite_attr_entry_definition SET definition = '{"0":{"_attr":"item_type","_val":"i"},"1":[{"_attr":"item_form","_val":"o"},{"_attr":"item_form","_val":"s"}]}'
546     WHERE coded_value IN (SELECT id FROM config.coded_value_map WHERE code = 'eaudio');
547 ----
548
549 It is also recommended that you reingest your bibliographic records
550 to updated the fixed field indexes. You can accomplish this by running
551 the following query in your database:
552
553 ----
554 SELECT metabib.reingest_record_attributes(source)
555 FROM metabib.record_attr_vector_list WHERE
556 (SELECT id FROM config.coded_value_map WHERE ctype = 'item_form' AND code = 'q') = ANY(vlist)
557 AND (SELECT id FROM config.coded_value_map WHERE ctype = 'item_type' AND code = 'i') = ANY(vlist);
558 ----
559
560
561
562
563
564 ==== API ====
565
566
567
568 ===== Override Label for draw_field_label Patron Edit Fields =====
569
570 Evergreen developers may now specify a label for fields in
571 the patron registration/patron edit form (generated by
572 the draw_field_label macro). By default,
573 draw_field_label uses the label of supplied IDL field class.
574 Now a developer may supply an additional third parameter,
575 label_override, which overrides the default IDL-based label.
576 This would typically be done in the course of customizing
577 the web staff client template `circ/patron/t_edit.tt2`.
578
579
580
581
582 ==== Architecture ====
583
584
585
586
587 ===== New Action/Trigger reactor for 3rd party signaling =====
588
589 This new Action/Trigger reactor module allows an Evergreen administrator to
590 create event definitions that use HTTP (or HTTPS) to contact external services
591 and let them know that something has happened in Evergreen.
592
593 For instance, a discovery layer can be informed when a bib record is updated
594 or when a user's barcode changes.
595
596 ====== Reactor Template Syntax ======
597
598 The new reactor module uses a template to define its behavior.  While the
599 template is processed by Template Toolkit, as with any A/T templates, its
600 output format is new to Evergreen.
601
602 The template should output data that can be parsed by the Config::General Perl
603 module.  See: https://metacpan.org/pod/Config::General
604
605 Top level settings should include the HTTP *method* and the *url*.
606
607 A block called *Headers* can be used to supply arbitrary HTTP headers.
608
609 A block called *Parameters* can be used to append CGI parameters to the URL,
610 most useful for GET form submission.  Repeated parameters are allowed.  If
611 this block is used, the URL should /not/ contain any parameters, use one or
612 the other.
613
614 A HEREDOC called *content* can be used with POST or PUT to send an arbitrary block
615 of content to the remote server.
616
617 If the requested URL requires Basic or Digest authentication, the template can
618 include top level configuration parameters to supply a *user*, *password*, *realm*,
619 and hostname:port *location*.
620
621 A default user agent string of "EvergreenReactor/1.0" is used when sending requests.
622 This can be overridden using the top level *agent* setting.
623
624 Here is an example template that could be used by a definition attached to the
625 *bib.edit* hook:
626
627 [source,conf]
628 ----
629 method   post # Valid values are post, get, put, delete, head
630 url      https://example.com/api/incoming-update
631 agent    MySpecialAgent/0.1
632
633 user     updater
634 password uPd4t3StufF
635 realm    "Secret area"
636 location example.com:443
637
638 <Headers>
639   Accept-Language en
640 </Headers>
641
642 <Parameters>
643   type bib
644   id   [% target.id %]
645 </Parameters>
646
647 content <<MARC
648 [% target.marc %]
649 MARC
650 ----
651
652
653
654
655
656 ===== Documentation Now Uses the Antora Toolchain =====
657
658 The core Evergreen documentation under the `docs/` subdirectory
659 has been changed to use Antora, a documentation site generator
660 for AsciiDoc. The result of this change is the ability to generate
661 documentation for the `docs.evergreen-ils.org` website that is
662 searchable, easier to maintain, and readily installable on a
663 local Evergreen site if desired.
664
665 For instructions on how to build the documentation, consult
666 the file `README.adoc` under the `docs` directory.
667
668
669
670
671 ==== Cataloging ====
672
673
674
675 ===== Manage Authorities Angular Port =====
676
677 The Cataloging -> Manage Authorities interface has been ported to Angular.
678
679 New functionality includes displaying additional authority data, like create
680 and edit dates, etc.  It's also possible to view the list of linked bib
681 records.
682
683
684
685
686 ===== MARC Batch Edit UI Angular Port =====
687
688 The MARC Batch Edit interface has been ported to Angular.
689
690
691
692
693 ===== Preloaded Audio Icon and Search Format =====
694
695 A new search and icon format called Preloaded Audio now exists
696 using the following atttributes: itemtype i, item form q.  This
697 overlaps with the eAudio format.  If you want to exclude
698 preloaded audio from eAudio there is a script in the Administration
699 notes to exclude it.
700
701
702
703
704 ===== Item Status Allows Pasting a List of Barcodes in csv Format =====
705
706 The item status input box will now accept a string of barcodes, separated with commas, as well as a single barcode.
707
708
709 ===== Fix For "Blank" (Empty String) TCN Source =====
710
711 Previously, it was possible for sparsely-populated MARC records to be
712 saved with a TCN Source of '' (the "empty string"), which caused the
713 901 $b subfield to be void of data, causing errors when exporting
714 MARC records to such third-party programs as Zotero.
715
716 A site that has been running without this patch for a long time might want to
717 check how many bib records they have with an empty tcn_source:
718
719 ----
720 SELECT COUNT(*) FROM biblio.record_entry WHERE deleted IS FALSE AND tcn_source = '';
721 ----
722
723 Sites can fix the problem by issuing UPDATE statements to set the 901$b to a value
724 like 'AUTOGEN' or 'Unknown'. They should probably do it per-record, however, to
725 avoid locking the table in a huge commit.
726
727
728 ==== Circulation ====
729
730
731
732 ===== Booking Capture is now in Angular =====
733
734
735 The interface to capture resources for booking
736 reservations has been re-implemented in Angular.
737 Other booking screens, such as Pick Up and
738 Manage Reservations, now include an option to
739 re-print capture slips.
740
741 System administrators can now edit the template
742 for booking capture slips in Administration ->
743 Server administration -> Print templates.
744
745
746
747
748
749 ===== New Fields for AutorenewNotify Event Template =====
750
751
752 Two new fields, `auto_renewal_remaining`, and `total_renewal_remaining` have
753 been added to the AutorenewNotify action/trigger event code.  They will
754 report the number of autorenewals and regular renewals, respectively,
755 remaining on the new circulation if renewed, or on the old circulation
756 if not renewed.  This is provided as a convenience to avoid possibly
757 inaccurate math in the template.  You may access them in the template via
758 the `udata`:
759
760 ----
761 Automatic Renewals Remaining: [% udata.auto_renewal_remaining %]
762 Total Renewals Remaining: [% udata.total_renewal_remaining %]
763 ----
764
765
766
767
768
769 ===== Course Materials Module =====
770
771 This version of Evergreen includes an optional course materials module.
772 Like course reserves modules in other library software, this module
773 makes reserves collections more discoverable and easier to manage.
774 The module also provides similar functionality for library electronic
775 resources and open educational resources, whether they have been
776 cataloged or not.
777
778 To enable the course materials module, go to Administration ->
779 Local Administration -> Library Settings Editor. Find the setting
780 called "Opt Org Unit into the Course Materials Module".  Set it to
781 True for the org units that want to use the module.
782
783 To use the course materials module effectively, staff will need a
784 new permission called _MANAGE_RESERVES_.  By default, circulation
785 administrators will receive this permission.
786
787 Staff members with the _MANAGE_RESERVES_ permission can create
788 courses, attach materials to them, attach users to them, and
789 archive them when they are no longer needed.
790
791 When associating physical materials from the catalog to a
792 course, staff members can choose temporary item attributes.
793 These attributes will last until the course is archived or
794 the item is detached from the course, whichever happens
795 first.
796
797 Staff can also choose to associate electronic resources from
798 the catalog (which must have a transcendent bib source or
799 a located URI).  They can also create a brief bib record
800 to attach to the course from within the course materials
801 module.
802
803 Staff members can attach users to the course.  These users
804 can have either a public role (e.g. instructor) or private
805 roles (e.g. student).  The public roles will be displayed
806 in the OPAC.
807
808
809 If the module is enabled, the OPAC will include a course search
810 and a course browse option.
811
812
813 Libraries may also want to use this module to manage their
814 displays.  Each display can be treated as a course, and staff
815 can attach the items they wish to display to the course along
816 with the temporary attributes (e.g. a shelving location called
817 "On display").  When the display is over, staff members can
818 archive the course.
819
820
821
822
823 ===== Hopeless Holds Interface =====
824
825 A new interface under Local Administration has been added called
826 Hopeless Holds.  Using a new Hopeless Date field on hold requests,
827 this interface gives staff a way to resolve issues with hold
828 requests that may have become unfulfillable or "hopeless".
829
830 The Hopeless Date is set for a given request by the hold targeter
831 whenever the potential items list for the hold is empty, or when
832 all potential items have a copy status that has been designated
833 as Hopeless Prone (a new boolean field on Item Statuses).
834
835
836
837
838
839 ===== In-house use now records workstations =====
840
841 Evergreen now records the workstation along with each
842 in-house use.  Staff can now run reports on which
843 workstation created which in-house use.
844
845
846
847
848 ===== Option to Make Effective Date of Checkin Sticky =====
849
850 Adds a checkbox to the Checkin screen that will make the backdate effective until logout.
851
852
853
854
855 ===== Purge User Preferred Names =====
856
857 The new, user preferred name fields are now set to NULL in the
858 database when a user account is purged via the staff client or using
859 the actor.usr_delete function in the database.
860
861 To clear the preferred name fields from records that have already been
862 purged, run the following SQL update:
863
864 [source,sql]
865 ----
866 UPDATE actor.usr
867 SET pref_prefix = NULL,
868     pref_first_given_name = NULL,
869     pref_second_given_name = NULL,
870     pref_family_name = NULL,
871     pref_suffix = NULL,
872     name_keywords = NULL
873 WHERE usrname ~ ('^' || id || '-PURGED')
874 AND NOT active
875 AND deleted
876 AND (
877   pref_prefix IS NOT NULL OR
878   pref_first_given_name IS NOT NULL OR
879   pref_second_given_name IS NOT NULL OR
880   pref_family_name IS NOT NULL OR
881   pref_suffix IS NOT NULL OR
882   name_keywords IS NOT NULL
883 );
884 ----
885
886
887
888
889 ===== Test Notification Method =====
890
891 Patrons and staff may request a test notification for a patron's default email address or SMS
892 number via the Patron Registration interface in the staff client or the OPAC preferences interface. The OPAC_LOGIN permissions are required to
893 request a notification. When a notification is sent, it will be sent to either the user's default email or default SMS number, depending on what was requested.
894
895 ====== Upgrade Notes ======
896
897 This feature adds two new rows to action_trigger.event_definition, two into
898 action_trigger.hook, and six into action_trigger.environment.
899
900
901
902 ===== Curbside Pickup =====
903
904 The Curbside Pickup feature in Evergreen provides an interface to help
905 facilitate contact-free pickup of library materials.  It provides a dedicated
906 interface in the staff client for library staff to track and manage curbside
907 pickup appointments and materials through the various stages of the process.
908 Staff can also schedule pickup appointments on behalf of patrons.  This feature
909 also allows patrons to schedule their own curbside pickup appointments in their
910 OPAC account, as well as inform the library when they have arrived and are
911 waiting for their materials.  
912
913 This is an extension of the existing holds functionality in Evergreen.  A hold
914 must be placed for an item to be eligible for curbside pickup.  After an item
915 has been captured for a hold and is available for pickup from the holds shelf,
916 a curbside pickup appointment can be scheduled to allow the materials to be
917 obtained in a contact-free transaction.
918
919 It can accommodate several different workflows depending on how the library
920 decides to implement curbside pickup services.  It can help library staff track and
921 checkout batches of items to be picked up curbside and help facilitate
922 communication between library staff and patrons.  It does not prescribe nor require a
923 specific workflow for curbside pickup.
924
925 It can be used alongside regular (i.e. inside the library) hold pickup.  Curbside pickup
926 can be an option offered patrons in addition to regular pickup or it can
927 be the primary pickup option depending on the library’s current service plan.
928
929 It assumes the library will have a staff member assigned to managing curbside
930 pickup throughout the day.
931
932 ====== Library Settings ======
933
934 This feature adds the following library settings:
935
936  * `circ.curbside`: whether to enable curbside appointments for
937    picking up available hold requests. This defaults to off.
938     
939  * `circ.curbside.granularity`: interval between appointment slots. This
940    defaults to 15 minutes.
941  
942  * `circ.curbside.max_concurrent`: how many appointments to permit per
943    time slot.  This defaults to 10.
944
945  * `circ.curbside.disable_patron_input`: if turned on, display scheduled
946     and pending appointments in My Account in the public catalog but
947     do not give the patron the ability to change them from My Account.
948     This defaults to false, i.e., allowing patrons to modify appointments
949     from My Account.
950
951 ====== Notifications And Action Triggers ======
952
953 There are several new patron notice options related to curbside pickup.
954
955 When a patron’s holds are marked as ready for pickup in Evergreen, an email or
956 text/SMS notification can be sent to let them know that curbside pickup is an
957 option at their library.  This notice can be used to promote this service and
958 the default message will prompt patrons to log in to their OPAC account to
959 schedule an appointment or call the library to schedule an appointment.
960 Notice message is customizable.  The Trigger Event Definitions for this notice
961 are called:
962
963  * Curbside offer Email notification, triggered by CurbsideSlot reactor on a
964    definition attached to the hold available hook.
965  * Curbside offer SMS notification, triggered by CurbsideSlot reactor on a
966    definition attached to the hold available hook.
967
968 If a patron has scheduled a curbside pickup appointment, an email or text/SMS
969 notification can be sent to confirm the appointment.  It will also prompt them
970 to log into their account or call the library when they have arrived for their
971 pickup appointment.  The Trigger Event Definitions for this notice are called:
972
973  * Curbside confirmation Email notification.
974  * Curbside confirmation SMS notification.
975
976 Patrons can receive an email with a list of the items they checked out.  To
977 receive this notice patrons must have an email address associated with their
978 account and the option for “Email checkout receipts by default?” must be
979 selected in their account.  This is an existing notice in Evergreen that ties
980 in to the curbside pickup workflow.
981
982 There is another action trigger called “Trigger curbside offer events and
983 create a placeholder for the patron, where applicable”.  This action trigger
984 does not send a notice to patrons or staff.  It is a silent action behind the
985 scenes that initiates the curbside offer email or SMS notification described
986 above.  
987
988 ====== Upgrade Notes ======
989
990 This feature adds a new OpenSRF service, `open-ils.curbside`, which must be
991 enabled and registered with the public router for the feature to function.
992
993 This feature adds no new staff permissions.
994
995
996
997 ===== Allow Use of Adjusted Proximity for Age-protection =====
998
999 Introduces a new library setting to consult adjusted proximity for age-protected items at hold placement time.
1000
1001
1002
1003
1004 ==== Client ====
1005
1006
1007
1008 ===== New Angular Staff Catalog Default =====
1009
1010 The experimental Angular staff catalog has been promoted to operate as the
1011 default catalog in the browser staff client.  It will be used for all
1012 catalog entry points, except for the menu entries for the traditional
1013 catalog and any links within the traditional catalog.
1014
1015 ====== Menu Changes ======
1016
1017 * Search -> 'Search The Catalog' now searches to new catalog.
1018 * Cataloging -> 'Search The Catalog' now searches to new catalog.
1019 * Cataloging -> 'Search The Catalog (Traditional)' searches the traditional
1020   TPAC-style catalog.
1021 * Staff client splash page -> 'Search the catalog' inline form uses the
1022   new catalog.
1023
1024
1025
1026
1027
1028 ===== Basket To Bucket Action Now Allows Adding To Shared Buckets =====
1029
1030 The Angular staff catalog's 'Add Basket to Bucket' action now
1031 gives the user the option of adding the contents of the basket
1032 to a shared bucket.
1033
1034
1035 ===== Angular catalog recall/force/part holds =====
1036
1037 The Angular staff catalog now has entry points for placing Recall,
1038 Force, and Part-level holds.
1039
1040 For any item-level hold type, the user now has the option to cycle
1041 between Item, Recall, and Force hold types.  The selected type affects
1042 the full batch of holds.
1043
1044 For title-level holds, the user now has the option to select a part
1045 as the hold target for each record in the list.  Part selection is
1046 optional.
1047
1048
1049 ==== OPAC ====
1050
1051
1052 ===== New Bootstrap-based OPAC =====
1053
1054
1055 This release includes a new experimental OPAC with a cleaner, more modern design.
1056
1057 To enable the new OPAC design, open the `/etc/apache2/eg_vhost.conf` file.
1058
1059 Find the following line:
1060
1061 ----
1062 PerlAddVar OILSWebTemplatePath "/openils/var/templates"
1063 ----
1064
1065 Add the following line directly below it:
1066
1067 ----
1068 PerlAddVar OILSWebTemplatePath "/openils/var/templates-bootstrap"
1069 ----
1070
1071 Be sure that, if you have any local customizations, that they are referenced below
1072 this line.  This way, your customizations will still appear in the new OPAC design
1073 (although they may need to be adjusted to better fit the new style).
1074
1075 You can also turn on the new OPAC for some virtual hosts only, by adding it to the
1076 appropriate virtual host entry.  Be sure to reference the OILSWebTemplatePath for
1077 the `templates-bootstrap` directory before referencing any local customizations
1078 used by that virtual host.
1079
1080 To emphasize, the new OPAC skin is considered experimental for 3.6.x. There
1081 are some discrepancies between its functionality and the functionality
1082 present in the original "TPAC" skin. The Evergreen community aims to
1083 resolve those discrepancies and make the Bootstrap skin become the default
1084 OPAC for the Spring 2021 release (though the original TPAC skin will still
1085 be available). Using the Bootstrap skin in production for 3.6 is at your own risk.
1086
1087
1088
1089
1090 ===== Enhanced Public Catalog Printing and Email =====
1091
1092 Evergreen now provides additional functionality for printing and emailing
1093 bibliographic record and holdings information from the catalog, including
1094 from an individual record or from a list or basket.
1095
1096 After selecting Print or Email, the user will be presented with a preview of
1097 the printout or email, respectively.  From the preview users can chose to view
1098 Brief or Full record information (Full includes holdings information) and how
1099 records should be sorted (Author, Title, Publication Date).  Holdings
1100 information can also be limited to a certain library.
1101
1102 Users can be required to log in to their OPAC account to send an email, or this
1103 feature can be configured to allow sending an email without signing in to the
1104 public catalog. If the option to allow emailing without signing in is enabled
1105 (by turning on the new 'Allow record emailing without login' library setting),
1106 user will be asked to solve an arithmetic CAPTCHA in order to send the email.
1107
1108 ====== Administration ======
1109
1110 Two new interfaces have been added to Local Administration: Event Definition
1111 Groups and Event Definition Group Members.  The Event Definition Groups defines
1112 the various groups for Action Trigger Event Definitions -- currently Print
1113 Record(s) or Email Record(s).  The Event Definition Group Members defines the
1114 options within each group -- currently Brief or Full record information.
1115
1116 These two interfaces expose the infrastructure behind the new print and
1117 email functionality and library staff will not need to make any changes to
1118 these interfaces to use the existing print and email options.  The stock print
1119 and email Action Trigger Event Definitions can be cloned and modified to
1120 provide additional bibliographic format options.  After creating the custom
1121 Event Definition, add it to the appropriate Event Definition Group (Print
1122 Record or Email Record) and the new format will be available in the catalog.
1123
1124
1125
1126
1127
1128 ===== Credit card payments using Stripe now on version 3 (Elements) =====
1129
1130 When Stripe payments are enabled, the public catalog will now
1131 use version 3 of the Stripe client library, as well as its
1132 Elements API for building the credit card form.  For
1133 technical reasons, this more easily lends a site to PCI
1134 compliance.
1135
1136 On the staff side, the credit card option is disabled for
1137 Stripe, as that has not been implemented and in the past
1138 would just give an error.
1139
1140
1141
1142
1143 ===== Improve Access to Library Info in OPAC =====
1144
1145 Adds the library's address, email, phone, and website link to the myopac patron account preferences page.
1146
1147
1148
1149
1150 ==== Reports ====
1151
1152
1153
1154 ===== Combined Aged and Active Circulations Source Naming =====
1155
1156 A recent improvement to aid web client data retrieval
1157 speed resulted in a new reports source that was named
1158 nearly identically to a long-existing one, and both
1159 were appearing in the "Core Sources" section of reports.
1160 The newer source has been renamed for clarity and removed
1161 from the core sources to prevent confusion:
1162
1163  * "Combined Aged and Active Circulations" is now named "Combined Aged and Active Circulations (Slim Version)"
1164    and is removed from the Core Sources.
1165  * "Combined Aged and Active Circulations", which contains more linkages to other data sources, remains in the
1166    Core Sources list.
1167
1168
1169
1170
1171 ===== Reports Subtotals =====
1172
1173 Reports now allow group subtotals and grand totals.  By checking the
1174 new "Calculate grouping subtotals" checkbox under "Output Options",
1175 a new unlabeled row or column is created with the subtotals for each
1176 grouping and an unlabeled grand total row or column.
1177
1178 This takes advantage of PostreSQL's built-in ROLLUP feature.  See the
1179 PostgreSQL documentation for details:
1180
1181 https://www.postgresql.org/docs/9.6/queries-table-expressions.html#QUERIES-GROUPING-SETS
1182
1183 An example of a report that could use this new feature is
1184 one based on the Circulation source with the following fields:
1185
1186  * Circulation -> Checkout / Renewal Library -> Short (Policy) Name (Raw Data)
1187  * Circulation -> Checkout Date/Time (Year)
1188  * Circulation -> Shelving Location -> Name (Raw Data)
1189  * Circulation -> Circ ID (Count Distinct)
1190
1191 Turning on the "Calculate grouping subtotals" checkbox would make
1192 the report show subtotals for each combination of
1193 short name, checkout year, and shelving location name.
1194
1195
1196
1197
1198 ==== SIP ====
1199
1200
1201
1202 ===== Allow Username in Patron ID =====
1203
1204 Evergreen now accepts a patron's username in the SIP2 Patron ID field
1205 (AA) in addition to the barcode.  This modification is useful for
1206 vendors, such as Overdrive, who can accept a user's username.
1207 Additionally, it is easier for a patron to find and remember their
1208 username over their barcode.
1209
1210 The new feature determines if the value in the Patron ID field is a
1211 barcode or username by comparing the field value against the
1212 `opac.barcode_regex` setting for the organizational unit of the logged
1213 in SIP2 account as configured in the oils_sip.xml file.  This is
1214 similar to what the OPAC does when a patron logs in.
1215
1216 This feature requires activation.  To activate, uncomment (or add) the
1217 following line in the oils_sip.xml configuration file and change the
1218 value from 'false' to 'true'.
1219
1220 [source,xml]
1221 ----
1222 <option name='support_patron_username_login' value='true' />
1223 ----
1224
1225
1226
1227 === Acknowledgments ===
1228
1229 The Evergreen project would like to acknowledge the following
1230 organizations that commissioned developments in this release of
1231 Evergreen:
1232
1233 * C/W MARS
1234 * Equinox Open Library Initiative
1235 * Evergreen Community Development Initiative
1236 * Georgia Public Library Service
1237 * Indiana State Library
1238 * Linn-Benton Community College
1239 * MassLNC
1240 * NOBLE
1241 * PaILS
1242 * Treasure Valley Community College
1243
1244 We would also like to thank the following individuals who contributed
1245 code, translations, documentation, patches, and tests to this release of
1246 Evergreen:
1247
1248 * John Amundson
1249 * Nelson Appell
1250 * Zavier Banks
1251 * a. bellenir
1252 * Felicia Beaudry
1253 * Jason Boyer
1254 * Dan Briem
1255 * Chris Burton
1256 * Steven Callender
1257 * Lisa Carlucci
1258 * Galen Charlton
1259 * Garry Collum
1260 * Dawn Dale
1261 * Jeff Davis
1262 * Diane Disbro
1263 * Bill Erickson
1264 * Jason Etheridge
1265 * Lynn Floyd
1266 * Ruth Frasur
1267 * Blake Graham-Henderson
1268 * Rogan Hamby
1269 * Elaine Hardy
1270 * Kyle Huckins
1271 * Angela Kilsdonk
1272 * Owen Leonard
1273 * Troy Leonard
1274 * Shula Link
1275 * Tiffany Little
1276 * Mary Llewellyn
1277 * Terran McCanna
1278 * Gina Monti
1279 * Christine Morgan
1280 * Michele Morgan
1281 * Andrea Buntz Neiman
1282 * Jennifer Pringle
1283 * Mike Risher
1284 * Mike Rylander
1285 * Jane Sandberg
1286 * Dan Scott
1287 * Chris Sharp
1288 * Remington Steed
1289 * Jason Stephenson
1290 * Josh Stompro
1291 * Dan Wells
1292 * Jennifer Weston
1293 * Beth Willis
1294 * John Yorio
1295
1296 We also thank the following organizations whose employees contributed
1297 patches:
1298
1299 * Ann Arbor District Library
1300 * BC Libraries Cooperative
1301 * Bibliomation
1302 * Calvin College
1303 * Catalyte
1304 * C/W MARS
1305 * Equinox Open Library Initiative
1306 * Georgia Public Library Service
1307 * Grand Rapids Public Library
1308 * Greater Clark Hills Regional Library System
1309 * Indiana State Library
1310 * Kenton County Public Library
1311 * King County Library System
1312 * Laurentian University
1313 * Linn-Benton Community College
1314 * MOBIUS
1315 * Niagara Falls Public Library
1316 * NOBLE
1317 * Scenic Regional Library
1318 * Sigio
1319 * Washington County (MO) Public Library
1320 * Westchester Library System
1321 * Zivot Design
1322
1323 We regret any omissions.  If a contributor has been inadvertently
1324 missed, please open a bug at http://bugs.launchpad.net/evergreen/
1325 with a correction.
1326