Nuvola 4.4

The milestone 4.4 was released on May 27, 2017. Note that Nuvola versioning has changed and version 3.1.4 became 4.4 (3 + 1 = 4).

New Features

  • Tray icon feature can now use AppIndicator library instead of obsolete X11 tray icons. Although app indicators are mostly known from Ubuntu's Unity desktop, they also work in elementaryOS and GNOME Shell (with AppIndicator extension) and provide superior user experience. Issue: tiliado/nuvolaplayer#45
  • Users can easily clear cookies, cache and temporary files, IndexedDB and WebSQL databases and local storage from the Preferences dialog → tab Website Data. Issue: tiliado/nuvolaplayer#331

Enhancements

  • Versioning scheme was changed to be more compact, e.g. 4.4.1 instead of 3.1.4-1.gabcd. Nuvola 4.0 was re-targeted as Nuvola 5.0.
  • Nuvola can do its own user agent quirks (i.e. to disguise itself as a different web browser) in order to work around web pages that doesn't work with the WebKit's user agent string. Issue: tiliado/nuvolaplayer#336
  • Flatpak builds use the latest stable WebKitGTK+ 2.16.3 bringing fixes for three security vulnerabilities as well as several crashes and rendering issues.

Web App Scripts

  • Google Play Music script uses own user agent quirks to work around the malfunctioning Google sign-in web page. Issue: tiliado/nuvolaplayer#336

Bug fixes

  • The build script now raises error if it is ran with Python < 3.4.
  • Fixed a bug when the menus of tray icons and dock items were not updated.
  • Nuvola now aborts when required data files are not found (e.g. in incomplete installation) rather they running with errors in the background.
  • Obsolete test suite has been removed. A new one will be created during ongoing modernization. Issue: tiliado/nuvolaplayer#335
  • Broken -L/--log-file options were removed. Issue: tiliado/nuvolaplayer#338
  • Various fixes of HTTP Remote Control feature.

Under the Hood

  • Nuvola's filesystem namespace was changed from nuvolaplayer3 to nuvolaruntime. The data dir is installed at PREFIX/share/nuvolaruntime, libraries were renamed to libnuvolaruntime-*.so and binaries to nuvola(ctl). Users' configuration, data and cache is migrated automatically.
  • Nuvola's git repository was moved to https://github.com/tiliado/nuvolaruntime.
  • WebKitGTK+ >= 2.16.0 is required as all new API is now used unconditionally to make maintenance easier.
  • Added optional dependency on appindicator3-0.1 >= 0.4. Use ./waf configure --noappindicator to disable this dependency and related functionality (Tray icon feature).
  • Nuvola no longer bundles Engine.io-client JavaScript library but expect version 3.1.0 of it located at the JSDIR/engine.io-client/engine.io.js (JSDIR is DATADIR/javascript unless changed with --jsdir). Issue: tiliado/nuvolaplayer#341
  • Nuvola no longer supports web app scripts without a desktop file.
  • Test suite was reintroduced (build/run-nuvolaruntime-tests). Issue: tiliado/nuvolaplayer#335
  • A lot of refactoring and removal of obsolete code and other improvements.

Nuvola SDK 4.4.0

  • Versioning scheme is synchronized with Nuvola Apps Runtime.
  • DBus Launcher has been ported to use the high level Start-up API of Nuvola and a data service have been removed because it is no longer used.
  • Compatibility with Nuvola Player 3.0.x must be enabled with the --compat flag passed to ./configure.
  • Web apps scripts are installed into the PREFIX/share/nuvolaruntime/web_apps directory used by Nuvola 4.4+ but legacy symlinks in the PREFIX/share/nuvolaplayer3/web_apps directory are also provided for Nuvola 3.x.

Diorite 4.4.0

  • Versioning scheme is synchronized with Nuvola Apps 4.4. Library names have been changed accordingly: dioriteglib-0.3 → dioriteglib4 and dioritegtk-0.3 → dioritegtk4.
  • Vala documentation is built by default. Requires valadoc >= 0.36 but can be disabled with --novaladoc flag.
  • Various utility functions were added. See git log for details.

Questions? Feedback? Found Bug?

Having trouble? We'd like to help! But you need to tell us. I'd like to ...