Skip to main content

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() and chain().
  • Configurable callable steps with pipe and step.
  • Side-effect operations with tap() and mut().
  • LIFO Stack container 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)

Source distribution for pipeline-toolkit 0.5.6
File Size Uploaded
pipeline_toolkit-0.5.6.tar.gz 34.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pipeline-toolkit 0.5.6
File Interpreter ABI Platform
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 log

Release 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

Release history Release notifications | RSS feed

0.5.8

2 release files

0.5.7

2 release files

This release

0.5.6 This release

2 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page