temporalio / sdk-python

Temporal Python SDK
MIT License
473 stars 77 forks source link

[Feature Request] Drop 3.8 support, confirm 3.13 support #672

Open cretz opened 1 month ago

cretz commented 1 month ago

Describe the solution you'd like

See #398 (PR #422) where we did this for 3.7/3.12. Can see the several things that were done there and similar should be done here.

josh-berry commented 1 week ago

I happened to discover by accident that grpcio does not yet support Python 3.13 because it apparently depends on some C APIs that have been removed. So it seems unlikely we'd be able to support it without updating grpcio (if a fix is available; it may already be)

cretz commented 1 week ago

grpcio is an optional dependency. We only added it because we do generate the gRPC stubs in the temporalio.api.workflowservice.v1.service_pb2_grpc and technically allow users to use that module if they want pure Python gRPC clients or servers even though we don't use it in the SDK. We do use it in tests to implement a custom gRPC server and figured "why not let users use the generated gRPC stuff too" in addition to protos. We may be able to remove this stuff if we have to (otherwise we may be able to upgrade it, it all depends on how old of a protobuf library we need to support).