diff --git a/CHANGELOG.md b/CHANGELOG.md index 1c863b567..6afd71a28 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,91 @@ This changelog is viewable on the web at https://docs.funkwhale.audio/changelog. +## 2.0.0-alpha.1 (2025-05-23) + +Carefully read [this blog post](https://blog.funkwhale.audio/2025-funkwhale-2-news.html) before upgrading. This alpha release might break your db. + +Upgrade instructions are available at https://docs.funkwhale.audio/administrator/upgrade/index.html + +Features: + +- Add a command to create playlists from folder structure (#2223) +- Add Musicbrainz genres to funkwhale tag table and allow Musicbrainz tag sync (#2143) +- Add support for deprecated COVERART fields in ogg files. +- Add support for Python 3.12 +- Allow specifying more parameters on fs-import API endpoint +- Build desktop app with Tauri +- Drop libraries in favor of playlist (#2366) +- Entering an input in the global search in the sidebar opens up a modal that show all possible results at once with collapseable sections for each category, including federated searches for other users, channels and rss feeds. (#2910) +- Extend Subsonic API with OpenSubsonic support (#2270) +- Generate mock test server from openapi schema +- Implement Subsonic getArtistInfo2 response +- Improve mobile design (#2090) +- Improve visuals & layout (#2091) +- Playlist federation (#1458) +- Quality filter for content frontend (#1469) +- Quality filters backend (#2275) +- Support multiples artists for tracks and albums (#1568) +- Use playlists to privately share audio files (#2417) +- User follow with listening and track favorite activities (#1810) + +Enhancements: + +- Add cli command to prune non mbid content from db (#2083) +- Add favorite and listening sync ith Listenbrainz (#2079) +- Add tests for track cache +- Allow special characters in tags (#2009) +- disable some linter rule to avoid noise on the api lint process (#2346) +- Drop python 3.8 and 3.9 (#2282) +- Migrate frontend to api V2 (#2324) +- Optimize radios queryset to support large tables (#2450) +- Publish releases from CI job +- Subsonic getAlbumInfo, getAlbumInfo2 and getTopSongs endpoints (#2392) +- Support setting CELERY_TASK_TIME_LIMIT from environment +- Update dj-rest-auth to 5.0.2 and django-allauth to 0.55.2 +- Update django to version 4.2 + +Refactoring: + +- Add compatibility for lru-cache v10 + +Bugfixes: + +- ActivityStreams compliance: duration (#1566) +- Docker mac compatibility, dynamic DNS + Debian image (#2337) +- Federation API returns a 404 response when an actor is not found +- fix fakedata generation regression from multiartist (#2343) +- Fix schema generation to allow propre types in front (#2404) +- Fix third party upload triggers and plugin example (#2405) +- Fixed the exceptions caught in two places in the getCoverArt subsonic API (#2122) +- regression:multiple albums with same name and artsit creating during import (#2365) +- Resolve forbidden tags due to filter database error (#2325) +- Resolve Radio playing fails when unauthenticated (#2319) + +Documentation: + +- Add API v2 overview. +- Add genre tags spec. +- Add import group details to content upload spec (#2268) +- add listenings-favorites-sync-with-lb spec +- Added explanation of AWS_CUSTOM_DOMAIN and AWS_S3_URL_PROTOCOL. +- Added new upload process spec +- Added user deletion spec +- Fixed the sample Apache configuration +- Playlist federation spec +- update federation doc with the new artist credit object (#2335) + +Other: + +- Use Alpine 3.19 as base for docker images + +Deprecation: + +- The "funkwhaleVersion" field in Subsonic responses is deprecated. Clients + should use the OpenSubsonic field "serverVersion" instead. + The "funkwhaleVersion" field will get removed in Funkwhale 1.7.0. + + ## 1.4.0 (2023-12-12) Upgrade instructions are available at https://docs.funkwhale.audio/administrator/upgrade/index.html diff --git a/api/pyproject.toml b/api/pyproject.toml index ed0c638ec..ffd84bcc6 100644 --- a/api/pyproject.toml +++ b/api/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "funkwhale-api" -version = "1.4.0" +version = "2.0.0-alpha.1" description = "Funkwhale API" authors = ["Funkwhale Collective"] diff --git a/changes/changelog.d/1458.doc b/changes/changelog.d/1458.doc deleted file mode 100644 index acdcddead..000000000 --- a/changes/changelog.d/1458.doc +++ /dev/null @@ -1 +0,0 @@ -Playlist federation spec diff --git a/changes/changelog.d/1458.feature b/changes/changelog.d/1458.feature deleted file mode 100644 index 846952c0d..000000000 --- a/changes/changelog.d/1458.feature +++ /dev/null @@ -1 +0,0 @@ -Playlist federation (#1458) diff --git a/changes/changelog.d/1469.feature b/changes/changelog.d/1469.feature deleted file mode 100644 index 261849a8f..000000000 --- a/changes/changelog.d/1469.feature +++ /dev/null @@ -1 +0,0 @@ -Quality filter for content frontend (#1469) diff --git a/changes/changelog.d/1566.bugfix b/changes/changelog.d/1566.bugfix deleted file mode 100644 index be6a67fcf..000000000 --- a/changes/changelog.d/1566.bugfix +++ /dev/null @@ -1 +0,0 @@ -ActivityStreams compliance: duration (#1566) diff --git a/changes/changelog.d/1568.feature b/changes/changelog.d/1568.feature deleted file mode 100644 index 9bece1b24..000000000 --- a/changes/changelog.d/1568.feature +++ /dev/null @@ -1 +0,0 @@ -Support multiples artists for tracks and albums (#1568) diff --git a/changes/changelog.d/1810.feature b/changes/changelog.d/1810.feature deleted file mode 100644 index 59aec2046..000000000 --- a/changes/changelog.d/1810.feature +++ /dev/null @@ -1 +0,0 @@ -User follow with listening and track favorite activities (#1810) diff --git a/changes/changelog.d/2009.enhancement b/changes/changelog.d/2009.enhancement deleted file mode 100644 index f4426caf7..000000000 --- a/changes/changelog.d/2009.enhancement +++ /dev/null @@ -1 +0,0 @@ -Allow special characters in tags (#2009) diff --git a/changes/changelog.d/2079.enhancement b/changes/changelog.d/2079.enhancement deleted file mode 100644 index 6c9cf7e31..000000000 --- a/changes/changelog.d/2079.enhancement +++ /dev/null @@ -1 +0,0 @@ -Add favorite and listening sync ith Listenbrainz (#2079) diff --git a/changes/changelog.d/2083.enhancement b/changes/changelog.d/2083.enhancement deleted file mode 100644 index 62a5c7482..000000000 --- a/changes/changelog.d/2083.enhancement +++ /dev/null @@ -1 +0,0 @@ -Add cli command to prune non mbid content from db (#2083) diff --git a/changes/changelog.d/2090.feature b/changes/changelog.d/2090.feature deleted file mode 100644 index 993264243..000000000 --- a/changes/changelog.d/2090.feature +++ /dev/null @@ -1 +0,0 @@ -Improve mobile design (#2090) diff --git a/changes/changelog.d/2091.feature b/changes/changelog.d/2091.feature deleted file mode 100644 index 43a00d298..000000000 --- a/changes/changelog.d/2091.feature +++ /dev/null @@ -1 +0,0 @@ -Improve visuals & layout (#2091) diff --git a/changes/changelog.d/2122.bugfix b/changes/changelog.d/2122.bugfix deleted file mode 100644 index a9a32d5a9..000000000 --- a/changes/changelog.d/2122.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fixed the exceptions caught in two places in the getCoverArt subsonic API (#2122) diff --git a/changes/changelog.d/2143.feature b/changes/changelog.d/2143.feature deleted file mode 100644 index 7b9a33bc2..000000000 --- a/changes/changelog.d/2143.feature +++ /dev/null @@ -1 +0,0 @@ -Add Musicbrainz genres to funkwhale tag table and allow Musicbrainz tag sync (#2143) diff --git a/changes/changelog.d/2223.feature b/changes/changelog.d/2223.feature deleted file mode 100644 index 9673397ab..000000000 --- a/changes/changelog.d/2223.feature +++ /dev/null @@ -1 +0,0 @@ -Add a command to create playlists from folder structure (#2223) diff --git a/changes/changelog.d/2275.feature b/changes/changelog.d/2275.feature deleted file mode 100644 index 91c3c38da..000000000 --- a/changes/changelog.d/2275.feature +++ /dev/null @@ -1 +0,0 @@ -Quality filters backend (#2275) diff --git a/changes/changelog.d/2282.enhancement b/changes/changelog.d/2282.enhancement deleted file mode 100644 index 7488c2342..000000000 --- a/changes/changelog.d/2282.enhancement +++ /dev/null @@ -1 +0,0 @@ -Drop python 3.8 and 3.9 (#2282) diff --git a/changes/changelog.d/2319.bugfix b/changes/changelog.d/2319.bugfix deleted file mode 100644 index 05107a37c..000000000 --- a/changes/changelog.d/2319.bugfix +++ /dev/null @@ -1 +0,0 @@ -Resolve Radio playing fails when unauthenticated (#2319) diff --git a/changes/changelog.d/2324.enhancement b/changes/changelog.d/2324.enhancement deleted file mode 100644 index c0e7c5f7f..000000000 --- a/changes/changelog.d/2324.enhancement +++ /dev/null @@ -1 +0,0 @@ -Migrate frontend to api V2 (#2324) diff --git a/changes/changelog.d/2325.bugfix b/changes/changelog.d/2325.bugfix deleted file mode 100644 index 01ebfe21f..000000000 --- a/changes/changelog.d/2325.bugfix +++ /dev/null @@ -1 +0,0 @@ -Resolve forbidden tags due to filter database error (#2325) diff --git a/changes/changelog.d/2335.doc b/changes/changelog.d/2335.doc deleted file mode 100644 index 1ebb44982..000000000 --- a/changes/changelog.d/2335.doc +++ /dev/null @@ -1 +0,0 @@ -update federation doc with the new artist credit object (#2335) diff --git a/changes/changelog.d/2337.bugfix b/changes/changelog.d/2337.bugfix deleted file mode 100644 index c038b9da1..000000000 --- a/changes/changelog.d/2337.bugfix +++ /dev/null @@ -1 +0,0 @@ -Docker mac compatibility, dynamic DNS + Debian image (#2337) diff --git a/changes/changelog.d/2343.bugfix b/changes/changelog.d/2343.bugfix deleted file mode 100644 index a94b2a98b..000000000 --- a/changes/changelog.d/2343.bugfix +++ /dev/null @@ -1 +0,0 @@ -fix fakedata generation regression from multiartist (#2343) diff --git a/changes/changelog.d/2346.enhancement b/changes/changelog.d/2346.enhancement deleted file mode 100644 index 57cf12d9b..000000000 --- a/changes/changelog.d/2346.enhancement +++ /dev/null @@ -1 +0,0 @@ -disable some linter rule to avoid noise on the api lint process (#2346) diff --git a/changes/changelog.d/2365.bugfix b/changes/changelog.d/2365.bugfix deleted file mode 100644 index 86f9c78ae..000000000 --- a/changes/changelog.d/2365.bugfix +++ /dev/null @@ -1 +0,0 @@ -regression:multiple albums with same name and artsit creating during import (#2365) diff --git a/changes/changelog.d/2366.feature b/changes/changelog.d/2366.feature deleted file mode 100644 index 72cce3afd..000000000 --- a/changes/changelog.d/2366.feature +++ /dev/null @@ -1 +0,0 @@ -Drop libraries in favor of playlist (#2366) diff --git a/changes/changelog.d/2376.feature b/changes/changelog.d/2376.feature deleted file mode 100644 index 04f86d54b..000000000 --- a/changes/changelog.d/2376.feature +++ /dev/null @@ -1 +0,0 @@ -Add support for deprecated COVERART fields in ogg files. diff --git a/changes/changelog.d/2392.enhancement b/changes/changelog.d/2392.enhancement deleted file mode 100644 index 2958abed0..000000000 --- a/changes/changelog.d/2392.enhancement +++ /dev/null @@ -1 +0,0 @@ -Subsonic getAlbumInfo, getAlbumInfo2 and getTopSongs endpoints (#2392) diff --git a/changes/changelog.d/2404.bugfix b/changes/changelog.d/2404.bugfix deleted file mode 100644 index d187891b4..000000000 --- a/changes/changelog.d/2404.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix schema generation to allow propre types in front (#2404) diff --git a/changes/changelog.d/2405.bugfix b/changes/changelog.d/2405.bugfix deleted file mode 100644 index 3dfb85792..000000000 --- a/changes/changelog.d/2405.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix third party upload triggers and plugin example (#2405) diff --git a/changes/changelog.d/2417.feature b/changes/changelog.d/2417.feature deleted file mode 100644 index 88393f67d..000000000 --- a/changes/changelog.d/2417.feature +++ /dev/null @@ -1 +0,0 @@ -Use playlists to privately share audio files (#2417) diff --git a/changes/changelog.d/2450.enhancement b/changes/changelog.d/2450.enhancement deleted file mode 100644 index 519c9a17b..000000000 --- a/changes/changelog.d/2450.enhancement +++ /dev/null @@ -1 +0,0 @@ -Optimize radios queryset to support large tables (#2450) diff --git a/changes/changelog.d/2757.enhancement b/changes/changelog.d/2757.enhancement deleted file mode 100644 index dd9d34ecb..000000000 --- a/changes/changelog.d/2757.enhancement +++ /dev/null @@ -1 +0,0 @@ -Add tests for track cache diff --git a/changes/changelog.d/2757.feature b/changes/changelog.d/2757.feature deleted file mode 100644 index d0d957458..000000000 --- a/changes/changelog.d/2757.feature +++ /dev/null @@ -1 +0,0 @@ -Generate mock test server from openapi schema diff --git a/changes/changelog.d/2757.refactoring b/changes/changelog.d/2757.refactoring deleted file mode 100644 index 26cfe8dc7..000000000 --- a/changes/changelog.d/2757.refactoring +++ /dev/null @@ -1 +0,0 @@ -Add compatibility for lru-cache v10 diff --git a/changes/changelog.d/2788.feature b/changes/changelog.d/2788.feature deleted file mode 100644 index 3676d3c95..000000000 --- a/changes/changelog.d/2788.feature +++ /dev/null @@ -1 +0,0 @@ -Allow specifying more parameters on fs-import API endpoint diff --git a/changes/changelog.d/2899.enhancement b/changes/changelog.d/2899.enhancement deleted file mode 100644 index 8ec65392c..000000000 --- a/changes/changelog.d/2899.enhancement +++ /dev/null @@ -1 +0,0 @@ -Support setting CELERY_TASK_TIME_LIMIT from environment diff --git a/changes/changelog.d/2910.feature b/changes/changelog.d/2910.feature deleted file mode 100644 index 0a7f4db34..000000000 --- a/changes/changelog.d/2910.feature +++ /dev/null @@ -1 +0,0 @@ -Entering an input in the global search in the sidebar opens up a modal that show all possible results at once with collapseable sections for each category, including federated searches for other users, channels and rss feeds. (#2910) diff --git a/changes/changelog.d/actor-not-found.bugfix b/changes/changelog.d/actor-not-found.bugfix deleted file mode 100644 index ff0d81930..000000000 --- a/changes/changelog.d/actor-not-found.bugfix +++ /dev/null @@ -1 +0,0 @@ -Federation API returns a 404 response when an actor is not found diff --git a/changes/changelog.d/allauth.enhancement b/changes/changelog.d/allauth.enhancement deleted file mode 100644 index 30c4cf0a3..000000000 --- a/changes/changelog.d/allauth.enhancement +++ /dev/null @@ -1 +0,0 @@ -Update dj-rest-auth to 5.0.2 and django-allauth to 0.55.2 diff --git a/changes/changelog.d/alpine-319.misc b/changes/changelog.d/alpine-319.misc deleted file mode 100644 index 91adac627..000000000 --- a/changes/changelog.d/alpine-319.misc +++ /dev/null @@ -1 +0,0 @@ -Use Alpine 3.19 as base for docker images diff --git a/changes/changelog.d/apache-template-fix.doc b/changes/changelog.d/apache-template-fix.doc deleted file mode 100644 index acfabe6da..000000000 --- a/changes/changelog.d/apache-template-fix.doc +++ /dev/null @@ -1 +0,0 @@ -Fixed the sample Apache configuration diff --git a/changes/changelog.d/aws-custom-domain.doc b/changes/changelog.d/aws-custom-domain.doc deleted file mode 100644 index a5f8f5571..000000000 --- a/changes/changelog.d/aws-custom-domain.doc +++ /dev/null @@ -1 +0,0 @@ -Added explanation of AWS_CUSTOM_DOMAIN and AWS_S3_URL_PROTOCOL. diff --git a/changes/changelog.d/django4.2.enhancement b/changes/changelog.d/django4.2.enhancement deleted file mode 100644 index 7d261c53f..000000000 --- a/changes/changelog.d/django4.2.enhancement +++ /dev/null @@ -1 +0,0 @@ -Update django to version 4.2 diff --git a/changes/changelog.d/genre-tags.doc b/changes/changelog.d/genre-tags.doc deleted file mode 100644 index 8d7fd12a9..000000000 --- a/changes/changelog.d/genre-tags.doc +++ /dev/null @@ -1 +0,0 @@ -Add genre tags spec. diff --git a/changes/changelog.d/import-groups.doc b/changes/changelog.d/import-groups.doc deleted file mode 100644 index ecc488295..000000000 --- a/changes/changelog.d/import-groups.doc +++ /dev/null @@ -1 +0,0 @@ -Add import group details to content upload spec (#2268) diff --git a/changes/changelog.d/listenings-favorites-sync-with-lb.doc b/changes/changelog.d/listenings-favorites-sync-with-lb.doc deleted file mode 100644 index 2d8388d75..000000000 --- a/changes/changelog.d/listenings-favorites-sync-with-lb.doc +++ /dev/null @@ -1 +0,0 @@ -add listenings-favorites-sync-with-lb spec diff --git a/changes/changelog.d/opensubsonic.feature b/changes/changelog.d/opensubsonic.feature deleted file mode 100644 index 8d28a02cb..000000000 --- a/changes/changelog.d/opensubsonic.feature +++ /dev/null @@ -1 +0,0 @@ -Extend Subsonic API with OpenSubsonic support (#2270) diff --git a/changes/changelog.d/publish-release-in-ci.enhancement b/changes/changelog.d/publish-release-in-ci.enhancement deleted file mode 100644 index 013665e89..000000000 --- a/changes/changelog.d/publish-release-in-ci.enhancement +++ /dev/null @@ -1 +0,0 @@ -Publish releases from CI job diff --git a/changes/changelog.d/python312.feature b/changes/changelog.d/python312.feature deleted file mode 100644 index 045006abd..000000000 --- a/changes/changelog.d/python312.feature +++ /dev/null @@ -1 +0,0 @@ -Add support for Python 3.12 diff --git a/changes/changelog.d/subsonic-artistinfo2.feature b/changes/changelog.d/subsonic-artistinfo2.feature deleted file mode 100644 index e01f822f0..000000000 --- a/changes/changelog.d/subsonic-artistinfo2.feature +++ /dev/null @@ -1 +0,0 @@ -Implement Subsonic getArtistInfo2 response diff --git a/changes/changelog.d/subsonic-funkwhale-version.deprecation b/changes/changelog.d/subsonic-funkwhale-version.deprecation deleted file mode 100644 index 483c30d39..000000000 --- a/changes/changelog.d/subsonic-funkwhale-version.deprecation +++ /dev/null @@ -1,3 +0,0 @@ -The "funkwhaleVersion" field in Subsonic responses is deprecated. Clients -should use the OpenSubsonic field "serverVersion" instead. -The "funkwhaleVersion" field will get removed in Funkwhale 1.7.0. diff --git a/changes/changelog.d/tauri.feature b/changes/changelog.d/tauri.feature deleted file mode 100644 index c8cd45ce4..000000000 --- a/changes/changelog.d/tauri.feature +++ /dev/null @@ -1 +0,0 @@ -Build desktop app with Tauri diff --git a/changes/changelog.d/upload-process.doc b/changes/changelog.d/upload-process.doc deleted file mode 100644 index a623e6ec7..000000000 --- a/changes/changelog.d/upload-process.doc +++ /dev/null @@ -1 +0,0 @@ -Added new upload process spec diff --git a/changes/changelog.d/user-deletion.doc b/changes/changelog.d/user-deletion.doc deleted file mode 100644 index e4ebbc56c..000000000 --- a/changes/changelog.d/user-deletion.doc +++ /dev/null @@ -1 +0,0 @@ -Added user deletion spec diff --git a/changes/changelog.d/v2-overview.doc b/changes/changelog.d/v2-overview.doc deleted file mode 100644 index f60538f14..000000000 --- a/changes/changelog.d/v2-overview.doc +++ /dev/null @@ -1 +0,0 @@ -Add API v2 overview.