Jobs api stable, bump to latest dapr version and regen protos#1060
Conversation
Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1060 +/- ##
==========================================
- Coverage 86.63% 82.61% -4.02%
==========================================
Files 84 146 +62
Lines 4473 14572 +10099
==========================================
+ Hits 3875 12039 +8164
- Misses 598 2533 +1935 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
This PR graduates the Python SDK’s Jobs API from the *_alpha1 surface to stable methods (schedule_job, get_job, delete_job), updates generated protobufs to the latest Dapr version, and adds compatibility behavior to transparently fall back to alpha RPCs when the connected sidecar doesn’t implement the stable Jobs RPCs.
Changes:
- Switch SDK/client/test/example usage from
*_alpha1Jobs methods to stableschedule_job/get_job/delete_job. - Implement stable-first Jobs RPC calls with
UNIMPLEMENTEDfallback to*Alpha1, and deprecate the*_alpha1client methods as aliases. - Regenerate runtime protos/stubs to include stable Jobs RPCs and stable AppCallback
OnJobEvent.
Reviewed changes
Copilot reviewed 17 out of 21 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/integration/test_jobs.py | Updates integration tests to use stable Jobs client methods. |
| tests/integration/test_jobs_async.py | Updates async integration tests to use stable Jobs client methods. |
| tests/integration/AGENTS.md | Updates documentation of which APIs each integration test file exercises. |
| tests/clients/test_dapr_grpc_client.py | Renames Jobs unit tests to stable APIs; adds fallback + deprecation-alias coverage. |
| tests/clients/test_dapr_grpc_client_async.py | Async equivalents of stable Jobs tests; adds fallback + deprecation-alias coverage. |
| tests/clients/fake_dapr_server.py | Adds stable Jobs RPC handlers plus an “alpha-only sidecar” simulation mode. |
| ext/dapr-ext-grpc/tests/test_servicier.py | Adds tests ensuring stable and alpha job event callbacks route identically. |
| ext/dapr-ext-grpc/dapr/ext/grpc/_servicer.py | Adds stable OnJobEvent handler delegating to shared job-event routing logic. |
| examples/jobs/README.md | Updates Jobs API documentation to stable + fallback messaging. |
| examples/jobs/job_processing.py | Updates example to call stable schedule_job. |
| examples/jobs/job_management.py | Updates example to call stable Jobs methods. |
| dapr/proto/runtime/v1/jobs_pb2.pyi | Adds typings for new stable Jobs messages (e.g., list/delete-by-prefix). |
| dapr/proto/runtime/v1/jobs_pb2.py | Regenerated Jobs proto module to include stable messages. |
| dapr/proto/runtime/v1/dapr_pb2.py | Regenerated Dapr service descriptor to include stable Jobs RPCs (and other updates). |
| dapr/proto/runtime/v1/dapr_pb2_grpc.py | Regenerated gRPC stubs/servicers for new stable Jobs RPCs (and other updates). |
| dapr/proto/runtime/v1/appcallback_pb2.py | Regenerated AppCallback protos to include stable OnJobEvent. |
| dapr/proto/runtime/v1/appcallback_pb2_grpc.py | Regenerated AppCallback gRPC stubs/servicers for stable OnJobEvent. |
| dapr/proto/runtime/v1/actors_pb2.pyi | Regenerated typings to include new actor streaming protocol messages. |
| dapr/proto/runtime/v1/actors_pb2.py | Regenerated actor proto module for new actor streaming protocol messages. |
| dapr/clients/grpc/client.py | Implements stable Jobs methods + UNIMPLEMENTED fallback; deprecates *_alpha1 aliases. |
| dapr/aio/clients/grpc/client.py | Async implementation of stable Jobs methods + fallback; deprecates *_alpha1 aliases. |
Files not reviewed (4)
- dapr/proto/runtime/v1/actors_pb2.py: Language not supported
- dapr/proto/runtime/v1/appcallback_pb2.py: Language not supported
- dapr/proto/runtime/v1/dapr_pb2.py: Language not supported
- dapr/proto/runtime/v1/jobs_pb2.py: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Signed-off-by: Cassie Coyle <cassie.i.coyle@gmail.com>
…#1063) * jobs api stable, bump to latest dapr version and regen protos * Apply suggestions from code review --------- (cherry picked from commit 8840b9a) Signed-off-by: Cassandra Coyle <cassie@diagrid.io> Signed-off-by: Cassie Coyle <cassie.i.coyle@gmail.com> Signed-off-by: dapr-bot <dapr-bot@users.noreply.github.com> Co-authored-by: Cassie Coyle <cassie.i.coyle@gmail.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Jobs api stable, bump to latest dapr version and regen protos