- Fix For Each bug where suspend only runs once
- Fix duplicate records issue on suspend/resume
- Fix "resume node not found" error on resume
- General performance inmprovements
- General Suspend/Resume tool stability
- Suspend/Resume tool can handle more suspended executions simultaneously.
- Resume execution is now logged into the audit log.
- New values added to coverage JSON output.
- Fixed an issue with the manual resume tool
- Studio/Server connection stability improvements
- Post tool now supports x-www-form-urlencoded format.
- Fixed crash when suspending workflows that contain recursive loops.
- Server supports new json and xml formats for running folder and server wide workflow tests and coverage.
- Duplicate UI shows the progress of long running workflow folder duplicate operations.
- Gate tool not showing the correct "Match Type" options.
Post
- XML web response can now be converted into JSON object. Duplicate Folder
- Now enables a continuous execution on resource duplication failure.
- The Studio splash page no longer shows "Server Unavailable" and starts up correctly.
- There are no longer duplicates in the Errors().Message recordset
- Improved Performance and Logging on Duplicate Folder functionality.
General
- Added a 'Show Password' functionality to password fields
Manual Resumption
- Override input variables accepts same variable name as suspended workflow input variables.
Debug
- Resolved 'internal server error' bug when debug in browser option is selected.
Service
- The service tool is no longer returning duplicated InnerError tagged error messages when using the On Error Recordset.
Input Variables
- The Input Variables no longer throws non existent object: { input_variable_name } when you have a payload with only one JSON array value.
Debug Input
- Debug Input View remembers the state of an object.
General
- Performance enhancements to switching between workflows
Web
- Warewolf server variable’s error and exceptions have been adjusted to omit user value object failures as these can contain sensitive information.
- Posting an empty body to a Warewolf server workflow that uses the body to calculate the response, will now return a more detailed failing object message with failing object name as response.
- Debug Input objects are now saving consistently
Web
- Warewolf server variable’s errors have been adjusted to omit execution environment inner error duplicates.
OpenAPI
- OpenAPI is now no longer braking on public requests.
All tools
- On Error is no longer failing and returning an incorrect error message.
General
- Performance enhancements to the workflows
Manual Resumption
- Objects can be manipulated using the Sequence Tool and passed as inputs to override objects in the suspended workflow
Web
- Classic Web Post tool manual body can now Generate Outputs object.
- Web tools with no request payload like the Delete and Get will now not add the auto generated Content-Type : application/json. This fixes the header misuse errors.
Studio
- Data Sources are now loading on start up
Manual Resumption
- Input variable from the workflow can be passed as inputs into suspended workflow
Web
- Posting an empty body to a Warewolf server workflow that uses the body to calculate the response, will now return a failing object message instead of an empty response.
- Update help text and tooltips.
Logging
- Logging all errors to log server.
- Enriched error messages for user experience.
Triggers
- Resolved QueueWorker concurrency not reflecting changes.
Suspend Execution and Manual Resumption
- Resolved Windows authentication connection errors.
Logging
- All error messages are logged per Warewolf Log Level in Warewolf Settings.
Triggers - Throttle number of concurrent threads, increase thread count, improve queue efficiency.
- Posting an empty body to a Warewolf server workflow that uses the body to calculate the response, will now return an empty response instead of an exception.
- File with .txt extension can now be streamed currently into Warewolf server using the form-data stream.
OpenApi
- Generate OpenApi from folder level
Manual Resumption
- Override individual input variables
Web Post
- Web Post Tool can now post multi-part form data
File Read File Write
- Read and Write from UNC path no longer gives safe handle error
Hangfire
- Fixed error where logs where getting stuck in a processing state
Triggers -Trigger will now execute within Kubernetes Cluster
RabbitMQPublish
- No longer fails when CorrelationId is null
Suspend Execution Tool
- Date format bug fix
Studio
- Studio no longer freezes when remote server becomes inactive
Suspend Execution Tool Manual Resumption Tool:
- Workflow will be resumed with the same user the workflow was suspended with
POST and GET Method Tools
- Genarate Outputs no longer returning base64 string
Allow OpenAPI(Swagger) request at folder level
Workflow Execution
- 'DispatchForAfterState' log intercepted null debug state as WarewolfInfo and not WarewolfError.
Swagger
- Updated Swagger Specification to OpenApi 3.0.1 Specification.
Web
- Xml+Soap payload can now be parsed to environment variables.
Suspend Execution Tool
- Added validation to Save Persistence Settings.
- InputMapping with variable and non-variable expression.
Test Framework
- Resolved equality error on a null recordset.
Web
- POST, PUT, GET and DELETE Method Tools response no longer returning base64 string.
- Data posted from outside Warewolf is no longer converted to base64 string.
Hangfire
- Fixed error where logs where getting stuck in a processing state
Suspend Execution Tool:
- Ability to suspend the execution of a workflow for a stipulated period.
- Ability to create test cases where the workflow will execute to completion.
Manual Resumption Tool:
- Ability to manually resume a previously suspended execution of a workflow.
- Ability to create test cases where the activity acts as an input and output for validation.
Test Framework
- Workflow input values now follow through to the test cases.
Test Framework
- Resolved 'Resource not found' when Object passed in as Null input.
- Web Put Method can now use a Base64 formatted file content to upload all common media types to a specified destination.
- Web Get Method can now download all common media types.
- Write File Tool can now use a Base64 formatted file content to write a file to a specified destination.
- Use Cases folder has been added under the Examples folder for more examples of use to the above enhancements.
- Manual CorrelationID can now evaluate Warewolf variables.
- The log server no longer returns object null error.
- Allow triggers to be deployed from the studio.
- Added counts for Tests and Triggers per resource selection to the deploy view.
- Warewolf Logger memory usage improvements.
- Test Coverage Summary counts are now updated for the selected folder
- Redis Cache tool - Resolved recordset output not caching correctly.
- Added more logging to the Trigger Queue
- The logging data source has the option not to be encrypted in the settings file. Default is to encrypt the data source.
- Log Levels for Execution Logging can now be configured in Logging Settings. Default is DEBUG.
- EnableDetailedLogging in serverSettings is now defaulted to true.
-
Test Coverage ~ Test Coverage summary now no longer throws when a coverage report is required for a non-existing workflow. ~ Complexed nodes like decision and switch tools no longer throws when a test coverage report is requested. ~ All tests are accounted for and the invalid tests have been included in the summary count. ~ When test type is changed -from the test editor- from Assert to Mock this will now update the Test Coverage reports coverage percentage.
-
Run Tests ~ The invalid tests are now returned with a message stating the reason and the result as invalid.
- Validate SearchIndex on the Elasticsearch Source.
- Fixed the log levels for execution logging.
-
Test Coverage can now be run on workflows, folders containing workflows and on the host. ~ Run All Tests - works for workflow, all workflows in a selected folder, and all workflow in a selected host - right-click workflow, folder, or host from Warewolf studio - {workflowpath}.tests when accessing from url - updated the json format - each test run creates a coverage report
~ Run Coverage - works for workflow, all workflows in a selected folder, and all workflow in a selected host. - right-click workflow, folder, or host from Warewolf studio - {workflowpath}.coverage when accessing from url -
Logging has been enhanced. ~ All workflow executions are logged if EnableDetailedLogging has been set to true in serverSettings.json. ~ Elasticsearch 7.6 can now be used as a logging source. The default is still Sqlite. 1. Download and install Elasticsearch with Docker: https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html 2. Create an Elasticsearch data source in warewolf. 3. In settings select the Elasticsearch source created from the dropdown and save. Default in the dropddown referres to Sqlite. Note: If the logging source is changed, the server will need to be restarted.
- Studio can now start even if there are corrupt workflows in the active workspace
- ExecutionId of workflows is carried across remote workflow executions
- Warewolf-Custom-Transaction-Id, when this header is set the value will optionally be used for RabbitMQ correlation
- Added Warewolf-Custom-Transaction-Id to the UI for RabbitMQ Publish. User can decide to use ExecutionID of the workflow, an existing Warewolf-Custom-Transaction-Id or a new Warewolf-Custom-Transaction-Id.
- Object assign tool can now deserialize json arrays
- Numbers starting with "0." are no longer converted to strings
- Numbers ending in 0 are no longer converted to strings
- When assigning values in Object assign tool, do not lose type information
- DsfNumberFormatActivity should always save strings
- Removed a field IsGate from activities as the studio was failing to load them ~ Workflows created on previous versions of Warewolf after 2.3.1 and before 2.4.3 are affected.
- Gate Tool - ability to retry sections of a workflow
- Redis Cache Tool - Cache another tools outputs
- Redis Cache Delete Tool - delete a cache entry by name
- Queue Trigger View does not show scrollbars when on a smaller screen
- RabbitMQ error was not posting to Dead Letter Queue
- Failures on execution were not being posted to the trigger queue execution history
- Double restart of the trigger when changes are saved.
- Connection errors when the QueueWorker communicated with the Logger.
- Queue Trigger View does not show scrollbars when on a smaller screen