Pipeline Toolkit
A small functional pipeline toolkit for Python.
pipeline-toolkit provides a simple way to build sequential pipelines from ordinary Python callables.
It also provides small utilities for composing functions, configuring callable steps, applying side effects, and managing pipeline state.
Features
- Zero dependencies.
- Sequential functional pipeline execution.
- Asynchronous execution using a worker thread.
- Configurable pipeline steps and default values.
- Positional and keyword arguments for pipeline steps.
- Optional automatic execution during initialization.
- Stop, skip, wait, and rerun execution.
- Context manager support for pipeline execution and cleanup.
- Synchronous execution of individual pipeline steps.
- Optional execution delays and configurable daemon worker threads.
- Optional stop-on-error behavior.
- Result and error history using a LIFO stack.
- Convenient access to the most recent result or error.
- Pipeline modification and standard sequence-style operations.
- Shallow and deep pipeline copying.
- Pipeline composition, repetition, comparison, and in-place modification with standard operators.
- Sequential callable composition with
compose()andchain(). - Configurable callable steps with
pipeandstep. - Side-effect operations with
tap()andmut(). - LIFO
Stackcontainer with optional maximum capacity.
Installation
Install from PyPI:
pip install pipeline-toolkit
Or install directly from GitHub:
pip install git+https://github.com/Hoang-Long2012/pipeline-toolkit.git
Quick Start
A pipeline is created from an iterable of steps. Each step is a tuple containing a callable and optional arguments.
from pipeline import Pipeline
def add(value, amount):
return value + amount
def multiply(value, factor):
return value * factor
pipeline = Pipeline([
(add, (5,)),
(multiply, (2,)),
])
pipeline.run(10).wait()
print(pipeline.result) # 30
The value flows through each step sequentially:
10
↓
add(10, 5)
↓
15
↓
multiply(15, 2)
↓
30
Documentation
See the documentation for the complete guide and API reference.
Requirements
- Python 3.8 or newer
Changelog
See the changelog.
Contributing
Contributions are welcome.
- Submit a pull request for improvements or fixes.
- Open an issue to report a bug or request a feature.
See the contributing guide for more information.
License
This project is licensed under the MIT License.
See the license for details.
Copyright (C) 2026 Hoàng Long
Metadata
Release files for pipeline-toolkit 0.5.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pipeline_toolkit-0.5.6.tar.gz | 34.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pipeline_toolkit-0.5.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 52.6 kB
Release files / pipeline_toolkit-0.5.6.tar.gz
| Download URL | pipeline_toolkit-0.5.6.tar.gz |
|---|---|
| Size | 34.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5d0782a8798277e44c520635d662daa5072e00d93eb81e9bff9d8a05f796b605
|
|
BLAKE2b-256 checksum How to use checksums |
ee833a7c18d18b186c7e2a9f205da5a4792c2d901264a70d4bfc1ae626443ee3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.
Transparency logRelease files / pipeline_toolkit-0.5.6-py3-none-any.whl
| Download URL | pipeline_toolkit-0.5.6-py3-none-any.whl |
|---|---|
| Size | 18.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
793ef6ece8dc69515b8eb1eaab4dca9f0c22c4e3275421a0b256a3d8c8bd0a82
|
|
BLAKE2b-256 checksum How to use checksums |
56f7dc92afe7db49f3c3e4ef64266cea5e805d0a346192e93df4d125dfe4d16e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.
Transparency log