Koha Community Newsletter: October 2016

Koha Community Newsletter Subscribe
October 2016

Volume 7, Issue 10
ISSN 2153-8328
Edited by Chad Roseburg, Koha Community Newsletter Editor

Please submit news items to Submit

Table of Contents


Koha 3.22.12 Released

by Julian Maurice
The Koha community is proud to announce the release of Koha 3.22.12

It is a security release and it includes 3 security fixes, 35 bugfixes and 1 enhancement.

Read the full release notes.

Koha 16.5.05 Released

by Frédéric Demians
It is with great pleasure that we announce the release of Koha 16.05.05, a
maintenance release of the Koha open source integrated library system.

Koha 16.5.5 is a bugfix/maintenance release with security fixes.

It includes 3 security fixes, 8 enhancements, 51 bugfixes.

See the full release notes.

What’s on in Koha devel #5

by Jonathan Druart
I send a “What’s on in Koha devel” email to koha-devel list each month. But this one is a bit special as I will focus on the different subjects you may heard of if you attend the hackfest in Marseille next week. It can be helpful for both librarians and developers!

A lot of things are going on in the Koha ecosystem so it might be hard to follow all the discussions or to jump into one.

So my attempted goal here is to compile the topics currently “à la mode” for Koha developers. In this email I will go a bit more into details than usual, to let you the opportunity to better understand the themes and to ask questions next week if you want to know more. I hope it will help you to choose the subject you want to be involved in during the hackfest.

= Sandboxes =

Sandboxes have been developed with the aim to help people without any technical skills to test patches submitted on the Koha bugtracker. You will find all the information you want on the dedicated wiki page https://wiki.koha-community.org/wiki/Sandboxes

= Refactoring =
During the last 3 (more?) years we have integrated DBIx::Class (a Perl ORM, Object-Relationnal Mapping) into Koha, for several (sometimes disputed) reasons. To take advantage of it, we are using it as much as possible through a home-made object module called Koha::Object. For the last year, a lot of legacy code has been rewritten and moved out of the C4 namespace to the new Koha namespace. For instance Koha::Virtualshelves replaced C4::VirtualShelves::Page (bug 14544), Koha::Libraries replaces C4::Branch (bug 15293).
At the moment, the job focusses on moving the legacy authorised values from the C4::Koha module to Koha::AuthorisedValues (bug 15799) and the patrons/borrowers/users/members code from C4::Members to Koha::Patrons (bug 16846). For an overview of this refactoring work, please have a look at bug 15449 and its scary dependency graph:

Another refactoring work is about moving the biblioitems.marcxml content out of the biblioitems table. The idea is to create another table (biblio_metadata) to add the ability to store a record in different formats. The direct and major addition of this move would be to bring performance speed. See the comment 1 of bug 17196 for more information.

= Speed improvements =

During the last 2 releases, we have made a lot of speed improvements. That has been achieve with the consolidation and the stabilisation of our caching system and plack integration. If you are running a recent version of Koha (3.22, 16.05 or later) you should set them up correctly to fully enjoy the improvement. To be fair I must say that we have had to concentrate our efforts on these points because of our previous technical decisions (mainly related to DBIx::Class). Two main playgrounds: Plack and Memcached, that I will explain now.

== Plack ==
I bet you already have heard of Plack, because Koha developers have been talking about it for ages. Basically it is just an interface between the web server (Apache,
starman, etc.) and the perl application (Koha). When a user hits the a Koha url, a lot of files (Perl modules) are compiled. In CGI mode, this compilation step is done for every request. Using Plack they are compiled only once. The code will be put in RAM and other requests won’t need to process all the modules again. It is an advantage since we are using DBIx::Class more and more and its schema is heavy to load. With Plack it is only loaded once. Koha is now considered as stable under Plack for the last versions of
Koha, so you must use it. To know about known bugs, you can follow bug 7172 which gather Plack related known bugs together. At this time there is only one patch not
yet pushed, bug 17392 (ping QAer!).

Note that a timeout issue seems related to Plack and is not yet resolved, see:
Bug 16714 – Unexpected logout with “IP address change” (with SessionRestrictionByIP set)

== Caching system ==
The way we are caching “stuffs” in Koha has really been improved recently and will continue to! Important steps have been done in this area. We are using Memcached – a memory caching system – to store big bunch of data that we do not want to recalculate or retrieve from the database everytime.
For instance:
– the sysprefs. A lot of them are retrieved from the database for each request
– the biblio frameworks
– the holidays
– … a lot of other things could/will be cached!

A big step has been done when we decided to introduce a 2-level caching mechanism (bug 16044): we have now a in-memory L1 cache (flush at every request) and a L2 cache (Memcached). To understand how this mechanisms are useful, imagine a simple scenario: launch a search which will return 20 results. For each result we need to know the MARC bibliographic framework of the record. Say they are all using the default frameworkcode. Without any caching mechanism, we retrieved from the database the whole structure, 20 times, once per result. With our new caching mechanism, the information for the default MARC bibliographic framework will be retrieved on the first request, then put in both L1 and L2 cache. The 19 other results will retrieve it from the L1 cache. If the same or another user does a search, the framework info will be retrieved from the L2 cache for the first result, and the L1 cache will be populated. The other results will retrieve it from the L1 cache. Not sure this is clear, but catch me if you need more details 🙂

