25 Feb 2022
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 21.11.03 can be downloaded from:
Installation instructions can be found at:
Koha 21.11.03 is a bugfix/maintenance release with security fixes.
It includes 2 security fixes, 4 enhancements, 80 bugfixes.
You can learn about the system components (like OS and database) needed for running Koha here: https://wiki.koha-community.org/wiki/System_requirements_and_recommendations
[29596] Add Yiddish language
Sponsored by Universidad Nacional de San Martín
This enhancement adds the Yiddish (יידיש) language to Koha. Yiddish now appears as an option for refining search results in the staff interface advanced search (Search > Advanced search > More options > Language and Language of original) and the OPAC (Advanced search > More options > Language).
[28238] Add itemcallnumber to ILS-DI GetAvailability output
Sponsored by University Lyon 3
This enhancement adds the item call number to the ILS-DI GetAvailability output. This is useful for libraries that use discovery tools as patrons often don't check further for the call number, and then they don't have it when they look for the item.
[29464] GET /acquisitions/orders doesn't honour sorting
Sponsored by ByWater Solutions
[29906] When changing hold parameters over API (PUT) it forcibly gets to "suspended" state
The PATCH/PUT /api/v1/holds/{hold_id} API endpoint allows for partial updates of Holds. Priority and Pickup Location are both available to change (though it is preferred to use the routes specifically added for manipulating them).
Suspend_until can also be added/updated to add or lengthen an existing suspension, but the field cannot be set to null to remove the suspension at present.
This patch restores the suspen_until function to ensure suspensions are not triggered by unrelated pickup location or priority changes.
[28943] Lower the risk of accidental patron deletion by cleanup_database.pl
If you use self registration but you do not use a temporary self registration patron category, you should actually clear the preference PatronSelfRegistrationExpireTemporaryAccountsDelay.
[29786] Holds to pull report shows incorrect item for item level holds
This patch corrects an issue with the Holds to Pull report in which an incorrect barcode number could be shown for an item-level hold. The correct barcode will now be shown.
[29336] Some authorised_value FKs are too short
This fixes the length of the field definitions in the database for several authorised_value and authorised_value_category columns as they are too short. It changes the value to varchar(32).
[29758] CGI::param in list context in boraccount.pl warning
This removes the cause of warning messages ([WARN] CGI::param called in list context from...) in the plack-intranet-error.log when accessing the accounting transactions tab for a patron.
[29806] ->pickup_locations should always be called in scalar context
The Koha::Biblio->pickup_locations and Koha::Item->pickup_location methods don't always honour list context. Because of this, when used, they should assume scalar context. If list context was required, the developer needs to explicitly chain a ->as_list call.
This patch tracks the uses of this methods and adjusts accordingly.
[29889] Incorrect library check in patron message deletion logic
This fixes the logic controlling whether a patron message on the circulation or patron details page has a "Delete" link. An error in the logic prevented messages from being removed by staff who should have been authorized to do so.
[29054] Stop warns from advance_notices.pl if not running in verbose mode
Sponsored by Catalyst
[29952] Filter Paid Transactions Broken on Transactions tab in Staff
This fixes the "Filter paid transactions" link in the staff interface on the Patron account > Accounting > Transactions tab. It now correctly filters the list of transactions - only transactions with an outstanding amount greater than zero are shown ("Show all transactions" clears the filter). Before this fix, clicking on the link didn't do anything and didn't filter any of the transactions as expected.
[29585] "Go to field" in cataloguing alerts is not translatable
This fixes the 'Go to field' and 'Errors' strings in the basic MARC editor to make them translatable. (This is a follow-up to bug 28694 that changed the way validation error messages are displayed when using the basic MARC editor in cataloging.)
[29482] Terminology: This item belongs to another branch.
This replaces the word "branch" with the word "library" for a self-checkout message, as per the terminology guidelines. ("This item belongs to another branch." changed to "This item belongs to another library".)
[29795] If branch is mandatory on patron self registration form, the pull down should default to empty
Creates an empty value and defaults to it when PatronSelfRegistrationBorrowerMandatoryField includes branchcode. This forces self registering users to make a choice for the library.
[28576] Add patron image in patron detail section does not specify image size limit
This updates the add patron image screen to specify that the maximum image size is 2 MB. If it is larger, the patron image is not added.
[28977] Most-circulated items (cat_issues_top.pl) is failing with SQL Mode ONLY_FULL_GROUP_BY
This fixes an error that causes the most circulated items report to fail when run on a database with SQL mode ONLY_FULL_GROUP_BY and in strict SQL mode.
[27770] ES: Deprecated aggregation order key [term] used, replaced by [key]
Sponsored by Lund University Library
[29807] Branches template plugin doesn't handle empty lists correctly
The Branches TT plugin had wrong logic in it, that made it crash, or display wrong pickup locations when the item/biblio didn't have any valid pickup location.
[29967] Increase size of description fields for authorized values in templates
Extends the length of the description and OPAC description fields on authorised_values.tt making it easier to see and edit text that has longer descriptions.
[29156] File missing warning in Koha::UploadedFile should be for permanent files only
This removes the warning from the log files when temporarily uploaded files are deleted and the file no longer exists (for example, when the temporary files are in /tmp directory and the system is rebooted they are deleted).
[29722] Add some diversity to sample quotes
Sponsored by Catalyst
This patch adds sample quotes from women, women of colour, trans women, Black and Indigenous women, and people who weren't US Presidents!
[19865] Side scroll bar in z39.50 MARC view
Makes the horizontal scroll bar of the MARC preview modal on cataloguing/z3950_search.tt always visible for an easier user experience.
The Koha manual is maintained in Sphinx. The home page for Koha documentation is
The Git repository for the Koha manual can be found at
Complete or near-complete translations of the OPAC and staff interface are available in this release for the following languages:
Partial translations are available for various other languages.
The Koha team welcomes additional translations; please see
For information about translating Koha, and join the koha-translate list to volunteer:
The most up-to-date translations can be found at:
The release team for Koha 21.11.03 is
Release Manager: Fridolin Somers
Release Manager assistants:
QA Manager: Katrin Fischer
QA Team:
Topic Experts:
Bug Wranglers:
Packaging Manager:
Documentation Manager: David Nind
Documentation Team:
Translation Managers:
Wiki curators:
Release Maintainers:
We thank the following libraries, companies, and other institutions who are known to have sponsored new features in Koha 21.11.03
We thank the following individuals who contributed patches to Koha 21.11.03
We thank the following libraries, companies, and other institutions who contributed patches to Koha 21.11.03
We also especially thank the following individuals who tested patches for Koha
We regret any omissions. If a contributor has been inadvertently missed, please send a patch against these release notes to koha-devel@lists.koha-community.org.
The Koha project uses Git for version control. The current development version of Koha can be retrieved by checking out the master branch of:
The branch for this version of Koha and future bugfixes in this release line is 21.11.x.
Bug reports and feature requests can be filed at the Koha bug tracker at:
He rau ringa e oti ai. (Many hands finish the work)
Autogenerated release notes updated last on 25 Feb 2022 18:30:17.