Release notes

v0.1.0 (2025-07-02)

I’ve recently cleaned up a few things and added docs (PR68, PR69), but otherwise pyabc2 has been pretty much the same for a few years now. I wanted to preserve this state of the project before making breaking changes.

Compared to campagnola/pyabc, a major inspiration for this project, pyabc2 (thus far at least):

  • doesn’t really attempt tokenization, just focuses on extracting the melody notes

  • takes into account repeats and endings in order to extract the full melody (Tune.measures, Tune.iter_notes())

  • has separate Pitch and PitchClass classes

  • has Note inherit from Pitch instead of a token class

  • includes tools for fetching tune data from Norbeck, in addition to from The Session

  • implements HTML reprs, including using abcjs to display tunes in the Jupyter notebook (examples)

  • makes use of type annotations

  • adds more methods/properties for pitch/note and key classes

  • is available on PyPI