All of that to say that if you are a developer, there are 3 other bugs with ideas to improve again the caching mechanism. They are all of them in discussion:
Bug 16140 – Only clear L1 cache when needed
Bug 16079 – Retrieving system preferences from database via DBIx is not fast enough
Bug 15341 – Performance – Retrieve all sysprefs at once

One which would be nice to have is:
Bug 17261 – Add memcached configuration info to about.pl
It will permit to display the memcached configuration in the about page.

= MySQL 5.7 compatibility =
If you are interested in using Koha with MySQL 5.7 (the default version for the last Ubuntu 16.04), you should take a look at bug 17258 and its dependencies. Koha is not ready at all for the new default sql_mode configuration of this version of MySQL (STRICT_TRANS_TABLES).

= Security issues =
A lot of security issues (CSRF and XSS) have been fixed for the last 4 months, and almost all of these fixes have been backported to stable releases.
They are all reported under the 2 following omnibus:
Bug 17096 – [OMNIBUS] CSRF protections
Bug 14568 – [OMNIBUS] XSS in Staff Client
Only one known bug is waiting to be QAed (but 17365).

= Elastic search =
There are no big new features pushed since the first big push. But a few bug fixes and enhancement are waiting to be QAed. You can find them on the dependency graph of bug 12478. Note that there are 2 known bugs, without patches:

Bug 16660 – Elasticsearch broken if OpacSuppression is activated
Bug 17373 – Elasticsearch – Authority mappings are not defined for UNIMARC
Are there some UNIMARC users around? 🙂

= RESTful API =
Tons of patches have been submitted on bugzilla, but only few got attention from signoffers. If you are interested in testing of them, search for “rest api”.

= ReactJS =
React is a JS library aimed to easier DOM manipulations. This topic is a recurrent one and developers involved in this discussion will be present at the hackfest. They should organise a discussion to reach a consensus once and for all. If accepted, it would be good to define guidelines and write complete examples.

= Koha plugin system =
It seems that people are curious about our plugin system. It would be good to revive the discussion on new and more powerful plugin system. See the discussion on the koha-devel list at http://lists.koha-community.org/pipermail/koha-devel/2016-May/042673.html

= Transactions & exceptions =
It would be good to see some developers organise a brainstorming session on the different topics that Tomas raised on his email to koha-devel a few weeks ago.

= Mana =
Paul presented us Mana (https://lists.katipo.co.nz/pipermail/koha/2016-July/045739.html) at the beginning of July. Morgan finished her internship and will be there are the hackfest to show us what she developed. Testers and QAers would certainly be welcomed to test and review this feature.

= Hea =
Hea is a website (http://hea.koha-community.org) collecting usage statistics from different Koha installations around the world. This feature is not enabled by default but is very useful for developers and other people loving statistics (so librarians isn’t it?). If it is not done yet, you should enable this feature to join the 496 libraries already registered! One enhancement is developed and waiting for testers:
14608 – HEA : add possibility of sharing usage statistics in Administration page and Web installer

Hope to see you ready to fix, translate, test or QA patches (and drink beers when everything is done) this week!


from the development listserv. See the original post


New Koha Libraries

Oslo Public Library Live

by Benjamin Rokseth
Oslo Public Library, Norway’s largest public library finally went live with Koha on wed 12.10, in the midst of the Koha Hackfest in Marseille! It has been a long journey, but it is with great pleasure that we have run solid for two weeks with only two minor breakdowns, and infantile diseases bound to happen, as our basic message to our 300k users was: “While you were sleeping, we changed the library system”.

Many thanks, especially to the dedicated Koha developers and the great work to make Koha stable, fast and future oriented, with proper testing, Koha Objects, Plack and the new REST API, to mention some.

We hope to bring to Koha the joys of semantic web and service/user oriented design, and maybe inspire or get inspiration from others wanting to use Koha as part of some larger scheme.

Facts for the interested:
– Koha is master of circulation and patrons, based on patched Koha Master just to show how stable(ish) Koha is
– Bibliographic metadata and cataloguing is RDF, with basic records synced to Koha for circulation via REST api
– Search is Elasticsearch index of RDF resources
– Patrons assets (holds, history, etc.) is managed by REST api calls to Koha
– Service infrastructure is microservice based on Docker containers and Docker compose for orchestration
– RFID, Self checkout, Door access and Sorting bin handled by SIP
– browser and integration testing with Cucumber

Community Gossip

If you’d like to host the 2017 Koha-US annual conference you can submit your proposal using this web form.

Round the World Koha Tour: pt. 3

From Joann Ransom

Joann Ransom is one of the librarians who worked with Chris Cormack to develop the original Koha library management system back in 1999.

Joann, ex CEO of Horowhenua Library Trust, is travelling around the world aiming to meet as many Koha community members as possible.

Joann has three main topics that she is happy to speak on: 1) Origins of Koha, 2) The Koha Community and what that means and 3) Te Takere: transforming a modest public library service into a 21st century community centre.

