Skip to content

Changes in version 2.8

This version introduces the ability for developers to license QueryStorm apps in order to charge for them or control who can use them. The ability to license apps introduces a minor change in the IAppHost interface which apps use to interact with the runtime. This is the reason for incrementing the version number from 2.7 to 2.8. While the interface between the runtime and apps has changed slightly, this is not a breaking change and apps built for the previous version of the runtime will continue to work on the new runtime without recompiling.

In addition to adding licensing support, this version also includes the ability for C# scripts to reference other scripts as well as several smaller features and bug fixes (listed below).

Licensing apps

IDE users can now control who gets to use their apps, and optionally charge for them, by using the built-in licensing facilities in QueryStorm. Payment processing is also included and is handled through FastSpring. Payment processing is optional and can be enabled if needed.

To set up licensing, users must:

  1. Apply for vendor status on Keystodian - QueryStorm's licensing portal.
  2. Populate the new LicensingInformation section in the project.config file.
  3. Resolve the ILicensingService in their app's code and call the EnsureAccess(byte featureFlag, string featureName) method where appropriate.

Docs on this are coming soon. In the meantime, anyone interested can reach out via email and get started right away.

This feature is currently enabled across the board, but will later be limited to enterprise license users only. Details on the enterprise version later this month.

C# scripts can reference other C# scripts

C# script can now reference other C# scripts using the #load directive.

Here's an example where New script 2.csi is using a class defined in "New script 1.csi":

C# script referencing another C# script

Types in the referenced script are not referenced in the usual way. Rather, the contents of the referenced script are inserted before the start of the current script.

One thing that doesn't work at the moment is the go-to command (F12 shortcut).

Bugs fixed and misc improvements

  • The "About" page was not getting disabled even for users with paid licenses
  • The table cache was getting updated on each change in Excel, instead of only when the change intersects with a table leading to slow editing of Excel files with large tables
  • The licensing UI has been polished
  • Added [view in browser] link in the updater UI
  • Fixing StDev function in SQLite scripts