Skip to content

Releases: r52/quasar

v3.0.0

29 Mar 22:17
@r52 r52
d533e30
Compare
Choose a tag to compare

What's New in v3.0.0

While not a whole lot of changes to the core functionality, under the hood the backend has been rewritten from the ground up and is now much, much faster than in v2. This comes with a number of breaking changes.

Breaking Changes

Extension API v3

  • Increased the size of some fields in quasar_ext_info_fields_t
  • The create_settings call now requires the extension handle
  • quasar_data_source_t.rate is now in microseconds (instead of milliseconds)
  • Previous API versions are no longer supported

Modified JSON Messaging Format

  • Several layers of indirection has been collapsed to simplify processing in Javascript
  • All sample widgets have been updated to reflect changes.
  • See documentation for more details.

New Features

Updater

  • On Windows, Quasar can now self-update. Enable the feature by enabling Check for updates and Automatically download and install updates in the settings. Ensure that Quasar is not extracted to a folder that requires admin rights.

pulse_viz Extension (Linux)

  • Audio visualization extension for PulseAudio based Linux distros
  • Can be used with the visualizer_css and visualizer_webgl sample widgets

Removed Features

Debug/Developer Console

  • Rather than maintaining this feature, there are far better dedicated development tools such as Postman, Insomnia, or hoppscotch.io. Please use these tools instead to develop and test widgets and extensions.

User Keys for non-Quasar widget connections

  • Quasar binds only to localhost so this feature wasn't very useful to maintain

Web-based Settings UI

  • Incompatible and hard to maintain with the new Settings backend
  • Replaced with native dialog

Windows Installer

  • With the self-updater, Quasar being a portable release only is fine until a better installer solution is found

Other/Misc Changes

  • NEW: The required field for extension requirements in widget definitions now support platform restrictions
  • NEW: Linux CI for GCC and Clang
  • CHANGED: Switched to CMake/vcpkg as the primary project solution to unify build experience on all supported platforms
  • CHANGED: Updated to Qt 6.4
  • CHANGED: Switched to clang-cl as the primary compiler on Windows
  • CHANGED: Refactored win_audio_viz extension for modern standards. Switch to KFR for DSP.
  • CHANGED: Dropped the win_ prefix from the visualizer_css and visualizer_webgl sample widgets as they are no longer Windows only with the addition of the pulse_viz extension

Changelog

Full Changelog: v2.0.2...v3.0.0

v2.0.2

11 Oct 11:05
@r52 r52
Compare
Choose a tag to compare
  • Updated to Qt 5.12.5

v2.0.1

13 Aug 00:02
@r52 r52
Compare
Choose a tag to compare
  • Updated to Visual Studio 2019
  • Updated to Qt 5.12.4

v2.0.0

31 May 00:38
@r52 r52
Compare
Choose a tag to compare

What's new in v2.0.0

Breaking Changes

Extension API version 2

  • Extension info fields has been separated out into its own struct for future non-breaking extensibility.
  • New info field url allows extension authors to specify a website URL for their extension.
  • New Data Source parameter validtime for client polled sources that specifies the amount of time in milliseconds that the data is cached and remains valid for.
  • Added support for returning basic JSON data types int, double, bool, as well as null returns.
  • Added support for string and selection type extension settings. String type fields can also be designated a password field, where the data will be obscured in the UI.
  • Added support for simple field storage (hidden settings).
  • Added support for error propagation to clients.
  • Added support for passing simple arguments to get_data()
  • Version 1 of the API is no longer supported.

New JSON Message Format

  • Redesigned JSON message format for functional clarity.
  • All sample widgets have been updated to reflect changes.
  • See documentation for more details.

Widget Authentication

  • Added new definition parameter dataserver that defines whether connection and authentication scripts are loaded into the widget. This parameter must be defined and set to true if the widget requires a connection to the Data Server. If this parameter is not defined, or if false is set, then the connection/authentication scripts are not loaded and the widget will not be able to connect to the Data Server.
  • Widgets that connect to the Data Server must now authenticate with the server using the JavaScript function quasar_authenticate(socket). Widgets that do not authenticate within a certain timeframe will be disconnected.
  • External widgets and apps that depend on the Quasar Data Server must now also authenticate using User Keys, user generated authentication codes for external clients.
  • See documentation for more details.

New Features

Debug/Developer Console

  • Added a Debug/Developer Console for widget and extension developers.
  • This console allows extension and widget developers to test queries and sample outputs without having to write a test widget or log JavaScript.

Update Checker

  • Quasar now checks for updates, and asks whether you'd like to go to the download page if a new version is available.
  • This functionality only applies to the main Quasar application for now. Eventually, extensions may be supported too.

Custom App Launcher Icons

  • Users can now add custom icons to configured App Launcher commands. These icons are sent to App Launcher widgets when requested, where they can be incorporated into the design.

Fixes and Misc Changes

  • Added new WebGL based audio visualizer sample widget.
  • Extensions now run in its own thread for optimal performance.
  • Left-clicking the tray icon now opens the context menu as well.
  • Fixed widget UI freezing when bringing up the context menu in a clickable widget.
  • Added resize functionality for widgets.
  • Extensions can now be installed to My Documents\Quasar\extensions\ on Windows.
  • Added a setting to allow changing the Data Server protocol between secure (wss) and non-secure (ws).
  • The Settings page has been redesigned in HTML for more eye pleasing dynamically generated components.
  • Updated to Qt 5.12.
  • Sample widget win_visualizer: Updated animation library and visual styles.
  • Replaced WiX MSI installer with Qt Installer Framework installer for easier maintenance.
  • Extension settings page now preserves the order the that settings were created in.
  • Improved WebSocket initialization performance.

v1.3.2

16 May 23:28
@r52 r52
Compare
Choose a tag to compare
  • Updated to Qt 5.10.1
  • Windows 10 April Update support
  • Fixed an issue where widgets may preemptively load before their required plugins during startup

v1.3.1

25 Jan 06:34
@r52 r52
Compare
Choose a tag to compare
  • Updated to Qt 5.10.0
  • Added "required" widget definition parameter for defining required data plugins
  • Support propagation of data plugin settings to subscribed widgets
  • win_audio_viz: Replace kfr with kissfft
  • Removed cdn_weather sample widget
    • Now offered as a standalone widget here
  • Redesigned simple_perf sample widget
  • Minor fixes

v1.3

03 Nov 06:11
@r52 r52
Compare
Choose a tag to compare
  • Linux support (tested on Ubuntu 17.10)

v1.2.2

28 Sep 10:01
@r52 r52
Compare
Choose a tag to compare
  • Support asynchronous replies for client polled data
  • Package OpenSSL for https support

v1.2.1

30 Jul 04:10
@r52 r52
Compare
Choose a tag to compare
  • Minor fixes
  • Removed support for Qt <5.9

v1.2

15 Jul 02:17
@r52 r52
Compare
Choose a tag to compare
  • Ensure correct threading for signaled data sources
  • Refactored data plugin code for standards compliance
  • Minor fixes