Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

SegmentStream pipeline SDK

Declare source tables with s.ingestion and warehouse SQL transformations with s.model. The SDK resolves inputs, validates explicit partitioning and capabilities, and compiles native Dagster definitions using the existing warehouse loader.

from collections.abc import Iterator

import ibis.expr.types as ir
import segmentstream as s


@s.ingestion(
    tier=s.Tier.Bronze,
    partitioning=s.Partitioning.Unpartitioned,
    schema={"amount": "float64"},
)
def orders() -> Iterator[s.IngestionRow]:
    yield {"amount": 25.0}


@s.model(
    tier=s.Tier.Gold,
    partitioning=s.Partitioning.Unpartitioned,
    schema={"total_revenue": "float64"},
)
def revenue(orders: ir.Table) -> ir.Table:
    return orders.aggregate(total_revenue=orders.amount.sum())


defs = s.definitions(
    assets=[orders, revenue],
    jobs=[s.job("revenue", assets=[revenue], include_upstream=True)],
)

The workspace documentation is organized by concept: connections, ingestion, models, partitioning, jobs, execution, checks, runtime values, and warehouse storage. The CLI bundles these same pages into every starter workspace.

s.validate(defs) checks the graph and named job configuration without executing assets. s.describe(defs) explains resolved inputs, per-asset policies, storage, capabilities, and job selections without resolving credentials. See the modular commerce starter for daily row ingestion, batched models, and a partitioned check.

Compatibility

segmentstream.dagster retains its native exports. Native assets and high-level declarations can coexist in s.definitions. Root s.resource and s.IngestionResource remain available for legacy ingestion. Import their helpers from segmentstream; the old public segmentstream.ingestion module is retired so s.ingestion can be the decorator. Migration examples cover the mapping and IO defaults.

Managed Google clients

The Sandbox runtime integration supplies refreshable credentials to the built-in BigQuery warehouse and GCS IO manager. Ibis remains the user-facing warehouse API; its internal official Google client renews credentials automatically throughout the authorized run. Ten minutes is the lifetime of each access token, not a limit on pipeline duration. Managed execution does not provide general ADC support. See runtime lifecycle and credential brokering. Managed Dagster execution uses the backend compute provider API for every step, including SQL assets and checks. The coordinator owns scheduling and retries; the backend owns execution identity, scoped credentials and cleanup. See the compute provider contract.

Releases

This change targets 0.1.0a21. Publish the SDK before releasing a CLI whose starter pins it. PyPI versions are immutable; do not republish an existing version.

The protected pipeline-sdk-release.yml workflow builds a wheel and source distribution from a pipeline-sdk-v<version> tag, then uses PyPI Trusted Publishing from the pypi GitHub environment. No long-lived publishing token is stored in GitHub.

Metadata

Release files for segmentstream-pipeline 0.1.0a21

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for segmentstream-pipeline 0.1.0a21
File Size Uploaded
segmentstream_pipeline-0.1.0a21.tar.gz 207.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for segmentstream-pipeline 0.1.0a21
File Interpreter ABI Platform
segmentstream_pipeline-0.1.0a21-py3-none-any.whl Python 3 none any Details

Total release size: 295.0 kB

Release files / segmentstream_pipeline-0.1.0a21.tar.gz

Download URL segmentstream_pipeline-0.1.0a21.tar.gz
Size 207.7 kB
Tags Source
SHA-256 checksum
How to use checksums
2a3063917faf7652f3ce7f8eea5b0e2b89faebb6331d4c6b2e941cf49aa76e47
BLAKE2b-256 checksum
How to use checksums
bfa7a381aa1a3496a020afbfe6dc96bcd7232a7f1be672f86d73993216ae5d4c
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 Sep 7, 2026.

Transparency log

Release files / segmentstream_pipeline-0.1.0a21-py3-none-any.whl

Download URL segmentstream_pipeline-0.1.0a21-py3-none-any.whl
Size 87.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f0eae7b9d35c8e6e54064c1b637ec86c589000c985526c72fbdbc5e9715e602a
BLAKE2b-256 checksum
How to use checksums
51d4b917afb5af48ff7f62bf2bcc1e159c724db47ccae90f8628f4c35b682ff6
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 Sep 7, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0a21 This release

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