temporalio / features

Behavior and history compatibility testing for Temporal SDKs
13 stars 17 forks source link

[Feature Request] Typed Search Attributes #336

Open lorensr opened 1 year ago

lorensr commented 1 year ago

Proposal: https://github.com/temporalio/proposals/blob/master/sdk-typed-search-attributes.md

arlyon commented 9 months ago

May I ask that you ensure that there are code samples included with major feature PRs (especially when deprecating old APIs). All my pytest tests are failing because I am updating an old project and search_attribute is deprecated, and I can't find an example of the new API anywhere (even the code samples https://github.com/temporalio/samples-python/blob/ecdfcd69b7a7894d5ed847549c0f045d41bdcb67/hello/hello_search_attributes.py#L17)

edit: found a test in the codebase for anyone on the python SDK https://github.com/cretz/temporal-sdk-python/blob/main/tests/test_client.py#L1066-L1074

edit: nevermind this feature is incompatible with my code. I specify only a single search attribute when the workflow is created, and potentially add new ones down the line once more data becomes available, meaning that all my existing workflows do not have typed search attributes in the info type for all of my data and upserting is just doesn't work, because you can update but not insert...

This code raises an exception when doing the 'insert' portion of an upsert

https://github.com/cretz/temporal-sdk-python/blob/main/temporalio/worker/_workflow_instance.py#L1287-L1294

Edit nevermind again this bug was fixed

https://github.com/temporalio/sdk-python/commit/6f966c7ca59d01c02243561d186867e199f252a6