Releases: serverlessworkflow/specification
v1.0.0-alpha5
What's Changed
- Add a new
catalogs
property to workflow resources by @cdavernas in #1022
Full Changelog: v1.0.0-alpha4...v1.0.0-alpha5
v1.0.0-alpha4
What's Changed
- Fix the schema's uri template, thus resolving critical validation issues by @matthias-pichler in #1018
Full Changelog: v1.0.0-alpha3...v1.0.0-alpha4
v1.0.0-alpha3
What's Changed
- Adding titles to oneOf and repeating names by @fjtirado in #901
- a few typo from DSL by @yzhao244 in #902
- Changes the way authentication policies can be referenced by @cdavernas in #908
- Fixes the schema to allow
input.from
,output.as
andexport.as
to be either a runtime expression string or object by @cdavernas in #907 - Adding title to switch by @fjtirado in #905
- Expel member for breaching Code of Conduct by @cdavernas in #918
- Fix port schema by @matthias-pichler in #924
- Fix switch schema by @matthias-pichler in #922
- Add titles to tasks by @matthias-pichler in #919
- Fix
run
task documentation by @yzhao244 in #920 - Add Yuri Zhao and Francisco Javier Tirado Sarti as contributors by @cdavernas in #935
- Fix typo RunWokflow by @zolero in #925
- Fix CTK link by @cdavernas in #941
- Fix output examples from dsl reference and ctk feature by @yzhao244 in #936
- Allow runtime-expressions for formatted strings by @matthias-pichler in #938
- Adding missing titles for better pojo generation by @fjtirado in #944
- Restrict extra props by @matthias-pichler in #928
- Create SECURITY.md by @cdavernas in #947
- Fix README.md Badges by @cdavernas in #946
- Remove duplicate uri scheme from error types by @matthias-pichler in #957
- Specify task and workflow arguments by @matthias-pichler in #953
- Document limited uri-template support by @matthias-pichler in #955
- Allow query parameters in call http by @matthias-pichler in #956
- Specify runtime argument by @matthias-pichler in #952
- Fixed inconsistencies between
listen
andemit
by @JBBianchi in #963 - Add a new
arguments
property to thescript
process by @cdavernas in #960 - Document Data Flow and expression context more clearly by @matthias-pichler in #958
- Add priority of constituencies by @matthias-pichler in #948
- Add
reference
property to theTaskDescriptor
object by @cdavernas in #965 - Added titles and descriptions to the DSL JSON Schema by @JBBianchi in #968
- Fix custom function documentation by @cdavernas in #969
- Consolidate
endpoint
andexternalResource
definitions by @JBBianchi in #975 - Extract datetime descriptor by @matthias-pichler in #974
- Fixed
call
,raise
andtry
features by @cdavernas in #984 - Refactor OAuth2 and add OIDC authentication policy by @cdavernas in #973
- [NO-ISSUE] Fix: Change CI to always kick validation by @ricardozanini in #986
- Document the difference between an event-driven schedule and a startup listen task by @cdavernas in #987
- Add use cases and examples by @cdavernas in #988
- Add a new
metadata
property to the workflow document and to tasks by @cdavernas in #996 - Document schema validation order by @matthias-pichler in #982
- Fixed
DigestAuthenticationProperties
title in schema by @JBBianchi in #1000 - Added new reusable components and fixed unreferenceable errors and retries by @cdavernas in #1002
- Add a new property used to determine whether or not to await the execution of a process by @cdavernas in #995
- Document context of
task.if
by @matthias-pichler in #1005 - Added unevaluatedProperties false to oauth2AuthenticationProperties by @JBBianchi in #1008
- Updated schema version to 1.0.0 by @JBBianchi in #1010
- Fix #983 - Add CTK workflow features to CI/CD validation by @ricardozanini in #1014
New Contributors
Full Changelog: v1.0.0-alpha2...v1.0.0-alpha3
v1.0.0-alpha2
What's Changed
- Fix #852 - Add cache path to node CI and remove examples hydration pipeline by @ricardozanini in #861
- Fix #862 - Switch 'then' must accept free strings by @ricardozanini in #863
- Remove YAML formatting tabs by @fjtirado in #870
- change: documentation fix bearer.token property by @matthias-pichler-warrify in #865
- Fix #878 - Fix URI format in workflow schema for endpoint attribute by @ricardozanini in #879
- Fix workflow schema: change
const
, adding missingobject
; etc. by @matthias-pichler-warrify in #876 - Fix usage of endpoint in-call http tasks by @matthias-pichler-warrify in #877
- Remove reliance on key order in maps/objects by @matthias-pichler-warrify in #882
- Update maintainers by @JBBianchi in #888
- [Fix_#873] Rename output.from and output.to by @fjtirado in #892
- [Fix #873] Fixing error in export definition by @fjtirado in #896
- Make do an array by @matthias-pichler-warrify in #895
- Fix task
if
property doc by @cdavernas in #898
New Contributors
- @matthias-pichler-warrify made their first contribution in #865
Full Changelog: v1.0.0-alpha1...v1.0.0-alpha2
v1.0.0-alpha1
The version 1.0.0-alpha1
is one of the most impacting release of the history of the Serverless Workflow DSL. It aims at both drastically simplify the DSL and at completing it with many new features.
It is intended to be the last release containing breaking changes before the Serverless Workflow DSL 1.0.0
can see the day.
What's new?
- Total refactor of grammar and semantics. See motivation.
Addresses #672. - Moved all descriptive properties into the document top level property. Adds a new (required)
namespace
DNS Label property.
Addresses #838. - Complex objects use maps instead of arrays, thus enabling more intelligible JSON pointers.
Addresses #831. - All workflow components are now referencable. This allows getting rid of many cumbersome 'oneOf' definitions.
Partially addresses #691. - Merged the
state
andaction
concepts intotask
, getting rid of state nesting limitations. See tasks. - Merged
end
andtransition
into flow directives.
Addresses #684. - Got rid of the concept of compensation. Compensation can easily be designed by branching and/or chaining tasks.
- Support task nesting, thanks to composite tasks.
Addresses #413. - Allows calling functions over HTTP, GRPC, OpenAPI and AsyncAPI. See calls.
Addresses #828. - Allows running custom processes, using containers, shell commands, scripts or workflows. See processes.
- Supports both sequential and concurrent task execution modes. See execution strategy.
- Offers fault tolerance features, using try task to catch and handle errors raised during execution.
- Enables retrying on specific errors. See retry policy.
Addresses #681 and #772. - Supports timeouts, used to define a duration after which to raise a new timeout error, possibly faulting the task/workflow. See timeouts.
- Allows raising errors. See errors.
Addresses #771. - Added a serie of Gherkin features used for both conformance testing and Behavior Driven Design (BDD).
Addresses #324. - Supports concurrent event correlations.
Addresses #679 and #680. - Enables extending and overriding the DSL, in a runtime agnostic and fully portable fashion, without writting a single line of code. See extensions.
v0.9.0
What's Changed
- Fix state execution timeout
- Update rules of retries increment and multiplier properties
- Add clarification on mutually exclusive properties
- Make the resultEventRef attribute in EventRef definition not required
- Make the stateName attribute in start definition not required
- Remove id attribute from actions and states. Now, the names from both attributes must be unique within the workflow definition
- Update eventRef props to produceEventRef and consumeEventRef
- Update eventRef props to resultEventTimeout and consumeEventTimeout
- Apply fixes to auth spec schema workflow schema
- Update the dataInputSchema top-level property by supporting the assignment of a JSON schema object workflow schema
- Add the new WORKFLOW reserved keyword to workflow expressions
- Update ForEach state iteration parameter example. This parameter is an expression variable, not a JSON property
- Add the new rest function type spec doc
- Refactor error handling and retries
- Use semantic versioning to version the spec
Full Changelog: https://github.com/serverlessworkflow/specification/commits/v0.9.0
v0.8
On the behalf of the Serverless Workflow community, we are pleased to announce the v0.8 release of the specification!
Here you can find all changes and updates for this release.
Some of the most notable new features and updates in this release include:
- Added support for custom function types
- Added support for async function invocation
- Added support for action conditions
We would like to thank everyone who was involved in this release for their hard work and dedication to the Serverless Workflow project.
v0.7
On the behalf of the Serverless Workflow community, we are pleased to announce the v0.7 release of the specification!
Here you can find all changes and updates for this release.
Some of the most notable new features and updates in this release include:
- Replaced SubFlow state with subflow action type
- Added GraphQL support for function definitions
- Added OData support for function definitions
- Added AsyncAPI support for function definitions
- Added support for Secrets and Constants
- Updated workflow timeouts
- Added Workflow Auth definitions
- Added State execution timeouts
- Added Rate Limiting extension
- Adding sequential execution and batch size support for ForEach state
- Update error handling to be per-action
- Added support for continuing execution
We would like to thank everyone who was involved in this release for their hard work and dedication to the Serverless Workflow project.
v0.6
On the behalf of the Serverless Workflow community, we are pleased to announce the v0.6 release of the specification!
Here you can find all changes and updates for this release.
Some of the most notable new features and updates in this release include:
- Added compensation capabilities (SAGA)
- Added jq as default expression language
- Added ability to define custom expression language
- Made several DSL simplifications
- Added workflow execution timeout
- Updated and simplified data filters
- Added gRPC and expression type functions
- Updated the workflow start definition (now top-level property)
- Added numerous DSL comparison examples
- Added new examples
We would like to thank everyone who was involved in this release for their hard work and dedication to the Serverless Workflow project.
v0.5
On the behalf of the Serverless Workflow community, we are pleased to announce the v0.5 release of the specification!
Here you can find all changes and updates for this release.
Some of the most notable new features and updates in this release include:
- Added Java SDK
- Added Go SDK
- Added VSCode extension
- Added workflow KPI extension
- Enhanced workflow error handling and retry definitions
- Added ability to make logical decisions based on events
- Enforced use of OpenAPI for service invocations (functions)
- Added ability to produce events on transitions and end definitions
- Added scheduled workflow invocation capabilities (cron)
- Allow to externalize event, function and retry information
- Ability to define invocations of both RESTful as well as event-driven distributed services
We would like to thank everyone who was involved in this release for their hard work and dedication to the Serverless Workflow project.