See the itinerary and follow Joann around the world

Joann writes about the tour on her Library Matters blog. Check out the following posts:

How To

Vimal Kumar talks about data migration from SOUL 1 to Koha

Support Provider News

From ByWater Solutions:

Upcoming Events

The Digital Shift: The Service Continuum

by Jessie Zairo
We are joining Library Journal, School Library Journal, and thousands of library professionals from around the world for the eighth annual Digital Shift virtual conference to focus on the challenges and opportunities presented by the digital transition’s impact on libraries and their communities.

The full-day program explores explore emerging technologies, exciting service models, innovative programming, new ways of sparking learning and engagement, and the evolving publishing ecosystem. Four high-content learning tracks for and from libraries of all types—school, academic, and public—are offered in key areas.

Register today and join us live on October 19 in the virtual exhibit hall for exclusive downloads, resources, and presentations.

2016 Koha Northeast Summit

See the program and get more information

  • Date: November 3, 2016
  • Location: Farmington Libraries
  • Address: Six Monteith Drive Farmington CT 06032
  • Click here to Register Now Or call Bernie Dayton at 860-673-6791 x219
  • Registration Fee: $5 (includes continental breakfast and lunch)
  • Make checks payable to: The Farmington Libraries

Kohacon 2017 Update

To register:
KohaCon 2017 online registration form: https://goo.gl/forms/BSZz8NT46u4pBqT23.
Registration fee will be waived for the first 100 participants.

November General IRC Meeting

The November general IRC meeting will be held on the 2nd at 10:00 UTC.

The agenda, links to the minutes, and other information is here.

November Development IRC Meeting

The November development IRC meeting will be held on the 9th at 19:00 UTC.

The agenda, links to the minutes, and other information is here.

Past Events

National Workshop on Koha an Open-Source Integrated Library System (ILS) 17 – 21 October, 2016. PAKISTAN

by Sher Afzal Khan
A five days National Workshop on Koha Library Integrated Management System was organized by the National Center for Rural Development Islamabad. Library and IT professional from Public, Private, Defence, National Assembly, Atomic and Special Libraries of Islamabad, Punjab, Sindh, Khyber Pakahtoon Khawa, Quetta and Karachi were participated in this mega events. Approximate 47 Library and IT professional attend this workshop.
Resource Person of the Workshop
The key resource person of the workshop was Mr Sher Afzal Khan. Mr Khan is approved trainer of Higher Education Commission and country Ambassador of Dspace Software for Pakistan. Mr Khan has successfully implanted koha ILS in many Academic, Public and Private Organization. He was also invited to present the Koha Project at Koha Con 16 Conference at Graces. http://www.livemedia.com/kohacon16

Thank you all!

Mr Khan is organizing workshops at the same organization since last 5 years (2011-2016) and trained more than 690 plus Library and IT professionals on Koha and Dspace.. Mr Zeshan Ullah Librarian Islamic College University also support the resource person during the training session. Mr. Hameed Ullah Khattak Senior Librarian (NCRD was the coordinator of the workshop. He has organized more than 100 plus training workshop for the library professional at the same organizations.
The purpose of the Workshop is to familiarize the participants with the Koha open source Integrated Library System (ILS).

• To introduce the Linux operating system to the participants.
• To acquaint the participants with the installation of Koha on server class machines.
• To provide extensive hands-on-training to the participants so as to enable them to work independently.
• To equip the participants for managing Koha at institutions with large collections
Training Modules:
The participants were trained about all modules of koha and Linux. The training was divided in to two parts one part of the training was to introduce the basic concept of Koha, Linux, System requirement, Installations of Full Stack LIBSOL Live DVD, Configuration of server and networking. The second part of the training was to introduce the participants the advanced modules of koha and Linux. Following is the summary of the training:
Koha Basic
• Introduction to Linux
• Installation of Ubuntu Koha
• Live DVD prepared by Full Stack Solutions (LIBSOL) Complete Library Solutions
• Introduction to MARC
• Koha Basics and Features
• Koha Administration
• Cataloging and Circulation
• Serials, OPAC
• Report Generation
• Barcode Label Creation
Koha Advanced
• Configuration of E-mail in Koha
• Tweaking of MARC Framework
• Koha – MARC Mapping
• Batch Processing of Catalog
• Batch Processing of Patron
• Over Due Notice Generation
• Stock Verification
• Generation of Labels, ID Card
• Customized Reports
• OPAC Customization and WebOPAC
• Authority Management
• Koha Master password changing methods through command
• Backup and Restoration through command from
• Banner Changing of OPAC
• Email Configurations
• Notices and Slip creation
• Enabling email setting and others alerts
• Report SQL Library

October General IRC Meeting

The October general IRC meeting was held on the 5th at 10:00 UTC.

The agenda, links to the minutes, and other information is here.

October Development IRC Meeting

The September development IRC meeting was held on the 19th at 10:00 UTC.

The agenda, links to the minutes, and other information is here.


Editor, Koha Community Newsletter