- New
OpaqueModel
which derives from pydanticBaseModel
to defer Tierkreis serialization to pydantic. - New
TierkreisType.register_alternative
method to register Tierkreis-compatible alternatives to types to use for serialization/deserialization for arbitrary types. UnpackRow
base dataclass for defining rows that should be unpacked in Tierkreis (e.g. multiple outputs in a worker function).
- Graph, Signature and Worker protos updated to v1alpha1 to add
FunctionNode
message to graph proto, with optionalretry_secs
field. Graphs serialized with v1alpha would deserialize as containing functions with empty names. ServerRuntime
simplified to only offerrun_graph
for execution, all "task" related methods removed.runtime.proto
updated to v1alpha1 to match.TierkreisValue.from_python
uses python type to guide conversion - takes an optional annotation or usestype(value)
as default. Subclasses of supported types will no longer converted as the supported super type.
- Fix bug in
val_known_tk_type
(assumed dataclass for all structures). - Fix protobuf versioning
- Fix shebang in pytket worker
- Support Pydantic
BaseModel
automated conversion toStructType
/StructValue
. UnpackRow
base dataclass for defining rows that should be unpacked in Tierkreis (e.g. multiple outputs in a worker function).
TierkreisStruct
andregister_struct_convertible
are removed. Now automated conversion will be attempted on any dataclass or PydanticBaseModel
.ServerRuntime
simplified to only offerrun_graph
for execution, all "task" related methods removed.runtime.proto
updated to v1alpha1 to match.
CircStruct
simplified to just contain the JSON string of a Pytket Circuit (essentially acts as an opaque newtype).