Qorus 7.0.5
Release Overview
This is a bugfix release; see below for more information
Quality of Life Improvements
- Added support for Google Contacts app actions in Qogs + connections + external AIs through Qorus's MCP server
- IDE improvements and bug fixes for a better user experience
Bug Fixes in Qorus
Issue ID | Severity | Description |
4176 | Normal | Qog states with invalid / down / unauthorized connections are no longer marked as valid |
4175 | High | Qogs respect event trigger data in test execution (regression in 7.0.4) |
- See also
-
Qorus 7.0.4
Release Overview
This is a bugfix release; see below for more information
Quality of Life Improvements
- Major improvements to MCP functionality
- Fixed tool parameter handling for application actions, providing more reliable execution of tools from the AI
- Export record-based actions and datasources to the AI in a much more AI-friendly way, unlocking significantly more functionality with databases and SQL actions than before
- Fixes in Qore setting the Socket encoding to UTF-8 with
Content-Type
values that imply it and without an explicit character enoding allow mcp-proxy
to properly communicate with Qorus's MCP server using non-ASCII characters in tool calls
- Added support for Google Sheets, Google Drive, Google Forms, Google Meet, and Google Docs app actions in Qogs + connections + external AIs through Qorus's MCP server
- Improved support for Microsoft Outlook actions, added new event and API actions
- Improved support for connection handling in the IDE; you can now create connections from apps and authorize / reauthorize connections directly from the connection pages in the IDE
Bug Fixes in Qorus
Issue ID | Severity | Description |
4174 | High | The nli service no longer requires the openai-api-key config item to be set to run |
4173 | High | OpenAI assistants can again be created when OpenAI functionality is enabled |
4172 | High | Dependent interfaces connected through Qogs are reset / restarted when classes used by Qogs are updated with the API |
4171 | High | The default value of config items can now be set in the IDE |
4170 | High | Scheduled Qogs are now run properly on their schedule as well as called correctly from manual job execution |
4169 | High | A non-responsive DB server can no longer cause a deadlock in Qorus; the master process will detect non-responsive qdsp processes and restart them automatically |
4167 | High | Action options with implied default values due to a single allowed value are now processed correctly including triggering the automatic fetch of dependent options |
4166 | Normal | Templates surrounded by square brackets are no longer silently ignored |
4165 | Normal | Templates not directly convertible to a string such as hashes and lists are no longer silently ignored but rather concatenated to the target string after YAML serialization |
4164 | High | Dropbox connection pings are working properly again |
4163 | High | Qog action state execution in the REST API now correctly sets reference data before execution |
4162 | High | Qog validation has been improved regarding reference data and expression evaluation |
4161 | High | The MCP server now reports tool parameter schemas for user connection / app actions properly to the AI |
4160 | High | The system now returns an error with the REST user API when given an invalid user instead of returning information for the default system user |
- See also
-
Qorus 7.0.3
Release Overview
This is a bugfix release; see below for more information
Quality of Life Improvements
- fixed Sharepoint app authorization
- added support for Attio app actions
Bug Fixes in Qorus
Issue ID | Severity | Description |
4159 | Low | The id field is now sent as an integer in alerts when it represents an integer object ID |
4158 | High | System services can no longer be updated or changed by users without special authorization (SERVER-CONTROL or new permission SYSTEM-SERVICE-CONTROL) |
- See also
-
Qorus 7.0.2
Release Overview
This is a bugfix release; see below for more information
Quality of Life Improvements
- Enabled MCP support for Qorus; see MCP Server for more information
- Added support for Intercom, Magento, Shopify, and Xero app actions (Shopify support pending publishing of the OAuth2 app by Shopify, in case of questions about the status, please contact Qore Technologies support)
Bug Fixes in Qorus
Issue ID | Severity | Description |
4157 | High | DB cluster failover errors during system startup no longer can cause Qorus to silently skip service autostart |
4156 | High | Cluster recoveries no longer deadlock after an active master failover with running stateless services |
4155 | High | Can now use datasource connections after updating them with the API |
4154 | High | Deleting connections, mappers, and pipelines that are members of interface groups with the API is now possible |
4153 | High | Creating connections now works for sandboxed users |
4152 | High | Sensitive option values can no longer be read by external users without the OPTION-CONTROL permission |
4150 | High | Addressed an issue in cluster recovery when running under Kubernetes that could cause a deadlock |
4149 | Normal | I/O errors in log file rotation do no cause the entire operation to fail |
4115 | Normal | Service log messages include information about any job or workflow context |
- See also
-
Qorus 7.0.1
Release Overview
This is a bugfix release; see below for more information
Quality of Life Improvements
- A major issue in the master JavaScript proxy manager was fixed in the v8 module, providing additional stability to JavaScript-based app actions
- The disable-javascript option was implemented for backwards-compatibility for Qorus installations that need to ensure the same operational footprint to the maximum extent possible with previous versions of Qorus by disabling all support for TypeScript / JavaScript application actions
- The IDE asks for confirmation before making any changes that can result in the deletion of operational data; this can happen when:
- changing the trigger type of a Qog from scheduled to any other type
- changing workflow order keys or steps
- deleting any of the above objects as well as jobs with job instance data
- Qorus now supports event-based app actions with Microsoft Dynamics in Qogs
- Additional validations were implemented for Qogs
- See also
-
Bug Fixes in Qorus
Issue ID | Severity | Description |
4148 | Normal | Errors are now correctly reported in the IDE when deleting interface objects |
4147 | Normal | Deprecated mappers with data convertible to the current format are now displayed properly in the IDE |
4146 | High | Updating deprecated non-class-based jobs and services no longer corrupts the interface data |
4145 | High | The object API now handles deletes of workflow order keys in update transactions correctly |
4144 | High | The object API now handles updates of workflow with order keys correctly |
4143 | High | The user must confirm before making changes with the object API that will result in operational data being deleted |
4141 | Normal | Allowed attributes on Qog-bound services and jobs can be updated |
4140 | Normal | The server sent invalid WebSocket messages about new and updated services which caused problems in the UI when users were viewing the affected service |
4137 | High | Fixed a bug upgrading the system schema on Oracle |
4136 | High | The default system token TTL was increased to 15 minutes to allow for oload to install very large releases on slow systems |
4134 | Normal | Improved Qog validation logic to catch additional errors |
Qorus 7.1
Release Overview
Qorus 7.0 is a major release of Qorus focusing on improved security, improved integration with external applications, and a better user experience.
New Features and Changes
- Built-In IDE
- The system UI now supports a built-in IDE for creating, updating, deleting Qorus objects as well as exporting them for storage in a SCM solution and for creating releases
Built In IDE
- The built-in IDE does not support interfaces not supported in the Qorus VS Code Extension; existing objects in Qorus that use deprecated features (function-based services, workflows, and steps, as well as mappers using deprecated features) cannot be displayed in the built-in IDE
- The built-in IDE supports writing sources to the file system on the server side as well as creating installable release packages to support a full development workflow without requiring any client installs
- The VS Code IDE Extension can still be used with Qorus 7, but it does not support many newer features of Qorus 7; all new development will be performed in the built-in IDE. The VS Code IDE Extension provides a better experience for editing code than the built-in IDE, however
- Finite State Machines Given Superpowers and Renamed Qogs
- Qogs now support powerful and easy-to-use application actions based on Qore's data provider API, supporting many enterprise integration patterns in a very easy-to-use interface
Qorus Qogs
- Qog app actions can now be implemented in TypeScript or JavaScript thanks to the integration of node.js in Qorus through the v8 module
- Qog trigger states run from events automatically create bound services, scheduled Qogs automatically create bound jobs
- Apps that support OAuth2 can be connected with a couple of mouse clicks, making it trivial to develop and deploy automation solutions in Qorus
- AI Support
- Qorus now supports AI support for AI-generation of Qogs as well as AI-driven decision making
Create Automations With AI
- Telemetry
- Qorus 7 supports telemetry by default; on startup a message is sent to a cloud server providing information about the Qorus instance; to disable this message, set the qorus.disable-telemetry option to False. Note that Qorus 7 depends on Qore Technologies' cloud services for OAuth2 functionality, when telemetry is disabled, it's not possible to use Qorus Technologies' cloud services with Qorus Integration Engine (R) Enterprise Edition
- Webhook Support
- Qorus supports webhooks as a service event data source and as Qog triggers
- Script Object Support
- Qorus now supports release, test, and schema scripts as native objects and release components
- Connection Changes
- Connections are now members of interface groups and therefore can be subjected to restricted access for restricted users
- Connections can be renamed with the API
- New API Methods
- New Constants
- New System Permissions
- New System Options
- New Context Templates
Important Upgrade and Backwards Compatibility Information
- Service
stop()
methods are always called when the service is unloading, even if there are no active threads. This allows services to implement cleanup code in the stop()
method
- Qorus connections are returned as RestClient objects instead of as QorusSystemAPIHelper objects from the connection provider infrastructure
- All methods that check for permissions will now fail when called from an unauthenticated connection; call ServiceApi::tryAuthenticateRequest() first to authenticate the external user if necessary
- Autocommit is always disabled for all datasources in the client library
- All sensitive connection options (passwords, authorization and refresh tokens, etc) are stored encrypted in the Qorus DB. Sensitive connection option values are no longer returned in API requests on unencrypted connections (ex: HTTP listeners)
- Loading objects is performed with the API; oload can only be used when Qorus is up and running, as it requires the API to load objects; the release and object API is transaction safe and covers all objects with metadata and almost all objects in the deprecated format as well
- Qorus now depends on Qore 2.0 which is built with PCRE2 instead of the very old, deprecated, and unmaintained PCRE library. PCRE2 is less tolerant to invalid patterns like
/[^\w-.]/
; to correct such patterns, escape the invalid hypen, like /[^\w\-.]/
Bug Fixes in Qorus
Issue ID | Severity | Description |
4055 | High | fixed a bug where externally- terminated indepedent / stateless qsvc processes would cause a deadlock in Qorus |
4054 | Normal | fixed a bug where a rolling update in Kubernetes could fail when a schema update was required |
4052 | Normal | fixed a bug where oload rearranged type fields when loading if field names had dots in the name |
4037 | Normal | The CONNECTION_CREATED message was missing the auth_request_uri attribute for supported connections |
4031 | High | Fixed a bug where Qorus HTTP connections could sometimes leak authentication info to connections not requiring authentication on the same thread |
4026 | High | Authorization APIs must not succeed with when called from unauthenticated connections |
4024 | Normal | Qorus connections are returned as QorusSystemAPIHelper objects instead of as RestClient objects |
3740 | Normal | fixed bugs in oload: Data Loading Tool and Schema Manager handling mappers with field names with embedded "." characters |
2640 | High | fixed a bug recovering from a qorus-core restart with active remote interfaces that could lead to a deadlock |
- See also
-