https://github.com/areid987/temporalio-python
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.6%) to scientific vocabulary
Last synced: 10 months ago
·
JSON representation
Repository
Basic Info
- Host: GitHub
- Owner: AReid987
- License: mit
- Language: Python
- Default Branch: main
- Size: 2.21 MB
Statistics
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 2
- Releases: 0
Created about 1 year ago
· Last pushed about 1 year ago
Metadata Files
Readme
License
Codeowners
README.md
Temporal Python SDK Samples
This is a collection of samples showing how to use the Python SDK.
Usage
Prerequisites:
The SDK requires Python >= 3.9. You can install Python using uv. For example,
uv python install 3.13
With this repository cloned, run the following at the root of the directory:
uv sync
That loads all required dependencies. Then to run a sample, usually you just run it under uv. For example:
uv run hello/hello_activity.py
Some examples require extra dependencies. See each sample's directory for specific instructions.
Samples
- hello - All of the basic features.
<!-- Keep this list in alphabetical order and in sync on hello/README.md and root README.md -->
- hello_activity - Execute an activity from a workflow.
- helloactivitychoice - Execute certain activities inside a workflow based on dynamic input.
- helloactivitymethod - Demonstrate an activity that is an instance method on a class and can access class state.
- helloactivitymultiprocess - Execute a synchronous activity on a process pool.
- helloactivityretry - Demonstrate activity retry by failing until a certain number of attempts.
- helloactivitythreaded - Execute a synchronous activity on a thread pool.
- helloasyncactivity_completion - Complete an activity outside of the function that was called.
- hello_cancellation - Manually react to cancellation inside workflows and activities.
- hellochildworkflow - Execute a child workflow from a workflow.
- hellocontinueas_new - Use continue as new to restart a workflow.
- hello_cron - Execute a workflow once a minute.
- hello_exception - Execute an activity that raises an error out of the workflow and out of the program.
- hellolocalactivity - Execute a local activity from a workflow.
- hello_mtls - Accept URL, namespace, and certificate info as CLI args and use mTLS for connecting to server.
- helloparallelactivity - Execute multiple activities at once.
- hello_query - Invoke queries on a workflow.
- hellosearchattributes - Start workflow with search attributes then change while running.
- hello_signal - Send signals to a workflow. <!-- Keep this list in alphabetical order -->
- activity_worker - Use Python activities from a workflow in another language.
- bedrock - Orchestrate a chatbot with Amazon Bedrock.
- cloudexportto_parquet - Set up schedule workflow to process exported files on an hourly basis
- context_propagation - Context propagation through workflows/activities via interceptor.
- custom_converter - Use a custom payload converter to handle custom types.
- custom_decorator - Custom decorator to auto-heartbeat a long-running activity.
- custom_metric - Custom metric to record the workflow type in the activity schedule to start latency.
- dsl - DSL workflow that executes steps defined in a YAML file.
- encryption - Apply end-to-end encryption for all input/output.
- gevent_async - Combine gevent and Temporal.
- langchain - Orchestrate workflows for LangChain.
- message_passing/introduction - Introduction to queries, signals, and updates.
- messagepassing/safemessage_handlers - Safely handling updates and signals.
- messagepassing/updatewithstart/lazyinitialization - Use update-with-start to update a Shopping Cart, starting it if it does not exist.
- open_telemetry - Trace workflows with OpenTelemetry.
- patching - Alter workflows safely with
patchanddeprecate_patch. - polling - Recommended implementation of an activity that needs to periodically poll an external resource waiting its successful completion.
- prometheus - Configure Prometheus metrics on clients/workers.
- pydantic_converter - Data converter for using Pydantic models.
- schedules - Demonstrates a Workflow Execution that occurs according to a schedule.
- sentry - Report errors to Sentry.
- trio_async - Use asyncio Temporal in Trio-based environments.
- updatable_timer - A timer that can be updated while sleeping.
- workerspecifictask_queues - Use unique task queues to ensure activities run on specific workers.
- worker_versioning - Use the Worker Versioning feature to more easily version your workflows & other code.
Test
Running the tests requires poe to be installed.
uv tool install poethepoet
Once you have poe installed you can run:
poe test
Owner
- Name: Antonio Reid
- Login: AReid987
- Kind: user
- Location: Austin, Texas
- Repositories: 9
- Profile: https://github.com/AReid987
GitHub Events
Total
- Push event: 1
- Pull request event: 2
- Create event: 4
Last Year
- Push event: 1
- Pull request event: 2
- Create event: 4
Dependencies
.github/workflows/ci.yml
actions
- actions/checkout v4 composite
- actions/setup-python v5 composite
- actions/upload-artifact v4 composite
- astral-sh/setup-uv v5 composite
activity_worker/go_workflow/go.mod
go
- github.com/davecgh/go-spew v1.1.1
- github.com/facebookgo/clock v0.0.0-20150410010913-600d898af40a
- github.com/gogo/googleapis v1.4.1
- github.com/gogo/protobuf v1.3.2
- github.com/gogo/status v1.1.0
- github.com/golang/mock v1.6.0
- github.com/golang/protobuf v1.5.2
- github.com/google/uuid v1.3.0
- github.com/grpc-ecosystem/go-grpc-middleware v1.3.0
- github.com/pborman/uuid v1.2.1
- github.com/pmezard/go-difflib v1.0.0
- github.com/robfig/cron v1.2.0
- github.com/stretchr/objx v0.3.0
- github.com/stretchr/testify v1.7.0
- go.temporal.io/api v1.7.1-0.20220223032354-6e6fe738916a
- go.temporal.io/sdk v1.14.0
- go.uber.org/atomic v1.9.0
- golang.org/x/net v0.7.0
- golang.org/x/sys v0.5.0
- golang.org/x/text v0.7.0
- golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac
- google.golang.org/genproto v0.0.0-20220222213610-43724f9ea8cf
- google.golang.org/grpc v1.44.0
- google.golang.org/protobuf v1.27.1
- gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b
activity_worker/go_workflow/go.sum
go
- 209 dependencies
pyproject.toml
pypi
- temporalio >=1.11.1,<2
uv.lock
pypi
- 113 dependencies