Releases: RustyNova016/Alistral
Release v0.5.0
This update is probably the second biggest refactor since 0.3.0, so watch out for regressions
Listenbrainz
Radios
You can now export your radios to Youtube. This require bringing your own api key. Set up can be found here
Config
You can now set a custom URL for the musicbrainz server.
Musicbrainz
You can now set a custom URL for the musicbrainz server.
New lints should appear soon now that I can have a test environement
Meta
Added a wiki at https://rustynova016.github.io/Alistral/. This is pretty barebone right now, but will get improved as I go
Improved the logging, Progress bars should be a bit more stable now. A new verbosity flag as been added for debuging release builds
The app has been split into more library crates again, making parts more reusable.
alistral_core
: The common utilities of the crates, and everything that doesn't revolve around config and interface.interzic
: Translation layer for music apps and services. It query multiple providers to link tracks together, and if able to export playliststuillez
: Utilities for the interface / logging
Others
Plans
Next update should bring a total refactor of the radios (again), to allow creating radios out of a few lines of json. This will allow sharing presets / creating your dream radio without learning to learn rust (You'll still need to learn the syntax, but it's easier).
I'll continue to split the app more, notably to move musicbrainz clippy to its own library crate (symphonize
), and radios as well (no name for now. I accept suggestions)
I won't add any new music services to interzic for now, as Listenbrainz already have Spotify and Apple Music covered. However I don't mind helping if someone wants to help expand it.
Release v0.4.5
Fixes
Actually merged the changes of v0.4.4. My bad.
Release v0.4.4
Fixes
- Linux builds no longer require GLIBC 2.39 to run. If it ran prior to 0.4.3 then it should work now.
- Re-added user export imports.
- Fixed not being able to fetch a work with a GMR ID
Release v0.4.3
Listenbrainz
Daily
- You can now see the fresh releases of the last 7 days.
Stats:
- Reimplemented the recursive work stats. This add the parent works of the listened works, so you can see the stats number of listens of the original works and/or the number of listens of a soundtrack.
- Use
alistral stats work-recursive
- If the counts are way off, please run
alistral cache refresh-data
.
- Use
Radios
- Radios now have a number after their name to disambiguate them.
- Added shared radio. This generate a playlist of recordings both listened by the two provided users.
Config
- Added the option to set the listenbrainz server url. Set
listenbrainz_url
in the config file to point to the new api (Should look like this: "https://api.listenbrainz.org/1/")
Cache
- Added top level argument
--no-cleanup
to prevent cleanup between runs - Added
cache refresh-data
. This reload all the listened recordings
Musicbrainz:
No changes.
Release v0.4.2
Listenbrainz
Listens tools
Added listens wrong-mapping
. This tool finds listens that have been submitted with a different name than the mapped recording. This can be useful to find listens mapped to te wrong recording.
Radios
Added --at-listening-time
argument to the overdue radio. This force the score of the recording to be calculated after the previous track have been listened to, instead of the current time. This makes the radio a lot more accurate for long playlist, but may slow down the generation a lot
Future
As Brainzplayer might loose the ability to play youtube videos, the next major release will focus on youtube export of playlists / radio generation. It will probably come in january.
Musicbrainz
Clippy
Added whitelist (-w
) and blacklist (-b
) flags. Add a list of lint names after it to whitelist/blacklist them.
Added colors to the type of lints
Lints
Added suspicious_remix
lint. This warns when a recording looks like a remix (or VIP) and prompt to add a "remix of" and "remixer" relationship
Added missing_remixer_rel
when a remix lacks a "remixer" relationship
Added missing_remix_rel
when a remix lacks a "remix of" relationship
Added soundtrack_without_disambiguation
for soundtracks works that have no disambiguation, which is required by the style guidelines
Release v0.4.1
Changelog:
lookup
: fixed overdue line getting offset- Renamed "Time listened" to "Total Playtime"
- Removed the print of the database path on start
And forgotten from the previous changelog:
- You can now sort stats by total playtime instead of listens (recording-playtime).
Release v0.4.0
Changelog:
- Added
musicbrainz clippy
. This tool check for missing field or errors on musicbrainz, and will display ways to fix it. Right now, there's only two lints implemented:- missing_work: Search for recordings that have no works associated to them.
- missing_release_barcode: Search for releases that have no barcodes, nor have "This release has no barcode" checked
- The cache now properly migrate between versions. This require to recreate the whole cache, so expect to be refetching everything.
- Now more names are being linked to musicbrainz/listenbrainz pages, and colors have been added to make it easier to read and distinguish entity types.
lookup
now shows the total time a recording has been listened, and its rank in the top listen counts, and the global number of listens- Fixed a bug where stats weren't properly fetching recording data
- Updated the URL in the radio playlists
- Migrated the underrated radio! (Global stats seems to be broken again too...)
Release v0.3.3
Release v0.3.3
New features:
listens remap-mbid
: Remap all the listens mapped to an mbid to another.daily
: Show "today in history" for your listens, and first discoveries birthdays
- Radios: You can now restrict the seed listens to a shorter period with the
--seed-listen-range
argument. This will only use seed listens from this period. There is also--min-seed-listens
to keep a minimum of listens (default 3) from before the period if there is not enough
Changes:
lookup
now refresh the recording. So if you know there's changes on the data, you can use lookup to refresh itlookup
: Overdue score is now from 0. 1 now means that the recording is overdue. Fixes weird behaviours with bumps
[0.3.3] - 2024-12-03
🚀 Features
- Copy release db to debug
- Seed time range for radio
- Add listen msid remapper
- Daily report
🐛 Bug Fixes
- Refresh recording on lookup
- Rust 1.83 fixes
- Bump score in lookup
- Comment out tests
- Remove broken badges
🚜 Refactor
- Move lookup report to recording_with_listens
⚙️ Miscellaneous Tasks
- Remove old migrations
- Macos Build
- Update manual release build
- Bump version
- Update CMD help
Release v0.3.2
Small update to add macos builds.
[0.3.2] - 2024-11-27
🚀 Features
- Copy release db to debug
⚙️ Miscellaneous Tasks
- Remove old migrations
- Macos Build
- Update manual release build
- Bump version
Release v0.3.1
Small bugfix patch for v0.3.0.
The listen importer has been disabled due to listenbrainz not giving enough data to be useful. If you imported a listen dump, please reset the cache using alistral cache init-database --reset