1.39 Release Notes

1.39 Release Notes

Server Enhancements


  • Added Any as a VAIL Standard TypeAny can be used as part of the signature of a procedure, both as the type of a parameter and as the return type.
  • You can now use built-ins like toInteger() or toString() directly on String, Integer, and Real constants.
  • Added a new io.vantiq.text.Strings.format(str, args) utility procedure that returns a formatted String like the existing built-in format(), but accepts an arbitrary number of substitution parameters (format() is limited to 15).
  • Added two DateTime built-in proceduresaddMonth() and addYear(). These procedures return a date in the past or future on the same day as the current date.
  • Added a rethrow(exception) utility procedure to handle rethrowing a caught exception, which avoids double formatting error messages.
  • Added Utils.deepMerge(target, source) which recursively merges the source Object into the target. See the Utils service.

Large Language Model/AI Support

  • Added runtimeConfig argument to SubmitPrompt and AnswerQuestion ActivityPatterns, and LLM submitPrompt and SemanticSearch answerQuestion built-in services. This property allows specifying a runtime configuration that applies to the request only.
  • Added functionAuthorizer argument to SubmitPrompt ActivityPattern and LLM submitPrompt built-in services, providing control over automatic LLM functions execution.
  • Added support for Azure OpenAI


  • Sources are no longer permanently deactivated when they fail to connect. Instead of setting active to false, the new property isUnavailable is set to true. Whenever the source is updated or has a resource configuration change, it will try connecting again and update isUnavailable appropriately.


  • Duplicating Documents over WebSocket sessions is now supported.
  • The new Org User profile will give user-level permissions in any namespace where the user has no explicit permissions.
  • Bootstrapping a node is now performed within an Organization.
  • Deploying a K8sInstallation to the self cluster can only be performed by the organization admin. See Use of the self Cluster for details.
  • It is now possible to apply a “filter” to dynamic subscriptions established via WebSockets.

UI Enhancements

  • The GenAI Builder is a major new tool that can be used to visually create a “GenAI Flow” based on LangChain and the LangChain Expression Language (LCEL). These flows can be invoked through Services and Event Handlers in various ways. For details refer to the GenAI Builder Guide and the related GenAI Builder tutorial.
  • The LLM Playground is a new tool for verifying LLM connections and experimenting with different large language models and their settings. It is also a useful tool for creating and refining prompts (a task often referred to as Prompt Engineering).
  • Added a new Client widget, Conversation, which provides a chat-like UI for interacting with LLMs. See the Conversation Tutorial for an example of how to use the Conversation widget.
  • The Visual Event Handler (AKA App Builder) UI has a new way to trigger the start of the Event Handler. By selecting any EventStream task, the resulting properties slideout shows a new section, Trigger EventStream. Expand that section to reveal a JSON editor and its Trigger button. Clicking the Trigger button will send the JSON object to the EventStream task to start the Event Handler.
  • Configuration properties that reference a Type in the App Builder now show an ‘eye’ icon to open the Type definition and add that Type to the enclosing Project.
  • Client DataTable, ListViewer, and chart (e.g., Line) widgets now respect their Data Stream’s Group By property.
  • Client DynamicMapViewer widget now supports a new center type of “Bounds” which will center the map on the bounds of all markers.
  • Standard Types may now be renamed and any data associated with the Type is moved to the new Type name. This feature is accessed by using the Duplicate Type context menu item for a standard Type in the Project Contents tree, then checking the Rename Type checkbox.
  • Added a new Client function, [logout]((cbref.md#logout), which allows Clients to force a relogin for mobile apps.
  • Clients can now be added to a Group, which makes it possible to confine access to a specific list of Users.
  • When multiple tasks are selected using the “Shift” key in the Visual Event Handler they will all move together if dragged.
  • Deployment tool enhancements:
  • Provides new action button to terminate an unfinished deployment or un-deployment.
  • Provides new option while copying/moving resources between partitions to include/exclude related resources,
  • Partition constraints are now editable.
  • Partitions can be excluded from update partitions (to avoid deleted partitions from coming back during update).

GenAI Enhancements

  • To assist in the development of GenAI Applications, a new GenAI Builder has been added.
  • Services support GenAI Procedures, which are created and can be edited when the user drops a GenAIFlow task in a Visual Event Handler graph.
Posted: June 17, 2024 at 4:17 pm
Replies: 0
Viewing 1 post (of 1 total)
  • You must be logged in to reply to this topic.
© Vantiq 2024 All rights reserved  •  Vantiq Corporation’s Privacy Policy and Cookie Policy