- Release announcements for users are posted to Nuvola News blog and social network channels.
- Developers, maintainers and packagers are supposed to subscribe to Nuvola Devel mailing list to receive more technical announcements and important information about future development.
- Make text of dialogs selectable. Issue: tiliado/nuvolaplayer#762
- Synchronize version with Nuvola Player.
- Synchronize version with Nuvola Player.
- Improve merge-devel make target
- Add Drt.System.get_hostname.
- Use relative paths in pkg-config files. Issue: tiliado/nuvolaplayer#482
- Make application id and dbus id always equal. Issue: #32
- Refactor convert_sqlite_error into throw_sqlite_error
- The names of git branches has changed:
- release-4.x - stable version for immediate release
- master - development branch, merged into stable when ready
- Pre-release git tag (e.g. 4.19.0-dev) are supported.
- KeyValueStorage: Tell which property cannot be bound.
- Fix Creation method of abstract class cannot be public (Vala 0.44.1.38-c900b4).
- Add String.repr(): Return a representation of a string.
- Add Types.to_string: Convert a type to a string.
- Drop printf style of TestCase expect/assert methods.
- Sort keys in JsonObject dump. Issue: tiliado/nuvolaplayer#541
- Make built-in theme Adwaita always available. Issue: tiliado/nuvolaplayer#586
- Remove Default from GTK theme selector. Issue: tiliado/nuvolaplayer#586
- Normalize the default GTK theme. Issue: tiliado/nuvolaplayer#586
- Fix warning from Valac 0.48.
- Make EventLoop test less strict.
- Fix syntax error with Vala master.
- Add Drtgtk.DEFAULT_GTK_THEME (Adwaita). Issue: tiliado/nuvolaplayer#636
- Always adjust Adwaita theme name.
- Vala 0.44.x is recommended as it fixes some memory leaks.
- Don't pass null to VariantUtils.to_strv. Issue: tiliado/nuvolaplayer#493
- Valadoc is now run with
--fatal-warnings
. This requires Vala 0.44.x but can be disabled with./waf configure --no-strict
. - Asynchronous tests were fixed.
- Various C warnings were fixed and marked as fatal to be caught in future.
- Various optimizations of memory usage.
- Refactoring continues, test cases and documentation are improved.
- Removed: System.overwrite_file, ConditionalExpression, Bluetooth classes, RichTextBuffer, RichTextView, EntryMultiCompletion, Flag.is_set.
- Renamed: System.make_directory_with_parents_sync → System.make_dirs_async, System.overwrite_file_async → System.write_to_file_async, TestCase.foo_equals → TestCase.foo_equal.
- New API: String.as_array_of_bytes, TestCase.get_tmp_dir, TestCase.expect_error_match, TestCase.unexpected_error, String.as_bytes.
- New dependency: gee-0.8 >= 0.20.1
- Build errors with Valac 0.43.x were addressed.
- Drt.TestCase.expect_variant_equal was added to test equality of Variant values.
- Array-comparison TestCase methods were improved to print the value of unequal array elements.
- Rarely used API were removed: Utils.(s)list_to_strv.
- Improved documentation, test cases and refactoring: VariantUtils, Arrays.from_2d_uint8, String.unmask
- Incorrect handling of the title widget and the menu button in ApplicationWindow header bar was fixed.
- The code style checker Valalint is run by default unless
--no-vala-lint
is passed. - A memory corruption in Drt.String.unmask was fixed. Issue: tiliado/nuvolaplayer#488
- Unit tests are now run also with Valgrind to detect memory errors. A few memory leaks were fixed as a result.
- MALLOC_CHECK_=3 and MALLOC_PERTURB_ are used during development to detect some memory errors. Issue: tiliado/nuvolaplayer#490
- RcpRequest.pop_str_list() returns Gee.List instead of GLib.SList.
- Waf was updated to 2.0.12 (compatible with Python 3.7). Issue: #26
- Diorite testgen is now compatible with Python 3.7. Issue: #27
- Fedora 29 is used for continuous integration.
- Utility function
uint8v_equal
was removed. UseBlobs.blob_equal
instead. - Utility functions for conversion between binary and other formats were moved under Blobs namespace and renamed.
- New function: Arrays.from_2d_uint8 to extract one-dimensional uint8 array from two-dimensional array.
- Removed classes: VectorClock, Lst.
- Configure script
configure
was removed. Usewaf --configure
instead. - PropertyBinding now supports int values.
- ApplicationWindow.create_toolbars no longer removes HeaderBar widgets not created with this function.
- The entire codebase was converted to a single code style, which is guarded by valalint (
make valalint
). - A lot of refactoring and improvements of documentation comments.
- GIR is no longer built by default. Use
--gir
configure flag to build it. - Various utility functions to print errors were added.
- All deprecation warnings were resolved. Issue: #20
- Diorite is now built with fatal warnings but you can pass
--no-strict
to disable that. - Dependencies were increased: valac >= 0.42.0, glib-2.0 >= 2.56.1, gtk+-3.0 >= 3.22.30. If your system contains a different version of Vala, we cannot guarantee that Diorite builds correctly and it may lead to memory leaks or invalid memory access. We recommend building the correct Vala version from source prior to building Diorite. You can then throw it away as Vala compiler is not needed after Diorite is built.
- Theme selector uses more human-friendly labels for theme names, e.g. "Arc Darker Solid" instead of "Arc-Darker-solid".
- Added function to get an app-specific machine id hash.
- String.is_empty() check was improved and String.not_empty_or() utility function was added.
- Icons.get_icon_name_for_position was added.
- StackArrow widget was added to switch Gtk.Stack pages.
- Utility function EventLoop.sleep() was added.
- Drt.variant_ref and friends were removed. They were used as a workaround for Variant reference bugs in older Valac. Therefore, you now need Valac >= 0.42 which contains the fixes for these issues.
- CircleCI tasks now build Valac from source and you should do the same to avoid incompatibility issues.
- A continuous integration job was added to test builds with a Fedora image.
- New utility functions were added: Utils.datetime_to_iso_8601 and Add Utils.human_datetime.
- Following GNOME's App Menu Migration proposal, ApplicationWindow uses a "hamburger" icon for menu button in the header bar and app menu button is always appended to the hamburger menu.
- DesktopShell.client_side_decorations is writeable to override auto detection. Issue: tiliado/nuvolaplayer#451
- Fix "The name Priority' does not exist" Vala 0.40 error. Issue: #19
- Fix "Type X can not be used for a GLib.Object property" Vala 0.40 warning. Issue: #20
- Fix test case for Valac 0.40. Issue: #23
- Add OverlayNotification.
- Catch also GLib.DBusError.TIMED_OUT. Issue: tiliado/nuvolaplayer#419
- Add JsonBuilder.set_string_or_null.
- Increased requirements: Vala >= 0.38.4.
- The VAPIDIR environment variable is supported to set extra Vala API directories.
- GIR generation is now optional, you can pass
--no-gir
to disable it. - Fixed bug in Entry widget that prevented user input.
- Fixed bug when XDG Desktop Portal web browser selector was shown under a dialog window instead of above it.
- RequirementsParser supports 4 states:
- New utility functions: Drt.print_variant()
- Added Drt.Event thread synchronization primitive.
- New widget: Drtgtk.Entry - an enhanced version og Gtk.Entry.
- Fixed parsing of RPC notifications. Issue: tiliado/nuvolaplayer#385
- New widget: Drtgtk.HeaderBarTitle - a custom title widget for Gtk.HeaderBar.
- New utility function: System.cmdline_for_pid - Get command line of a process with given PID.
- Better debugging: Distinguish between socket creation errors. Issue: tiliado/nuvolaplayer#378
- New namespace: Drt.Dbus - DBus introspection and service activation.
- New utility method: Drt.Flatpak.check_desktop_portal_available - to check whether a proper XDG Desktop Portal DBus interface is present.
- New functionality: Functions to get, set and look up GTK+ 3 themes - see Drtgtk.DesktopShell.
- New widget: Drtgtk.GtkThemeSelector - a selector to list and change a GTK+ theme.
- Various IPC classes were refactored and united into new API (Rpc prefix) and it is possible to respond to IPC messages asynchronously.
- KeyValueStorage got async equivalents of non-void methods.
- Diorite no longer bundles *.vapi files and depends on those of Vala 0.36.3.
- GLib dependency has been raised to 2.52.0 to make use of Valac's GTask support.
- Diorite GTK namespace was changed to Drtgtk.
- GIR XML and typelib files are generated. Introduces new dependency on g-ir-compiler.
- Namespaces have been united: Drt for Diorite and Drtdb for Diorite DB.
- Added utils to interact with GLib event loop (Drt.EventLoop).
- Added workaround for extra Variant unref in ApiNotifications (Drt.ApiChannel.(un)subscribe).
- Added methods to (un)subscribe for ApiNotifications.
- Added CSS style classes for badges (Drt.Css.BADGE_*).
- Added various utility functions (Drt.Time.get_unix_time_now_utc, Drt.String.concat, Drt.String.append, Drt.variant_dump, Drt.variant_ref, Drt.variant_unref).
- ApplicationWindow.app field is now protected (private previously).
- Fix wscript for non-git builds. Issue: #16
- Dioritedb has been refactored significantly.
- Bundled glib.vapi is no longer used.
- Various utility functions were added, see git log for details.
- 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.
- Development snapshot for Nuvola 3.1.3.
- Build script was reworked and ported to Waf 1.9.10. See Readme.md for more information.
- Modernisation has begun. Dependencies were raised and legacy code is being removed.
- All Python scripts require Python >= 3.4.
- Code has been ported to Valac 0.36.
- Client-side decorations are enabled for Pantheon desktop environment (elementaryOS).
- Added license file.
- Appmenu, toolbar & menubar handling was refactored and double appmenus fixed. Issue: #4
- Development snapshots.
- Initial release.
- Development snapshots.