Releases: elsa-workflows/elsa-core
3.3.0 RC7
What's Changed
- Refactor JsonWorkflowStateSerializer to improve performance by @sfmskywalker in #6272
- Fix performance issue with LocalWorkflowRuntime by @sfmskywalker in #6281
- Update workflow creation to use async commit method by @sfmskywalker in #6282
- Refactor array type handling in variable and JSON converters by @sfmskywalker in #6283
- Implemented name filter to workflow instance filter and added case insensitivity to searching definitions and instances by name by @LarsNijholt in #6276
- Enable customizable Hangfire job storage and deprecate obsolete APIs. by @sfmskywalker in #6284
New Contributors
- @LarsNijholt made their first contribution in #6276
Full Changelog: 3.3.0-rc6...3.3.0-rc7
3.3.0 RC6
What's Changed
- Handle exceptions in variable loading and fix type checking. by @sfmskywalker in #6256
- Fix #6251 by @sfmskywalker in #6259
- Fix #6258 by @sfmskywalker in #6260
Full Changelog: 3.3.0-rc5...3.3.0-rc6
3.3.0 RC5
What's Changed
- Call async methods when in an async method by @SergerGood in #6218
- Drop .NET 6 Support by @sfmskywalker in #6233
- Added example of perfomance test by @SergerGood in #6244
- Add support for ExpandoObject deserialization in ObjectConverter by @sfmskywalker in #6248
New Contributors
- @SergerGood made their first contribution in #6218
Full Changelog: 3.3.0-rc4...3.3.0-rc5
3.3.0 RC4
What's Changed
- Fix: Resolve Python.Runtime.BadPythonDllException in Elsa.ServerAndStudio.Web by @amirhaghajani in #6151
- fix JavaScript BigInt mapping to BigInteger serialization incorrect by @fanslead in #6164
- Enhance Multitenancy with Runtime Tenant Management and Task Handling by @sfmskywalker in #6173
- Fix JS Variable Setting Bug in Workflow Variable Sync Logic by @sfmskywalker in #6175
- Fix route data handling by @sfmskywalker in #6176
- Refactor and reorganize Workflow Storage modules. by @sfmskywalker in #6177
- Add synthetic properties to JS engine for exclusion by @sfmskywalker in #6178
- Introduce job unscheduling functionality by @sfmskywalker in #6183
- Fix race condition and add rate limiting to bookmark queue processing by @sfmskywalker in #6187
- Add schema registry support to Kafka module by @sfmskywalker in #6190
- Add TenantId to RunTaskWebhookPayload by @sfmskywalker in #6191
- Persist workflow variables during background execution. by @sfmskywalker in #6195
- Add .NET 9.0 target by @Suchiman in #6186
- Fix C# Script race conditino by @Suchiman in #6192
- Fix Primitive Collection serialization by @Suchiman in #6157
- [Feat: OTEL + Tenants] : Add TenantId Property to Span by @jdevillard in #6083
- Fix Quartz scheduler implementation by @sfmskywalker in #6200
- Introduce the possibility to exclude variable value retrieval for certain storage drivers by @MariusVuscanNx in #6201
- Disable activity state filtering temporarily. by @sfmskywalker in #6202
- Fixed variable value retrieval by @MariusVuscanNx in #6204
- Add concurrency locks to DefaultTenantService operations by @sfmskywalker in #6205
- Regenerate EF Core migrations for 3.2 compat by @sfmskywalker in #6206
- Improve variable parsing with error handling and logging by @sfmskywalker in #6207
- Fixed issues where the outputs of a background activity will not be mapped by @MariusVuscanNx in #6209
- Refactor variable handling in storage driver logic by @sfmskywalker in #6210
- Retention: Add sweep interval to feature configuration by @Sverre-W in #6208
- Retention: Allow to define cleanup strategy for workflow instances by @Sverre-W in #6211
- Refactor activity cancellation and bookmark handling. by @sfmskywalker in #6213
New Contributors
- @amirhaghajani made their first contribution in #6151
- @fanslead made their first contribution in #6164
Full Changelog: 3.3.0-rc3...3.3.0-rc4
What's Changed
- Fix: Resolve Python.Runtime.BadPythonDllException in Elsa.ServerAndStudio.Web by @amirhaghajani in #6151
- fix JavaScript BigInt mapping to BigInteger serialization incorrect by @fanslead in #6164
- Enhance Multitenancy with Runtime Tenant Management and Task Handling by @sfmskywalker in #6173
- Fix JS Variable Setting Bug in Workflow Variable Sync Logic by @sfmskywalker in #6175
- Fix route data handling by @sfmskywalker in #6176
- Refactor and reorganize Workflow Storage modules. by @sfmskywalker in #6177
- Add synthetic properties to JS engine for exclusion by @sfmskywalker in #6178
- Introduce job unscheduling functionality by @sfmskywalker in #6183
- Fix race condition and add rate limiting to bookmark queue processing by @sfmskywalker in #6187
- Add schema registry support to Kafka module by @sfmskywalker in #6190
- Add TenantId to RunTaskWebhookPayload by @sfmskywalker in #6191
- Persist workflow variables during background execution. by @sfmskywalker in #6195
- Add .NET 9.0 target by @Suchiman in #6186
- Fix C# Script race conditino by @Suchiman in #6192
- Fix Primitive Collection serialization by @Suchiman in #6157
- [Feat: OTEL + Tenants] : Add TenantId Property to Span by @jdevillard in #6083
- Fix Quartz scheduler implementation by @sfmskywalker in #6200
- Introduce the possibility to exclude variable value retrieval for certain storage drivers by @MariusVuscanNx in #6201
- Disable activity state filtering temporarily. by @sfmskywalker in #6202
- Fixed variable value retrieval by @MariusVuscanNx in #6204
- Add concurrency locks to DefaultTenantService operations by @sfmskywalker in #6205
- Regenerate EF Core migrations for 3.2 compat by @sfmskywalker in #6206
- Improve variable parsing with error handling and logging by @sfmskywalker in #6207
- Fixed issues where the outputs of a background activity will not be mapped by @MariusVuscanNx in #6209
- Refactor variable handling in storage driver logic by @sfmskywalker in #6210
- Retention: Add sweep interval to feature configuration by @Sverre-W in #6208
- Retention: Allow to define cleanup strategy for workflow instances by @Sverre-W in #6211
- Refactor activity cancellation and bookmark handling. by @sfmskywalker in #6213
- Fix for #6082 - dropdowns are not populated for inputs without UIHints by @mathijs-dumon in #6217
New Contributors
- @amirhaghajani made their first contribution in #6151
- @fanslead made their first contribution in #6164
- @mathijs-dumon made their first contribution in #6217
Full Changelog: 3.3.0-rc3...3.3.0-rc4
3.3.0 RC3
What's Changed
- Add Variable Name Validation and Wrapper Control by @sfmskywalker in #6117
- Introducing Elsa Guru on Gurubase.io by @kursataktas in #6118
- Fix all broken summary xml docs by @AlmightyLks in #6123
- Add Elsa.Kafka Module for Kafka Integration with Message Sending and Receiving Activities by @sfmskywalker in #6108
- Fix workflow definition finder by @sfmskywalker in #6124
- Filter workflow summaries by latest version by @sfmskywalker in #6132
- Add ExecuteWorkflow activity by @sfmskywalker in #6134
- Refactor connection traversal to use visitedConnections set by @sfmskywalker in #6138
- Update Kafka Module: Add Support for Configuring Consumer and Producer Factories by @sfmskywalker in #6139
- Refactor URL trimming logic in HTTP endpoint handlers by @sfmskywalker in #6141
- Cache CSharp scripts by @Suchiman in #6130
- Fix Tenant ID propagation for Proto.Actor runtime by @sfmskywalker in #6142
- Fix Tenant ID propagation for MassTransit by @sfmskywalker in #6144
- Fix Serialization of generic types including collections by @Suchiman in #6148
- ExecuteWorkflow Activity: Add Wait For Completion option by @sfmskywalker in #6153
- Implement Dynamic Expression Evaluation for Log Persistence Mode by @sfmskywalker in #6159
- Kafka: Update ProduceMessage activity with support for specifying a Key by @sfmskywalker in #6166
New Contributors
- @kursataktas made their first contribution in #6118
- @AlmightyLks made their first contribution in #6123
Full Changelog: 3.3.0-rc2...3.3.0-rc3
What's Changed
- Add Variable Name Validation and Wrapper Control by @sfmskywalker in #6117
- Introducing Elsa Guru on Gurubase.io by @kursataktas in #6118
- Fix all broken summary xml docs by @AlmightyLks in #6123
- Add Elsa.Kafka Module for Kafka Integration with Message Sending and Receiving Activities by @sfmskywalker in #6108
- Fix workflow definition finder by @sfmskywalker in #6124
- Filter workflow summaries by latest version by @sfmskywalker in #6132
- Add ExecuteWorkflow activity by @sfmskywalker in #6134
- Refactor connection traversal to use visitedConnections set by @sfmskywalker in #6138
- Update Kafka Module: Add Support for Configuring Consumer and Producer Factories by @sfmskywalker in #6139
- Refactor URL trimming logic in HTTP endpoint handlers by @sfmskywalker in #6141
- Cache CSharp scripts by @Suchiman in #6130
- Fix Tenant ID propagation for Proto.Actor runtime by @sfmskywalker in #6142
- Fix Tenant ID propagation for MassTransit by @sfmskywalker in #6144
- Fix Serialization of generic types including collections by @Suchiman in #6148
- ExecuteWorkflow Activity: Add Wait For Completion option by @sfmskywalker in #6153
- Implement Dynamic Expression Evaluation for Log Persistence Mode by @sfmskywalker in #6159
- Kafka: Update ProduceMessage activity with support for specifying a Key by @sfmskywalker in #6166
New Contributors
- @kursataktas made their first contribution in #6118
- @AlmightyLks made their first contribution in #6123
Full Changelog: 3.3.0-rc2...3.3.0-rc3
3.3.0 RC2
What's Changed
- Updated refit - High vulnerability fix by @MariusVuscanNx in #6098
- fix: fix ITasksApi refit contract in Elsa.Api.Client by @cfgiugliano in #6102
- Keep Published Workflows Immutable by Updating Drafts Instead by @sfmskywalker in #6106
- Undo Migrations reset by @Suchiman in #6105
- Remove unused classes by @Suchiman in #6104
- Fix hangfire resume workflow by @sNakiex in #6097
- Add services and API endpoints to read and write workflow instance variables by @sfmskywalker in #6107
- Add configuration actions for DbContext options builders by @sfmskywalker in #6110
Full Changelog: 3.3.0-rc1...3.3.0-rc2
3.3.0-rc1
What's Changed
- Refactor Workflow Runtimes by @sfmskywalker in #5444
- Multitenancy by @sfmskywalker in #5159
- Flowchart variables are not serialized by FlowchartJsonConverter by @bobhauser in #5533
- Allow user to use DbContext pooling with Quartz by @MariusVuscanNx in #5625
- Register scheduler as singleton to avoid multiple starts of same task by @4lexKislitsyn in #5687
- fix(multitenancy): add missing TenantAgnostic flag to trigger store by @jeanbaptistedalle in #5689
- Respect Timeout and FailedToConnect in SendHttpRequestActivityResolver by @cschulznethaus in #5632
- Fixing some analyzer warnings by @lahma in #5617
- EF Core Oracle provider by @benjamin-hui in #5637
- Use database name from options when specified by @4lexKislitsyn in #5634
- feat: Modify the access level of FlowScope type and add Remove to specify the activity method by @Nokecy in #5752
- Add Bookmark Queue and Restore Background Activity Execution by @sfmskywalker in #5758
- Enable Proto Actor Tracing for TraceLens by @sfmskywalker in #5800
- Replace custom webhooks implementation with WebhooksCore by @sfmskywalker in #5811
- Add OpenTelemetry module by @sfmskywalker in #5810
- Drop NET 7 support and cleanup NuGet package references by @lahma in #5828
- Proto.Actor implementation for ChangeTokenSignalPublisher by @sfmskywalker in #5817
- Upgrade to Jint 4 by @lahma in #5834
- Add Orchard Core Integration + Agents Module by @sfmskywalker in #5871
- Fix background activity completion by @sfmskywalker in #5882
- [Fix] Replace "bundles" with "apps" in the content of README.md to al⦠by @zergmk2 in #5885
- [Fix] DropIns Hosted Service File System Watcher by @RenatoCapelo in #5892
- Modified POST Execute API to Display Body in Swagger and Fixed Type-Casting Error in GET Execute API by @cvijayak in #5858
- Added support to retrieve the workflow details through Liquid script by @cvijayak in #5909
- Fix NullReferenceException when parsing the HttpResponse in the SendHttpRequestbase by @gamaSantos in #5930
- Set event payload when event bookmark resumes by @JaFonz in #5934
- Add Variable available in dropdown when configuring a activity input by @jdevillard in #5918
- Add Agents Module with Semantic Kernel Integration by @sfmskywalker in #5937
- Bump actions/download-artifact from 3 to 4.1.7 in /.github/workflows by @dependabot in #5941
- Fix : Change to parameter after update to Elsa.Studio packages to version 3.3.0-preview.524 by @jdevillard in #5945
- Enh/5943 DropIns - Prevention of File Locks and Unloading by @RenatoCapelo in #5944
- [chore] Update upload-artifact major version for CI by @jdevillard in #5947
- Simplify Workflow Variables with JS by @sfmskywalker in #5946
- Remove obsolete package MassTransit.Extensions.DependencyInjection by @DnikitaA in #5955
- Upgrade to NUKE 8.1 by @lahma in #5952
- Secrets API by @sfmskywalker in #5967
- Upgrade Quartz and some warning fixes by @lahma in #5949
- Implement Activity State Filtering and JavaScript Integration by @sfmskywalker in #5993
- fix: issue fixed for triggering correct workflow definition versionId by @sagargolu in #5979
- feat: add ITasksApi to Elsa.Api.Client by @cfgiugliano in #5995
- feat: register ITasksApi in AddDefaultApiClients by @cfgiugliano in #5999
- Fix: missing tenantAgnostic parameter passing by @yusianglin11010 in #6002
- Enhance logging by adding logger state to activity and workflow pipelines by @bobhauser in #5985
- Update System.Text.Json version reference by @sfmskywalker in #6019
- Refactor Tenant Resolution to Use Async Local Storage for Operation-wide Access by @sfmskywalker in #6022
- Bump System.Text.Json from 7.0.4 to 8.0.5 in /build by @dependabot in #6021
- Add db providers for secrets features by @jdevillard in #6020
- Implement multitenant HTTP routing by @sfmskywalker in #6031
- Improved multitenancy support for HTTP workflows with per-tenant DbContext by @sfmskywalker in #6032
- Manually register SerializedKeyValuePair.Key to BsonClassMap to prevent index creation failure by @yusianglin11010 in #6036
- Add Functionality to Copy Entire Path from HTTP Endpoint Activity #133 by @abhishekp21 in #6037
- Add missing DefaultHttpEndpointBasePathProvider registeration by @yusianglin11010 in #6040
- Add JsonNode BSON serializer by @sfmskywalker in #6043
- Enhance error handling in
PolymorphicObjectConverter
by @sfmskywalker in #6051 - Fix Bulk Dispatch Missing Input by @sfmskywalker in #6052
- Include $schema when exporting workflow definition by @sfmskywalker in #6056
- Introduce Log Persistence Strategy by @sfmskywalker in #6057
- Update packages by @sfmskywalker in #6058
- Add multitenancy support for background tasks by @sfmskywalker in #6059
- Retention Module by @Sverre-W in #5344
- Refactor JS expressions for accessing secrets by @sfmskywalker in #6070
- Refactor FormUrlEncodedHttpContentFactory for better flexibility by @sfmskywalker in #6074
- Add workflow cancellation notifications by @sfmskywalker in #6075
- Add workflow activation and startup services. by @sfmskywalker in #6076
- Add bookmark queue purger functionality by @sfmskywalker in #6080
- Enable CPM transitive pinning and resolve version conflicts by @lahma in #6069
New Contributors
- @bobhauser made their first contribution in #5533
- @cschulznethaus made their first contribution in #5632
- @benjamin-hui made their first contribution in #5637
- @RenatoCapelo made their first contribution in #5892
- @gamaSantos made their first contribution in #5930
- @JaFonz made their first contribution in #5934
- @DnikitaA made their first contribution in #5955
- @sagargolu made their first contribution in #5979
- @cfgiugliano made their first contribution in #5995
- @yusianglin11010 made their first contribution in #6002
- @abhishekp21 made their first contribution in #6037
Full Changelog: 3.2.1...3.3.0-rc1
3.2.3
π¨ Elsa 3.2.3 Patch Release - Security Update
We are releasing Elsa 3.2.3 as an urgent security patch. A critical vulnerability was discovered in the real-time workflow functionality that necessitates immediate action.
Summary
This patch addresses a security vulnerability related to real-time workflow updates via SignalR. To mitigate this issue, we recommend updating your Elsa Workflow Server project.
In the mean time, and or if you are not ready to upgrade, make the following changes:
Action Required
Open your Elsa Workflow Server project.
Locate and comment out the following lines of code:
elsa.UseRealTimeWorkflows();
app.UseWorkflowsSignalRHubs();
By commenting out these lines, you will disable the real-time workflow updates and prevent potential exploits until a permanent fix is available.
Important Note
Elsa Studio will remain functionally operational, as it will fall back to a polling mechanism instead of realtime updates via SignalR.
We strongly urge all developers to apply this patch and take the necessary measures as outlined above to secure their applications.
Full Changelog: 3.2.2...3.2.3
3.2.2
What's Changed
- Add JsonNode BSON serializer by @sfmskywalker in #6043
- Include $schema when exporting workflow definition by @sfmskywalker in #6056
Full Changelog: 3.2.1...3.2.2
3.2.1
What's Changed
- Fix variable serialization by @sfmskywalker in #5974
- Fix Azure Service Bus module DI issues by @sfmskywalker in #5975
- Add endpoints for activity execution records and summaries by @sfmskywalker in #6018
- Add MongoDB collection naming strategy by @rosca-sabina in #6005
- Register MongoDb client as singleton by @rosca-sabina in #6013
Full Changelog: 3.2.0...3.2.1