IOSACal 0.5, featuring IntCal20 and more

After three years of slow paced development, IOSACal 0.5 is here. The DOI of the latest release is

As before, the preferred installation method is with pip in a virtual environment. The documentation is at

This release brings the new IntCal20 calibration data and several improvements for different use cases, plus one important bug fix. Apart from myself, there were two contributors to this release, I’m grateful to Karl Håkansson and Wesley Weatherbee for their work.

These are the highlights from the release notes:

  • the project has moved to Codeberg for source code hosting and issue tracking. The new Git repository is at with a default branch name of main
  • there is an official Code of Conduct that all contributors (including the maintainter) will need to follow, based on Contributor Covenant
  • the documentation has seen some improvements, in particular in the Contributing section. Overall, making contributions easier from both expert and novice users is a major theme in this release.
  • interactive use in Jupyter notebooks is made easier with CalibrationCurve that can be created in many ways (such as loading from an arbitrary file, or from a standard calibration curve called by shorthand)
  • fixed a bug that made plots with AD/CE setting incorrect (contributed by Karl Håkansson)
  • fixed a bug that caused a wrong plot density function for dates 80 BP to 0 BP (contributed by Karl Håkansson)
  • add IntCal20 calibration data (contributed by Wesley Weatherbee)

On the technical side:

  • the command line interface is now based on the Click library
  • most code is now covered by tests, based on pytest
  • Python 3.6 or above required
  • requires Numpy 1.18 and Matplotlib 3.0

I don’t have big plans for the next release. I would like to add more tests, modernize the code and make it easier to adapt / tinker with. The only major achievement I’m looking forward to is to submit an article about IOSACal to the Journal of Open Source Software.


Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.