Skip to content
Tags give the ability to mark specific points in history as being important
  • 0.19.0-rc2
  • 0.19.1
    0.19.1 (2018-06-28)
    -------------------
    
    Upgrade instructions are available at
    https://docs.funkwhale.audio/index.html
    
    Enhancements:
    
    - The currently playing track is now highlighted with an orange play icon (#832)
    - Support for importing files with no album tag (#122)
    - Redirect from / to /library when user is logged in (#864)
    - Added a SUBSONIC_DEFAULT_TRANSCODING_FORMAT env var to support clients that don't provide the format parameter (#867)
    - Added button to search for objects on Discogs (#368)
    - Added copy-to-clipboard button with Subsonic password input (#814)
    - Added opus to the list of supported mimetypes and extensions (#868)
    - Aligned search headers with search results in the sidebar (#708)
    - Clicking on the currently selected playlist in the Playlist popup will now close the popup (#807)
    - Favorites radio will not be visible if the user does not have any favorites (#419)
    
    Bugfixes:
    
    - Ensure empty but optional fields in file metadata don't error during import (#850)
    - Fix broken upload for specific files when using S3 storage (#857)
    - Fixed broken translation on home and track detail page (#833)
    - Fixed broken user admin for users with non-digit or letters in their username (#869)
    - Fixed invalid file extension for transcoded tracks (#848)
    - Fixed issue with French translation for "Start radio" (#849)
    - Fixed issue with player changing height when hovering over the volume slider (#838)
    - Fixed secondary menus truncated on narrow screens (#855)
    - Fixed wrong og:image url when using S3 storage (#851)
    - Hide pod statistics on about page if those are disabled (#835)
    - Use ASCII filename before upload to S3 to avoid playback issues (#847)
    
    Contributors to this release (commiters and reviewers):
    
    - Ciarán Ainsworth
    - Creak
    - ealgase
    - Eliot Berriot
    - Esteban
    - Freyja Wildes
    - hellekin
    - Johannes H.
    - Mehdi
    - Reg
  • 0.2
    0.2
    -------
    
    2017-07-09
    
    * [feature] can now import artist and releases from youtube and musicbrainz.
      This requires a YouTube API key for the search
    * [breaking] we now check for user permission before serving audio files, which requires
    a specific configuration block in your reverse proxy configuration:
  • 0.2.1
    0.2.1
    -----
    
    2017-07-17
    
    * Now return media files with absolute URL
    * Now display CLI instructions to download a set of tracks
    * Fixed #33: sort by track position in album in API by default, also reuse that information on frontend side
    * More robust audio player and queue in various situations:
    * upgrade to latest dynamic_preferences and use redis as cache even locally
  • 0.2.2
    shortcuts
  • 0.2.3
    - lazyloading images
    - artist browsing
    - better pagination
    - fixed multiple warnings
  • 0.2.4
    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)
  • 0.2.5
    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.6
    0.2.6 (2017-12-15)
    ------------------
    
    - Fixed broken Dockerfile
  • 0.20.0
  • 0.20.0-rc1
  • 0.20.1
    0.20.1 (2019-10-28)
    -------------------
    
    Upgrade instructions are available at
    https://docs.funkwhale.audio/index.html
    
    Denormalized audio permission logic in a separate table to enhance performance
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    
    With this release, we're introducing a performance enhancement that should reduce the load on the database and API
    servers (cf https://dev.funkwhale.audio/funkwhale/funkwhale/merge_requests/939).
    
    Under the hood, we now maintain a separate table to link users to the tracks they are allowed to see. This change is **disabled**
    by default, but should be enabled by default starting in Funkwhale 0.21.
    
    If you want to try it now, add
    ``MUSIC_USE_DENORMALIZATION=True`` to your ``.env`` file, restart Funkwhale, and run the following command::
    
        python manage.py rebuild_music_permissions
    
    This shouldn't cause any regression, but we'd appreciate if you could test this before the 0.21 release and report any unusual
    behaviour regarding tracks, albums and artists visibility.
    
    Enhancements:
    
    - Added a retry option for failed uploads (#942)
    - Added feedback via loading spinner when searching a remote library
    - Denormalized audio permission logic in a separate table to enhance performance
    - Placeholders will now be shown if no content is available across the application (#750)
    - Reduce the number of simultaneous DB connections under some deployment scenario
    - Support byYear filtering in Subsonic API (#936)
    
    Bugfixes:
    
    - Ensure password input doesn't overflow outside of container (#933)
    - Fix audio serving issues under S3/nginx when signatures are enabled
    - Fix import crash when importing M4A file with no embedded cover (#946)
    - Fix tag exclusion in custom radios (#950)
    - Fixed an issue with embed player CSS being purged during build (#935)
    - Fixed escaped pod name displayed on home/about page (#945)
    - Fixed pagination in subsonic getSongsByGenre endpoint (#954)
    - Fixed style glitches in dropdowns
    
    Documentation:
    
    - Documented how to create DB extension by hand in case of permission error during migrations (#934)
    
    Contributors to this release (translation, development, documentation, reviews, design):
    
    - Ciarán Ainsworth
    - Dag Stenstad
    - Daniele Lira Mereb
    - Eliot Berriot
    - Esteban
    - Johannes H.
    - knuxify
    - Mateus Mattei Garcia
    - Quentin PAGÈS
  • 0.3
    0.2.7 (Unreleased)
    ------------------
    
    - 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.3.1
    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.3.2
    0.3.2
    ------------------
    
    - Fixed an issue in the main dockerfile
  • 0.3.3
    0.3.4 (2018-01-07)
    ------------------
    
    - Users can now create their own dynamic radios (#51)
  • 0.3.4
    0.3.4 (2018-01-07)
    ------------------
    
    - Fixed wrong URL construction in ajax call
  • 0.3.5
    0.3.5 (2018-01-07)
    ------------------
    
    - Smarter BACKEND_URL in frontend
  • 0.4
    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.5
    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.