Skip to content

v3.0.0

Latest
Compare
Choose a tag to compare
@r52 r52 released this 29 Mar 22:17
· 8 commits to master since this release
d533e30

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