Kunquat 0.2.4 "state store"
This was supposed to be a maintenance release that fixes some problems encountered in 0.2.3 X-D
Milestone information
- Project:
- Kunquat
- Series:
- 0.2
- Version:
- 0.2.4
- Code name:
- state store
- Released:
- Registrant:
- Toni Ruottu
- Release registered:
- Active:
- No. Drivers cannot target bugs and blueprints to this milestone.
Activities
- Assigned to you:
- No blueprints or bugs assigned to you.
- Assignees:
- 1 Tomi Jylhä-Ollila
- Blueprints:
- No blueprints are targeted to this milestone.
- Bugs:
- 1 Invalid, 5 Fix Released
Download files for this release
Release notes
The Kunquat 0.2.4 release introduces an editor API in C language. The API is more powerful than it looks at first glance. Behind the scenes, we have a state store that helps editor applications retain the composition state over software crashes. The new release also fixes some minor bugs present in previous releases. Finally, 0.2.4 is the first release where copyrights are waived with a CC0 waiver instead of simply granting users a GPL license to the software.
The new C editor API can be used to modify Kunquat compositions, but the API is still slightly incomplete. In particular, the API is missing a function for freeing memory taken by returned data objects. People experimenting with the current C API should migrate to the function when we introduce it in our next release. The upcoming release will introduce a Python wrapper for the API. We plan writing actual Kunquat applications in Python. The C API will continue to be in an important role when using Kunquat as a music engine for games, or writing kqt file playback plugins for existing music players, as such host applications may not be written in Python.
The state store, accessible through the new API, makes it possible to edit Kunquat compositions without the risk of data corruption in the event of abrupt termination at an arbitrary point in time. Opening a composition for editing from a state store will turn on journaling. As a result, editor code may commit to changes in the composition. Once the commit has been done, libkunquat will take care of rolling back to the committed state on startup, in case we lost power or received a SIGKILL during previous editing session.
We also fixed lots of small issues for the new release. To give an example, installing Kunquat previously under a non-existing prefix would cause the installation to fail. In the new release, we create that directory for you like Autotools would. We also altered the installation directory of man pages. The previously used directory may have caused problems for users installing Kunquat directly under /usr instead of /usr/local. You should also be able to compile the new Kunquat on systems lacking WavPack libraries. Although missing WavPack will disable some desired features, this should help in porting Kunquat to foreign platforms. Finally, we now install example files along with the software. So there is no need to keep the sources around just for having example files to try out.
After discussing the matter for a year or so, we came to the conclusion that CC0 is better aligned with our goals than GPL ever was. The switch to CC0 has its own drawbacks and benefits. On one hand, we can no longer accept GPL-licensed code for inclusion in our code base. On the other hand, we are able to offer our code to a wider audience suffering from diverse external restrictions. Third-party reimplementations of Kunquat for mere political reasons might thwart compatibility between related software products, which we deem highly undesirable.
Changelog
This release does not have a changelog.
0 blueprints and 6 bugs targeted
Bug report | Importance | Assignee | Status | |||
---|---|---|---|---|---|---|
421135 | #421135 | missing version numbers from dependencies in INSTALL | 3 High | 3 Invalid | ||
444849 | #444849 | switch to a free'er license | 2 Critical | Tomi Jylhä-Ollila | 10 Fix Released | |
446746 | #446746 | man pages are installed into problematic directories | 2 Critical | 10 Fix Released | ||
446808 | #446808 | installation fails when prefix directory doesn't exist | 2 Critical | 10 Fix Released | ||
426918 | #426918 | Unable to compile Kunquat without wavpack | 3 High | 10 Fix Released | ||
446847 | #446847 | install example files with software | 3 High | 10 Fix Released |