Some random statistics about the last 5 years of Koha.

Someone asked on the mailing list if we could tell them how many bugs were fixed in the last 5 years, and how many features added etc.

So because I could I looked up the answers. Since Jan 1 2011 there have been

  • 11650 Commits to the master branch of Koha (2427 + 2563 + 2997 + 2538 + 1125)
  • 378 trivial severity bugs fixed
  • 741 minor severity bugs fixed
  • 1472 normal severity bugs fixed
  • 432 major severity bugs fixed
  • 205 critical
  • 98 blockers fixed
  • 1283 new features or enhancements to features
  • 64 major new features
  • 1436 edits to the Koha manual (284 + 387 + 291 + 297 + 177)

Unsung heroes of Koha 30 – Heather Hernandez

We have a few Heathers in the Koha community and they are all pretty great. I’m singling out Heather Hernandez here as she has been really helpful to a lot of other Koha users and developers.
Heather not only takes time to answer a lot of questions on the Koha mailing list, but she answers them in a comprehensive and positive manner. If you combine that with her enthusiasm on Twitter, it adds up to a person that makes you happy to be developing on Koha.
I often say that someone saying thanks is a powerful reward, and Heather never fails in doing that.

So here’s some thanks back to you Heather. I hope to buy you a beverage of your choice at a Kohacon someday.

Koha Kindness

The Koha community is a great community to be part of. Not only do we create a great piece of software but we try to make the world a better place in other ways also. Here are just a few examples of how we do this.

I have run a server (since 2010) that hosts,, paste and a few other services. I haven’t minded funding it, I think of it as penance for making the bad decision I made in 2007, but recently I wanted to upgrade it. So I thought I would give patreon a whirl, to get some funding to increase the ram and and a couple more cores.
Within days I had more than enough pledges, and the recurring cost is more than covered. I promised each person who pledged a haiku, so here they are, can you guess who is who? (be warned I write crappy haiku)

In the northeast of
Kansas, libraries love software
freedom and koha

In Greece a lovely
woman translates software to
help grow its usage

Norway can be cold
but there lives a man with a
warm heart and kind soul

Because he cares, he
donates both time and money
to help the project

She moved to nz
but that wasn’t enough so
she donates things too

She walks the walk and
talks the talk documenting
everything in sphinx

The next example is that earlier this year Tómas, the current release manager, had his house broken into and things, including his computers, taken. Within days Kyle had set up a gofundme campaign and in I think 3 days we hit the $2000 target.

There is another gofundme campaign running at the moment as well. Nicole (our documentation manager) has had a tough time of it lately and is currently seeking funds to help pay the medical expenses for one of her gorgeous dogs. Please help her out if you are able.

The last example I wanted to mention is the Koha Kiva team. We have loaned out $3275 in 131 loans to small businesses all around the world. Pretty neat huh?

Koha on debian or ubuntu – please don’t use CPAN

Recently I have seen people giving advice how to use CPAN to install the perl modules that Koha depends on. Now for non .deb based systems (Redhat, Centos, etc) this advice is ok. But if you are use a Debian based distro, like Debian, Ubuntu, Mint, etc please use the packages.

If it is not in your distro proper, you can get the packages from As new dependencies are added, we package them and submit them to Debian, so they end up in the next release, but you can always get them from until then.

A really easy way to get them is of course to just install the koha-common package from there. You can read good instructions at or there is the koha-perldeps package which only pulls in the dependencies.

Why not use CPAN? Because then it is up to you to make sure you keep all your installed modules up to date, and with the latest security patches. Or you could let the package maintainers worry about that instead.

If you do bump into a module that isn’t packaged, let us know and we will fix that right away.


Useless Koha statistics – What files have been changed the most

So for no real reason, other than to see if I could, I figured out how to get the top 10 changed (well it could be any number) files in the Koha code base

git rev-list --objects --all | awk '$2' | sort -k2 | uniq -cf1 | sort -rn |
while read frequency sample path
    [ "blob" == "$(git cat-file -t $sample)" ] && echo -e "$frequency\t$path";
done | head

This told me (where the number is the number of commits)

  1. 3006 installer/data/mysql/
  2. 1220 C4/
  3. 1141 C4/
  4. 1137
  5. 997 C4/
  6. 996 installer/data/mysql/kohastructure.sql
  7. 914 C4/
  8. 796 opac/
  9. 752 circ/
  10. 710 opac/

You could of course leave the head off to get all or do head -20 to get the top twenty etc.

Like I said, useless statistic, but kinda interesting nonetheless

Catalyst Open Source Academy 2015

This year we had 6 students working on the Koha project as part of their project work for the Catalyst Open Source Academy  and a very productive 3.5 days it was too.

Getting the last patches into Koha by Kristina D.C. Hoeppner, on Flickr





In total we submitted 29 new patches, tested and signed off on 9 more, and even rescued one patch from languishing in the ‘patch does not apply’ status.

The Koha team scoreboard by Kristina D.C. Hoeppner, on Flickr

So far most of the patches have been signed off, and some have passed QA, and a few have even been committed into the codebase. In fact the upcoming 3.18.3 Koha release will have 5 patches from 3 of the students from 2015, and 1 patch from a former Academy student who is now an intern at Catalyst.

After all that hard work, I figured they deserved a cupcake, so I asked the wonderful Sweet Release Cake and Treats to make some, and we ended up with these, which everyone loved.
Koha cupcake - 2015-01-16 by Kristina D.C. Hoeppner, on Flickr





A++ would academy again.