Skip to content

Releases: Azure/azure-functions-durable-js

Durable Functions for NodeJS 2.1.4

06 Feb 02:59
dc5296e
Compare
Choose a tag to compare

Durable Functions for JavaScript 2.1.4 is a new patch version release.

npm package

https://www.npmjs.com/package/durable-functions

Patch

  • Remove support for node versions 10 and 12 (#516)
  • Updated axios package (#566)

Durable Functions for NodeJS 3.0.1

24 Jan 19:36
ba0ee84
Compare
Choose a tag to compare

Durable Functions for Node 3.0.1 is a new patch version release.

npm package

https://www.npmjs.com/package/durable-functions

Patch

  • Updates Axios to v1.6.1 (#540)
  • Adds convenience methods to register Durable Client functions using all supported @azure/functions triggers (#546)

Durable Functions for NodeJS 3.0.0

29 Sep 00:04
a6c838a
Compare
Choose a tag to compare

Version 3 of the Durable Functions SDK is now generally available!🎉 This is the first version of the Durable Functions SDK with official support for v4 of the Node.js programming model. This changelog is meant as a detailed list of changes in this new version. See the official Durable Functions migration guide for a less detailed, more user-friendly list of changes. Learn more about the v4 programming model.

npm package

https://www.npmjs.com/package/durable-functions/v/3.0.0

Added

  • APIs to register Durable functions (orchestrations, activities, and entities) using code, under the app namespace (#453 and #384)
  • APIs to obtain trigger options for Durable triggers (orchestrations, activities, and entities) under the trigger namespace (#453 and #384)
  • API to obtain a Durable Client input options under the input namespace (#453 and #384)
  • A streamlined way to call activities and suborchestrations (#418)
  • A streamlined way to register Durable Functions client functions for HTTP and timer triggers (#414)
  • Preliminary support for Node 20

Removed

  • The old orchestrator() and entity() APIs (#453)

Changed

  • Update minimum version of Node.js to 18.x
  • Update minimum version of TypeScript to 4.x
  • Update minimum version of core tools required for local testing to 4.0.5382
  • Update @azure/functions dependency to 4.x (See v4.0.0 changelog for a more detailed list of changes to @azure/functions)
  • Improve exported types
    • Rename the IOrchestrationFunctionContext interface to OrchestrationContext, and export it from the root of the package (#455)
    • Rename the IEntityFunctionContext<T> interface to EntityContext<T> and export it from the root of the package (#455)
    • Rename the DurableOrchestrationClient class to DurableClient and export it from the root of the package (#154)
    • Export new type definitions
      • OrchestrationHandler, OrchestrationTrigger, and OrchestrationOptions for orchestrations
      • EntityHandler, EntityTrigger, and EntityOptions for entities
      • ActivityHandler, ActivityTrigger, and ActivityOptions for activities
      • DurableClientInput for client functions
    • Switch to manual declaration of type definitions (#458)
      • Remove private fields from exported class definitions
      • Remove @hidden fields from exported class definitions
      • Remove non-user facing classes/interfaces from public type definitions (#352)
  • Where applicable, switch DurableClient APIs from using discrete optional arguments to using an options object (#441 and #415)
    • getStatus()
    • getStatusBy()
    • purgeInstanceHistoryBy()
    • raiseEvent()
    • readEntityState()
    • rewind()
    • signalEntity()
    • startNew()
    • waitForCompletionOrCreateCheckStatusResponse()
  • Update the callHttp() API under the DurableOrchestrationContext class (#456 and #439)
    • Switch to using one options object for all arguments
    • Rename uri argument to url
    • Rename content argument to body
    • Deprecate asynchronousPatternEnabled flag in favor of enablePolling
  • Remove the Durable-specific IHTTPRequest, IHttpResponse, DurableHttpRequest and DurableHttpResponse classes, in favor of HttpRequest and HttpResponse from @azure/functions, which represent a subset of the fetch standard based on the undici npm package. See Changelog here for more details.
  • Breaking bug-fixes
    • Fixed a bug where input to sub-orchestrations would get serialized twice (#436)
    • Stopped supporting the creation of compound tasks (Task.any and Task.all) with no children, as it lead to ambiguous state (#424)
    • Fixed a bug where DurableClient.getStatus() was returning incorrect results. Updated the getStatus() API to be more type-safe and consistent with type contract (#486)

Patched

  • Fixed a bug where sometimes activities can be scheduled multiple times (#485)

Durable Functions for NodeJS 3.0.0-alpha.5

11 Jul 21:16
49516d6
Compare
Choose a tag to compare

Durable Functions for JavaScript 3.0.0-alpha.5 is a new release of the preview v3.x version of the durable-functions package with support for the v4 programming model.

npm package

https://www.npmjs.com/package/durable-functions/v/3.0.0-alpha.5

Update

  • Added preliminary support for Node 20

Breaking bug-fix

  • Fixed a bug where DurableClient.getStatus() was returning incorrect results. Updated the getStatus() API to be more type-safe and consistent with type contract (#486)

Patch

  • Fixed a bug where sometimes activities can be scheduled multiple times (#485)

Durable Functions for NodeJS 2.1.3

11 Jul 21:10
31f14f2
Compare
Choose a tag to compare

Durable Functions for JavaScript 2.1.3 is a new patch version release.

npm package

https://www.npmjs.com/package/durable-functions

Patch

  • Fixed a bug where an error was thrown on every execution of a durable Entity (#373)
  • Fixed a bug where sometimes activities can be scheduled multiple times (#485)

Durable Functions for NodeJS 2.1.2

27 Mar 23:02
3e76bc1
Compare
Choose a tag to compare

Durable Functions for JavaScript 2.1.2 is a new minor version release.

npm package

https://www.npmjs.com/package/durable-functions

Patch

  • Allowing large inputs to orchestrators (#479)
  • Update README to mention preview v3.x release

Durable Functions for NodeJS 3.0.0-alpha.4

27 Mar 17:41
74ab8dd
Compare
Choose a tag to compare

This is the first version of the Durable Functions SDK with official support for public preview of V4 of the Node.js programming model! 🎉 This changelog is meant as a detailed list of changes in this new version. We are working on a less detailed, more user-friendly upgrade guide for Durable Functions, and will include that link here when it's ready! Learn more about the v4 programming model.

Added

  • APIs to register Durable functions (orchestrations, activities, and entities) using code, under the app namespace (#453 and #384)
  • APIs to obtain trigger options for Durable triggers (orchestrations, activities, and entities) under the trigger namespace (#453 and #384)
  • API to obtain a Durable Client input options under the input namespace (#453 and #384)

Removed

  • The old orchestrator() and entity() APIs (#453)

Changed

  • Update minimum version of Node.js to 18.x
  • Update minimum version of TypeScript to 4.x
  • Update minimum version of core tools required for local testing to 4.0.5085
  • Update @azure/functions dependency to 4.x (See v4.0.0-alpha.9 changelog for a more detailed list of changes to @azure/functions)
  • Improve exported types
    • Rename the IOrchestrationFunctionContext interface to OrchestrationContext, and export it from the root of the package (#455)
    • Rename the IEntityFunctionContext<T> interface to EntityContext<T> and export it from the root of the package (#455)
    • Rename the DurableOrchestrationClient class to DurableClient and export it from the root of the package (#154)
    • Export new type definitions
      • OrchestrationHandler, OrchestrationTrigger, and OrchestrationOptions for orchestrations
      • EntityHandler, EntityTrigger, and EntityOptions for entities
      • ActivityHandler, ActivityTrigger, and ActivityOptions for activities
      • DurableClientInput for client functions
    • Switch to manual declaration of type definitions (#458)
      • Remove private fields from exported class definitions
      • Remove @hidden fields from exported class definitions
      • Remove non-user facing classes/interfaces from public type definitions (#352)
  • Where applicable, switch DurableClient APIs from using discrete optional arguments to using an options object (#441 and #415)
    • getStatus()
    • getStatusBy()
    • purgeInstanceHistoryBy()
    • raiseEvent()
    • readEntityState()
    • rewind()
    • signalEntity()
    • startNew()
    • waitForCompletionOrCreateCheckStatusResponse()
  • Update the callHttp() API under the DurableOrchestrationContext class (#456 and #439)
    • Switch to using one options object for all arguments
    • Rename uri argument to url
    • Rename content argument to body
    • Deprecate asynchronousPatternEnabled flag in favor of enablePolling
  • Remove the Durable-specific IHTTPRequest, IHttpResponse, DurableHttpRequest and DurableHttpResponse classes, in favor of HttpRequest and HttpResponse from @azure/functions, which represent a subset of the fetch standard based on the undici npm package. See Changelog here for more details.
  • Breaking bug-fixes
    • Fixed a bug where input to sub-orchestrations would get serialized twice (#436)
    • Stopped supporting the creation of compound tasks (Task.any and Task.all) with no children, as it lead to ambiguous state (#424)

Durable Functions for NodeJS 2.1.1

23 Jan 19:56
Compare
Choose a tag to compare

Durable Functions for JavaScript 2.1.1 is a new minor version release.

npm package

https://www.npmjs.com/package/durable-functions

Patch

  • Fixes issue with incorrect isPlayed flag on some WhenAll tasks (#405)

Durable Functions for NodeJS 2.1.0

07 Nov 22:28
97e924e
Compare
Choose a tag to compare

Durable Functions for JavaScript 2.1.0 is a new minor version release.

npm package

https://www.npmjs.com/package/durable-functions

New features

  • Add signalEntity API to orchestrators (#383)

Patch

  • Minor bug fixes to isReplaying and compound tasks (#395)
  • Fixes compatibility issue with Durable extension (#381)

Durable Functions for NodeJS 2.0.2

03 Jun 23:29
ac71b8d
Compare
Choose a tag to compare

Durable Functions for JavaScript 2.0.2 is a patch release that fixes a backwards compatibility problem with DF Extension versions lower than 2.7.0

npm package

https://www.npmjs.com/package/durable-functions

Patch

  • Allow DF NodeJS SDK v2 to work with DF Extensions of versions lower than 2.7.0 (#369)