Releases: r52/quasar
Releases · r52/quasar
v3.0.0
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
andAutomatically 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
andvisualizer_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 thevisualizer_css
andvisualizer_webgl
sample widgets as they are no longer Windows only with the addition of thepulse_viz
extension
Changelog
- Qt6 refresh by @r52 in #11
- Misc cleanup by @r52 in #13
- Updater by @r52 in #14
- Chores by @r52 in #15
- PulseAudio extension by @r52 in #16
- Platform restrictions in widget definitions by @r52 in #17
- More chores by @r52 in #18
Full Changelog: v2.0.2...v3.0.0
v2.0.2
v2.0.1
v2.0.0
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 totrue
if the widget requires a connection to the Data Server. If this parameter is not defined, or iffalse
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
v1.3.1
- 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