57 KiB
RELEASE NOTES FOR KOHA 17.12.00
27 Feb 2018
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 17.12.00 can be downloaded from:
Installation instructions can be found at:
- Koha Wiki
- OR in the INSTALL files that come in the tarball
Koha 17.12.00 is a major release, that comes with many new features.
It includes 3 new features, 153 enhancements, 194 bugfixes.
New features
Architecture, internals, and plumbing
- [15707] Add ability to define hierarchical groups of libraries
Patrons
- [18403] Hide patron information if not part of the logged in user library group
Searching
- [19290] Browse selected biblios - Staff
Enhancements
About
- [19542] Koha should display Elasticsearch information in the about page
Acquisitions
- [10032] Uncertain prices hide 'close basket' without explanation
- [17182] Allow Keyword to MARC mapping for acquisitions searches (subtitle)
- [19993] use Modern::Perl in Acquisition perl scripts
Architecture, internals, and plumbing
- [10021] Remove dead code related to notifys
- [10306] Koha to MARC mappings (Part 1): Allow multiple mappings per kohafield (for say 260/RDA 264)
- [12001] GetMemberAccountRecords slows down display of patron details and checkout pages
- [12904] Force browser to load new JavaScript and CSS files after upgrade
For non-package installations, the following rewrite rules will need to be added to the apache config file:
RewriteRule ^(.)_[0-9][0-9].[0-9][0-9][0-9][0-9][0-9][0-9][0-9].js$ $1.js [L]
RewriteRule ^(.)_[0-9][0-9].[0-9][0-9][0-9][0-9][0-9][0-9][0-9].css$ $1.css [L]
- [16735] Replace existing library search groups functionality with the new hierarchical groups system
- [17672] Items table should have a damaged_on column
- [17833] _initilize_memcached() warns if errors
- [18789] Send a Koha::Patron object to the templates
- [18913] Allow symbolic link in /etc/koha/sites
- [19096] Koha to MARC mappings (Part 2): Make Default authoritative
- [19280] CanBookBeIssued must take a Koha::Patron in parameter
- [19299] Replace C4::Reserves::GetReservesForBranch with Koha::Holds->waiting
- [19300] Move C4::Reserves::OPACItemHoldsAllowed to the Koha namespace
- [19301] Move C4::Reserves::OnShelfHoldsAllowed to the Koha namespace
- [19303] Move C4::Members::GetFirstValidEmailAddress to Koha::Patron->first_valid_email_address
- [19304] Move C4::Members::GetNoticeEmailAddress to Koha::Patron->notice_email_address
- [19802] Move Selenium code to its own module
- [19826] Introduce Koha::Acquisition::Budget(s) and Koha::Acquisition::Fund(s)
- [19828] Koha::Object->store should catch DBIC exceptions and raise Koha::Exceptions
- [19830] Add the Koha::Patron->old_checkout method
- [19841] AddMember should raise an exception if categorycode is invalid
- [19998] use Modern::Perl in error perl scripts
- [20009] use Modern::Perl in Members perl scripts
- [20010] use Modern::Perl in Patroncards perl scripts
- [20011] use Modern::Perl in plugins perl scripts
- [20012] use Modern::Perl in Reports perl scripts
- [20013] use Modern::Perl in Reserves perl scripts
- [20015] use Modern::Perl in Serials perl scripts
- [20016] use Modern::Perl in svc scripts
- [20017] use Modern::Perl in Tools perl scripts
- [20018] use Modern::Perl in offline circulation perl scripts
- [20019] use Modern::Perl in miscellaneous perl scripts
- [20020] use Modern::Perl in XT scripts
- [20157] Use group 'features' to decide which groups to use for group searching functionality
Authentication
- [12227] remove demo user functionality
Browser compatibility
- [20062] Remove support for Internet Explorer 7 in the staff client
Internet Explorer 7, released in 2006, is no longer supported by Koha.
Cataloging
- [11046] Better handling of uncertain years for publicationyear/copyrightdate
- [18417] Advanced Editor - Rancor - add shortcuts for copyright symbols (C) (P)
- [18878] Improve item form display / labels too far from input fields
- [19996] use Modern::Perl in cataloguing perl scripts
Circulation
- [11210] Allow partial writeoff
- [15752] Automatically switch from circulation to new patron when a cardnumber is scanned during circulation
The new system preference AutoSwitchPatron allows to automatically switch to another patron record on scanning the cardnumber during circulation. This will allow to streamline processes at the circulation desk a bit more. Note: Use only if there is no overlap in your cardnumber and barcode ranges.
- [19494] Add reservedate to Holds awaiting pickup
- [19831] Turn on EnhancedMessagingPreferences by default for new installations
- [19997] use Modern::Perl in Circulation perl scripts
Command-line Utilities
- [12598] New misc/import_borrowers.pl command line tool
- [17467] Introduce a single koha-zebra script to handle Zebra daemons for instances
To ease multi-tenant sites maintenance, several handy scripts were introduced. For handling Zebra, 4 scripts were introduced: koha-start-zebra, koha-stop-zebra, koha-restart-zebra and koha-rebuild-zebra.
This patch introduces a new script, koha-zebra, that unifies those actions regarding Zebra daemons on a per instance base, through the use of option switches.
- [18964] Add a --debugger flag to koha-plack
Remote debugging capabilities are added to the koha-plack script. This is very important for developers.
- [19451] Let borrowers-force-messaging-defaults.pl optionally add preferences only when not already present
Course reserves
- [15378] Remove 'lost' items from course reserves
Hold requests
- [19769] 'Pickup library is different' message does not display library branch name when placing hold
I18N/L10N
- [20295] Allow translating link title in ILL module
- [20296] Untranslatable "All" in patrons table filter
Installation and upgrade (web-based installer)
- [18819] Correct "whereas UNIMARC tends to be used in Europe." in web installer files
Label/patron card printing
- [19999] use Modern::Perl in Labels perl scripts
Lists
- [19658] Style fix for staff client lists page
MARC Authority data support
- [18071] Add new script update_authorities.pl
MARC Bibliographic data support
- [18198] MARC21: Further improve handling of 5XX$u in GetMarcNotes
OPAC
- [11976] Add column settings + new column "Publication date" to the subscription table
- [15794] Add emoji picker to tag entry in OPAC
- [18083] Don't show 'library' selection on popular titles page for single-branch libraries
- [18313] Remove Delicious icon from OPAC social network links
- [19338] Dates sorting incorrectly in opac-account.tt
- [19573] Link to make a new list in masthead in OPAC only appears / works if no other list already exists
- [19989] opac-memberentry.pl has a FIXME that can be fixed
- [20155] Improve readability of OPAC header language menu
Packaging
- [17951] koha-create should create the template cache dir and configure it in koha-conf.xml
Patrons
- [19471] Show creation date in patron restrictions list
- [19801] Display messages on user details page as well as on check out page
- [19988] Change 'sex' to 'gender'
REST api
- [16213] Allow to select hold's itemtype when using API
- [18330] REST API: Date-time handling
- [19234] Add query parameters handling helpers
- [19278] Add a configurable default page size for endpoints
- [19369] Add a helper function for translating pagination params into SQL::Abstract
- [19370] Add a helper function for translating order_by params into SQL::Abstract
- [19410] Add a helper function for generating object searches for the API
- [19686] Add to_model and to_api params to objects.search helper
- [20004] Adapt /v1/cities to new naming guidelines
Reports
- [9573] Ability to download items lost report
- [16782] Display report URL in staff client report interface
- [19664] Reports sidebar menu should match list of reports on reports home page
Searching
- [13660] rebuild_zebra_sliced.sh - Exclude export phase and use existing exported MARCXML.
- [19995] use Modern::Perl in Catalogue perl scripts
Staff Client
- [19806] Add class to items.itemnotes_nonpublic
System Administration
- [13287] Add a system preference to define the number of days used in purge_suggestions.pl
Apart from introducing the new preference PurgeSuggestionsOlderThan, this report also adds a -confirm flag to the cron job purge_suggestions.pl. Please adjust existing cron tab files and add this flag in order to have the expected results.
- [16764] Update printers administration page
- [19292] Add MARC code column on libraries list
- [19992] use Modern::Perl in Admin perl scripts
- [20133] "Hide patron information" feature should not affect all library groups
Templates
- [19592] Move admin templates JavaScript to the footer: Acquisitions
- [19594] Move admin templates JavaScript to the footer: MARC-related
- [19600] Move admin templates JavaScript to the footer: Other catalog pages
- [19601] Move admin templates JavaScript to the footer: Additional parameters
- [19603] Move admin templates JavaScript to the footer: Patrons and circulation
- [19607] Move admin templates JavaScript to the footer: Basic parameters
- [19608] Move admin templates JavaScript to the footer: The rest
- [19623] Move template JavaScript to the footer: Cataloging
- [19627] Move patron clubs templates JS to the footer
- [19628] Move course reserves templates JS to the footer
- [19641] Move patron templates JavaScript to the footer
- [19647] Move patron lists templates JS to the footer
- [19653] Move tools templates JavaScript to the footer: Additional tools
- [19654] Move tools templates JavaScript to the footer: Batch MARC tools
- [19656] Move rotating collections templates JS to the footer
- [19657] Move lists templates JS to the footer
- [19659] Move JS to the footer: Suggestions and tags
- [19663] Move JS to the footer: Reports
- [19672] Move tools templates JavaScript to the footer: More MARC tools
- [19679] Move templates JavaScript to the footer: More tools templates
- [19680] Move JS to the footer: Patron and circulation tools
- [19682] Move JS to the footer: Two patron-related tools
- [19697] Move template JavaScript to the footer: Search results
- [19700] Move template JavaScript to the footer: Some circulation pages
- [19710] Move plugins templates javascript to the footer
- [19726] Move admin templates JavaScript to the footer: Preferences
- [19744] Move template JavaScript to the footer: Offline circulation
- [19751] Holds awaiting pickup report should not be fixed-width
- [19753] Move template JavaScript to the footer: Acquisitions
- [19754] Move template JavaScript to the footer: Acquisitions, part 2
- [19755] Move template JavaScript to the footer: Acquisitions, part 3
- [19758] Move template JavaScript to the footer: Serials, part 1
- [19761] Move template JavaScript to the footer: Serials, part 2
- [19777] Move template JavaScript to the footer: Serials, part 3
- [19778] Move template JavaScript to the footer: Serials, part 4
- [19785] Move template JavaScript to the footer: Authorities, part 1
- [19805] Add DataTables to Koha to MARC mapping page
- [19823] Move template JavaScript to the footer: MARC21 editor plugins
- [19860] Make staff client home page responsive
- [19932] Update popup window templates to use Bootstrap grid: Cataloging Z39.50 search
- [19939] Move cataloging Z39.50 results actions into menu
- [19947] Update popup window templates to use Bootstrap grid: Acquisitions transfer order
- [19950] Update popup window templates to use Bootstrap grid: Serials
- [19954] Update popup window templates to use Bootstrap grid: Patrons
- [19960] Update popup window templates to use Bootstrap grid: Add to list
- [19981] Switch single-column templates to Bootstrap grid: Course reserves
- [19982] Switch single-column templates to Bootstrap grid: Patrons
- [20032] Switch single-column templates to Bootstrap grid: Tools
- [20033] Switch single-column templates to Bootstrap grid: Catalog
- [20034] Switch single-column templates to Bootstrap grid: Circulation
- [20035] Switch single-column templates to Bootstrap grid: Patron clubs
- [20036] Switch single-column templates to Bootstrap grid: Offline circulation
- [20037] Switch single-column templates to Bootstrap grid: Serials
- [20038] Switch single-column templates to Bootstrap grid: Acquisitions
Test Suite
- [19243] Selenium test for testing the administration module functionality - part 1
- [19483] t/db_dependent/www/* crashes test harness due to misconfigured test plan
Tools
- [19554] The inventory table should jump to detail instead of MARCdetail
- [19585] Inventory: Allow additional separators in a barcode file
- [19837] Add multiple patrons to a list by cardnumber
Critical bugs fixed
(This list includes all bugfixes since the previous major version. Most of them have already been fixed in maintainance releases)
Acquisitions
- [19694] Edited shipping cost in invoice doesn't save
Architecture, internals, and plumbing
- [15770] Number::Format issues with large numbers
- [19319] Reflected XSS Vulnerability in opac-MARCdetail.pl
- [19439] Some error responses from opac/unapi get lost in eval
- [19568] Wrong html filter used in opac-opensearch.tt url
- [19569] X-Frame-Options=SAMEORIGIN is not set from opac-showmarc.pl
- [19570] autocomplete="off" no set for login forms at the OPAC
- [19599] anonymise_issue_history can be very slow on large systems
- [19611] XSS Flaws in supplier.pl
- [19612] Fix XSS in /cgi-bin/koha/members/memberentry.pl
- [19614] Fix XSS in /cgi-bin/koha/members/pay.pl
- [19766] Preview routing slip is broken
- [19847] tracklinks.pl accepts any url from a parameter for proxying
- [19881] authorities-list.pl can be executed by anybody
- [20126] Saving a biblio does no longer update MARC field lengths
- [20145] borrowers.datexpiry eq '0000-00-00' means expired?
- [20229] Remove problematic SQL modes
Cataloging
- [19646] value_builder marc21_linking_section template is broken
- [19706] Item search: Unsupported format html
- [19968] Undefined subroutine &Date::Calc::Today
- [20063] $9 is lost when cataloguing authority records
Circulation
- [4319] waiting and in transit items cannot be reserved
- [19444] Automatic renewal script should not auto-renew if a patron's record has expired
- [19771] Pending offline circulation actions page will crash on unknown barcode or on payment action
- [19798] Returns.pl doesn't define itemnumber for transfer-slip.
- [19899] The float items feature is broken - cannot checkin
Command-line Utilities
- [19730] misc/export_records.pl should use biblio_metadata.timestamp
ILL
- [20001] ILL: Adding a 'new request' from OPAC is not possible
Installation and upgrade (web-based installer)
- [19514] No Password restrictions in onboarding tool patron creation
MARC Authority data support
- [20074] Auth_subfield_structure changes hidden attribute
Notices
- [18477] AR_PENDING notice does not populate values from article_requests table
OPAC
- [18915] Creating a checkout note (patron note) sends an incomplete email message
- [18975] Wrong CSRF token when emailing cart contents
- [19496] Patron notes about item does not get emailed as indicated
- [19808] Reviews from deleted patrons make few scripts to explode
- [19843] reviews.datereviewed is not set
- [19911] Passwords displayed to user during self-registration are not HTML-encoded
- [19913] Embedded HTML5 videos are broken
- [19975] Tag cloud searching does not working
- [19978] Fix ITEMTYPECAT feature for grouping item types for search
- [20218] Tracklinks fails when URL has special characters
Packaging
- [20061] koha-common is not pulling libsearch-elasticsearch-perl
Patrons
- [19466] Cardnumber auto calc is broken because field is required
- [19921] Error when updating child to adult patron on system with only one adult patron category
- [20214] Patron search is broken
Searching - Elasticsearch
- [19563] Generation of sort_fields uses incorrect condition
System Administration
- [20216] Editing itemtypes does not pull existing values correctly
Templates
- [20135] Staff client language choose pop-up can appear off-screen
Web services
- [19725] OAI-PMH ListRecords and ListIdentifiers should use biblio_metadata.timestamp
Other bugs fixed
(This list includes all bugfixes since the previous major version. Most of them have already been fixed in maintainance releases)
About
- [7143] Bug for tracking changes to the about page
Acquisitions
- [3841] Add a Default ACQ framework
- [18183] jQuery append error related to script tags in cloneItemBlock
- [19200] Warns when exporting a basket
- [19401] No confirm message when deleting an invoice from invoice detail page
- [19429] No confirm message when deleting an invoice from invoice search
- [19813] MarcItemFieldsToOrder cannot handle a tag not existing
- [19928] Acquisitions' CSV exports should honor syspref "delimiter"
- [20110] Don't allow adding same user multiple times to same budget fund
- [20148] Don't allow adding same user multiple times to a basket or an order
- [20201] Silence warnings in admin/aqplan.pl
Architecture, internals, and plumbing
- [18336] Add support for Unicode supplementary characters
Koha now supports Unicode supplementary characters like emojis or supplementary japanese, chinese and others.
The DB structure definition is changed to make use of the utf8mb4 encoding, instead of utf8.
- [19713] 2 occurrences of OpacShowLibrariesPulldownMobile have not been removed
- [19714] 2 occurrences of memberofinstitution have not been removed
- [19738] XSS in serials module
- [19746] Debug statements are left in returns.pl
- [19756] Encoding issues when update DB is run from the interface
- [19760] Die instead of warn if koha-conf is not accessible
- [19827] checkuniquemember is exported from C4::Members but has been removed
- [19839] invoice.pl warns about bad variable scope
- [19985] TestBuilder.t fails if default circ rule exists
- [20031] CGI param in list context warn in guided_reports.pl
- [20056] Uninitialized warn in cmp_sysprefs.pl
- [20060] Uninitialized warn from Koha::Template::Plugin::Branches
- [20088] Use of uninitialized value in array element in svc/holds
- [20185] Some scripts don't pass perl -wc
- [20187] New rewrite rules can break custom css
- [20189] No style on authentication and installer pages
- [20190] TinyMCE is broken and not displayed
- [20225] Remove unused script reports/stats.print.pl
Cataloging
- [18833] plugin unimarc_field_210c pagination error
- [19595] Clicking plugin link does not fill item's date acquired field
Circulation
- [16603] Hide option to apply directly when processing uploaded offline circulation file
- [19530] Prevent multiple transfers from existing for one item
- [19825] List of pending offline operations does not links to biblio
- [19840] Patron note is not displayed on checkin
- [20003] Result summary of remaining checkouts items not displaying.
Command-line Utilities
- [19452] The -truncate option in borrowers-force-messaging-defaults.pl should not remove category preferences
- [20234] Make maintenance scripts use koha-zebra instead of koha-*-zebra
Course reserves
- [19230] Warn when deleting a course in course reserves
- [19678] Clicking Cancel when adding New Course to course reserves shows message Invalid Course!
Database
- [19724] Add timestamp to biblio_metadata and deletedbiblio_metadata
Fines and fees
- [19750] Overdues without a fine rule add warnings to log
Hold requests
- [19533] Hold pulldown for itemtype is empty if hold placement needs override
I18N/L10N
- [11827] Untranslatable "Cancel Rating" in jQuery rating plugin
- [20082] Vietnamese language display name is incorrect
- [20109] Allow translating "Remove" in Add Fund
- [20124] Allow translating did you mean config save message
- [20139] Improve MARC mapping translatable strings
- [20140] Allow translating more of OAI sets
- [20141] Untranslatable string in Transport cost matrix
- [20142] Allow translating offline circ message
- [20147] Allow translating prompt in label edit batch
- [20166] Untranslatable course reserves delete prompt
- [20301] Allow translating "View" in manage MARC import
- [20302] Allow translating Delete button in Patron batch mod tool
ILL
- [20041] ILL module missing from more menu in staff when activated
Installation and upgrade (web-based installer)
- [12932] Web installer's Perl version check will not raise errors if all modules are installed
- [19790] Remove additionalauthors.author from installer files
- [19973] SQL syntax error in uk-UA/mandatory/sample_notices.sql
- [20075] Change authority hidden attribute in sql installer files
Label/patron card printing
- [10222] Error when saving Demco label templates
- [19681] label-item-search.pl result count formatting error when there is only one page
- [20193] Path to Greybox CSS broken after Bug 12904
MARC Authority data support
- [18458] Merging authority record incorrectly orders subfields
Notices
- [18990] Overdue Notices are not sending through SMS correctly
OPAC
- [12497] Make OPAC search history feature accessible when it should
- [17682] Change URL for Google Scholar in OPACSearchForTitleIn
- [19450] OverDrive integration failing on missing method
- [19640] IdRef webservice display is broken
- [19702] Basket not displaying correctly on home page
- [19845] Patron password is ignored during self-registration if PatronSelfRegistrationVerifyByEmail is enabled
- [20054] Remove attribute "text/css" for