Changelog

0.8.0 (2023-xx-xx) -

General
  • Replace GtkVolumeControl with a custom volume control widget. #160

  • Add a keyboard shortcut m for mute.

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

Under the hood
  • Switch to libsoup 3.x.

  • 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.

  • WIP Report a whole bunch of errors in the UI (playlist download and parsing, playback errors).

  • WIP Show redirections in UI and in SSL/TLS failure dialog.

  • Unit tests: uri parsing, playlist parsers.

Dependencies
  • Bump requirements: glib >= 2.66, libsoup >= 3.0.

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
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.