kopia lustrzana https://dev.funkwhale.audio/funkwhale/funkwhale
347 wiersze
9.8 KiB
Plaintext
347 wiersze
9.8 KiB
Plaintext
Changelog
|
||
=========
|
||
|
||
.. towncrier
|
||
|
||
0.7 (2018-03-21)
|
||
----------------
|
||
|
||
Features:
|
||
|
||
- Can now filter artists and albums with no listenable tracks (#114)
|
||
- Improve the style of the sidebar to make it easier to understand which tab is
|
||
selected (#118)
|
||
- On artist page, albums are not sorted by release date, if any (#116)
|
||
- Playlists are here \o/ :tada: (#3, #93, #94)
|
||
- Use django-cacheops to cache common ORM requests (#117)
|
||
|
||
|
||
Bugfixes:
|
||
|
||
- Fixed broken import request admin (#115)
|
||
- Fixed forced redirection to login event with
|
||
API_AUTHENTICATION_REQUIRED=False (#119)
|
||
- Fixed position not being reseted properly when playing the same track
|
||
multiple times in a row
|
||
- Fixed synchronized start/stop radio buttons for all custom radios (#103)
|
||
- Fixed typo and missing icon on homepage (#96)
|
||
|
||
|
||
Documentation:
|
||
|
||
- Up-to-date and complete development and contribution instructions in
|
||
README.rst (#123)
|
||
|
||
|
||
0.6.1 (2018-03-06)
|
||
------------------
|
||
|
||
Features:
|
||
|
||
- Can now skip acoustid on file import with the --no-acoustid flag (#111)
|
||
|
||
|
||
Bugfixes:
|
||
|
||
- Added missing batch id in output during import (#112)
|
||
- Added some feedback on the play button (#100)
|
||
- Smarter pagination which takes a fixed size (#84)
|
||
|
||
|
||
Other:
|
||
|
||
- Completely removed django-cachalot from the codebase (#110). You can safely
|
||
remove the CACHALOT_ENABLED setting from your .env file
|
||
|
||
|
||
0.6 (2018-03-04)
|
||
----------------
|
||
|
||
Features:
|
||
|
||
- Basic activity stream for listening and favorites (#23)
|
||
- Switched to django-channels and daphne for serving HTTP and websocket (#34)
|
||
|
||
Upgrades notes
|
||
**************
|
||
|
||
This version contains breaking changes in the way funkwhale is deployed,
|
||
please read the notes carefully.
|
||
|
||
Instance timeline
|
||
^^^^^^^^^^^^^^^^^
|
||
|
||
A new "Activity" page is now available from the sidebar, where you can
|
||
browse your instance activity. At the moment, this includes other users
|
||
favorites and listening, but more activity types will be implemented in the
|
||
future.
|
||
|
||
Internally, we implemented those events by following the Activity Stream
|
||
specification, which will help us to be compatible with other networks
|
||
in the long-term.
|
||
|
||
A new settings page has been added to control the visibility of your activity.
|
||
By default, your activity will be browsable by anyone on your instance,
|
||
but you can switch to a full private mode where nothing is shared.
|
||
|
||
The setting form is available in your profile.
|
||
|
||
Switch from gunicorn to daphne
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
||
This release include an important change in the way we serve the HTTP API.
|
||
To prepare for new realtime features and enable websocket support in Funkwhale,
|
||
we are now using django-channels and daphne to serve HTTP and websocket traffic.
|
||
|
||
This replaces gunicorn and the switch should be easy assuming you
|
||
follow the upgrade process described bellow.
|
||
|
||
If you are using docker, please remove the command instruction inside the
|
||
api service, as the up-to-date command is now included directly in the image
|
||
as the default entry point:
|
||
|
||
.. code-block:: yaml
|
||
|
||
api:
|
||
restart: unless-stopped
|
||
image: funkwhale/funkwhale:${FUNKWHALE_VERSION:-latest}
|
||
command: ./compose/django/gunicorn.sh # You can remove this line
|
||
|
||
On non docker setups, you'll have to update the [Service] block of your
|
||
funkwhale-server systemd unit file to launch the application server using daphne instead of gunicorn.
|
||
|
||
The new configuration should be similar to this:
|
||
|
||
.. code-block:: ini
|
||
|
||
[Service]
|
||
User=funkwhale
|
||
# adapt this depending on the path of your funkwhale installation
|
||
WorkingDirectory=/srv/funkwhale/api
|
||
EnvironmentFile=/srv/funkwhale/config/.env
|
||
ExecStart=/usr/local/bin/daphne -b ${FUNKWHALE_API_IP} -p ${FUNKWHALE_API_PORT} config.asgi:application
|
||
|
||
Ensure you update funkwhale's dependencies as usual to install the required
|
||
packages.
|
||
|
||
On both docker and non-docker setup, you'll also have to update your nginx
|
||
configuration for websocket support. Ensure you have the following blocks
|
||
included in your virtualhost file:
|
||
|
||
.. code-block:: txt
|
||
|
||
map $http_upgrade $connection_upgrade {
|
||
default upgrade;
|
||
'' close;
|
||
}
|
||
|
||
server {
|
||
...
|
||
proxy_http_version 1.1;
|
||
proxy_set_header Upgrade $http_upgrade;
|
||
proxy_set_header Connection $connection_upgrade;
|
||
}
|
||
|
||
Remember to reload your nginx server after the edit.
|
||
|
||
|
||
0.5.4 (2018-02-28)
|
||
------------------
|
||
|
||
Features:
|
||
|
||
- Now stop running radio when clearing queue (#98)
|
||
|
||
Bugfixes:
|
||
|
||
- Fixed queue skipping tracks (#91)
|
||
- Now loop properly on queue when we only have one track (#95)
|
||
|
||
|
||
0.5.3 (2018-02-27)
|
||
------------------
|
||
|
||
Features:
|
||
|
||
- Added admin interface for radios, track files, favorites and import requests (#80)
|
||
- Added basic instance stats on /about (#82)
|
||
- Search now unaccent letters for queries like "The Dø" or "Björk" yielding more results (#81)
|
||
|
||
|
||
Bugfixes:
|
||
|
||
- Always use username in sidebar (#89)
|
||
- Click event outside of player icons (#83)
|
||
- Fixed broken import because of missing transaction
|
||
- Now always load next radio track on last queue track ended (#87)
|
||
- Now exclude tracks without file from radio candidates (#88)
|
||
- skip to next track properly on 40X errors (#86)
|
||
|
||
|
||
Other:
|
||
|
||
- Switched to towncrier for changelog management and compilation
|
||
|
||
|
||
0.5.2 (2018-02-26)
|
||
------------------
|
||
|
||
- Fixed broken file import due to wrong url (#73)
|
||
- More accurate mimetype detection
|
||
- Fixed really small size on small screens
|
||
- Added masonry layout for artists, requests and radios (#68)
|
||
- We now have a favicon!
|
||
- Fixed truncated play icon (#65)
|
||
|
||
|
||
0.5.1 (2018-02-24)
|
||
------------------
|
||
|
||
- Front: Fixed broken ajax call on radio builder (#69)
|
||
- Front: Shuffle now restart next track from beginning (#70)
|
||
- Front: volume slider should now have the same style everywhere (#72)
|
||
|
||
|
||
0.5 (2018-02-24)
|
||
----------------
|
||
|
||
- Front: Now reset player colors when track has no cover (#46)
|
||
- Front: play button now disabled for unplayable tracks
|
||
- API: You can now enable or disable registration on the fly, via a preference (#58)
|
||
- Front: can now signup via the web interface (#35)
|
||
- Front: Fixed broken redirection on login
|
||
- Front: Fixed broken error handling on settings and login form
|
||
|
||
About page:
|
||
|
||
There is a brand new about page on instances (/about), and instance
|
||
owner can now provide a name, a short and a long description for their instance via the admin (/api/admin/dynamic_preferences/globalpreferencemodel/).
|
||
|
||
Transcoding:
|
||
|
||
Basic transcoding is now available to/from the following formats : ogg and mp3.
|
||
|
||
*This is still an alpha feature at the moment, please report any bug.*
|
||
|
||
This relies internally on FFMPEG and can put some load on your server.
|
||
It's definitely recommended you setup some caching for the transcoded files
|
||
at your webserver level. Check the the exemple nginx file at deploy/nginx.conf
|
||
for an implementation.
|
||
|
||
On the frontend, usage of transcoding should be transparent in the player.
|
||
|
||
Music Requests:
|
||
|
||
This release includes a new feature, music requests, which allows users
|
||
to request music they'd like to see imported.
|
||
Admins can browse those requests and mark them as completed when
|
||
an import is made.
|
||
|
||
0.4 (2018-02-18)
|
||
----------------
|
||
|
||
- Front: ambiant colors in player based on current track cover (#59)
|
||
- Front: simplified front dev setup thanks to webpack proxy (#59)
|
||
- Front: added some unittests for the store (#55)
|
||
- Front: fixed broken login redirection when 401
|
||
- Front: Removed autoplay on page reload
|
||
- API: Added a /instance/settings endpoint
|
||
- Front: load /instance/settings on page load
|
||
- Added settings to report JS and Python error to a Sentry instance
|
||
This is disabled by default, but feel free to enable it if you want
|
||
to help us by sending your error reports :) (#8)
|
||
|
||
|
||
0.3.5 (2018-01-07)
|
||
------------------
|
||
|
||
- Smarter BACKEND_URL in frontend
|
||
|
||
|
||
0.3.4 (2018-01-07)
|
||
------------------
|
||
|
||
- Fixed wrong URL construction in ajax call
|
||
|
||
|
||
0.3.3 (2018-01-07)
|
||
------------------
|
||
|
||
- Users can now create their own dynamic radios (#51)
|
||
|
||
|
||
0.3.2
|
||
------------------
|
||
|
||
- Fixed an issue in the main dockerfile
|
||
|
||
|
||
0.3.1
|
||
------------------
|
||
|
||
- Revamped all import logic, everything is more tested and consistend
|
||
- Can now use Acoustid in file imports to automatically grab metadata from musicbrainz
|
||
- Brand new file import wizard
|
||
|
||
|
||
0.2.7
|
||
------------------
|
||
|
||
- Shortcuts: can now use the ``f`` shortcut to toggle the currently playing track
|
||
as a favorite (#53)
|
||
- Shortcuts: avoid collisions between shortcuts by using the exact modifier (#53)
|
||
- Player: Added looping controls and shortcuts (#52)
|
||
- Player: Added shuffling controls and shortcuts (#52)
|
||
- Favorites: can now modify the ordering of track list (#50)
|
||
- Library: can now search/reorder results on artist browsing view (#50)
|
||
- Upgraded celery to 4.1, added endpoint logic for fingerprinting audio files
|
||
- Fixed #56: invalidate tokens on password change, also added change password form
|
||
- Fixed #57: now refresh jwt token on page refresh
|
||
- removed ugly dividers in batch import list
|
||
- Fixed a few padding issues
|
||
- Now persist/restore queue/radio/player state automatically
|
||
- Removed old broken imports
|
||
- Now force tests paths
|
||
- Fixed #54: Now use pytest everywhere \o/
|
||
- Now use vuex to manage state for favorites
|
||
- Now use vuex to manage state for authentication
|
||
- Now use vuex to manage state for player/queue/radios
|
||
|
||
|
||
0.2.6 (2017-12-15)
|
||
------------------
|
||
|
||
- Fixed broken Dockerfile
|
||
|
||
|
||
0.2.5 (2017-12-15)
|
||
------------------
|
||
|
||
Features:
|
||
|
||
- Import: can now specify search template when querying import sources (#45)
|
||
- Login form: now redirect to previous page after login (#2)
|
||
- 404: a decent 404 template, at least (#48)
|
||
|
||
Bugfixes:
|
||
|
||
- Player: better handling of errors when fetching the audio file (#46)
|
||
- Csrf: default CSRF_TRUSTED_ORIGINS to ALLOWED_HOSTS to avoid Csrf issues on admin (#49)
|
||
|
||
Tech:
|
||
|
||
- Django 2 compatibility, lot of packages upgrades (#47)
|
||
|
||
|
||
0.2.4 (2017-12-14)
|
||
------------------
|
||
|
||
Features:
|
||
|
||
- Models: now store relese group mbid on Album model (#7)
|
||
- Models: now bind import job to track files (#44)
|
||
|
||
Bugfixes:
|
||
|
||
- Library: fixen broken "play all albums" button on artist cards in Artist browsing view (#43)
|