Skip to content

Releases: temporalio/sdk-php

v2.5.4

28 Jul 15:24
v2.5.4
f3e2a6e
Compare
Choose a tag to compare

What's Changed

  • Fix potential issue when signal coroutine won't trigger await due to failed activity call by @wolfy-j in #335

Full Changelog: v2.5.3...v2.5.4

v2.5.3

21 Jul 17:25
v2.5.3
42b6f9e
Compare
Choose a tag to compare

What's Changed

  • Fix marshalling/unmarshalling of nullable object type by @roxblnfk in #334
  • Fix exceptions propagation from Signal methods. Only arguments decoding exceptions will be ignored, all other exceptions will be propagated. By @roxblnfk in #331

Full Changelog: v2.5.0...v2.5.3

v2.5.2

10 Jul 13:39
v2.5.2
ea20d36
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2.5.1...v2.5.2

v2.5.1

31 May 21:15
v2.5.1
6c85e88
Compare
Choose a tag to compare

What's Changed

  • Fix deprecated string interpolation - replace ${var} with {$var}. By @roxblnfk in #309

Full Changelog: v2.5.0...v2.5.1

v2.5.0

18 Apr 09:39
v2.5.0
479b0b4
Compare
Choose a tag to compare

What's Changed

  • PHP Attributes: replace implements NamedArgumentConstructorAttribute with the attribute NamedArgumentConstructor by @msmakouz in #292
    That required for a better compatibility with the doctrine/annotations v2
  • Update PHP RoadRunner packages versions by @roxblnfk in #297
    New major versions was of the packages are related to the new RoadRunner 2023.1 release
  • Expand list of retryable gRPC errors by @roxblnfk in #298
    Note: in the case when a Temporal server is unavailable and by the reason a Client call can't be completed, it might retry infinitely without a limited retry gRPC call policy.
  • Add supporting for UndefinedResponse command by @roxblnfk in #300
    The command will be sent instead of logic exception throwing. The command is available since RoadRunner 2023.1

Full Changelog: v2.4.1...v2.5.0

v2.4.1

09 Mar 09:07
v2.4.1
17ef494
Compare
Choose a tag to compare

What's Changed

  • Fix mapping for the Memo field in #290
    It fixes two problems:
    • the problem where WorkflowInfo doesnt retrieve the correct info when using Worker::getInfo();
    • the problem where Workflow::getInfo()->searchableAttributes is null.

Full Changelog: v2.4.0...v2.4.1

v2.4.0

02 Feb 13:46
v2.4.0
1f5d61c
Compare
Choose a tag to compare

What's Changed

  • Marshaller upgrade by @roxblnfk and @zlodes in #278, #284, #275 (see below)
  • The default value of Activity's taskQueue was changed from "default" to null by @ruscon in #270
  • An error will be passed into activity finalizer if it happens during activity execution by @seregazhuk in #267
  • Testing and CI fixes:

Marshaller upgrade

  • The #[Marshal] attribute now has the $nullable parameter. You don't need to use the NullableType::class value
    as the $type argument inside the #[Marshal] attribute.

    Note: #[MarshallArray] has different default value for the $nullable parameter.
    That was made to prevent incompatible behavior (see #245).

  • The #[Marshal] attribute can be nested. You can put another #[Marshal] attribute as the $to argument for
    NullableType and ArrayType.
  • ArrayType can now process iterable type automatically.
  • EnumType added by default in the type list by default for PHP >=8.1.
  • ObjectType:
    • now supports DTOs with readonly fields;
    • can process nested objects. Nested objects can have #[Marshal] attributes.
  • DateTimeType now supports mutable and immutable DateTime types:
    • in a DateTimeImmutable property a DateTimeImmutable object will be unmarshalled;
    • in a DateTime property a DateTime object will be unmarshalled;
    • in a Carbon\CarbonImmutable property a Carbon\CarbonImmutable object will be unmarshalled;
    • in a DateTimeInterface or Carbon\Carbon property a Carbon\Carbon object will be unmarshalled;
    • to change default behavior you can pass to the #[Marshal] attribute the needed class name as the $of argument.

Changes and deprecations:

  • The method ObjectType::instance() has been marked as deprecated.
  • Marshaller will throw a detailed exception about invalid argument value during unmarshalling.
  • Warning: marshalling rules that was got from the #[Marshal] attribute now are stricter than before.
    All attributed properties with nullable type will be not nullable by default (excluding #[ArrayType]).
    In the case when the null value is passed, an exception will be thrown.
    In this case you just need to remove the #[Marshal] attribute or set the $nullable parameter to true.

Full Changelog: v2.3.2...v2.4.0

v2.3.2

19 Dec 15:44
1a95df8
Compare
Choose a tag to compare

What's Changed

  • Fixed memory leak in the case when an uncompleted workflow with an active internal timer (see awaitWithTimeout) is destroyed by @roxblnfk in #268

Full Changelog: v2.3.1...v2.3.2

v2.3.1

01 Dec 20:11
1d07158
Compare
Choose a tag to compare

What's Changed

  • Fix aggregation for garbage (cyclic references) in Activity worker by @roxblnfk in #266
  • Fix supporting for ?array type in DTOs without attributes by @roquie in #245
  • Fix psalm issues by @roxblnfk in #262
  • Extend supported google/common-protos versions by @cappuc in #265

Full Changelog: v2.3.0...v2.3.1

v2.3.0

29 Oct 12:09
702863b
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.2.1...v2.3.0