Releases: Zastai/MetaBrainz.ListenBrainz
Releases · Zastai/MetaBrainz.ListenBrainz
4.0.0
This version targets net6.0
and net8.0
only.
💥 Breaking Changes
- Allow HTTP client specification for
ListenBrainz
(#51) @Zastai - Update the mappings to match current API results (#50) @Zastai
- Drop recent listens (#49) @Zastai
- Fix the
inserted_at
field on listens (#48) @Zastai - Update support libraries (#44) @Zastai
- Async improvements (#33) @Zastai
⚠️ Deprecated
🚀 New Features and Improvements
- Allow HTTP client specification for
ListenBrainz
(#51) @Zastai - Update the mappings to match current API results (#50) @Zastai
- Use a trace source for debug output (#45) @Zastai
- Refresh the package icon (#42) @Zastai
- Update the build SDK to version 3.1.0 (#38) @Zastai
- Async improvements (#33) @Zastai
🐛 Bug Fixes
📦 Dependency Updates
- Bump
MetaBrainz.Common.Json
to v6.0.2 (#52) @Zastai - Update support libraries (#44) @Zastai
- Update
MetaBrainz.Build.Sdk
to v3.1.1 (#43) @Zastai - Update
JetBrains.Annotations
to version 2023.3.0 (#39) @Zastai - Update the build SDK to version 3.1.0 (#38) @Zastai
- Use
MetaBrainz.Common
(#30) @Zastai - Bump MetaBrainz.Common.Json from 5.0.0 to 5.1.0 (#28) @dependabot
- Bump MetaBrainz.Build.Sdk from 2.1.1 to 2.1.2 (#29) @dependabot
📝 Documentation Updates
👻 Maintenance
3.0.0
Please note that the package license has been changed from MS-PL
to MIT
.
💥 Breaking Changes
- Update the site artists stats endpoint (#23) @Zastai
- This changes the types returned by
GetArtistStatistics()
- Changed interfaces:
ISiteArtistStatistics
andIUserArtistStatistics
- New interface:
IArtistStatistics
- Removed interface:
IArtistTimeRange
- This changes the types returned by
- Update the SDK to version 2.1.1 (#20) @Zastai
- The assembly is no longer marked as
CLSCompliant
- This changes the target frameworks to
net6.0
,netstandard2.1
,netstandard2.0
andnet48
.
- The assembly is no longer marked as
🚀 New Features and Improvements
🐛 Bug Fixes
- Fix JSON serialization for submissions (#25) @Zastai
- The payload was being truncated, resulting in a submission error
- Add MBID mapping support (#22) @Zastai
📦 Dependency Updates
- Update the SDK to version 2.1.1 (#20) @Zastai
- MetaBrainz.Common.Json → 5.0.0
- System.Text.Json → 6.0.0
- MetaBrainz.Build.Sdk → 2.1.1
👻 Maintenance
2.1.0
2.0.0
v2.0.0 (2020-04-27)
This release contains a completely rewritten JSON backend, using custom converters.
There are also some breaking API changes (hence the major version bump).
API Additions
- Interface:
IPlayingNow
- Interface:
IPlayingTrack
- Interface:
IRecentListens
- Property:
IAdditionalInfo.ImportedArtistId
- Property:
IAdditionalInfo.ImportedReleaseId
API Removals
IFetchedListens
:- this was being used for 3 distinct use cases, two of which have now been split out to separate interfaces:
IPlayingNow
(returned byListenBrainz.GetPlayingNow()
) andIRecentListens
(returned byListenBrainz.GetRecentListens()
) - as a result, the
Count
,PlayingNow
andUserList
properties were removed
- this was being used for 3 distinct use cases, two of which have now been split out to separate interfaces:
UnixTime.Converter
was dropped
API Changes
IAdditionalInfo
:- the
AllFields
property is no longer nullable, but its contained values are now nullable - the elements in the list properties (
ArtistIds
,ArtistNames
,ReleaseArtistNames
,SpotifyAlbumArtistIds
,SpotifyArtistIds
,Tags
andWorkIds
) are now nullable
- the
IFetchedListens
:- none of the properties are nullable now
IListen
:- none of the properties are nullable now
ITrackInfo
:- the
AdditionalInfo
,Artist
andName
properties are no longer nullable
- the
ListenBrainz.GetListens()
andListenBrainz.GetListensAsync()
:- the overloads taking
after
andbefore
parameters were dropped- they were a bit clunky in use, plus using both is not currently supported by the server API
- instead, new companion methods were added:
ListenBrainz.GetListensAfter()
andListenBrainz.GetListensAfterAsync()
ListenBrainz.GetListensBefore()
andListenBrainz.GetListensBeforeAsync()
- once LB-518 is fixed, a future release will also provide
ListenBrainz.GetListensBetween()
andListenBrainz.GetListensBetweenAsync()
- the overloads taking
ListenBrainz.GetPlayingNow()
andListenBrainz.GetPlayingNowAsync()
now return anIPlayingNow
objectListenBrainz.GetRecentListens()
andListenBrainz.GetRecentListensAsync()
now return anIRecentListens
object
Other Changes
- a build issue that prevented the API documentation from being included in the package has been resolved
Dependency Updates
- JetBrainz.Annotations → 2020.1.0
- MetaBrainz.Common.Json → 3.0.0
- System.Text.Json → 4.7.1