]> git.evergreen-ils.org Git - Evergreen.git/blob - docs/RELEASE_NOTES_2_4.txt
Minor edits to release notes and addition of new permissions
[Evergreen.git] / docs / RELEASE_NOTES_2_4.txt
1 Evergreen 2.4 Beta1 Release Notes
2 =================================
3 :toc:
4 :numbered:
5
6 Upgrade notes
7 -------------
8
9 Custom Toolbar Permissions
10 ~~~~~~~~~~~~~~~~~~~~~~~~~~
11 With the addition of more granular permissions for configuring a custom
12 toolbars, the ADMIN_TOOLBAR permission alone will not allow users to 
13 configure a custom toolbar. This permission must now be used in conjunction
14 with one or more of the following permissions:
15
16 * ADMIN_TOOLBAR_FOR_ORG
17 * ADMIN_TOOLBAR_FOR_USER
18 * ADMIN_TOOLBAR_FOR_WORKSTATION
19
20 New features
21 ------------
22
23 Acquisitions
24 ~~~~~~~~~~~~
25
26 Acquisitions Inline Item Detail View
27 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
28
29 Acquisitions selection lists and purchase order interfaces contain a new link
30 beside each lineitem which, when clicked, creates an inline grid of copies
31 linked to the lineitem.  The grid contains the same information that displays
32 in the full copy edit grid (from clicking on the Copies(n) link).  However,
33 the inline grid is read-only, so it displays much faster and does not require
34 the user to change visual contexts.  
35
36 Included along the top of the lineitem table is a new 'Expand All' link which, 
37 when clicked, expands or collapses the inline grid for all visible lineitems.
38
39 Acquisitions Lineitem Order Identifiers
40 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
41
42 Staff now have the ability to specify the identifier value to use for
43 lineitems when communicating order information to vendors.  This is 
44 particularly important when a lineitem has, for example, multiple ISBNs.
45 Determining which ISBN is to act as the "order identifier" allows staff
46 to provide the most accurate order information to vendors.  
47
48 Supported identifier types include ISBN, ISSN, and UPC.  Order identifier 
49 values are relayed to vendors via EDI and print PO.
50
51 Permissions
52 +++++++++++++
53 Two new permissions are added for this feature:
54
55  * ACQ_SET_LINEITEM_IDENTIFIER
56   ** Allows staff to apply order identifiers to lineitems
57  * ACQ_ADD_LINEITEM_IDENTIFIER
58   ** Implies that new identifiers shall be added to linked bib records, 
59      when a linkage exists.
60
61 Acquisitions Purchase Order and other Interface Improvements
62 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
63
64 Feature Summary
65 +++++++++++++++
66
67 The following features, which primarily affect the user interface layer,
68 improve Acquisitions work flows.
69
70   * Avoid double-activation of POs
71   * Disable invoice and cancel options for pending POs
72   * Disable zero-copy checkbox for activated POs
73   * Disable new charges for activated POs
74   * Replace "Shelving Location" with Copy Location
75
76   * Rearranging "actions" drop-down
77     ** More consistency in actions applying to selected lineitems specifically
78     ** Things moved from the per-lineitem dropdown to the main one when
79        sensible.
80     ** Add to PO dialog added
81     ** You can no longer add lineitems to a PO if they're already on one.
82     ** Actions in dropdown now enabled/disabled differently depending on
83        the interface where it appears (PO vs Selection List vs Acq Search etc.)
84
85   * Batch update for line items
86      ** Apply updates to all copies of all selected line items at once
87      ** Relies on a middle layer method that streams back information that
88         would suit a more asynchronous display in the future (rather than
89         simply reloading the page upon success, which it does now)
90      ** For failure cases, specific information about which line item cannot
91         be updated, and why, is available to the client, although taking
92         best advantage of this information for user-friendly display is left
93         to the future.
94
95 Acquisitions MARC Upload Form Persistence
96 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
97 Adds a two-layer persistence mechanism for the acquisitions MARC file upload
98 interface.  A set of org unit settings now exist for managing default values
99 for the interface.  Additionally, for each field where no org unit setting
100 value is configured, the last-used value will be persisted locally and re-
101 used with subsequent loads of the interface.
102
103 Default Number of Acquisitions Copies to Order
104 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
105 Acquisitions providers have a new "Default # Copies" field.  When the value
106 is set, this number of copies will be automatically added to each lineitem
107 added to a purchase order for the provider.  This takes place during PO
108 creation from a selection list or existing bib record and when a lineitem is 
109 added to an existing purchase order.  If a lineitem already has copies 
110 attached, no default copies are added.
111
112 OPAC
113 ~~~~
114
115 Display alternate graphic (880) fields
116 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
117
118 By default, Evergreen displays alternate graphic fields, if any, for
119 contributors (1xx / 7xx), titles (245), edition statements (250), imprints
120 (260), notes (5xx), subjects (6xx), and series (4xx / 8xx) in search results and record details
121 per the Library of Congress MARC21 specifications:
122
123 * http://www.loc.gov/marc/bibliographic/bd880.html
124 * http://www.loc.gov/marc/bibliographic/ecbdcntf.html
125 * http://www.loc.gov/marc/bibliographic/ecbdmulti.html (Model A)
126
127 Default display
128 +++++++++++++++
129 In general, alternate graphic fields display below the corresponding
130 primary field. One exception is the attribution summary on the record details
131 page, in which the alternate graphic field contents display between the
132 primary field content and the attribution statement. To support CSS
133 customizations, HTML elements for the graphic fields have the class attribute
134 value `graphic880`.
135
136 MARC21 Feeds from OpenSearch
137 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
138 In addition to the already supported formats, you can now get raw MARC21 from
139 OpenSearch feeds, à la:
140
141     http://<host>/opac/extras/opensearch/1.1/-/marc21?searchTerms=piano
142
143
144 Search Changes
145 ^^^^^^^^^^^^^^
146 A number of changes have been made to search to allow more control and improve
147 performance. These changes and their associated configurations are global to
148 the entire system and can not be configured on a per-library basis.
149
150 Amongst other things the new search code fixes:
151
152 * Inability to use statuses and locations as part of a larger query
153 * Invalid queries being generated from advanced searches
154 * Some timeouts from backend code taking too long to perform a search
155 * Some filters being one-use only
156 * Negations not working properly where multiple indexes are involved
157
158 Improvements include:
159
160 * Exact matches on input should be more likely to float to the top of results
161 * Non-English stemming can be used, alongside or instead of English stemming
162 * Entered search terms can be found across multiple indexes
163
164 Default configuration is geared towards English but is easily changed. In a
165 production environment changes will likely require re-indexing, however.
166
167 The upgrade script could be pre-tweaked to install desired configuration before
168 it builds and/or re-builds many of the indexes.
169
170 Permissions
171 +++++++++++
172 One new permission is added for this feature:
173   * ADMIN_INDEX_NORMALIZER
174
175 Searching for deleted records
176 +++++++++++++++++++++++++++++
177 Evergreen now supports searching for deleted records via the '#deleted'
178 QP modifier.
179
180 In order to support this, sites must enable the
181 'ingest.metarecord_mapping.preserve_on_delete' internal flag.  It is off by
182 default since the ability to search for deleted records requires keeping
183 metarecord mappings around when bibs are deleted, which may not be desirable
184 for the typical site.
185
186 Two new QP filters: create_date and edit_date
187 +++++++++++++++++++++++++++++++++++++++++++++
188 These filter on the fields of the same name in biblio.record_entry.
189
190 e.g.
191
192   * create_date(,2013-02-01)  =>  records created before 2013-02-01
193   * create_date(2013-02-01)   =>  records created since 2013-02-01
194   * create_date(2013-02-01,2013-02-28)  =>  records created in Feb 2013
195   * create_date(yesterday)    =>  records since created yesterday
196
197 Show local call number in TPAC My Lists display
198 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
199 If an opac-visible call number exists that is owned by an org unit
200 relevant to the patron, show the most relevant call number label
201 and owning branch name in the My Lists display for each record in
202 the list.  Call number is displayed in both saved and temporary lists.
203
204 A call number is considered relevant if its owner is one of:
205
206 physical location library
207 preferred library (plib, home, etc.)
208 search library
209
210 If no relevant call number is found, no call number is displayed.
211
212 TPAC Google Books preview
213 ^^^^^^^^^^^^^^^^^^^^^^^^^
214 Setting `ctx.google_books_preview` to `1` in the TPAC `config.tt2`
215 configuration file will cause the TPAC to check to see, as part of the record
216 details view, if Google Books has an online preview available. If it does,
217 then a preview button will be displayed in the book cover image location.
218 If the user then clicks the preview button, the preview will load below the
219 title of the book in the record details page.
220
221 By default, this functionality is disabled to protect the privacy of users
222 who might not want to share their browsing behavior with Google.
223
224 TPAC Org Unit Hiding
225 ^^^^^^^^^^^^^^^^^^^^
226 Adds support for the opac.org_unit_hiding.depth org unit setting to
227 TPAC, which makes out-of-scope org units disappear (except when
228 explicitly requested).
229
230 Org unit hiding is based on the physical_loc (Physical Location) param /
231 cookie, which is the closest analog to 'ol' (original location), from
232 which it was based in the JSPAC.
233
234 UI Changes
235 ++++++++++
236
237  * All search org unit selectors
238  * Holds pickup lib selector
239  * Copy summary in search results page
240  * Copy list in search results page
241  * Copy summary in record detail page (which controls the copy grid).
242  * Hold summary in record detail page
243
244 Cataloging
245 ~~~~~~~~~~
246
247 MARC Import Tag Stripping
248 ^^^^^^^^^^^^^^^^^^^^^^^^^
249 Administrators can configure MARC tags which are removed from MARC records 
250 imported via Z39.50 and the Vandelay MARC Import/Export UI (ACQ and non-ACQ).  
251 Tags are organized into groups.  Groups can be marked as optional or required.
252 For each tag, every instance of the tag (including all subfields) are removed 
253 from the record.
254
255 MARC fields which are contained within required ('always_apply') tag groups
256 are always removed from inbound records.  No action is needed.  Tag groups 
257 which are optional will appear in MARC import interfaces (see below) allowing 
258 staff to select which groups of tags to strip from incoming records at import 
259 time.
260
261 Interfaces Affected
262 +++++++++++++++++++
263
264  * Admin UI
265   ** Admin => Server Administration => MARC Import Remove Fields
266  * Z39.50 Import
267   ** Cataloging => Import Record from Z39.50
268   ** Optional groups appear with the other import options
269  * Vandelay
270   ** Cataloging => MARC Import/Export (Vandelay)
271   ** Acquisitions => Load Order Records
272   ** Optional groups appear with the other import options
273
274 Permissions
275 +++++++++++
276 Three new permissions are added for this feature:
277
278   * CREATE_IMPORT_TRASH_FIELD
279   * UPDATE_IMPORT_TRASH_FIELD
280   * DELETE_IMPORT_TRASH_FIELD
281
282 Vandelay Default Match Set
283 ^^^^^^^^^^^^^^^^^^^^^^^^^^
284 A new org unit setting to specify a default Record Match Set when 
285 importing MARC records through the MARC Batch Import/Export interface. It does
286 not affect the default match set selected in acquisitions. If this
287 is set, it will not be possible to leave the Record Match Set field blank;
288 it may be necessary to define a default match set that replicates the current
289 default behavior. 
290
291 A new "Vandelay" org unit settings group is also created.
292
293 Circulation
294 ~~~~~~~~~~~
295
296 Clickable Patron Indicators
297 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
298 When retrieving a patron record, staff can now click on the indicators listed 
299 beneath the patron's name and launch the related tabs.
300
301 For example, clicking on (See Notes) will open the associated patron's notes.
302
303 "Warn patrons when their account is about to expire"
304 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
305 To give staff the ability to warn patrons when their account is about to
306 expire, the staff client can display an alert message on the patron information
307 window.  A new library setting, `Warn patrons when their account is about to
308 expire` in the *Circulation* section of the *Library Settings Editor*,
309 determines how many days in advance of a patron's account expiry date the alert
310 should be displayed. By default, warnings about upcoming patron account expiry
311 dates are not displayed.
312
313 Show Hold Patron Name in TPAC
314 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
315 When looking up patron information for hold placement via the staff client in
316 TPac, the hold patron name is now shown next to the entered barcode. In the
317 event that the barcode is not foundi, a notice is displayed and the submit
318 button is disabled until a valid barcode is entered or the staff member is
319 switched to.
320
321 Show Holds On Bib Menu Option
322 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
323 Add direct "Show holds on bibs" menu option from item checkin, item status, 
324 and patron hold interfaces. This gives staff a quicker way of viewing who 
325 else has holds on an item instead of having to click an option to view the 
326 bib record, then clicking into the menus to view holds.
327
328 Administration
329 ~~~~~~~~~~~~~~
330
331 Calculated Proximity Adjustments
332 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
333 Allows customization to the way that Evergreen measures the distance between
334 org units for the purposes of 1) determining what copy at what org unit is best
335 suited for targeting a title-level hold, and 2) determining what hold is best
336 suited for fulfillment by a copy-in-hand at capture (checkin) time.  The
337 customization is based on a table 'actor.org_unit_proximity_adjustment', with
338 certain matching criteria that the system compares to properties of the holds
339 and copies in question.
340
341 Permissions
342 +++++++++++
343 One new permission is added for this feature:
344   * ADMIN_PROXIMITY_ADJUSTMENT
345     ** Allows staff to administer the proximity adjustments
346
347
348 Custom best-hold selection sort order
349 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
350 The ranking algorithm that chooses the best hold to target a copy in 
351 hand at a capture time used to be fairly simple.  It had two modes, FIFO
352 and not-FIFO, and that was it.
353
354 This change allows full configuration of that algorithm.  In other 
355 words, when the system captures a copy and sets out to evaluate what
356 hold, if any, that copy might best fulfill, site staff of sufficient
357 permission level are now empowered to choose exactly which comparisons
358 the systems makes in what order.  This gives said staff much greater
359 flexibility than they have today over holds policy.
360
361 For more information, see the included tech spec documents.
362
363 Permissions
364 +++++++++++
365 One new permission is added for this feature:
366   * ADMIN_HOLD_CAPTURE_SORT
367     ** Allows staff to adminster the custom best-hold selection sort order.
368
369 Generic CVS Notification Generator/Receiver
370 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
371
372 New Action/Trigger template and sample event definitions for creating a CSV
373 export file for various patron actions, primarily for the purpose of creating
374 patron notices via external notification mechanisms.
375
376 The reference implementation for this development is the TalkingTech iTiva
377 product, which consumes CSV files for generating phone/text notifications and
378 produces CSV results files for informing the ILS of notification statuses.  
379 The template and send/receive scripts, however, should be generic enough to 
380 create CSV for any type of 3rd-party notification product.
381
382 For more information, see the included tech spec documents.
383
384 Storing Z39.50 Server Credentials
385 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
386
387 In the Z39.50 configuration interface, staff now have the option to apply
388 z39.50 login credentials to each Z39.50 server at different levels of the 
389 org unit hierarchy (similar to org unit settings).  When credentials are set 
390 for a Z39 server, searches against the z39 server will used the stored 
391 credentials, unless other credentials are provided by the caller, in which 
392 case the caller credentials are used.
393
394 For security purposes, passwords may not be retrieved or reported on by staff.  
395 Staff can only apply new values for credentials or clear existing ones.
396
397 URL Verification
398 ^^^^^^^^^^^^^^^^
399 In order to support verification of URLs, Evergreen now has several new
400 capabilities, and extensions to some existing features.
401
402 A wizard-style interface that walks a staff member through the process of collecting records and URLs to verify, verifying and reviewing the URLs.
403
404 URL validation sessions are built as a whole to support immediate and
405 future review of any URLs.  Each session carries a name, an owner, a set
406 of record search criteria, a set of tag and subfield combinations describing
407 the location of URLs to validate, a record container for tracking individual
408 records to verify, and a set of state and data tables for managing the
409 processing of individual URLs.
410
411 A set of middle-layer methods provide the business logic required to collect
412 records, extract, parse and test the validity of the URLs.
413
414 For more information, see the included tech spec documents.
415
416 Permissions
417 +++++++++++
418 One new permission is added for this feature:
419
420  * URL_VERIFY
421
422 Serials
423 ~~~~~~~
424
425 Serial Control: Embed Alternate Interfaces
426 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
427 As another step toward a unified interface, the serial control subscription
428 editor now consists of an embedded version of the alternate control. This
429 reduces duplication of both code and documentation, and smooths the eventual
430 transition to a single interface.
431
432 In order to not lose any essential features, the following additions were made
433 to the new combination editor:
434
435 * note editors on subscriptions and distributions
436 * labeled dropdown for distribution summary options ("Add to record entry", "Use record entry only", etc.)
437 * legacy record entry linkage setup (Allows one to tie a distribution's information to a particular serial record entry (i.e. a MFHD record))
438
439 Serial Control: Set Special Statuses
440 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
441 The Serial Control interface prevents direct editing of serial item statuses
442 for data integrity reasons. As an alternative to direct control, the interface
443 now offers new menu options for setting items to 'claimed', 'not held', and
444 'not published'. Note that these statuses are still currently useful for
445 reporting and display purposes only.
446
447 Staff Client
448 ~~~~~~~~~~~~
449
450 add "about:about" to developer menu in staff client
451 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
452
453 about:about gives access to various XULRunner diagnostic tools.
454 Useful ones include:
455
456 about:buildconfig::
457     Get information about how the staff client is built.
458 about:config::
459     Tweak XULRunner settings.
460 about:memory::
461     Get detailed information about the memory usage of the staff
462     client.
463
464
465 Miscellaneous
466 -------------
467
468 Loading Sample Data
469 ~~~~~~~~~~~~~~~~~~~
470 One common need for people evaluating Evergreen, as well as for developers,
471 writers, and testers, is a set of sample data that can be easily loaded into
472 the Evergreen database and provide a consistent set of results for testing
473 and training purposes.
474
475 This release features sets of sample data consisting of:
476
477 * 100 bibliographic records retrievable via a "concerto" keyword search
478 * 100 French bibliographic records
479 * Associated call numbers, copies, parts, and conjoined items
480 * Patron accounts, including some recently expired patrons
481 * Circulation transactions, including some holds and some overdue items
482
483 To load the sample data into a freshly installed Evergreen database, you can
484 pass the following arguments to the `eg_db_config` script (either when you are
485 creating the initial database schema, or as a separate call after creating the
486 database schema):
487
488 * `--load-all-sample`: Loads all sample data, including bibliographic records,
489    call numbers, copies, users, and transactions.
490 * `--load-concerto-sample`: Loads a subset of sample data that includes just
491   100 bibliographic records, and associated call numbers and copies.