# RELEASE NOTES FOR KOHA 20.05.00
31 May 2020
Koha is the first free and open source software library automation
package (ILS). Development is sponsored by libraries of varying types
and sizes, volunteers, and support companies from around the world. The
website for the Koha project is:
- [Koha Community](http://koha-community.org)
Koha 20.05.00 can be downloaded from:
- [Download](http://download.koha-community.org/koha-20.05-latest.tar.gz)
Installation instructions can be found at:
- [Koha Wiki](http://wiki.koha-community.org/wiki/Installation_Documentation)
- OR in the INSTALL files that come in the tarball
Koha 20.05.00 is a major release, that comes with many new features.
It includes 13 new features, 275 enhancements, 592 bugfixes.
A new Technical highlights section is included at the bottom of these notes for those seeking a short summary of the more technical changes included in this release
### System requirements
Koha is continuously tested against the following configurations and as such, these are the recommendations for
deployment:
- Debian Jessie with MySQL 5.5 (End of life)
- Debian Stretch with MariaDB 10.1
- Debian Buster with MariaDB 10.3
- Ubuntu Bionic with MariaDB 10.1
- Debian Stretch with MySQL 8.0 (Experimental MySQL 8.0 support)
Additional notes:
- Perl 5.10 is required (5.24 is recommended)
- Zebra or Elasticsearch is required
## New features
### Acquisitions
- [[24347]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24347) Add a 'search to order' function
**Sponsored by** *Athens County Public Libraries*
>This new feature allows staff to add items to an order via a new 'Search to order' function accessible from the basket. The order can then be created either directly from the result list or the detail pages of the catalog.
>This replaces the former search functionality for existing records within the acquisitions module and makes it possible to use all search features and information shown in the normal catalog.
### Circulation
- [[13881]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=13881) Add ability to defined circulation desks
**Sponsored by** *Bibliothèque Universitaire des Langues et Civilisations (BULAC)*
>When enabled, this feature makes it possible to define circulation desks per library.
>
>Future developments are planned to allow associating hold pickup locations with desks and other features.
>
>**New system preference**: `UseCirculationDesks` defaults to disabled.
- [[24846]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24846) Add a tool to enable bulk edit of due dates
**Sponsored by** *BibLibre*, *ByWater Solutions* and *PTFS Europe*
>With events sometimes leading to unforeseen library closures, (Coronavirus for example), this new tool allows librarians to update due dates in bulk based on library and current due date of the materials on loan.
>
>Access to the tool requires a new permission `batch_extend_due_dates`.
### Fines and fees
- [[23354]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23354) Add a 'Point of sale' screen to allow anonymous payments
**Sponsored by** *Cheshire Libraries Shared Services* and *PTFS Europe*
>The new feature adds point of sale functionality to Koha.
>
>When enabled, a new "Point of sale" screen will be available from the staff client home page. From this screen, one can build up a transaction consisting of various items defined in the account debit types administration area and then process the transaction anonymously making a 'sale' to the end-user. The payment type, cash register and staff user id's are all stored for later auditing purposes.
>
>**New system preference**: `EnablePointOfSale` defaults to disabled.
- [[23355]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23355) Add a 'cashup' process to accounts
**Sponsored by** *Cheshire Libraries Shared Services* and *PTFS Europe*
>This new feature complements the new 'Point of sale' page introduced in bug 23354 by adding a page to display historic transactions that have taken place on the selected cash register since the last 'cashup' event. One can record a 'cashup' from this page by comparing the summary values displayed on the page to the actual amounts found in the cash register and then clicking the 'cashup' button to record that this process has taken place.
- [[23442]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23442) Add a 'refund' process to accounts
**Sponsored by** *Cheshire Libraries Shared Services* and *PTFS Europe*
>This enhancement adds a workflow that allows staff with the new `refund` permission to refund/reimburse patrons when they have been incorrectly charged for a transaction. It records an audit trail for the process.
- [[24080]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24080) Add a 'payout' process to accounts
**Sponsored by** *Cheshire Libraries Shared Services* and *PTFS Europe*
>This new feature adds an audited process for paying out excess credits on a patrons account.
### ILL
- [[23112]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23112) Add circulation process to inter-library loans
**Sponsored by** *Loughborough University*
>This new feature, when enabled, adds the option for library staff to immediately issue a received inter-library loan item to the patron who requested it. The checkout is immediate and due date is set, either as a fixed date entered by the librarian or based upon the standard circulation rules.
>
>**New system preference**: `CirculateILL` defaults to disabled.
### OPAC
- [[4461]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=4461) Add a context-sensitive report a problem process
**Sponsored by** *Catalyst*
>This new feature, when enabled, lets patrons report problems using the OPAC.
>
>It adds a link to each page of the OPAC to a form so that patrons can report problems. Problems are then available via a new problem report management area in the staff interface.
>
>**New system preference**: `OPACReportProblem` defaults to disabled.
### Plugin architecture
- [[23975]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23975) Add ability to search and install plugins from GitHub
>This patch makes public plugins discoverable from within Koha itself via a search box at the top of the plugin management page.
>
>One can search for plugins and install them directly from their source.
>
>WARNING: Plugins are not yet verified by the community, use at your own risk. The feature is **disabled** by default; to enable it an administrator must uncomment, or add new lines to, the relevant configuration lines inside the `plugin_repos` config block within koha-conf.xml.
### REST API
- [[24302]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24302) Add a way to specify nested objects to embed in OpenAPI
>This development introduces a way to define embeddable objects on API routes. On the path specs, they will be specified using dot notation for nested embeddings:
>
>"x-koha-embed": [
> 'biblio',
> 'biblio.items',
> 'fund'
>]
>
>The consumer will need to add a header to the request, specifying the things they want to embed using comma-separated values like this:
>
>x-koha-embed: 'biblio,fund'
>
>This header will be validated against the endpoint spec and an error code will be returned if the request is not appropriate.
### Searching - Elasticsearch
- [[14567]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14567) Add an elasticsearch driven browse interface to the OPAC
>This is an interface for quick and efficient browsing through records with Elasticsearch.
>
>It presents a page at /cgi-bin/koha/opac-browse.pl that allows you to enter the prefix of an author, title, or subject and it'll give you a list of the options that begin with the text you entered. You can then scroll forward through these and select the one you're after.
>
>Selecting a result provides a list of records
>that match that particular search.
>
>**New system preference**: `OpacBrowseSearch` defaults to disabled.
### Web services
- [[24369]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24369) Add ability to set CORS header in Koha
>This development adds support for setting the Access-Control-Allow-Origin header in Koha using the new AccessControlAllowOrigin system preference. This is especially useful for integrating data from the services provided by Koha on sites other than Koha itself.
>
>**New system preference**: `AccessControlAllowOrigin` defaults to empty.
## Enhancements
### Acquisitions
- [[12502]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=12502) Add columns for note, order number and ISBN to late orders page
>This adds the internal note, vendor note, order number and ISBN to the late orders table. The notes are editable directly from the table using a modal dialog.
- [[14963]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14963) Add the ability to suggest purchase from existing titles
**Sponsored by** *Bibliothèque Universitaire des Langues et Civilisations (BULAC)*
>This enhancement adds the ability to create a new purchase suggestion from an existing catalogue record.
- [[14973]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14973) Add an alert during purchase suggestion submissions to warn the user when an existing biblio appears to satisfy the request
**Sponsored by** *Bibliothèque Universitaire des Langues et Civilisations (BULAC)*
>This enhancement to the suggestions process adds a warning to alert the user to the presence of an apparent holding that already satisfies the suggestion they are about to submit.
- [[16784]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16784) Add table configuration for the suggestions table
- [[22774]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22774) Add ability to limit the number of purchase suggestions a patron may submit in a specified time period
>This enhancement allows the library to limit the number of purchase suggestions a user may submit within a given time period.
>
>**New system preferences**: `MaxTotalSuggestions` defaults to empty (unrestricted) and `NumberOfSuggestionDays` defaults to empty (disabled).
- [[22784]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22784) Add the ability to archive purchase suggestions
**Sponsored by** *Bibliothèque Universitaire des Langues et Civilisations (BULAC)*
>This enhancements to the suggestions process adds a way to archive completed purchase suggestions.
- [[23590]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23590) Add the ability to change the manager of a suggestion and notify the new manager
**Sponsored by** *Bibliothèque Universitaire des Langues et Civilisations (BULAC)*
>This enhancement to the purchase suggestions process adds the ability to modify the manager of a suggestion.
>
>When assigning a suggestion to a new manager, the new notice `NOTIFY_MANAGER` will be sent to the manager to alert them.
>
>To keep track of the different modifications, 2 new columns are added to the suggestion table: `lastmodificationby` and `lastmodificationdate`, which will be updated automatically when a suggestion is edited.
- [[23591]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23591) Add a new "Suggestions details" tab on bibliographic record
>This enhancement adds a new 'Suggestion details' tab to the bibliographic record details view.
- [[23592]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23592) Add a shortcut from suggestion details to the bibliographic details in the staff client
**Sponsored by** *Bibliothèque Universitaire des Langues et Civilisations (BULAC)*
- [[23593]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23593) Add a shortcut from suggestion details to the bibliographic record in the OPAC
**Sponsored by** *Bibliothèque Universitaire des Langues et Civilisations (BULAC)*
- [[23594]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23594) Add ability to batch modify itemtypes from the suggestions page
**Sponsored by** *Bibliothèque Universitaire des Langues et Civilisations (BULAC)*
>This enhancement allows users to update the item types for selected suggestions on the suggestions management page.
- [[23596]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23596) Add ability to modify the suggestions 'reason' field when receiving the item
**Sponsored by** *Bibliothèque Universitaire des Langues et Civilisations (BULAC)*
>The suggestion 'reason' field is often used to communicate additional information about a suggestion between the patron making the suggestion and the staff member acting upon it.
>
>This enhancement allows staff to update the field upon receipt of the item and thus update the patron regarding the current state of the new material.
- [[24158]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24158) Add ability to receive items in multiple currencies
**Sponsored by** *Athlone Institute of Technology*
>This enhancement adds a currency dropdown to the actual cost field on the accounting details panel at the point of receipt.
- [[24161]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24161) Add ability to track the claim dates of later orders
**Sponsored by** *Cork Institute of Technology*
>This enhancement adds the ability to track multiple claim dates for a late order and exposes this audit record via the late orders and basket pages.
- [[24162]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24162) Add quantity column to the late orders table
**Sponsored by** *Cork Institute of Technology*
>This enhancement adds a quantity column to the late orders table.
- [[24163]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24163) Add ability to define a CSV profile for late orders export
**Sponsored by** *Institute of Technology Tralee*
- [[24276]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24276) Add functionality to apply defaults from the ACQ framework for mandatory fields when adding records from external sources
- [[24308]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24308) Add ability to sort by dates in the suggestions table
>Separates information about dates and roles into separate columns so they can be sorted nicely.
- [[24819]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24819) Add ability for librarians to choose a patron when entering a purchase suggestion
### Architecture, internals, and plumbing
- [[18936]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=18936) Move issuingrules into circulation_rules
>As part of ongoing efforts to simplify and enhance the circulation rules system, the `issuingrules` table has been removed and replaced by a new `circulation_rules` table.
>
>Any reports that may have used the issueingrules table will need to be updated to utilise the updated database structure.
- [[19735]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=19735) Move Perl deps definitions into a cpanfile
>This enhancement moves us away from custom-built dependency management and to the widely adopted cpanfile format for perl dependency listing.
>
>If you are running koha from git for development purposes you can now install perl dependencies using standard perl tooling and the included cpanfile.
>
>This patch also introduces the ability to set maximum versions in our dependancy listing (and excluded versions too), which should help us better track our compatibility.
- [[20116]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=20116) Improve performance by caching the language list
- [[20443]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=20443) Move C4::Members::Attributes to Koha namespace
- [[20728]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=20728) Remove subroutines GetLastOrder*
- [[21294]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=21294) Add identification of boolean fields in the database
- [[21503]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=21503) Update AuthorisedValues.pm to fall back to code if description doesn't exist
- [[21746]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=21746) Remove NO_LIBRARY_SET
- [[21800]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=21800) TransformKohaToMarc should respect non-repeatability of item subfields
- [[22529]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22529) /svc/members/search relies on quirks of haspermission
- [[22589]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22589) Remove sub C4::Overdues::BorType
- [[22823]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22823) Koha::Library needs a method for obtaining the inbound email address
>This patch adds a new `inbound_email_address` method to the Koha::Library class. This allows for a consistent way of getting a libraries branch email address for incoming mail.
- [[23463]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23463) Move C4::Items CRUD subroutines to Koha::Item
- [[24052]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24052) Koha::XSLT housekeeping for bug 23290 (follow-up)
- [[24066]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24066) Koha::Patron->has_permission has no POD
- [[24103]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24103) Add option to dump built search query to templates
>This enhancement allows you to view the search query used by Zebra or Elasticsearch, to help with troubleshooting. To use, enable the new system preference DumpSearchQueryTemplate, enable `DumpTemplateVarsIntranet` and `DumpTemplateVarsOpac`, and then search the page source in the staff interface or OPAC for 'search_query'.
>
>**New system preference**: `DumpSearchQueryTemplate` defaults to disabled.
- [[24149]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24149) Add new Koha::Statistic[s] classes
**Sponsored by** *Association KohaLa*
- [[24252]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24252) Add credits, debits, credit_offsets and debit_offsets relationships to Koha::Account::Line
**Sponsored by** *Cheshire Libraries Shared Services* and *PTFS Europe*
>This enhancement allows for fetching related credits, debits and offsets directly from an existing Koha::Account::Line object and includes compatibility for prefetching of relations for performance.
- [[24255]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24255) Add totals methods Koha::Account::Lines
**Sponsored by** *Cheshire Libraries Shared Services* and *PTFS Europe*
>This enhancement completes the set of summation methods available from a Koha::Account::Lines resultset object, complimenting the existing `total_outstanding` method.
>
>It introduces the following methods:
>
>* `total` - Sum of all `amount` fields in the accountlines set.
>* `credits_total` - Sum of all `amount` fields for credits in the accountlines set.
>* `debits_total` - Sum of all `amount` fields for debits in the accountlines set.
- [[24356]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24356) objects.search prefetch
>This enhancement makes the Koha::Object(s) derived classes expose information about prefetch-able relations. This is then used by a new helper to generate the prefetch information for the DBIC query.
- [[24368]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24368) Koha::Libraries->pickup_locations needs refactoring/ratifying
- [[24418]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24418) Add Koha::Biblio->suggestions
- [[24419]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24419) Add Koha::Suggestion->suggester accessor
- [[24430]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24430) Remove C4::Biblio::CountBiblioInOrders
- [[24435]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24435) Add Koha::Biblio->items_count
- [[24440]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24440) Add ->current_item_level_holds to Koha::Acquisition::Order
- [[24448]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24448) Add Koha::Biblio->subscriptions_count
- [[24455]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24455) Add ability to apply Koha formatting to dates from Javascript
>This patchset lays the foundations for applying date formatting as described in the Koha system preferences to datetimes returned by the API in RFC3339 format.
- [[24463]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24463) Consistent accessor-relationship naming for basket_group in Basket.pm
- [[24467]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24467) *_count methods should be avoided
- [[24468]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24468) C4::Reserves::_get_itype is no longer used
- [[24529]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24529) Uninitialised value warnings in C4::Reserves
- [[24545]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24545) Replace Franklin Street by gnu.org/licenses in copyright
>This enhancement updates the GNU GPL license and copyright statement in all files so they are the same. It also updates the QA check to catch all new files.
- [[24561]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24561) Add a datatables API wrapper
>This patch adds a datatables wrapper that allows using datatables against Koha's API. It implements:
>- Server side pagination
>- Filtering/searching
>- Embedding related objects in the request
>- Sorting and filtering by nested objects
- [[24642]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24642) Cache::Memcached::Fast::Safe must be marked as mandatory
- [[24715]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24715) Cache repeatable subfield in TransformKohaToMarc
- [[24721]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24721) emailLibrarianWhenHoldIsPlaced should use Koha::Library->inbound_email_address
- [[24723]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24723) EmailPurchaseSuggestions should use Koha::Library->inbound_email_address when set to 'BranchEmailAddress'
- [[24726]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24726) overdue_notices.pl should use Koha::Library->inbound_email_address
- [[24732]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24732) Make DumpTemplateVars more readable
- [[24735]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24735) Remove QueryParser-related code
- [[24759]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24759) OpacRenewalBranch code should be a Koha::Item method
- [[24837]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24837) selectbranchprinter needs to be renamed
- [[24994]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24994) TableExists should be used instead of IF NOT EXISTS in updatedatabase
- [[25045]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25045) Add a way to restrict anonymous access to public routes (OpacPublic behaviour)
>This enhancement allows libraries to distinctly disable the OPAC but allow the public facing API's to be enabled.
>
>**New system preference**: `RESTPublicAnonymousRequests` defaults to enabled.
- [[25109]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25109) Add execution locking to Koha::Script
- [[25172]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25172) Koha::Logger init is failing silently
- [[25296]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25296) Add a way to force an empty Koha::Objects resultset
- [[25297]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25297) Consistent return value in K::A::Order->current_item_level_holds
- [[25303]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25303) Koha::Objects->delete should not skip overridden object class ->delete
### Authentication
- [[21190]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=21190) Add logging of successful/unsuccessful login attempts
>This enhancement adds two new logging preferences `AuthFailureLog` and `AuthSuccessLog` in order to keep track of bad login attempts and successful ones.
>
>NOTE: In some countries, this may be a requirement as a local application of GDPR legislation.
>
>**New system preferences**: `AuthFailureLog` and `AuthSuccessLog` both default to disabled.
### Cataloging
- [[3426]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=3426) Add support for multiple tags to the itemcallnumber system preference
>The itemcallnumber system preference now allows to specify multiple fields from which Koha can pull a suggestion for the itemcallnumber to use when adding items.
- [[7882]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=7882) Add ability to move and reorder fields and subfields in MARC editor
>This feature allows to change the sequence of tags and subfields in the cataloguing editor usind drag & drop.
- [[8643]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8643) Add ability to mark some MARC tags and subfields as important and alert on saving the record if they are found to be empty
**Sponsored by** *Centre collégial des services regroupés*
>This feature allows tags and subfields in bibliographic frameworks to be marked as important. The important attribute will trigger a confirmation message on saving the record, but will allow you to save the record without filling the fields.
- [[23349]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23349) Add batch operations to staff interface catalog search results
>With this enhancement there is a new "Edit" menu on the catalog search that allows to "Batch edit", "Batch delete," and "Merge" selected records from the result list.
- [[24173]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24173) Add `subtitle` & `published date` to the search page in the advanced editor
>This enhancement adds subtitle (all parts) and date published to the results that come up for the Advanced editor search.
- [[24452]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24452) Add visual cue for whitespace in the advanced editor
>Multiple spaces will now be highlighted by a red dotted underline in the editor.
- [[25231]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25231) Remove alert when replacing a bibliographic record via Z39.50
### Circulation
- [[18355]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=18355) Add 'permanent location' alongside 'shelving location' when located on cart
- [[21443]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=21443) Add ability to exclude holidays when calculating rentals fees by time period
>Allows to configure on item type level, if the calendar will be taken into account when calculating hourly or daily rental fees.
- [[23051]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23051) Add ability to optionally renew fine accruing items when all fines on item are paid off
**Sponsored by** *Loughborough University*
>With the addition of a new `RenewAccruingItemWhenPaid` system preference, we gain the ability to automatically renew items with accruing fines at the point of payment of those fines.
>
>**New system preferences**: `RenewAccruingItemWhenPaid` and `RenewAccruingItemInOpac` both default to disabled.
- [[24287]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24287) Add ability to record what triggered a given transfer
>With the addition of the `reason` field to the `branchtransfers` table this allows us to track what triggered a transfer which is helpful both for later audit and for later use in code where we may want to cancel or replace existing transfers.
- [[24296]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24296) Move stock rotation transfer triggers from `comments` to `reason`
- [[24297]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24297) Record if a transfer was triggered 'manually'
- [[24298]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24298) Record if a transfer was triggered by 'return to homebranch'
- [[24299]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24299) Record if a transfer was triggered by 'rotating collections'
- [[24436]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24436) Record if a transfer was triggered by a 'hold'
- [[24585]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24585) Add 'Managed on' and 'Suggested on' columns to suggestions tab in patron account in staff
- [[25188]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25188) Make circulation notes more prominent on the patron details tab
**Sponsored by** *PTFS Europe*
### Command-line Utilities
- [[15214]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=15214) Add logging of authority updates to bulkmarcimport
- [[18414]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=18414) Add ability to pass a file of borrowernumbers for deletion to delete_patrons.pl
>Adds the ability to specify a file with the --file flag that
>should be a list of borrowernumbers for deletion.
>
>If used without other flags it will delete the list of borrowers, if used with other flags it will treat the other criteria as filters for the list.
- [[19008]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=19008) Add more options to cleanup database script
>The cleanup_database.pl cronjob now also includes options for deleting:
>
>- entries from the statistics table
>- deleted bibliographic records and items (deletedbiblio, deletedbiblioitems, deletedbiblio_metadata, deleteditems)
>- deleted patrons (deleted_patrons)
>- returend checkouts (old_issues)
>- filled and cancelled holds (old_reserves)
>- finished transfers between libraries (branchtransfers)
- [[21177]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=21177) Add ability to run misc/devel/update_dbic_class_files.pl without passing parameters by defaulting to koha-conf.xml
- [[21865]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=21865) Add Elasticsearch support to, and improve verbose output of, `remove_unused_authorities.pl`
- [[23571]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23571) Add measures to prevent concurrent execution of fines.pl
**Sponsored by** *Orex Digital*
- [[23871]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23871) Add check for 'title exists' to `search_for_data_inconsistencies.pl`
- [[24340]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24340) Add ability to disable SIP using koha-sip
>This enhancement adds --enable and --disable options to the koha-sip Debian package command.
>
>Usage:
>- koha-sip --enable instancename => Enables the Koha SIP server
>- koha-sip --disable instancename => Disables and stops the Koha SIP server
- [[24526]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24526) Add verbose and test modes to the `automatic_renewals.pl` cronjob
>This patchset adds new options to the automatic_renewals.pl script to allow test and verbose modes.
>
>**Important:** The patches make the --confirm switch required, without it script will be run in test mode. Existing scheduled cronjobs will need to be updated to supply this switch.
>
>Running without --confirm will default in verbose mode as well.
- [[24651]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24651) Add --maxdays option to the `fines.pl` cronjob to reduce the chance of re-processing very old, already capped, fines.
>Improve the performances of the fines.pl cronjob by reducing the number of accountlines it targets by this new `--maxdays` option.
- [[24883]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24883) Add `misc/load_yaml.pl` utility script to allow manual loading of yaml data files
>During the 20.05 cycle a number of improvements were made to the installation mechanisms to enhance the translation workflows for this area. As part of that work many existing translated .sql files were moved to a yaml based file.
### Course reserves
- [[15377]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=15377) Add ability to remove 'checked out' items from course reserves
>This enhancement allows the removal of items that are listed on a course reserve and are checked out. Previously, checked out items could not be removed.
- [[22630]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22630) Add ability to change the homebranch in course reserves
**Sponsored by** *Université Jean Moulin Lyon 3*
- [[22970]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22970) Add ability to change homebranch in batch add course reserves
**Sponsored by** *Université Jean Moulin Lyon 3*
- [[23784]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23784) Show subtitle, number and parts in course reserves list of items in OPAC
- [[24343]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24343) Show subtitle, number and parts in course reserves list of titles in staff client
- [[25341]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25341) When adding a single item to course reserves, ignore whitespace
### Database
- [[18177]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=18177) Remove unused columns in aqbooksellers
- [[22887]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22887) authorised_values is missing a unique constraint on category + authorised_value
- [[22987]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22987) Add biblioimages.timestamp
- [[25152]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25152) subscription.closed is a boolean and must be tinyint(1)
### Developer documentation
- [[24774]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24774) Specify 2 space indentation for JSON files in .editorconfig
**Sponsored by** *Hypernova Oy*
### Fines and fees
- [[6508]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=6508) Show indication of existing 'Charges' on tab of the same name
>With this enhancement the amount of pending charges/credits will be shown in the tab description on the checkouts and details pages of a patron account in the staff interface. When there are no pending charges, the tab won't be visible.
- [[14898]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14898) Add 'Save and pay' button to use after adding a manual invoice
- [[17702]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17702) Create configuration for account credit types
>This adds a new configuration page for credit types to the administration module. It shows all internal credit types used by Koha and allows to configure additional credit types. Additional credit types might be used for anonymous transactions with the Point of sale feature.
- [[24081]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24081) Add a 'discount' process to accounts
>Allows to specify and apply a discount on a patron's charges. Staff will require the new permission 'discount' to use this new functionality.
- [[24082]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24082) Add a 'refund' option to anonymous payments
- [[24380]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24380) Add option to recalculate fines upon a backdated return distinctly from `CalculateFinesOnReturn`
>This enhancement allows libraries to set the option to calculate fines upon a backdated return distinctly from the broader option to always recalculate fines on return option.
>
>**New system preference**: `CalculateFinesOnBackdate` defaults to enabled on new installations or the value of `CalucalteFinesOnReturn` during upgrades.
- [[24478]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24478) Make it possible to deactivate point of sale
- [[24479]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24479) POS doesn't follow CurrencyFormat
- [[24492]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24492) Add a 'library cashup' workflow to the point of sale system
>This enhancement adds a new 'library details' page to the POS system which displays a summary of the cash register transactions for a library since each register was last cashed up. It also allows for cashing up individual registers or cashing up all registers at a given library in one transaction.
- [[24592]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24592) Clarify LOST_RETURN process by using FOUND over RETURNED
- [[24604]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24604) Add 'Pay' button under Transactions tab in patron accounting
- [[24775]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24775) Payment submit button on POS page should have an ID
- [[24812]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24812) Add permission for 'discount' process
- [[24818]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24818) Accountline creation dates should be datetimes
- [[24828]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24828) Add cash register support to SIP2
- [[24951]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24951) Payout modal confirm button should have an ID
- [[24952]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24952) Refund modal confirm button should have an ID
### Hold requests
- [[16547]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16547) Can't place item level hold directly from search results screen
>This enhancement lets you place and an item level hold from a search results list.
- [[19718]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=19718) Create message for patrons with multiple holds on the same item
- [[22284]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22284) Add ability to define groups of locations for hold pickup
**Sponsored by** *Vermont Organization of Koha Automated Libraries*
>Adds the ability to define groups of libraries for use in holds policy.
- [[24547]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24547) Add more action logs for holds
>Trapping and filling holds will now create entries in the logs, when HoldsLog system preference is activated.
- [[24907]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24907) Optionally exclude suspended holds from holds ratio report
- [[24953]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24953) Minor corrections to hold ratios report sidebar
### I18N/L10N
- [[13897]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=13897) Use YAML files for installer data
- [[21156]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=21156) Internationalization: plural forms, context, and more for JS files
- [[23790]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23790) fr-CA translation of ACCOUNT_DEBIT and ACCOUNT_CREDIT notices
- [[24063]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24063) Add Sami language characters to Zebra
>This patch adds some additional characters to the default zebra mappings for Sami languages to aid in searching on systems with such data present.
- [[24211]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24211) Compress/uncompress translation files
- [[24262]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24262) Translate installer data in YAML format
- [[24583]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24583) Rewrite mandatory installation files to YAML
- [[24584]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24584) Rewrite optional installation files to YAML
- [[24593]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24593) Rewrite MARC21 optional data to YAML
- [[24594]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24594) Rewrite MARC21 mandatory data to YAML
- [[24648]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24648) Contextualization of past tense "Created"
- [[24662]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24662) Remove global variables MSG_* from datatables.inc
- [[24664]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24664) Add missing *-messages-js.po
### ILL
- [[23173]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23173) ILL should be able to search third party sources prior to request creation
**Sponsored by** *Public Health England*
>This feature adds the required infrastructure to enable ILL availability plugins to intercept the request creation process and, using the supplied metadata, search for and display possible relevant items from whichever availability plugins are installed.
>
>**New system preference**: `ILLCheckAvailability` defaults to disabled.
### Installation and upgrade (command-line installer)
- [[24696]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24696) We should output completion times in the updatedatabase output.
### Installation and upgrade (web-based installer)
- [[22655]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22655) Add setup of a hold rule to the onboarding tool
**Sponsored by** *Catalyst*
- [[24131]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24131) Improved formatting for output of updatedatabase
- [[24314]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24314) Update de-DE MARC21 frameworks for updates 28+29 (May and November 2019)
- [[24707]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24707) Remove AMICUS from default fr-CA z39.50 servers
>This removes AMICUS from the fr-CA sample z39.50 servers list as it is no longer valid.
- [[24708]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24708) Update Z39.50 server attribute in fr-CA installation file
>This enhancement adds a PQF attribute to the BANQ entry in the fr-CA sample z39.50 servers list, enabling the search to work correctly.
### Label/patron card printing
- [[7468]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=7468) Add label to batch by barcode range
>This enhancement to the label creator tool adds an option to let you generate a range of barcode numbers (for example, from 05000 to 05500) and save these as a PDF, ready for printing.
### Lists
- [[20754]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=20754) Db revision to remove double accepted list shares
### MARC Authority data support
- [[25235]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25235) Don't alert when replacing an authority record via Z39.50
### MARC Bibliographic data support
- [[15727]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=15727) Add 385$a - Audience to MARC21 detail pages
- [[23783]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23783) Add display of languages from MARC21 field 041 to the OPAC
>This enhancement adds display handling for the 041 MARC21 languages field, into the OPAC results and item details pages.
- [[24312]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24312) Update MARC21 frameworks to Updates 28+29 (May and November 2019)
- [[25011]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25011) Improve display of Production credits (MARC21 508) in OPAC and staff
>This change makes some tiny changes to improve the display and consistency between the OPAC and staff interface:
>- Capitalization: Production Credits --> Production credits.
>- Change div to span to avoid display issues.
>- Make sequence of fields in display match (505, 508, 586).
### Notices
- [[10269]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=10269) Add a way to utilise a specific replyto email address for some notices
>This patchset adds the foundations needed to make use of a reply-to address if passed when calling EnqueueLetter.
>
>Further bugs will be used to add interfaces for adding such addresses.
- [[23673]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23673) Separate time sent from time created in message_queue table
>The time a message was created and the time it was sent are now separate columns in the message_queue table and will shown in the patron's account on the notice tab.
>
>Sponsored by: Northeast Kansas Library System (NEKLS)
- [[24588]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=24588) Set `Mailer-X` and `MessageID` mail headers to reduce the likelihood of Koha mail being marked as spam
### OPAC
- [[7611]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=7611) Show the NOT_LOAN authorised values for item status in XSLT OPAC search results
**Sponsored by** *Centre collégial des services regroupés*
- [[13121]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=13121) Move search results "action" links ("Place hold," "Add tag," etc) into include file
>This patch moves markup for controls repeated across several OPAC templates into a single include (making it easier to maintain in the future): Place hold, Request article, Add tag, Save to lists, and Add to cart.
- [[13388]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=13388) Add library pages to the OPAC
>This adds a new link "Libraries" or "Library" to the navigation in the OPAC. The new page it links to gives information about all libraries in the Koha installation, using the data from the library configuration.
- [[13547]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=13547) Item field 'Materials specified' would be useful to see in OPAC
>This enhancement allows you to make a new column visible on the OPAC. The new column shows the materials specified field after the call number column. You have to turn the column on in the "Columns settings" section.
- [[14715]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14715) Results per page setting for catalog search in staff client and OPAC
**Sponsored by** *Region Halland*
>This enhancement adds a 'results per page' dropdown list to catalog search results pages in the OPAC and staff interface. This lets you set the number of results to show (20, 40, 60, 80, and so on).
>
>This is enabled by two new system preferences: `OPACnumSearchResultsDropdown` for the OPAC, and `numSearchResultsDropdown` for the staff interface.
>
>The default number of search results is set using existing system preferences: `OPACnumSearchResults` for the OPAC, and `numSearchResults` for the staff interface.
>
>This enhancement works for both Zebra and Elasticsearch search engines.
>
>**New system preferences**: `OPACnumSearchResultsDropdown` and `numSearchResultsDropdown` both default to disabled.
- [[15775]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=15775) Show message on OPAC summary if holds are blocked due to fines
**Sponsored by** *Catalyst*
>This adds a note to the patron account in the OPAC if the user is over the maxoutstanding fines limit and can no longer place holds.
- [[22880]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22880) Convert opacheader system preference to news block
- [[23261]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23261) RecordedBooks - notify patron of need to login / register to see availability
>This enhancement makes the RBDigital Recorded Books subscription more discoverable to library patrons by adding a notice to the OPAC for patrons to register and login with RBDigital if they have not already done so.
- [[23547]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23547) Add column configuration to course reserves table in the OPAC
- [[23794]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23794) Convert OpacMainUserBlock system preference to news block
- [[23913]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23913) Use a single menu to sort lists in the OPAC
>This enhancement modifies the sorting form on the OPAC list contents view so that the two menus (sort field and direction) are combined into one.
>
>This makes it consistent with the sort menu on the search results page.
- [[23915]](http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23915) Replace OPAC list sort menu with Bootstrap menu button
>This patch adds JavaScript to the list contents page which converts the resort form's