Commit graph

5608 commits

Author SHA1 Message Date
Matthew Knibbs c4e04c4434 Adds SQL Activities. Includes implimentations for MS SQL Server, PostgreSql, MySql and Sqlite. 2025-01-01 23:14:09 +00:00
Matthew Knibbs f609013a79 Adds SQL UIHints handler and provider. 2025-01-01 16:46:23 +00:00
Matthew Knibbs 97a0b36122 Correct JsonEditor namesapce 2024-12-31 10:22:28 +00:00
Sipke Schoorstra c5bf6fd0e3 Switch database provider to SQLite
Updated the `DatabaseProvider` setting in `appsettings.json` from MySQL to SQLite. This change likely simplifies development or testing by using a lightweight, file-based database.
2024-12-28 20:07:50 +01:00
Sipke Schoorstra 4ed58c67e6 Enable primitive collections and refactor MySQL EF options.
Added support for primitive collections and parameterized collection translation in MySQL EF configurations. Removed redundant `EnablePrimitiveCollectionsSupport` calls in program configuration to centralize the behavior.
2024-12-28 20:06:33 +01:00
Sipke Schoorstra 021795f53a Enable MySQL primitive collections support and update configs
Add support for EF Core primitive collections in MySQL by specifying `EnablePrimitiveCollectionsSupport()` in the DbContext configuration. Updated the Docker Compose file to rename the MySQL volume and adjusted appsettings.json to include a MySQL connection string and set MySQL as the default database provider.
2024-12-28 18:56:29 +01:00
Sipke Schoorstra 470399ed21 Refine trigger replacement logic with empty check.
Added a check to avoid unnecessary operations when the removed list is empty in the ReplaceAsync method. This prevents potential redundant calls and ensures more efficient execution.
2024-12-28 18:55:28 +01:00
Sipke Schoorstra 2f1ddb4358
Merge pull request #6248 from elsa-workflows/bug/6247
Add support for ExpandoObject deserialization in ObjectConverter
2024-12-28 14:23:34 +01:00
Sipke Schoorstra 28d8f2fcee
Merge pull request #6244 from SergerGood/main
Added example of perfomance test
2024-12-28 14:15:29 +01:00
Sipke Schoorstra afa51f85fa Add support for ExpandoObject deserialization in ObjectConverter
This update enables deserialization of JSON nodes into ExpandoObject via ObjectConverter. It improves type handling and interoperability with dynamic structures.
2024-12-28 14:13:32 +01:00
Sipke Schoorstra 406975f64e Refactor BaseUrl and ApiUrl configuration handling.
Updated to use `Http:BaseUrl` for backward compatibility with `Hosting:BaseUrl`. Simplified ApiUrl construction by removing redundant configuration keys and standardizing the behavior using `ApiPrefix`.
2024-12-28 11:15:50 +01:00
Sipke Schoorstra 07c46ae5a7 Refactor configuration to use distinct ApiUrl and BaseUrl
Updated to separate ApiUrl from BaseUrl in appsettings for clarity. Modified references in _Host.cshtml and Program.cs accordingly to streamline configuration and reduce potential for errors.
2024-12-28 11:04:38 +01:00
Sipke Schoorstra 710fe87117 Update Elsa Studio package reference 2024-12-28 10:17:15 +01:00
sergergood 3e76e3efb0 Added example of perfomance test 2024-12-27 18:57:22 +03:00
Sipke Schoorstra 59e131f1a3 Set DatabaseProvider to SQLite in appsettings.json
Switched the default database provider from PostgreSQL to SQLite in the appsettings.json configuration file. This change enables the application to use SQLite for its database operations.
2024-12-26 12:02:54 +01:00
Sipke Schoorstra 62df21cbaf Make StringData property nullable in WorkflowDefinition
Updated the `StringData` property to allow null values, improving flexibility and aligning with usage scenarios where the property may not always contain a value. This change ensures better handling of optional data.
2024-12-26 11:52:36 +01:00
Sipke Schoorstra 0992404d96 Add integration test for workflow serialization
Introduce a new integration test to verify workflow serialization functionality, ensuring that newly created workflow definitions can be serialized and deserialized correctly. Adjust default nullability for certain fields in `WorkflowDefinition` to improve consistency and prevent null reference issues. Minor argument update in `New` method of `WorkflowDefinitionPublisher`.
2024-12-26 11:17:54 +01:00
Sipke Schoorstra 5f3623aa0b
Merge pull request #6233 from elsa-workflows/chore/drop_net60_update_packages
Drop .NET 6 Support
2024-12-22 10:24:47 +01:00
Sipke Schoorstra ba983e042c Refactor Directory.Packages.props for consistent formatting
Reformatted the `Directory.Packages.props` file to improve readability and ensure consistent indentation. This change has no impact on functionality but enhances maintainability and code clarity.
2024-12-22 10:06:55 +01:00
Sipke Schoorstra 76d685744d Update target frameworks and package versions to latest
Dropped .NET 6 support and upgraded projects to .NET 8 and .NET 9 frameworks. Updated several package dependencies to their latest stable or preview versions to ensure compatibility and leverage improvements.
2024-12-22 10:00:56 +01:00
Sipke Schoorstra 621c298126
Merge pull request #6218 from SergerGood/main
Call async methods when in an async method
2024-12-22 08:47:56 +01:00
Sipke Schoorstra e39f671bcc Update release types in GitHub Actions workflow
Added 'published' to the release type triggers in the packages.yml file. This ensures workflows are triggered for both prereleased and published release events.
2024-12-21 08:37:38 +01:00
Sipke Schoorstra 83ca55a68d
Merge pull request #6217 from mathijs-dumon/main
Fix for #6082 - dropdowns are not populated for inputs without UIHints
2024-12-18 18:53:50 +01:00
Sergei Khlebnikov 8583da9b5f
Merge branch 'elsa-workflows:main' into main 2024-12-16 22:58:04 +03:00
sergergood 311b792f9b Call async methods when in an async method 2024-12-16 22:57:11 +03:00
Mathijs Dumon c25ef53dcc Fix for #6082 - dropdowns are not populated for inputs without UIHints 2024-12-16 16:15:58 +01:00
Sipke Schoorstra 5d92c5760f
Merge pull request #6213 from elsa-workflows/bug/6170
Refactor activity cancellation and bookmark handling.
2024-12-14 21:09:15 +01:00
Sipke Schoorstra a1652f3f23 Refactor activity cancellation and bookmark handling.
Added logic to cancel child activities during activity cancellation. Removed redundant bookmark removal logic in the `Fork` activity for better clarity and efficiency.
2024-12-14 21:02:14 +01:00
Sipke Schoorstra 4770c21604 Refactor DispatchWorkflows tests and skip flaky test.
Removed unused workflow event handlers and simplified signal usage. Marked the flaky `DispatchAndWaitWorkflow_ShouldWaitForChildWorkflowToComplete` test for review and fixing. This improves maintainability and prepares for future test stability work.
2024-12-14 20:30:27 +01:00
Sipke Schoorstra b99c0c8412 Disable flaky test in BulkDispatchWorkflowsTests.
Commented out a test that was marked as flaky and skipped. This ensures the test suite remains reliable while the issue is addressed in the future.
2024-12-14 20:01:11 +01:00
Sipke Schoorstra a44f082dff Merge remote-tracking branch 'origin/main' 2024-12-14 19:41:05 +01:00
Sipke Schoorstra bd9e006900 Skip flaky BulkDispatchWorkflows test temporarily
The test 'DispatchAndWaitWorkflow_ShouldWaitForChildWorkflowToComplete' was marked as flaky and skipped to prevent instability in the suite. It should be revisited and fixed to ensure reliable execution.
2024-12-14 19:40:44 +01:00
Sipke Schoorstra 83ccbca0e9
Merge pull request #6211 from Sverre-W/retention-sweep-interval
Retention: Allow to define cleanup strategy for workflow instances
2024-12-14 19:36:29 +01:00
Sipke Schoorstra cb6a7dfc11 Update RabbitMQ image to version 4-management
Upgraded RabbitMQ from version 3-management to 4-management across tests and the Docker setup. This ensures compatibility with the latest features and improvements in RabbitMQ while maintaining consistency across environments.
2024-12-14 11:44:52 +01:00
Sipke Schoorstra 4793c6eac5 Refactor ProtoActor and workflow testing logic
Reorganized ProtoActor configuration to be conditionally applied based on runtime settings. Updated test workflows to simplify signal handling and improved test structure by introducing scoped dependencies and removing unused event subscriptions.
2024-12-14 09:59:29 +01:00
Sverre Winkelmans 6a91eb5130
Allow to define cleanup strategy for workflow instances 2024-12-14 12:19:21 +08:00
Sipke Schoorstra 08f7c2bf78
Merge pull request #6208 from Sverre-W/retention-sweep-interval
Retention: Add sweep interval to feature configuration
2024-12-13 15:18:48 +01:00
Sipke Schoorstra 99d48a8c42
Merge pull request #6210 from elsa-workflows/bug/object-vaiable-parsing
Refactor variable handling in storage driver logic
2024-12-13 15:17:13 +01:00
Sipke Schoorstra b9bde79638 Refactor variable handling in storage driver logic
Refactored `StorageDriverContext` to include `Variable` and updated its usage across relevant methods to ensure context accuracy. Enhanced `ObjectConverter` to support conditional deserialization of JSON objects. Adjusted `WorkflowInstanceStorageDriver` to utilize improved variable resolution with new conversion options.
2024-12-13 12:09:04 +01:00
Sipke Schoorstra ddfac5135f
Merge pull request #6209 from elsa-workflows/feature/delay
Fixed issues where the outputs of a background activity will not be mapped
2024-12-13 11:21:25 +01:00
Marius Vasile Vușcan 49715bb2a7
Fixed issues that the outputs of a background actiity to not be mapped 2024-12-13 12:18:15 +02:00
Sverre Winkelmans 7049872fa9
Add sweep interval to feature configuration
Allow users to define their own sweep interval of the cleanup job in the
Retention module
2024-12-13 10:08:25 +08:00
Sipke Schoorstra cc75bb65ea
Merge pull request #6207 from elsa-workflows/bug/6193
Improve variable parsing with error handling and logging
2024-12-12 23:10:30 +01:00
Sipke Schoorstra 2cd90ad011 Fix logging to display full variable type on parse failure
Updated the log message to use the full variable type name instead of the base type. This provides more detailed context for debugging failed variable parsing issues.
2024-12-12 23:08:48 +01:00
Sipke Schoorstra 9aed23278e Improve error message for invalid variable type cast
Updated the exception message to use the full type name of the variable, providing clearer details for debugging type compatibility issues during variable value parsing.
2024-12-12 23:06:50 +01:00
Sipke Schoorstra b1f839a517 Improve variable parsing with error handling and logging
Added `TryParseValue` method to handle parse errors gracefully and prevent crashes. Updated `VariablePersistenceManager` to log warnings when variable parsing fails, providing better debugging support and resilience during workflow execution.
2024-12-12 23:03:20 +01:00
Sipke Schoorstra ba1a381165
Merge pull request #6206 from elsa-workflows/chore/ef-migrations-update
Regenerate EF Core migrations for 3.2 compat
2024-12-12 22:28:50 +01:00
Sipke Schoorstra c3e5624321 Regenerate 3.3 EF Core migrations for backwards compat with 3.2 2024-12-12 22:24:39 +01:00
Sipke Schoorstra af3b3a0d16 Reset migrations and restore WorkflowInboxMessages DB set for backwards compatibility
Remove unused using directive in migration file

Deleted an unnecessary using statement for improved code clarity and maintainability. This cleanup has no functional impact on the migration.
2024-12-12 19:42:18 +01:00
Sipke Schoorstra 9eeed44fc2
Merge pull request #6205 from elsa-workflows/enh/thread-safe-tenant-service
Add concurrency locks to DefaultTenantService operations
2024-12-12 11:42:34 +01:00