{"id":29228368,"url":"https://github.com/restatedev/sdk-python","last_synced_at":"2026-04-08T14:08:08.888Z","repository":{"id":248999501,"uuid":"824526120","full_name":"restatedev/sdk-python","owner":"restatedev","description":"Restate SDK for Python","archived":false,"fork":false,"pushed_at":"2026-04-01T18:49:51.000Z","size":803,"stargazers_count":61,"open_issues_count":8,"forks_count":14,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-04-02T01:48:02.220Z","etag":null,"topics":["durable-execution","python","workflow"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/restatedev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-07-05T10:14:09.000Z","updated_at":"2026-03-31T16:38:45.000Z","dependencies_parsed_at":"2024-08-08T13:35:37.145Z","dependency_job_id":"d006316b-c8fd-443c-b14b-a87bea98afc1","html_url":"https://github.com/restatedev/sdk-python","commit_stats":null,"previous_names":["restatedev/sdk-python"],"tags_count":33,"template":false,"template_full_name":null,"purl":"pkg:github/restatedev/sdk-python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/restatedev%2Fsdk-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/restatedev%2Fsdk-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/restatedev%2Fsdk-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/restatedev%2Fsdk-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/restatedev","download_url":"https://codeload.github.com/restatedev/sdk-python/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/restatedev%2Fsdk-python/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31558452,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T10:21:54.569Z","status":"ssl_error","status_checked_at":"2026-04-08T10:21:38.171Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["durable-execution","python","workflow"],"created_at":"2025-07-03T10:10:43.825Z","updated_at":"2026-04-08T14:08:08.883Z","avatar_url":"https://github.com/restatedev.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Documentation](https://img.shields.io/badge/doc-reference-blue)](https://docs.restate.dev)\n[![Examples](https://img.shields.io/badge/view-examples-blue)](https://github.com/restatedev/examples)\n[![Discord](https://img.shields.io/discord/1128210118216007792?logo=discord)](https://discord.gg/skW3AZ6uGd)\n[![Twitter](https://img.shields.io/twitter/follow/restatedev.svg?style=social\u0026label=Follow)](https://twitter.com/intent/follow?screen_name=restatedev)\n\n# Restate Python SDK\n\n[Restate](https://restate.dev/) is a system for easily building resilient applications using *distributed durable async/await*. This repository contains the Restate SDK for writing services in **Python**.\n\n## Community\n\n* 🤗️ [Join our online community](https://discord.gg/skW3AZ6uGd) for help, sharing feedback and talking to the community.\n* 📖 [Check out our documentation](https://docs.restate.dev) to get quickly started!\n* 📣 [Follow us on Twitter](https://twitter.com/restatedev) for staying up to date.\n* 🙋 [Create a GitHub issue](https://github.com/restatedev/sdk-typescript/issues) for requesting a new feature or reporting a problem.\n* 🏠 [Visit our GitHub org](https://github.com/restatedev) for exploring other repositories.\n\n## Using the SDK\n\n**Prerequisites**:\n- Python \u003e= v3.10\n\nTo use this SDK, add the dependency to your project:\n\n```shell\npip install restate_sdk\n```\n\n## Versions\n\nThe compatibility with Restate is described in the following table:\n\n| Restate Server\\sdk-python | \u003c 0.6            | 0.6 - 0.7 | 0.8 - 0.9        | 0.10 - 0.17      |\n|---------------------------|------------------|-----------|------------------|------------------|\n| \u003c 1.3                     | ✅                | ❌         | ❌                | ❌                |\n| 1.3                       | ✅                | ✅         | ✅ \u003csup\u003e(1)\u003c/sup\u003e | ✅ \u003csup\u003e(2)\u003c/sup\u003e |\n| 1.4                       | ✅                | ✅         | ✅                | ✅ \u003csup\u003e(2)\u003c/sup\u003e |\n| 1.5                       | ⚠ \u003csup\u003e(3)\u003c/sup\u003e | ✅         | ✅                | ✅                |\n| 1.6                       | ⚠ \u003csup\u003e(3)\u003c/sup\u003e | ✅         | ✅                | ✅                |\n\n\u003csup\u003e(1)\u003c/sup\u003e **Note** The new Service/Object/Workflow constructor fields and the decorator fields `inactivity_timeout`, `abort_timeout`, `journal_retention`, `idempotency_retention`, `ingress_private`, `workflow_retention` work only from Restate 1.4 onward. Check the in-code documentation for more details.\n\n\u003csup\u003e(1)\u003c/sup\u003e **Note** The new Service/Object/Workflow constructor field and the decorator field `invocation_retry_policy` works only from Restate 1.4 onward. Check the in-code documentation for more details.\n\n\u003csup\u003e(3)\u003c/sup\u003e **Warning** SDK versions \u003c 0.6 are deprecated, and cannot be registered anymore. Check the [Restate 1.5 release notes](https://github.com/restatedev/restate/releases/tag/v1.5.0) for more info.\n\n## Contributing\n\nWe’re excited if you join the Restate community and start contributing!\nWhether it is feature requests, bug reports, ideas \u0026 feedback or PRs, we appreciate any and all contributions.\nWe know that your time is precious and, therefore, deeply value any effort to contribute!\n\n### Local development\n\n* Python 3\n* PyEnv or VirtualEnv\n* [just](https://github.com/casey/just)\n* [Rust toolchain](https://rustup.rs/)\n\nSet up your virtual environment using the tool of your choice, e.g. VirtualEnv:\n\n```shell\npython3 -m venv .venv\nsource .venv/bin/activate\n```\n\nInstall the build tools:\n\n```shell\npip install -r requirements.txt\n```\n\nNow build the Rust module and include opt-in additional dev dependencies:\n\n```shell\nmaturin dev -E test,lint\n```\n\nYou usually need to build the Rust module only once, but you might need to rebuild it on pulls.\n\nFor linting and testing:\n\n```shell\njust verify\n```\n\n## Releasing the package\n\nPull latest main:\n\n```shell\ngit checkout main \u0026\u0026 git pull\n```\n\n**Update module version in `Cargo.toml` and run a local build to update the `Cargo.lock` too**, commit it. Then push tag, e.g.:\n\n```\ngit tag -m \"Release v0.1.0\" v0.1.0\ngit push origin v0.1.0\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frestatedev%2Fsdk-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frestatedev%2Fsdk-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frestatedev%2Fsdk-python/lists"}