Releases: temporalio/sdk-php
v2.4.1
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 usingWorker::getInfo()
; - the problem where
Workflow::getInfo()->searchableAttributes
isnull
.
- the problem where
Full Changelog: v2.4.0...v2.4.1
v2.4.0
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"
tonull
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 theNullableType::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
andArrayType
. ArrayType
can now processiterable
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.
- now supports DTOs with
DateTimeType
now supports mutable and immutable DateTime types:- in a
DateTimeImmutable
property aDateTimeImmutable
object will be unmarshalled; - in a
DateTime
property aDateTime
object will be unmarshalled; - in a
Carbon\CarbonImmutable
property aCarbon\CarbonImmutable
object will be unmarshalled; - in a
DateTimeInterface
orCarbon\Carbon
property aCarbon\Carbon
object will be unmarshalled; - to change default behavior you can pass to the
#[Marshal]
attribute the needed class name as the$of
argument.
- in a
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 thenull
value is passed, an exception will be thrown.
In this case you just need to remove the#[Marshal]
attribute or set the$nullable
parameter totrue
.
Full Changelog: v2.3.2...v2.4.0
v2.3.2
v2.3.1
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
What's Changed
- Workflow Interface Inheritance now works correctly. By @smelesh in #250
Documentation
Full Changelog: v2.2.1...v2.3.0
v2.2.1
What's Changed
- Don't cache rr in CI by @seregazhuk in #255
- Add Troubleshooting section to testing README with first instruction by @shanginn in #256
- Revert removing Symfony LTS versions from available versions. by @Zylius in #258
Full Changelog: v2.2.0...v2.2.1
v2.2.0
What's Changed
- Separate start of Temporal Test Server and RoadRunner worker in tests by @shanginn in #247
- feat: load workflow history for replayer by @seregazhuk in #249
- Extend
spiral/roadrunner-kv
package version by @roxblnfk in #252 - feat: upsert search attributes by @cv65kr in #248
Full Changelog: v2.1.0...v2.2.0
v2.1.0
What's Changed
- [Testing] Allow mocking activity result with complex objects by @cappuc in #241
- Extend base client for ssl by @seregazhuk in #243
Full Changelog: v2.0.2...v2.1.0
v2.0.2
What's Changed
- Fix: abandoned child workflow start by @seregazhuk in #240
Full Changelog: v2.0.1...v2.0.02
v2.0.1
What's Changed
- Fix: abandoned child workflow start by @seregazhuk in #238
Full Changelog: v2.0.0...v2.0.1