diff --git a/api/funkwhale_api/subsonic/serializers.py b/api/funkwhale_api/subsonic/serializers.py index 023e40cac29a89168e497977543f5995dece73b5..a53ad464038316f5efbd5810bd8a995e33a744ec 100644 --- a/api/funkwhale_api/subsonic/serializers.py +++ b/api/funkwhale_api/subsonic/serializers.py @@ -70,6 +70,7 @@ def get_track_data(album, track, upload): "album": album.title, "artist": album.artist.name, "track": track.position or 1, + "discNumber": track.disc_number or 1, "contentType": upload.mimetype, "suffix": upload.extension or "", "duration": upload.duration or 0, diff --git a/api/tests/subsonic/test_serializers.py b/api/tests/subsonic/test_serializers.py index 85cb65fa791349df787dc3e742afc88ade5442d9..2c468a4f027e20b01d975552e8a841464e2e6d4a 100644 --- a/api/tests/subsonic/test_serializers.py +++ b/api/tests/subsonic/test_serializers.py @@ -64,7 +64,7 @@ def test_get_artist_serializer(factories): def test_get_album_serializer(factories): artist = factories["music.Artist"]() album = factories["music.Album"](artist=artist) - track = factories["music.Track"](album=album) + track = factories["music.Track"](album=album, disc_number=42) upload = factories["music.Upload"](track=track, bitrate=42000, duration=43, size=44) expected = { @@ -85,6 +85,7 @@ def test_get_album_serializer(factories): "album": album.title, "artist": artist.name, "track": track.position, + "discNumber": track.disc_number, "year": track.album.release_date.year, "contentType": upload.mimetype, "suffix": upload.extension or "", diff --git a/changes/changelog.d/765.bugfix b/changes/changelog.d/765.bugfix new file mode 100644 index 0000000000000000000000000000000000000000..79872e1ed5bd06c9d95398e37032b9abd2ba00da --- /dev/null +++ b/changes/changelog.d/765.bugfix @@ -0,0 +1 @@ +Include disc number in Subsonic responses (#765)