0.8.1 (2024-10-21) - Né Quelque Part (Maxime le Forestier Cover) / Booboo'zzz All Stars
---------------------------------------------------------------------------------------

Translations
 * Updated translations: Croatian, Italian, Polish, Portuguese.



0.8.0 (2024-05-03) - Masada / Alpha Blondy
------------------------------------------

General
 * Switch to libsoup 3.x, GStreamer 1.24 and playbin3.

Translations
 * Updated translations: Croatian, Dutch, Finnish, German, Italian, Polish,
   Portuguese, Portuguese (Brazil), Spanish, Turkish.

Under the hood
 * Playlist download is now a proper state, reported in UI and cancellable.
 * Cap playlist downloads to a maximum size, to handle cases where an audio
   stream is named like a playlist (as Goodvibes' first guess is based on the
   filename's extension). When too big, cancel download and throw the uri at
   GStreamer so that it tries to play it.
 * Check the Content-Type header while downloading playlists, and abort early
   when it seems to be an audio stream. Once again, hand over the uri to
   GStreamer so that it tries to play it.
 * Catch SSL/TLS failures during playlist download, ask user what to do.
 * Report a whole bunch of errors in the UI (playlist download and parsing,
   playback errors).
 * Show redirections in UI and in SSL/TLS failure dialog.
 * Unit tests: uri parsing, playlist parsers.

Dependencies
 * Bump requirements: ``glib >= 2.66``, ``gstreamer >= 1.24``, ``libsoup >=
   3.0``.



0.7.9 (2023-11-10) - Rock Warrior / Babylon Pression
----------------------------------------------------

Fixes
 * Preserve symlink when writing ``stations.xml``. #161



0.7.8 (2023-11-06) - Gorilla / Ze Gran Zeft
-------------------------------------------

General
 * Replace GtkVolumeControl with a custom volume control widget. #160
 * Add a keyboard shortcut ``m`` for mute.



0.7.7 (2023-10-10) - Öpik-Oort / Psygnosis
------------------------------------------

General
 * Add X-Purism-FormFactor option to .desktop file. !88
 * Update default station list.

Translations
 * Updated translations: Finnish, Polish, Portuguese (Brazil).



0.7.6 (2023-01-18) - C'est Quoi Ces Conneries ? / Astaffort Mods
----------------------------------------------------------------

Fixes
 * Fix newline in playback status label. #153

Translations
 * Updated translations: Chinese (Traditional), Finnish, Spanish.



0.7.5 (2022-10-07) - Remembrance / Gojira
-----------------------------------------

General
 * Update default stations list, add SomaFM stations. !85
 * Add a "Remove all Stations" to the right-click context menu. #152

Translations
 * New translations: Chinese (Traditional).
 * Updated translations: Catalan, Croatian, Dutch, French, Slovak, Spanish,
   Turkish.



0.7.4 (2022-03-17) - Marianas Trench / Seylen
---------------------------------------------

Fixes
 * Don't assume that the .git directory exists, that is not the case for
   distros that build from a tarball. #146



0.7.3 (2022-03-15) - Give up the Rest / Klone
---------------------------------------------

Fixes
 * For some streams, GStreamer doesn't send any buffering messages, and those
   streams never started to play. This is now fixed. #145

Translations
 * New translations: Finnish.
 * Updated translations: French, Norwegian, Polish, Portuguese, Portuguese
   (Brazil).



0.7.2 (2021-11-14) - Vanishing Point / Wheelfall
------------------------------------------------

Fixes
 * Crash when playing station from touchscreen devices. #138

Translations
 * New translations: Danish.



0.7.1 (2021-09-25) - Wisdom is More Erotic When Wasted / Wheelfall
------------------------------------------------------------------

Fixes
 * Add name of the station playing to MPRIS2 metadata, for real. #137
 * Window decoration broken for themes. #140



0.7.0 (2021-09-24) - Le Visiteur / Lofofora
-------------------------------------------

General
 * Relicense from "GPLv3 or later" to "GPLv3 only".
 * Add a second view for stations details, replaces the main tooltip. #133
 * Show the stream type (HLS, DASH or HTTP(+Icy)) in the stations view.
 * Display name of the station playing in MPRIS2 "artist" field. #137
 * Remove the "Autoset Window Height" setting from Preferences and the
   corresponding "window-autoset-height" from the Settings. Note that the
   height is still automatically set in status icon mode though.

Fixes
 * Sample rate and channels mode are not always set. #132

Translations
 * Updated translations: Catalan, Croatian, Dutch, Indonesian, Portuguese,
   Portuguese (Brazil), Spanish, Telugu, Turkish.

Under the hood
 * Code-refactoring to make room for a GtkStack in the main window.
 * Isolate most of the code related to status icon, to prepare for GTK4.
 * Re-format the codebase with clang-format.

Dependencies
 * Drop dependency ``libamtk``. #135
 * Bump requirements: ``gstreamer >= 1.14``.



0.6.3 (2021-02-25) - Far Eye Dub / Imhotep
------------------------------------------

General
 * Allow users to add security exception in case of invalid certificate. #128
 * Add CSS class name ``goodvibes-main-window`` to the main window. #130

Translations
 * Updated translations: Croatian, Dutch, Norwegian, Turkish.

Dependencies
 * Bump requirements: ``gtk >= 3.16``.



0.6.2 (2021-01-15) - Décollage / Thievery Corporation (feat. Lou Lou Ghelichkhani)
----------------------------------------------------------------------------------

Translations
 * Updated translations: Italian, Marathi, Russian.



0.6.1 (2020-12-04) - À Reculons / Flavien Berger (Rebeka Warrior Remix)
-----------------------------------------------------------------------

Translations
 * New translations: Marathi, Portuguese, Turkish.
 * Updated translations: French, English (US), Italian, Norwegian,
   Portuguese (PT), Russian.



0.6 (2020-09-20) - Les Contemplations / Mansfield.TYA (Flavien Berger Remix)
----------------------------------------------------------------------------

General
 * Drop the migration code that was introduced in 0.4.1 to handle the new
   application id and the new path for the station list. #89
 * Drop libcaphe, aka. Goodvibes internal implementation to inhibit the system
   from suspending/sleeping, and use ``gtk_application_{un,}inhibit()``
   instead. #117 #126
 * Use ``g_clear_handle_id()`` everywhere. #82

Dependencies
 * Bump requirements: ``glib >= 2.56``, ``meson >= 0.49``.

Translations
 * New translations: Catalan, Croatian, Italian, Portuguese (Brazil), Telugu.
 * Updated translations: French, Portuguese (Portugal), Spanish.



0.5.3 (2020-07-09) - Bouteille sur Bouteille / Massilia Sound System
--------------------------------------------------------------------

General
 * Add min/max bitrate to station information. #118
 * Add channel mode (mono, stereo) to station information. #119
 * Add sample rate (kHz) to station information. #124
 * Check for memory leaks with Valgrind. #12
 * Update default station list.

Fixes
 * MPRIS status values 'CanGo{Next,Previous}' are never updated. #121
 * Sample rate and channels mode are not always set. #125

Translations
 * New translations: Indonesian.
 * Updated translations: Dutch, French, German.



0.5.2 (2020-04-07) - Étranges étrangers / André Minvielle
---------------------------------------------------------

General
 * Make the titlebar dynamic. #112
 * Make the tooltip dynamic. #113

Fixes
 * HLS streams fail to play. #111

Documentation
 * Override the default CSS to create a yellow-ish "Goodvibes theme" (rather
   than just living with the blue-ish defaults from Read the Docs).

Translations
 * New translations: Polish, Slovak.
 * Updated translations: Czech, Dutch, Norwegian.



0.5.1 (2020-02-06) - No Body / Goldenberg & Schmuyle
----------------------------------------------------

Fixes
 * Unable to play the AAC radio SomaFM (flatpak). #107
 * Withdraw notifications when the application quits. #108



0.5 (2020-01-21) - La Ville / Mateo Langlois
--------------------------------------------

General
 * Drop App Menu and Menu Bar, switch to a Primary Menu button. #104
 * Add a window to document the Keyboard Shortcuts.
 * Allow to select the behavior of the Close button (ie. ``[x]``). #70
 * Don't minimize the window on ``<Esc>`` (unless status icon mode). #102

Fixes
 * Allow to choose the theme variant in status icon mode.
 * Make saving the window size and position more robust.
 * Fix the position of the Preferences window (center on parent or mouse).
 * Fix the URL for the online help.

Dependencies
 * Add dependency ``libamtk``.



0.4.3 (2019-09-26) - Uramado / Maki Asakawa
-------------------------------------------

General
 * Add a minimal test suite for the station list, rework the code and fix
   some obscure bugs at the same time. #99
 * CI images updated (debian: buster > sid, fedora: 28 > 30).

Fixes
 * Right-click on an empty space of the station list doesn't popup the
   menu. #98
 * No icon in status icon mode. #100

Translations
 * New translations: English (United States), Portuguese (Portugal).
 * Updated translations: French, German, Spanish.

Dependencies
 * ``mutest`` is needed to run the test suite.



0.4.2 (2018-11-10) - Paris / L'Imperatrice
------------------------------------------

Fixes
 * Segfault on application shutdown.



0.4.1 (2018-11-10) - Parfum Theremine / L'Imperatrice
-----------------------------------------------------

Outstanding!
 * Ready for Flatpak!

General
 * Change application id to 'io.gitlab.Goodvibes'.
 * Rename icon files according to the app id (flatpak requirement).
 * Stations are now saved in $XDG_DATA_HOME (was $XDG_CONFIG_HOME).
 * Use GResource to handle glade files. #54

Fixes
 * Support lowercase keys in pls playlists. #88
 * Add meson post-install script.

Translations
 * New translations: Spanish.



0.4 (2018-08-18) - Sphynx / La Femme
------------------------------------

Outstanding!
 * Project moved to GitLab, good-bye GitHub.
 * CI is now handled by GitLab, good-bye Shippable.
 * Build system switched to Meson, good-bye Autotools. #53

General
 * Add an appstream file (ie. appdata). #47

Fixes
 * Desktop file: exec now accepts url (thx Elías Alejandro Año Mendoza).

Translations
 * Updated translations: Dutch, German.



0.3.7 (2018-05-08) - Marilou Reggae (Gainsbourg Cover) / Alain Bashung
----------------------------------------------------------------------

General
 * Update default station list.

Fixes
 * Fix notification crash on Cinnamon. #79

Translations
 * Updated translations: Czech, French, German, Norwegian.



0.3.6 (2018-03-31) - Birthmark / Deftones
-----------------------------------------

General
 * Add support for dark theme. #59

Fixes
 * Fix ``<Play/Pause>`` multimedia key. #83

Documentation
 * A new documentation is available at <https://goodvibes.readthedocs.io>.
 * Remove the GitHub wiki.

Translations
 * Updated translations: Dutch, French, Norwegian.



0.3.5 (2018-03-10) - No Ordinary Love (Sade Cover) / Deftones
-------------------------------------------------------------

Fixes
 * Ensure ``<Space>`` is a shortcut to toggle playback. #80
 * Retry playback on error, hence resume playback after suspend. This is
   just a first attempt, error handling needs more care than that. #72
 * Fixes here and there in translatable strings (thx Allan Nordhøy).

Translations
 * Updated translations: French, German, Norwegian.



0.3.4 (2018-01-27) - God in Hell / Khynn
----------------------------------------

General
 * New icon set at last! Thanks to Hector Lahminewski and his endless
   patience - the icons have been waiting for almost a year. #51
 * There's now a script to launch Goodvibes from the source tree - talking
   to developers here, users don't care. #55

Translations
 * Updated translations: Dutch, French.
 * Update pot file (I forgot that for a while). #49
 * Document translation process. #50



0.3.3 (2018-01-07) - Psygnosis is Shit / Psygnosis
--------------------------------------------------

Fixes
 * Fix XML escaping of station properties before saving. #69
 * Add support for the ``NumberOfEvents`` key in pls playlists. #67

Translations
 * New translations: German, Norwegian Bokmal, Russian.
 * Add translators to the About dialog. #48



0.3.2 (2017-10-11) - Je m'en sortira / Babylon Pression
-------------------------------------------------------

Translations
 * French translation updated.



0.3.1 (2017-02-22) - Where Dragons Dwell / Gojira
-------------------------------------------------

Fixes
 * Fix missing status-icon glade file. #44
 * Fix segfault when station list is empty.



0.3 (2017-02-20) - Pain Is A Master / Gojira
--------------------------------------------

General
 * Make the main window resizable, and add an ``autoset-height`` option to the
   *Preferences* window. #27
 * Add a giant tooltip on the station display area (this is used to display
   in-depth info about the current station). #24
 * Add ``Add Station`` entry to the main menu. #31
 * Add accelerators to the main window. #43
 * Add GStreamer options to the preferences. #21
 * Allow setting the user-agent per station (secret feature). #23
 * Add a manual page. #10
 * Add Freedesktop Portal support to ``libcaphe``.

Fixes
 * Fix build on FreeBSD. #39
 * Fix mute which was broken. #40

Gory Internal Details
 * Rework init procedure to report early errors.
 * Use ``g_signal_connect_object()`` pretty much everywhere.
 * ``GvStation`` is now initially unwowned!

Translations
 * New translations: Czech, Dutch and French.



0.2.1 (2017-02-03) - Cradle Song / Tomahawk
-------------------------------------------

General
 * Add ``play-stop`` toggle command to the client. #37
 * Add ``is-running`` command to the client.
 * Add station name in mpris2 metadata.

Fixes
 * Fix exec path in dbus service file. #36
 * Some widgets were not initialized properly.



0.2 (2017-01-26) - Doom Town / Wipers
-------------------------------------

This release will wipe out your conf!

General
 * Handle configuration with ``GSettings``. #22
 * Emit notifications with ``GNotification``. #22
 * Load/store station list with ``GMarkup``. #22

Fixes
 * Fix desktop filename in mpris2 backend. #26
 * Handle queries and fragments in station uris. #29
 * Add a proper user-agent in HTTP requests. #33

Translations
 * Translations are now managed with Weblate. #14

Dependencies
 * Drop compile-time dependency ``libnotify`` and ``libxml2``.
 * Add run-time dependency ``dconf-gsettings-backend``.



0.1 (2017-01-13) - Positive Vibration / Bob Marley & The Wailers
----------------------------------------------------------------

 * Initial release.
