Version bump and changelog
This commit is contained in:
parent
af2b4965cd
commit
f44d2b0694
291
CHANGELOG
291
CHANGELOG
|
@ -10,6 +10,297 @@ This changelog is viewable on the web at https://docs.funkwhale.audio/changelog.
|
|||
|
||||
.. towncrier
|
||||
|
||||
0.18 "Naomi" (2019-01-22)
|
||||
-------------------------
|
||||
|
||||
This release is dedicated to Naomi, an early contributor and beta tester of Funkwhale.
|
||||
Her positivity, love and support have been incredibly helpful and helped shape the project
|
||||
as you can enjoy it today. Thank you so much Naomi <3
|
||||
|
||||
Upgrade instructions are available at
|
||||
https://docs.funkwhale.audio/index.html, ensure you also execute the intructions
|
||||
marked with ``[manual action required]`` and ``[manual action suggested]``.
|
||||
|
||||
See ``Full changelog`` below for an exhaustive list of changes!
|
||||
|
||||
Audio transcoding is back!
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
After removal of our first, buggy transcoding implementation, we're proud to announce
|
||||
that this feature is back. It is enabled by default, and can be configured/disabled
|
||||
in your instance settings!
|
||||
|
||||
This feature works in the browser, with federated/non-federated tracks and using Subsonic clients.
|
||||
Transcoded tracks are generated on the fly, and cached for a configurable amount of time,
|
||||
to reduce the load on the server.
|
||||
|
||||
|
||||
Licensing and copyright information
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Funkwhale is now able to parse copyright and license data from file and store
|
||||
this information. Apart from displaying it on each track detail page,
|
||||
no additional behaviour is currently implemented to use this new data, but this
|
||||
will change in future releases.
|
||||
|
||||
License and copyright data is also broadcasted over federation.
|
||||
|
||||
License matching is done on the content of the ``License`` tag in the files,
|
||||
with a fallback on the ``Copyright`` tag.
|
||||
|
||||
Funkwhale will successfully extract licensing data for the following licenses:
|
||||
|
||||
- Creative Commons 0 (Public Domain)
|
||||
- Creative Commons 1.0 (All declinations)
|
||||
- Creative Commons 2.0 (All declinations)
|
||||
- Creative Commons 2.5 (All declinations and countries)
|
||||
- Creative Commons 3.0 (All declinations and countries)
|
||||
- Creative Commons 4.0 (All declinations)
|
||||
|
||||
Support for other licenses such as Art Libre or WTFPL will be added in future releases.
|
||||
|
||||
|
||||
Instance-level moderation tools
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This release includes a first set of moderation tools that will give more control
|
||||
to admins about the way their instance federate with other instance and accounts on the network.
|
||||
Using these tools, it's now possible to:
|
||||
|
||||
- Browse known accounts and domains, and associated data (storage size, software version, etc.)
|
||||
- Purge data belonging to given accounts and domains
|
||||
- Block or partially restrict interactions with any account or domain
|
||||
|
||||
All those features are usable using a brand new "moderation" permission, meaning
|
||||
you can appoints one or nultiple moderators to help with this task.
|
||||
|
||||
I'd like to thank all Mastodon contributors, because some of the these tools are heavily
|
||||
inspired from what's being done in Mastodon. Thank you so much!
|
||||
|
||||
|
||||
Iframe widget to embed public tracks and albums [manual action required]
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Funkwhale now support embedding a lightweight audio player on external websites
|
||||
for album and tracks that are available in public libraries. Important pages,
|
||||
such as artist, album and track pages also include OpenGraph tags that will
|
||||
enable previews on compatible apps (like sharing a Funkwhale track link on Mastodon
|
||||
or Twitter).
|
||||
|
||||
To achieve that, we had to tweak the way Funkwhale front-end is served. You'll have
|
||||
to modify your nginx configuration when upgrading to keep your instance working.
|
||||
|
||||
**On docker setups**, edit your ``/srv/funkwhale/nginx/funkwhale.template`` and replace
|
||||
the ``location /api/`` and `location /` blocks by the following snippets::
|
||||
|
||||
location / {
|
||||
include /etc/nginx/funkwhale_proxy.conf;
|
||||
# this is needed if you have file import via upload enabled
|
||||
client_max_body_size ${NGINX_MAX_BODY_SIZE};
|
||||
proxy_pass http://funkwhale-api/;
|
||||
}
|
||||
|
||||
location /front/ {
|
||||
alias /frontend/;
|
||||
}
|
||||
|
||||
The change of configuration will be picked when restarting your nginx container.
|
||||
|
||||
**On non-docker setups**, edit your ``/etc/nginx/sites-available/funkwhale.conf`` file,
|
||||
and replace the ``location /api/`` and `location /` blocks by the following snippets::
|
||||
|
||||
|
||||
location / {
|
||||
include /etc/nginx/funkwhale_proxy.conf;
|
||||
# this is needed if you have file import via upload enabled
|
||||
client_max_body_size ${NGINX_MAX_BODY_SIZE};
|
||||
proxy_pass http://funkwhale-api/;
|
||||
}
|
||||
|
||||
location /front/ {
|
||||
alias ${FUNKWHALE_FRONTEND_PATH}/;
|
||||
}
|
||||
|
||||
Replace ``${FUNKWHALE_FRONTEND_PATH}`` by the corresponding variable from your .env file,
|
||||
which should be ``/srv/funkwhale/front/dist`` by default, then reload your nginx process with
|
||||
``sudo systemctl reload nginx``.
|
||||
|
||||
|
||||
Alternative docker deployment method
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Thanks to the awesome done by @thetarkus at https://github.com/thetarkus/docker-funkwhale,
|
||||
we're now able to provide an alternative and easier Docker deployment method!
|
||||
|
||||
In contrast with our current, multi-container offer, this method integrates
|
||||
all Funkwhale processes and services (database, redis, etc.) into a single, easier to deploy container.
|
||||
|
||||
Both method will coexist in parallel, as each one has pros and cons. You can learn more
|
||||
about this exciting new deployment option by visiting https://docs.funkwhale.audio/installation/docker.html!
|
||||
|
||||
Automatically load .env file
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
On non-docker deployments, earlier versions required you to source
|
||||
the config/.env file before launching any Funkwhale command, with ``export $(cat config/.env | grep -v ^# | xargs)``
|
||||
This led to more complex and error prode deployment / setup.
|
||||
|
||||
This is not the case anymore, and Funkwhale will automatically load this file if it's available.
|
||||
|
||||
|
||||
Delete pre 0.17 federated tracks [manual action suggested]
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
If you were using Funkwhale before the 0.17 release and federated with other instances,
|
||||
it's possible that you still have some unplayable federated files in the database.
|
||||
|
||||
To purge the database of those entries, you can run the following command:
|
||||
|
||||
On docker setups::
|
||||
|
||||
docker-compose run --rm api python manage.py script delete_pre_017_federated_uploads --no-input
|
||||
|
||||
On non-docker setups::
|
||||
|
||||
python manage.py script delete_pre_017_federated_uploads --no-input
|
||||
|
||||
|
||||
Enable gzip compression [manual action suggested]
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Gzip compression will be enabled on new instances by default
|
||||
and will reduce the amount of bandwidth consumed by your instance.
|
||||
|
||||
If you with to benefit from gzip compression on your instance,
|
||||
edit your reverse proxy virtualhost file (located at ``/etc/nginx/sites-available/funkwhale.conf``) and add the following snippet
|
||||
in the server block, then reload your nginx server::
|
||||
|
||||
server {
|
||||
# ... exiting configuration
|
||||
|
||||
# compression settings
|
||||
gzip on;
|
||||
gzip_comp_level 5;
|
||||
gzip_min_length 256;
|
||||
gzip_proxied any;
|
||||
gzip_vary on;
|
||||
|
||||
gzip_types
|
||||
application/atom+xml
|
||||
application/javascript
|
||||
application/json
|
||||
application/ld+json
|
||||
application/activity+json
|
||||
application/manifest+json
|
||||
application/rss+xml
|
||||
application/vnd.geo+json
|
||||
application/vnd.ms-fontobject
|
||||
application/x-font-ttf
|
||||
application/x-web-app-manifest+json
|
||||
application/xhtml+xml
|
||||
application/xml
|
||||
font/opentype
|
||||
image/bmp
|
||||
image/svg+xml
|
||||
image/x-icon
|
||||
text/cache-manifest
|
||||
text/css
|
||||
text/plain
|
||||
text/vcard
|
||||
text/vnd.rim.location.xloc
|
||||
text/vtt
|
||||
text/x-component
|
||||
text/x-cross-domain-policy;
|
||||
# end of compression settings
|
||||
}
|
||||
|
||||
Full changelog
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
Features:
|
||||
|
||||
- Allow embedding of albums and tracks available in public libraries via an <iframe> (#578)
|
||||
- Audio transcoding is back! (#272)
|
||||
- First set of instance level moderation tools (#580, !521)
|
||||
- Store licensing and copyright information from file metadata, if available (#308)
|
||||
|
||||
|
||||
Enhancements:
|
||||
|
||||
- Add UI elements for multi-disc albums (#631)
|
||||
- Added alternative funkwhale/all-in-one docker image (#614)
|
||||
- Broadcast library updates (name, description, visibility) over federation
|
||||
- Based Docker image on alpine to have a smaller (and faster to build) image
|
||||
- Improved front-end performance by stripping unused dependencies, reducing bundle size
|
||||
and enabling gzip compression
|
||||
- Improved accessibility by using main/section/nav tags and aria-labels in most critical places (#612)
|
||||
- The progress bar in the player now display loading state / buffer loading (#586)
|
||||
- Added "type: funkwhale" and "funkwhale-version" in Subsonic responses (#573)
|
||||
- Documented keyboard shortcuts, list is now available by pressing "h" or in the footer (#611)
|
||||
- Documented which Subsonic endpoints are implemented (#575)
|
||||
- Hide invitation code field during signup when it's not required (#410)
|
||||
- Importer will now pick embedded images in files with OTHER type if no COVER_FRONT is present
|
||||
- Improved keyboard accessibility on player, queue and various controls (#576)
|
||||
- Improved performance when listing playable tracks, albums and artists
|
||||
- Increased default upload limit from 30 to 100MB (#654)
|
||||
- Load env file in config/.env automatically to avoid sourcing it by hand (#626)
|
||||
- More resilient date parsing during audio import, will not crash anymore on
|
||||
invalid dates (#622)
|
||||
- Now start radios immediatly, skipping any existing tracks in queue (#585)
|
||||
- Officially support connecting to a password protected redis server, with
|
||||
the redis://:password@localhost:6379/0 scheme (#640)
|
||||
- Performance improvement when fetching favorites, down to a single, small http request
|
||||
- Removed "Activity" page, since all the data is available on the "Browse" page (#600)
|
||||
- Removed the need to specify the DJANGO_ALLOWED_HOSTS variable
|
||||
- Restructured the footer, added useful links and removed unused content
|
||||
- Show short entries first in search results to improve UX
|
||||
- Store disc number and order tracks by disc number / position) (#507)
|
||||
- Strip EXIF metadata from uploaded avatars to avoid leaking private data (#374)
|
||||
- Support blind key rotation in HTTP Signatures (#658)
|
||||
- Support setting a server URL in settings.json (#650)
|
||||
- Updated default docker postgres version from 9.4 to 11 (#656)
|
||||
- Updated lots of dependencies (especially django 2.0->2.1), and removed unused dependencies (#657)
|
||||
- Improved test suite speed by reducing / disabling expensive operations (#648)
|
||||
|
||||
|
||||
Bugfixes:
|
||||
|
||||
- Fixed parsing of embedded file cover for ogg files tagged with MusicBrainz (#469)
|
||||
- Upgraded core dependencies to fix websocket/messaging issues and possible memory leaks (#643)
|
||||
- Fix ".None" extension when downloading Flac file (#473)
|
||||
- Fixed None extension when downloading an in-place imported file (#621)
|
||||
- Added a script to prune pre 0.17 federated tracks (#564)
|
||||
- Advertise public libraries properly in ActivityPub representations (#553)
|
||||
- Allow opus file upload (#598)
|
||||
- Do not display "view on MusicBrainz" button if we miss the mbid (#422)
|
||||
- Do not try to create unaccent extension if it's already present (#663)
|
||||
- Ensure admin links in sidebar are displayed for users with relavant permissions, and only them (#597)
|
||||
- Fix broken websocket connexion under Chrome browser (#589)
|
||||
- Fix play button not starting playback with empty queue (#632)
|
||||
- Fixed a styling inconsistency on about page when instance description was missing (#659)
|
||||
- Fixed a UI discrepency in playlist tracks count (#647)
|
||||
- Fixed greyed tracks in radio builder and detail page (#637)
|
||||
- Fixed inconsistencies in subsonic error responses (#616)
|
||||
- Fixed incorrect icon for "next track" in player control (#613)
|
||||
- Fixed malformed search string when redirecting to LyricsWiki (#608)
|
||||
- Fixed missing track count on various library cards (#581)
|
||||
- Fixed skipped track when appending multiple tracks to the queue under certain conditions (#209)
|
||||
- Fixed wrong album/track count on artist page (#599)
|
||||
- Hide unplayable/emtpy playlists in "Browse playlist" pages (#424)
|
||||
- Initial UI render using correct language from browser (#644)
|
||||
- Invalid URI for reverse proxy websocket with apache (#617)
|
||||
- Properly encode Wikipedia and lyrics search urls (#470)
|
||||
- Refresh profile after user settings update to avoid cache issues (#606)
|
||||
- Use role=button instead of empty links for player controls (#610)
|
||||
|
||||
|
||||
Documentation:
|
||||
|
||||
- Deploy documentation from the master branch instead of the develop branch to avoid inconsistencies (#642)
|
||||
- Document how to find and use library id when importing files in CLI (#562)
|
||||
- Fix documentation typos (#645)
|
||||
|
||||
|
||||
0.17 (2018-10-07)
|
||||
-----------------
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
__version__ = "0.18-dev"
|
||||
__version__ = "0.18"
|
||||
__version_info__ = tuple(
|
||||
[
|
||||
int(num) if num.isdigit() else num
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
Fixed skipped track when appending multiple tracks to the queue under certain conditions (#209)
|
|
@ -1 +0,0 @@
|
|||
Audio transcoding is back! (#272)
|
|
@ -1 +0,0 @@
|
|||
Store licensing and copyright information from file metadata, if available (#308)
|
|
@ -1 +0,0 @@
|
|||
Strip EXIF metadata from uploaded avatars to avoid leaking private data (#374)
|
|
@ -1 +0,0 @@
|
|||
Hide invitation code field during signup when it's not required (#410)
|
|
@ -1 +0,0 @@
|
|||
Do not display "view on MusicBrainz" button if we miss the mbid (#422)
|
|
@ -1 +0,0 @@
|
|||
Hide unplayable/emtpy playlists in "Browse playlist" pages (#424)
|
|
@ -1 +0,0 @@
|
|||
Fixed parsing of embedded file cover for ogg files tagged with MusicBrainz (#469)
|
|
@ -1 +0,0 @@
|
|||
Properly encode Wikipedia and lyrics search urls (#470)
|
|
@ -1 +0,0 @@
|
|||
Fix ".None" extension when downloading Flac file (#473)
|
|
@ -1 +0,0 @@
|
|||
Store disc number and order tracks by disc number / position) (#507)
|
|
@ -1 +0,0 @@
|
|||
Advertise public libraries properly in ActivityPub representations (#553)
|
|
@ -1 +0,0 @@
|
|||
Document how to find and use library id when importing files in CLI (#562)
|
|
@ -1 +0,0 @@
|
|||
Added a script to prune pre 0.17 federated tracks (#564)
|
|
@ -1 +0,0 @@
|
|||
Added "type: funkwhale" and "funkwhale-version" in Subsonic responses (#573)
|
|
@ -1 +0,0 @@
|
|||
Documented which Subsonic endpoints are implemented (#575)
|
|
@ -1 +0,0 @@
|
|||
Improved keyboard accessibility on player, queue and various controls (#576)
|
|
@ -1 +0,0 @@
|
|||
Allow embedding of albums and tracks available in public libraries via an <iframe> (#578)
|
|
@ -1 +0,0 @@
|
|||
Fixed missing track count on various library cards (#581)
|
|
@ -1 +0,0 @@
|
|||
Now start radios immediatly, skipping any existing tracks in queue (#585)
|
|
@ -1 +0,0 @@
|
|||
The progress bar in the player now display loading state / buffer loading (#586)
|
|
@ -1 +0,0 @@
|
|||
Fix broken websocket connexion under Chrome browser (#589)
|
|
@ -1 +0,0 @@
|
|||
Ensure admin links in sidebar are displayed for users with relavant permissions, and only them (#597)
|
|
@ -1 +0,0 @@
|
|||
Allow opus file upload (#598)
|
|
@ -1 +0,0 @@
|
|||
Fixed wrong album/track count on artist page (#599)
|
|
@ -1 +0,0 @@
|
|||
Removed "Activity" page, since all the data is available on the "Browse" page (#600)
|
|
@ -1 +0,0 @@
|
|||
Refresh profile after user settings update to avoid cache issues (#606)
|
|
@ -1 +0,0 @@
|
|||
Fixed malformed search string when redirecting to LyricsWiki (#608)
|
|
@ -1 +0,0 @@
|
|||
Use role=button instead of empty links for player controls (#610)
|
|
@ -1 +0,0 @@
|
|||
Documented keyboard shortcuts, list is now available by pressing "h" or in the footer (#611)
|
|
@ -1 +0,0 @@
|
|||
Improved accessibility by using main/section/nav tags and aria-labels in most critical places (#612)
|
|
@ -1 +0,0 @@
|
|||
Fixed incorrect icon for "next track" in player control (#613)
|
|
@ -1 +0,0 @@
|
|||
Added alternative funkwhale/all-in-one docker image (#614)
|
|
@ -1 +0,0 @@
|
|||
Fixed inconsistencies in subsonic error responses (#616)
|
|
@ -1 +0,0 @@
|
|||
Invalid URI for reverse proxy websocket with apache (#617)
|
|
@ -1 +0,0 @@
|
|||
Fixed None extension when downloading an in-place imported file (#621)
|
|
@ -1,2 +0,0 @@
|
|||
More resilient date parsing during audio import, will not crash anymore on
|
||||
invalid dates (#622)
|
|
@ -1 +0,0 @@
|
|||
Load env file in config/.env automatically to avoid sourcing it by hand (#626)
|
|
@ -1 +0,0 @@
|
|||
Add UI elements for multi-disc albums (#631)
|
|
@ -1 +0,0 @@
|
|||
Fix play button not starting playback with empty queue (#632)
|
|
@ -1 +0,0 @@
|
|||
Fixed greyed tracks in radio builder and detail page (#637)
|
|
@ -1,2 +0,0 @@
|
|||
Officially support connecting to a password protected redis server, with
|
||||
the redis://:password@localhost:6379/0 scheme (#640)
|
|
@ -1 +0,0 @@
|
|||
Deploy documentation from the master branch instead of the develop branch to avoid inconsistencies (#642)
|
|
@ -1 +0,0 @@
|
|||
Upgraded core dependencies to fix websocket/messaging issues and possible memory leaks (#643)
|
|
@ -1 +0,0 @@
|
|||
Initial UI render using correct language from browser (#644)
|
|
@ -1 +0,0 @@
|
|||
Fix documentation typos (#645)
|
|
@ -1 +0,0 @@
|
|||
Fixed a UI discrepency in playlist tracks count (#647)
|
|
@ -1 +0,0 @@
|
|||
Improved test suite speed by reducing / disabling expensive operations (#648)
|
|
@ -1 +0,0 @@
|
|||
Support setting a server URL in settings.json (#650)
|
|
@ -1 +0,0 @@
|
|||
Increased default upload limit from 30 to 100MB (#654)
|
|
@ -1 +0,0 @@
|
|||
Updated default docker postgres version from 9.4 to 11 (#656)
|
|
@ -1 +0,0 @@
|
|||
Updated rots of dependencies (especially django 2.0->2.1), and removed unused dependencies (#657)
|
|
@ -1 +0,0 @@
|
|||
Support blind key rotation in HTTP Signatures (#658)
|
|
@ -1 +0,0 @@
|
|||
Fixed a styling inconsistency on about page when instance description was missing (#659)
|
|
@ -1 +0,0 @@
|
|||
Do not try to create unaccent extension if it's already present (#663)
|
|
@ -1 +0,0 @@
|
|||
Removed the need to specify the DJANGO_ALLOWED_HOSTS variable
|
|
@ -1 +0,0 @@
|
|||
Based Docker image on alpine to have a smaller (and faster to build) image
|
|
@ -1 +0,0 @@
|
|||
Importer will now pick embedded images in files with OTHER type if no COVER_FRONT is present
|
|
@ -1 +0,0 @@
|
|||
Improved performance when listing playable tracks, albums and artists
|
|
@ -1 +0,0 @@
|
|||
Performance improvement when fetching favorites, down to a single, small http request
|
|
@ -1 +0,0 @@
|
|||
Restructured the footer, added useful links and removed unused content
|
|
@ -1,2 +0,0 @@
|
|||
Improved front-end performance by stripping unused dependencies, reducing bundle size
|
||||
and enabling gzip compression
|
|
@ -1 +0,0 @@
|
|||
Broadcast library updates (name, description, visibility) over federation
|
|
@ -1,2 +0,0 @@
|
|||
|
||||
First set of instance level moderation tools (#580, !521)
|
|
@ -1 +0,0 @@
|
|||
Show short entries first in search results to improve UX
|
|
@ -5,195 +5,3 @@ Next release notes
|
|||
|
||||
Those release notes refer to the current development branch and are reset
|
||||
after each release.
|
||||
|
||||
Audio transcoding is back!
|
||||
--------------------------
|
||||
|
||||
After removal of our first, buggy transcoding implementation, we're proud to announce
|
||||
that this feature is back. It is enabled by default, and can be configured/disabled
|
||||
in your instance settings!
|
||||
|
||||
This feature works in the browser, with federated/non-federated tracks and using Subsonic clients.
|
||||
Transcoded tracks are generated on the fly, and cached for a configurable amount of time,
|
||||
to reduce the load on the server.
|
||||
|
||||
|
||||
Automatically load .env file
|
||||
----------------------------
|
||||
|
||||
On non-docker deployments, earlier versions required you to source
|
||||
the config/.env file before launching any Funkwhale command, with ``export $(cat config/.env | grep -v ^# | xargs)``
|
||||
This led to more complex and error prode deployment / setup.
|
||||
|
||||
This is not the case anymore, and Funkwhale will automatically load this file if it's available.
|
||||
|
||||
Licensing and copyright information
|
||||
-----------------------------------
|
||||
|
||||
Funkwhale is now able to parse copyright and license data from file and store
|
||||
this information. Apart from displaying it on each track detail page,
|
||||
no additional behaviour is currently implemented to use this new data, but this
|
||||
will change in future releases.
|
||||
|
||||
License and copyright data is also broadcasted over federation.
|
||||
|
||||
License matching is done on the content of the ``License`` tag in the files,
|
||||
with a fallback on the ``Copyright`` tag.
|
||||
|
||||
Funkwhale will successfully extract licensing data for the following licenses:
|
||||
|
||||
- Creative Commons 0 (Public Domain)
|
||||
- Creative Commons 1.0 (All declinations)
|
||||
- Creative Commons 2.0 (All declinations)
|
||||
- Creative Commons 2.5 (All declinations and countries)
|
||||
- Creative Commons 3.0 (All declinations and countries)
|
||||
- Creative Commons 4.0 (All declinations)
|
||||
|
||||
Support for other licenses such as Art Libre or WTFPL will be added in future releases.
|
||||
|
||||
|
||||
|
||||
Delete pre 0.17 federated tracks [manual action suggested]
|
||||
----------------------------------------------------------
|
||||
|
||||
If you were using Funkwhale before the 0.17 release and federated with other instances,
|
||||
it's possible that you still have some unplayable federated files in the database.
|
||||
|
||||
To purge the database of those entries, you can run the following command:
|
||||
|
||||
On docker setups::
|
||||
|
||||
docker-compose run --rm api python manage.py script delete_pre_017_federated_uploads --no-input
|
||||
|
||||
On non-docker setups::
|
||||
|
||||
python manage.py script delete_pre_017_federated_uploads --no-input
|
||||
|
||||
|
||||
|
||||
Enable gzip compression [manual action suggested]
|
||||
-------------------------------------------------
|
||||
|
||||
Gzip compression will be enabled on new instances by default
|
||||
and will reduce the amount of bandwidth consumed by your instance.
|
||||
|
||||
If you with to benefit from gzip compression on your instance,
|
||||
edit your reverse proxy virtualhost file (located at ``/etc/nginx/sites-available/funkwhale.conf``) and add the following snippet
|
||||
in the server block, then reload your nginx server::
|
||||
|
||||
server {
|
||||
# ... exiting configuration
|
||||
|
||||
# compression settings
|
||||
gzip on;
|
||||
gzip_comp_level 5;
|
||||
gzip_min_length 256;
|
||||
gzip_proxied any;
|
||||
gzip_vary on;
|
||||
|
||||
gzip_types
|
||||
application/atom+xml
|
||||
application/javascript
|
||||
application/json
|
||||
application/ld+json
|
||||
application/activity+json
|
||||
application/manifest+json
|
||||
application/rss+xml
|
||||
application/vnd.geo+json
|
||||
application/vnd.ms-fontobject
|
||||
application/x-font-ttf
|
||||
application/x-web-app-manifest+json
|
||||
application/xhtml+xml
|
||||
application/xml
|
||||
font/opentype
|
||||
image/bmp
|
||||
image/svg+xml
|
||||
image/x-icon
|
||||
text/cache-manifest
|
||||
text/css
|
||||
text/plain
|
||||
text/vcard
|
||||
text/vnd.rim.location.xloc
|
||||
text/vtt
|
||||
text/x-component
|
||||
text/x-cross-domain-policy;
|
||||
# end of compression settings
|
||||
}
|
||||
|
||||
Instance-level moderation tools
|
||||
-------------------------------
|
||||
|
||||
This release includes a first set of moderation tools that will give more control
|
||||
to admins about the way their instance federate with other instance and accounts on the network.
|
||||
Using these tools, it's now possible to:
|
||||
|
||||
- Browse known accounts and domains, and associated data (storage size, software version, etc.)
|
||||
- Purge data belonging to given accounts and domains
|
||||
- Block or partially restrict interactions with any account or domain
|
||||
|
||||
All those features are usable using a brand new "moderation" permission, meaning
|
||||
you can appoints one or nultiple moderators to help with this task.
|
||||
|
||||
I'd like to thank all Mastodon contributors, because some of the these tools are heavily
|
||||
inspired from what's being done in Mastodon. Thank you so much!
|
||||
|
||||
|
||||
Iframe widget to embed public tracks and albums [manual action required]
|
||||
------------------------------------------------------------------------
|
||||
|
||||
Funkwhale now support embedding a lightweight audio player on external websites
|
||||
for album and tracks that are available in public libraries. Important pages,
|
||||
such as artist, album and track pages also include OpenGraph tags that will
|
||||
enable previews on compatible apps (like sharing a Funkwhale track link on Mastodon
|
||||
or Twitter).
|
||||
|
||||
To achieve that, we had to tweak the way Funkwhale front-end is served. You'll have
|
||||
to modify your nginx configuration when upgrading to keep your instance working.
|
||||
|
||||
**On docker setups**, edit your ``/srv/funkwhale/nginx/funkwhale.template`` and replace
|
||||
the ``location /api/`` and `location /` blocks by the following snippets::
|
||||
|
||||
location / {
|
||||
include /etc/nginx/funkwhale_proxy.conf;
|
||||
# this is needed if you have file import via upload enabled
|
||||
client_max_body_size ${NGINX_MAX_BODY_SIZE};
|
||||
proxy_pass http://funkwhale-api/;
|
||||
}
|
||||
|
||||
location /front/ {
|
||||
alias /frontend/;
|
||||
}
|
||||
|
||||
The change of configuration will be picked when restarting your nginx container.
|
||||
|
||||
**On non-docker setups**, edit your ``/etc/nginx/sites-available/funkwhale.conf`` file,
|
||||
and replace the ``location /api/`` and `location /` blocks by the following snippets::
|
||||
|
||||
|
||||
location / {
|
||||
include /etc/nginx/funkwhale_proxy.conf;
|
||||
# this is needed if you have file import via upload enabled
|
||||
client_max_body_size ${NGINX_MAX_BODY_SIZE};
|
||||
proxy_pass http://funkwhale-api/;
|
||||
}
|
||||
|
||||
location /front/ {
|
||||
alias ${FUNKWHALE_FRONTEND_PATH}/;
|
||||
}
|
||||
|
||||
Replace ``${FUNKWHALE_FRONTEND_PATH}`` by the corresponding variable from your .env file,
|
||||
which should be ``/srv/funkwhale/front/dist`` by default, then reload your nginx process with
|
||||
``sudo systemctl reload nginx``.
|
||||
|
||||
|
||||
Alternative docker deployment method
|
||||
------------------------------------
|
||||
|
||||
Thanks to the awesome done by @thetarkus at https://github.com/thetarkus/docker-funkwhale,
|
||||
we're now able to provide an alternative and easier Docker deployment method!
|
||||
|
||||
In contrast with our current, multi-container offer, this method integrates
|
||||
all Funkwhale processes and services (database, redis, etc.) into a single, easier to deploy container.
|
||||
|
||||
Both method will coexist in parallel, as each one has pros and cons. You can learn more
|
||||
about this exciting new deployment option by visiting https://docs.funkwhale.audio/installation/docker.html!
|
||||
|
|
Loading…
Reference in New Issue