Changelog¶
8.2¶
8.1¶
Examples are now included in the
calliope_music
distribution and installed as a separatecalliope_examples
package. The “Special Mix” example can now be executed directly after installation:python3 -m calliope_examples.special_mixMeson is now used as the project build system for Python package builds. All setuptools configuration has been removed. There should be no functional difference with this change. #211
8.0¶
Multiple artists are now returned when you resolve or annotate via MusicBrainz and Spotify. This is a change in the data format for those subcommands: fields such as artist_id are replaced by a artists list. #205
musicbrainz: The
annotate --include
option now supports all values that the MusicBrainz API supports.
See the full list of keys with
cpe musicbrainz list-includes
Use
*
to select many keys, e.g.--include=artist.*
to select all data related to the artist.Other Musicbrainz improvements:
The
annotate
command no longer callssearch()
unless required.More detailed artist data is returned. #201
Fix crash if
calliope.musicbrainz.annotate()
is called without theselect_fn
parameter.Fix some implementation gaps around
calliope.cache.CacheLookupResult
. #199Remove unneccessary reimplementation of SQLite’s retry-on-busy handling. #202
Bugfixes:
- cli: Quiet ‘unhandled attribute’ warnings from ‘musicbrainzngs’ library
when -v 3. #199
- lastfm-history: Fix database error
listenbrainz: Fix import error of bundled pylistenbrainz package (it’s bundled awaiting https://github.com/metabrainz/pylistenbrainz/pull/10)
- listenbrainz-history: Fix error when artist-msid isn’t returned
More stuff not listed here.
7.1¶
Fix a bug in cache migration. #197
7.0¶
- Cache expiry is now supported in calliope.cache module.
The
calliope.cache.Cache.lookup()
method now returns(datetime, value)
instead of(bool, value)
. Code calling this function may require changes.The
calliope.cache.Cache.wrap()
method now accepts anexpiry
parameter.bandcamp: Add export-band and export-album commands. #192
bandcamp: Add wishlist command.
example: Fix collectors/online-to-local.sh. #96
tests: Use Tox to run tests in virtualenv. Minor improvements to Gitlab CI setup and PyPI packaging.
6.0¶
examples: Add special-mix example.
lastfm-history: Add histogram command
listenbrainz: Fix a bug in ‘week’ histogram generation
5.0¶
tracker: Support querying remote databases over HTTP.
listenbrainz: Add cpe listenbrainz-history histogram command.
musicbrainz: Documentation improvements and bugfixes.
select: Add named keyword arguments to all constraints.
Default Git branch renamed to ‘main’.
4.0¶
New cpe listenbrainz command to export playlists from Listenbrainz. #178
New cpe listenbrainz-history command to cache and query listening history from Listenbrainz. #176
spotify: Export and Import tracks, albums or artists from/into the current users’ spotify library By lackhove. #168
Bug fixes.
3.1¶
3.0¶
spotify: Use the much improved resolver introduced in 2.0.0 and extend playlist import action to use spotify IDs and URIs and update existing playlists. By lackhove. #155.
spotify: Remove the
--user
flag, it did not do what it claimed to do. #158.Document how to get Spotify API keys. #161.
lastfm-history: Move progress bar to stderr. #160.
Other small fixes and documentation improvements.
2.0¶
Replace –debug with –verbosity CLI option. Thanks to lackhove. #149.
Skip tests if module requirements aren’t installed. Thanks to lackhove. #151.
Update CI image with some follow-up fixes.
musicbrainz: Add a much improved resolver. Thanks to lackhove. #148.
spotify: Small improvements to resolver, add playlist import. #150.
youtube: Fix mass playlist export #85.