HAL v2 is here. This version represents a fairly large refactor of most of the code base, many usability improvements, and some improved or additional functionality. It also, unfortunately, means that some code written for HAL v1 may no longer work, or work slightly differently. I kept the APIs as similar as possible, but some behavior may not always be as you expect, so if you decide to upgrade from v1, test carefully and keep the docs on hand.
HAL v2 now uses special passages both to configure the library and to set up track definitions.
hal.config special passage is the new way to configure HAL. You no longer have to hand-edit the libraries source code, which was a hack-y nightmare, especially when you needed to upgrade to a new version. Do not attempt to hand-edit the source code anymore.
hal.tracks special passage is the new, recommended way for users to define tracks and assign them source files. The old
A.newTrack() method is still available and still works, and is joined by the
(newtrack:) macro, so you have options if you want them.
The macros are:
Details on the macros are in the docs.
Changes this big rarely go completely smoothly. If you find any bugs or other issues, please report them on the issue tracker.