This is the multi-page printable view of this section. Click here to print.
Releases
Serverless Workflow Java SDK 7.0.0-alpha1
Announcing the Release of Serverless Workflow Java SDK 7.0.0-alpha1
Hello, Serverless Workflow community!
We’re excited to announce the release of the latest Java SDK, version 7.0.0-alpha1, now compatible with the upcoming Serverless Workflow Specification 1.0.0. You can dive right in by using one of the examples available in the specification repository. Here’s a quick example to get you started:
// Make sure simple.yaml is in your src/main/resources folder
try (InputStream in = new FileInputStream("simple.yaml")) {
Workflow workflow = WorkflowReader.readWorkflow (in, WorkflowFormat.YAML);
// Once you have the Workflow instance, you can use its API to inspect it
}
To install the SDK, simply add it as a dependency to your Maven project:
<dependency>
<groupId>io.serverlessworkflow</groupId>
<artifactId>serverlessworkflow-api</artifactId>
<version>7.0.0-alpha1</version>
</dependency>
With this release, the Java SDK fully supports serializing and deserializing workflows according to the new specification version.
We’re also thrilled to share that new features are in the pipeline, and we’ll be releasing another alpha version soon. You can track our progress towards the 7.0.0.Final version here.
Previous Versions and Support for the Specification 0.8
As we move forward, if you encounter any issues with the 5.x series, which supports Specification 0.8, please open an issue in our repository so we can track it. While we may release patch versions to address critical issues, please note that no new features will be added, and our resources for maintaining this branch are limited.
For those interested in contributing to the 6.x series, which supports the legacy 0.9 version of the specification, we welcome your efforts. However, we want to emphasize that our primary focus and resources are dedicated to the new 1.0.0 specification, which aligns with the 7.x stream of the Java SDK.
Happy coding!
Serverless Workflow TypeScript SDK Legacy
Announcing the Legacy Branch & release for Serverless Workflow TypeScript SDK
Hello, Serverless Workflow community!
I’m excited to share some important updates regarding the TypeScript SDK for the Serverless Workflow specification. As many of you know, our specification underwent a significant rewrite after version 0.9, culminating in the anticipated release of version 1.0.0-alpha. This update will bring many improvements and changes, aligning the spec with the latest needs and trends in serverless architectures.
Introducing the Legacy Branch
For those of you who have been working with version 0.9 of the spec and wish to continue using it, we’ve created a legacy branch in our GitHub repository. This branch is for developers who want to maintain the older version, even though our organization will not officially support it moving forward.
You can find the legacy branch here: Serverless Workflow TypeScript SDK - Legacy spec 0.9 Branch
NPM Package for the Legacy Version
The legacy branch is published under the previously erroneous organization name @severlessworkflow
. This package is available for those needing the older version for compatibility reasons and is aligned with version 0.9 of the specification.
To install the legacy package, you can use:
npm install @severlessworkflow/sdk-typescript@4.0.0-rc1
This package will retain the older naming and organizational structure to maintain backward compatibility for existing projects.
Upcoming Packages with Correct Naming
Moving forward, all new packages will be released under the correct (organization) name @serverlessworkflow/sdk
. This change not only corrects a previous error but also aligns with the updated versioning of the spec.
The version 1.0.0-alpha is still a work in progress. It will be released once it is ready and will feature all the enhancements and updates introduced with the rewritten specification.
Why This Matters
These changes ensure consistency and alignment with our community’s expectations and standards. Maintaining a legacy branch provides a bridge for developers needing more time to transition to the new specification. At the same time, the correct naming and versioning for new packages help streamline our offerings and reduce confusion.
Moving Forward
We encourage all developers to explore the new features and improvements of the upcoming SDK version once it is released. For those who need to stick with the older version for now, the legacy branch is there for your convenience.
Thank you for your continued support and contributions to the Serverless Workflow community. As always, your feedback is invaluable, and we look forward to hearing your thoughts on these changes.
Happy coding!
Serverless Workflow 1.0.0-alpha1
Exciting News! Serverless Workflow DSL v1.0.0-alpha1 Released!
We’re thrilled to announce the release of Serverless Workflow DSL version 1.0.0-alpha1! This is a major milestone, introducing numerous features and a significant refactor to simplify and enhance the DSL.
What’s New?
- Total Refactor: Overhauled grammar and semantics.
- Unified Descriptive Properties: Now at the document top level with a new namespace property. Addresses #838
- Improved JSON Pointers: Complex objects now use maps instead of arrays. Addresses #831
- Referencable Workflow Components: Eliminates cumbersome ‘oneOf’ definitions. Partially addresses #691
- Unified Task Concept: Merged state and action into task.
- Flow Directives: Merged end and transition into flow directives. Addresses #684
- Simplified Compensation: Designed via task branching/chaining.
- Composite Tasks: Support for nested tasks. Addresses #413
- Flexible Function Calls: Supports HTTP, GRPC, OpenAPI, and AsyncAPI. Addresses #828
- Custom Processes: Run containers, shell commands, scripts, or workflows.
- Execution Strategies: Sequential and concurrent task execution modes.
- Fault Tolerance: Use try tasks to catch and handle errors.
- Retry Policy: Retry on specific errors. Addresses #681 and #772
- Timeouts: Define durations to raise timeout errors.
- Error Handling: Raise and manage errors effectively. Addresses #771
- Gherkin Features: For conformance testing and Behavior Driven Design (BDD). Addresses #324
- Concurrent Event Correlations: Enhanced event handling. Addresses #679 and #680
- Extensions: Extend and override the DSL without writing code.
This release aims to be the final version with breaking changes before the stable Serverless Workflow DSL 1.0.0 release.
Check out the full details and start exploring the new features today!