History¶
0.0.1 (2021-05-12)¶
First Release
added support for Saga Instances
Saga Actions
0.0.2 (2021-05-14)¶
Moved to Poetry
Added actions for documentation
0.0.3 (2021-05-20)¶
Added Dependency injection Container use
Completed Saga Manager
0.0.4 (2021-05-31)¶
Bugfixes
0.0.5 (2021-06-02)¶
Created SagaContext class
Documentation improvement
implemented getitem and setitem for SagaContext
0.0.6 (2021-07-06)¶
Completed the Saga process workflow implementation
Bugfixes
Completed the Compensation process
Added Reply Command to Saga process
0.0.7 (2021-07-12)¶
Added update to common
Bugfixes
0.0.8 (2021-07-23)¶
Now Sagas can be paused also on memory in addition to on disk.
Improve SagaManager API.
0.0.9 (2021-07-26)¶
Add flag to return SagaExecution instances directly from SagaManager
0.0.10 (2021-08-23)¶
Support latest
minos-microservice-commonrelease (0.1.10)Change default
SagaManagerflags to (pause_on_disk=False, raise_on_error=True, return_execution=True)Enrich failed
CommandReplyinstances with exception message.Add
SagaRequestandSagaResponse.
0.0.11 (2021-09-01)¶
Deprecate
SagaManager.runbySaganames (the new approach is to directly pass theSagainstance).Remove
namefromSagaclass.Minor improvements.
0.0.12 (2021-09-27)¶
Fix troubles related with dependency injections.
Remove file headers.
Stop using
NoReturneverywhere.
0.1.0 (2021-10-08)¶
Add
SagaStep.on_errormethod to handle errored responses.Integrate
SagaRequestandSagaResponseintoSagaOperationdefinitions.Rename
SagaStepmethods (invoke_participantason_execute,on_replyason_success,with_compensationason_failure).Enrich
SagaRequestandSagaResponseto be classes instead of simple constructor helpers.Add
CommitExecutor.Rename
LocalExecutorasExecutor,OnReplyExecutorasResponseExecutorandPublishExecutorasRequestExecutor.Simplify
SagaExceptionand heirs names.
0.1.1 (2021-10-19)¶
Add
ConditionalSagaStepandConditionalSagaStepExecutionwhich allow to define conditional logic for steps within theSagaExecution.Add
LocalSagaStepandLocalSagaStepExecutionclasses which allow to execute local functions within theSagaExecution.Improve
SagaStepandSagaStepExecutionclass hierarchy.Support dynamic
usersetup through aContextVar[Optional[UUID]]variable.Add
userpropagation fromSagaManagertoRequestExecutor.Improve
SagaContextbehaviour, allowing to dynamically change field types and also delete them as in anydictinstance.
0.2.0 (2021-11-08)¶
Add compatibility to
minos-microservice-common>=0.2.0.
0.3.0 (2021-11-15)¶
Add
SagaServiceclass (containing the reply handling logic).Add
transactional_commandmiddleware (to extend the saga transactionality to remote steps).Add
TransactionCommitterclass with the responsibility to orchestrate the transaction commitment process of the saga.Add
minos-microservice-networksandminos-microservice-aggregateas dependencies.Be compatible with
minos-microservice-common=^0.3.0Integrate
minos.aggregate.transactionintoExecutor.Replace
reply: CommandReplybyresponse: SagaResponse.Store
service_name: stras part ofSagaStepExecutionmetadata.Deprecate callback argument on
Saga.commitmethod in favor ofSaga.local_step.
0.3.1 (2021-11-17)¶
Improve integration between
ConditionalSagaStepandTransactionCommitterAdd
SagaExecution.commit(...)andSagaExecution.reject(...)methods andautocommit: boolandautoreject: boolintoSagaExecution.execute(...)andSagaExecution.rollback(...)methods respectively.Fix concurrent blocks related with a limited amount of
minos.networks.DynamicHandlerinstances on theminos.networks.DynamicHandlerPool.
0.3.2 (2021-11-23)¶
Take advantage of concurrent remote broker calls to improve the
TransactionCommiterperformance.Expose
autocommit: bool = Trueargument onSagaManager.run(...)method.Add support for
minos-microservice-networks=^0.3.0.
0.3.3 (2021-11-26)¶
Fix bug related with empty
ConditionalSagaStep.from_rawand emptyelse_then.
0.3.4 (2021-11-26)¶
Fix bug related with
TransactionCommitterandConditionalSagaStepExecution.
0.3.5 (2021-11-30)¶
Fix bug related with
Transactionscopes and sub-Sagaexecutions launched fromRemoteStepcallsAdd support for
minos-microservice-network~=0.3.1.