Commit graph

296 commits

Author SHA1 Message Date
Sipke Schoorstra 018b3a3672 Fix flowchart not completing when using explicit WaitAny joins 2023-09-08 21:15:40 +02:00
Sipke Schoorstra 003bf4e335 Fix output accessors and add tests 2023-09-06 22:57:01 +02:00
Sipke Schoorstra 69744bd63c Fix naming collision between workflow input and activity input 2023-09-06 13:50:08 +02:00
Sipke Schoorstra 45d194125d
Remove WorkflowStateStore (#4374)
* Remove WorkflowStateStore and use WorkflowInstanceStore instead

* Delete RunningWorkflows actor

* Cleanup
2023-08-30 15:42:16 +02:00
Sipke Schoorstra b3e0c0064c Fix sample and test 2023-08-28 22:44:43 +02:00
Sipke Schoorstra ca25b78457
Fix Break behavior (#4365)
* Fix Break behavior

* Ensure removal of completion callbacks
2023-08-26 01:11:10 +02:00
Sipke Schoorstra 4d37c2a1da
Fix Default Workflow Runtime Race condition (#4362)
* Refactor Telnyx activities to use instance ID for correlating events

* Ensure SetVariable sets value in correct scope

* Fix race condition between new instances that are being resumed

* Fix tests
2023-08-24 21:41:45 +02:00
Sipke Schoorstra 46c9a76259 Move input accessors to Jint service to control order 2023-08-22 14:59:31 +02:00
Sipke Schoorstra 7c99037de2
EF Core NoTracking (#4323)
* Use NoTracking for EF Core

* Use Activity ID as Node ID for modern tooling

* Fix DispatchWorkflow activity

* Update tests and remove redundant ToolVersion
2023-08-12 16:41:16 +02:00
Sipke Schoorstra 265434b651
Update output selector with support for activity instances (#4307)
* Update output selector with support for activity instances

* Update tests
2023-08-10 00:20:30 +02:00
Sipke Schoorstra 166e11c416
Fix loss of source file + line number (#4293)
Fixes #4287
2023-08-06 20:55:24 +02:00
Sipke Schoorstra 911d13d31c Fix component test project reference 2023-08-05 10:40:09 +02:00
Sipke Schoorstra 815b544f53 Update Flowchart completion logic
In addition to taking into account scheduled work, also check if there are actual activity instances still running
2023-08-04 11:45:07 +02:00
Sipke Schoorstra e1784f7f6c Rename GetVariableByName to GetVariable and increase XML coverage 2023-07-31 20:03:41 +02:00
gurkanguran d29df110d2
Fixed getting and setting variables in context (#4267)
* Fixed getting and setting variables in context

* Added unit tests

* Add test for named variable

* Search variable in parent contexts

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-07-31 18:53:50 +02:00
Sipke Schoorstra d31934e9bf Remove unused namespace imports 2023-07-14 19:40:09 +02:00
gurkanguran 90e560bc73
Redis proto cluster member store (#4241)
* Implemented redis as a proto cluster member store

* Added component tests for redis protocluster member store

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-07-14 19:29:43 +02:00
Sipke Schoorstra 9671d85013 Cleanup namespaces 2023-07-09 14:02:41 +02:00
Sipke Schoorstra fe2a897a30 Restructure models in Workflows.Core 2023-07-09 13:12:13 +02:00
Sipke Schoorstra 466c4b922e Fix tests, remove named variables
Only reference variables by C# reference or reference ID
2023-07-03 21:31:03 +02:00
Sipke Schoorstra b356cdb52b
Refactor connection model (#4146) 2023-06-18 14:32:48 +02:00
Sipke Schoorstra c216185c5e
Update Workflow model with support for Inputs, Outputs and Outcomes (#4112)
* Fix mutable prop changes warning

* Fix graph no longer scrolling to content

* Remove unused namespace imports

* Update Workflow model with support for input, output and outcomes

* Update sample with EF core persistence

* Rename FluentStorage to BlobStorage
2023-06-08 11:39:19 +02:00
Sipke Schoorstra 0bb2ddcfee
Support sub-workflow dependency handling of JSON workflows (#4098)
* Change "Usable as Activity" setting into checkbox

* Update client model

* Update query to use shadow property

* Update UsableAsActivity usages

* Implement staged provisioning of workflows

* Add tests

* Update migrations
2023-06-03 12:28:10 +02:00
Sipke Schoorstra a7f4aac97b Add tests for workflow result variable 2023-04-28 15:16:09 +02:00
Sipke Schoorstra a67361c6ae Fix variable type serialization 2023-04-28 14:31:38 +02:00
Sipke Schoorstra 316d35e796 Remove unused code 2023-04-28 11:42:36 +02:00
Sipke Schoorstra 5d766e921b Merge remote-tracking branch 'origin/v3' into v3 2023-04-28 11:38:13 +02:00
Sipke Schoorstra 885119c768 Add events for ActivityExecuting and ActivityExecuted 2023-04-28 11:37:01 +02:00
herblinernexxbizz a0bdf45851
Features/fix serialization issues (#3966)
* run locally

* commit created test

* updated test

* Island

* Commented code

* creating tests

* upodate tests

* revert

* create working tests

* fix test roundtrip Jobject

* update tests

* finish tests

* create branch without getdefinition by keys

* move test files add @

* Special properties deserialization test

* refactor tests make it shorter

* clean PolymorphicObjectConverter

* rename properties

* Escape keys starting with reserved symbols

* Fix fix of converter

* Add newline normalization

* Minor cleanup and handling nullability warnings

* compact tests

---------

Co-authored-by: Marius Vasile Vușcan <marius.vuscan@nexxbiz.io>
Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-04-28 10:29:06 +02:00
Sipke Schoorstra b5f1d53e33 Fix named variable issue
Fixes an issue when referencing variables not previously set in higher scope.
2023-04-24 14:30:13 +02:00
Sipke Schoorstra 10c5d0c848 Fix serialization bug and update AllInOne reference app with support for webhooks 2023-04-24 13:44:34 +02:00
Sipke Schoorstra 285feea5b1 Update tests 2023-04-22 00:01:37 +02:00
Sipke Schoorstra 3eb304e1ec
Fix flowchart completion bug (#3928)
* Ensure Flowchart completes when no more work

* Fix workflow instance JSON serializer

* Add tests that cover flowchart completion
2023-04-18 21:28:23 +02:00
Sipke Schoorstra c3ed7e7865
Improve JSON serializationfor workflow state (#3913)
* Incremental work on WorkflowStateSerializer

* Update Flow HTTP Request activity to default to Done outcome

* Fix reference handling

* Fix polymorphic object converter

* Add comments

* Add support for registering type alias during DI setup via options

* Fix trigger and bookmark payload persistence

* Update sample model

* Add support for custom dictionary types

* Split general serializer options provider into focused serializer services

* Formatting

* Update migrations
2023-04-17 00:11:58 +02:00
Sipke Schoorstra 7a09944732
Refactor scheduling and background activity execution (#3884)
* Refactor background activity execution

* Refactor scheduler

* Remove Jobs module

* Add XML comments
2023-04-09 23:35:32 +02:00
Sipke Schoorstra 5331476081 Add support for implicit looping constructs
Fixes the issue where a workflow would not complete, even though all flow chart activities executed
2023-04-06 22:37:53 +02:00
MariusVuscanNx 45f27f91f5
Import publish execute integration test (#3872)
* Import publish execute integration test

* Update test

* Extracted import logic into WorkflowDefinitionImporter

* Removed the WorkflowDefinitionRequest model and done a model rename

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-04-05 19:07:04 +02:00
herblinernexxbizz ef1ec1ed08
Features/v3 test setvar getvar (#3870)
* adding set var and main/sub workflow tests

* Deprecate SetWorkflowOutput and replace with SetOutput

* cleanup code

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-04-04 08:18:54 +02:00
herblinernexxbizz dd919a4000
adding set var and main/sub workflow tests (#3855)
* Adding set var and main/sub workflow tests

* Deprecate SetWorkflowOutput and replace with SetOutput

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-04-03 14:14:39 +02:00
Sipke Schoorstra cebf6f12e3 Add integration test for reading composite activity output 2023-03-24 22:25:48 +01:00
gurkanguran e4789cf85b
Reference variable with Id instead of Name to prevent issues with updating name (#3814)
* Implemented Id property for variable for memory reference

* Removed debugger

* Fixed the issue with memory block reference of variable

* Fixed infinite recursive calling issue

* Handle variables with ID already containing

* Update JS variable getters based on declared variables

* Prevent Export from including composite roots

* Update JS evaluator with support for reading and writing variables in scope

* Fix polymorphic converter with support for arrays

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-03-22 22:50:26 +01:00
Sipke Schoorstra fad27d0fb0
Refactor composite activity input and scoped memory (#3815)
* Incremental work

* Enable control over when to include full compositie root

* Cleanup

* Update WorkflowDefinitionActivity

* Implement input as variables

* Delete unused class

* Remove less common types

* Rename ExpandoObject to JSON

* Implement variable scoping

* Remove parent/child relationship from MemoryRegister

* Add support for sending input to "trigger event" endpoint

* Add support for configuring input storage driver

* Remove unused namespace imports

* Auto-register activity types when running a workflow

* Fix missing variables from containers
2023-03-20 19:55:11 +01:00
Sipke Schoorstra 3128838fee Update tests 2023-03-09 14:49:40 +01:00
Sipke Schoorstra d52bf593dd Remove unused namespace imports 2023-03-09 14:49:31 +01:00
Sipke Schoorstra 1a713b4619
Rename "services" to "contracts" and "implementations" to "services" (#3758) 2023-03-03 22:47:23 +01:00
Sipke Schoorstra 00bd3228f6 Restructure contracts vs services namespace 2023-03-03 14:48:05 +01:00
Sipke Schoorstra 9a23d82916 Fix test project 2023-03-03 10:40:53 +01:00
Sipke Schoorstra 9a31d10b04 Merge branch 'v3-composite-activity-input-evaluation-so' into v3 2023-03-03 10:35:56 +01:00
Sipke Schoorstra c2ce3ce1d0 Fix test projects 2023-03-02 21:35:37 +01:00
Sipke Schoorstra 1e407a9f70
Fix cyclic input argument evaluation (#3755)
* Prevent stack overflow when evaluating input arguments

* Shuffle test folders
2023-03-02 21:21:50 +01:00