Releases: conductor-oss/javascript-sdk
v2.3.0
📣 Event Client Introduced
This release expands the JavaScript SDK with native support for event-driven capabilities, enabling clients to work directly with events and handlers through a dedicated API.
✨ New Features
- Introduced EventClient for interacting with events
- Added methods to publish events and fetch event handlers
- Included TypeScript definitions and basic usage examples
What's Changed
- Add EventClient by @DmitryBorisov-sm in #90
- Update package.json version (2.3.0) by @DmitryBorisov-sm in #91
Full Changelog: v2.2.1...v2.3.0
v2.2.1
🚨 Backward compatibility fix - Upgrade Recommended
Retained autogenerated methods that were previously accessible via the low-level client to ensure smooth migration for existing users.
⚠️ Deprecation Notice
Direct access to resources on the raw client object is deprecated. This functionality should be accessed through facade clients, which are manually written and officially supported. Deprecated methods will be removed in future versions.
What's Changed
- Hotfix: backward compatibility for old resource autogenerated methods by @DmitryBorisov-sm in #87
- update package.json library version (2.2.1) by @DmitryBorisov-sm in #88
Full Changelog: v2.2.0...v2.2.1
v2.2.0
🔍 Overview
This release focuses on modernizing the SDK architecture, improving Node.js performance and maintainability, and introducing several developer-experience enhancements — including optional tasks, event handler metadata, HTTP/2 support, and a complete refactor of the OpenAPI integration layer.
🧩 Highlights
-
Clients enhancements
• All clients now updated to the latest Orkes API version, ensuring full compatibility with new backend endpoints and structures.
• Added support for optional tasks in workflow definitions (isOptional: true), allowing workflows to continue even if specific tasks fail or are skipped.
• Event handlers now include description and tags fields to improve organization and discoverability. -
SDK Architecture Refactor
• Fully separated the custom SDK logic from the OpenAPI-generated layer, eliminating manual edits.
• Added HTTP/2 support for Node.js via Undici, while keeping native fetch for browser environments.
• Environment variables now automatically override config values (no useEnvVars flag needed).
• Added the ability to provide a custom fetch implementation, enabling compatibility with older Node.js versions.
• Simplified regeneration of OpenAPI services for future backend updates. -
Build & CI Improvements
• Migrated from Yarn v1 to npm, updated Jest, and added per-line test annotations in GitHub Actions.
• Expanded CI/CD matrix to cover Node.js 20, 22, and 24 (LTS releases).
• Introduced a retry mechanism for HTTP 429 (rate-limit) responses and improved test parallelization. -
Documentation & Generator Updates
• Switched to the openapi-ts code generator, resulting in cleaner, type-safe definitions and simplified maintenance.
• Updated documentation and examples to reflect the new environment-variable behavior, HTTP/2 support, and SDK structure.
• Fixed linter issues for consistent style compliance.
⚠️ Deprecation Notice
The SDK now marks several types and legacy APIs as deprecated. They remain available in this release but will be removed in the future versions. Migration is strongly recommended.
- Avoid using any Deprecated* types — replace them with their modern equivalents.
- Environment variables now override config by default, so the useEnvVars: true flag can be safely removed.
- Refer to the official documentation for detailed examples:
• README.md
• API Reference
What's Changed
- Add support to mark tasks optional by @DmitryBorisov-sm in #78
- Add description and tags fields to event handlers by @DmitryBorisov-sm in #79
- Refactor (rebuilt) top layer and OpenAPI layer code, enable HTTP/2 by @DmitryBorisov-sm in #80
- Migrate to npm, add new jest GH Action test annotations by @DmitryBorisov-sm in #81
- Separate unit, integration (v4/v5) tests; Run tests on Node 20, 22, 24; Add retry for HTTP 429 error by @DmitryBorisov-sm in #82
- Fix linter errors by @DmitryBorisov-sm in #84
- Update docs by @DmitryBorisov-sm in #85
- Switch to openapi-ts OpenApi layer code generator by @DmitryBorisov-sm in #86
Full Changelog: v2.1.5...v2.2.0
v2.1.5
What's Changed
- SDK Changes for API Orch by @shaileshpadave in #73
- Update ServiceRegistry test by @shaileshpadave in #74
- update versions and fix build issues: node, ts, eslint, typedoc, jest by @DmitryBorisov-sm in #76
- Add support for asyncComplete flag in http task by @DmitryBorisov-sm in #77
New Contributors
- @shaileshpadave made their first contribution in #73
- @DmitryBorisov-sm made their first contribution in #76
Full Changelog: v2.1.4...v2.1.5
v2.1.4
What's Changed
- Unify environment variable usage. by @jmigueprieto in #71
Full Changelog: v2.1.3...v2.1.4
v2.1.3
What's Changed
- Add
testWorkflowtoWorkflowResourceServiceby @jmigueprieto in #70
New Contributors
- @jmigueprieto made their first contribution in #70
Full Changelog: v2.1.2...v2.1.3
v2.1.2
v2.1.1
What's Changed
- [10785] Add SDK samples to all screens. by @pablocubico in #64
- make max retires available by @Sudakatux in #62
- Mainly Idempotency Key support by @Sudakatux in #66
New Contributors
- @pablocubico made their first contribution in #64
Full Changelog: v2.1.0...v2.1.1
v2.1.0
What's Changed
- Update README.md by @RizaFarheen in #58
- docs: fix missing comma in Configure API Client snippet by @BolajiAyodeji in #56
- Adds additional scheduler methods by @gulam159 in #55
- Correct queryId to totalHits in ScrollableSearchResultWorkflowSummary by @ammaar-limbada-madetech in #60
New Contributors
- @RizaFarheen made their first contribution in #58
- @BolajiAyodeji made their first contribution in #56
- @ammaar-limbada-madetech made their first contribution in #60
Full Changelog: v2.0.0...v2.1.0