Skip to main content
Pre-release

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

SegmentStream pipeline SDK

segmentstream-pipeline is the small runtime contract between a workspace's Dagster definitions and the warehouse provisioned by SegmentStream. Dagster continues to own assets and jobs, while Ibis continues to own relational expressions. This package supplies lazy runtime configuration and durable warehouse I/O.

The initial connector supports BigQuery and full-table replacement. It reads the following non-secret configuration when a pipeline first accesses the warehouse:

  • SEGMENTSTREAM_WAREHOUSE_ENGINE
  • SEGMENTSTREAM_WAREHOUSE_CATALOG
  • SEGMENTSTREAM_WAREHOUSE_DEFAULT_NAMESPACE
  • SEGMENTSTREAM_WAREHOUSE_LOCATION (optional)

Configuration and authentication are deliberately lazy. Importing and validating definitions.py during a deployment build does not connect to a warehouse. In Cloud Run, the BigQuery connector uses the attached workload identity through Application Default Credentials.

import dagster as dg
import ibis.expr.types as ir

from segmentstream import external_table_asset, warehouse_resources


raw_orders = external_table_asset(key=["raw", "orders"])


@dg.asset(
    key=["analytics", "normalized_orders"],
    io_manager_key="warehouse_io",
    kinds={"ibis"},
)
def normalized_orders(raw_orders: ir.Table) -> ir.Table:
    return raw_orders.filter((raw_orders.status == "completed") & (raw_orders.amount > 0))


defs = dg.Definitions(
    assets=[raw_orders, normalized_orders],
    resources=warehouse_resources(),
)

Asset keys map to relations using a small convention:

  • ["orders"] uses the configured default namespace.
  • ["analytics", "orders"] uses the explicit analytics namespace.
  • Other key shapes are rejected.

For local package development, install this project in editable mode rather than adding a relative path dependency to a deployable pipeline.

Published workspace pipelines will install the provider extra:

python -m pip install "segmentstream-pipeline[bigquery]"

Releases

Releases use the version declared in pyproject.toml and are published from the pipeline-sdk-v<version> Git tag by the protected pipeline-sdk-release.yml workflow. The workflow builds the wheel and source distribution in a job without publishing credentials, then uses PyPI Trusted Publishing from the pypi GitHub environment. No long-lived PyPI token is stored in GitHub.

PyPI releases are immutable. Increment the package version before creating a new release tag; do not reuse a version that has already been uploaded.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

segmentstream_pipeline-0.1.0a1.tar.gz (76.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

segmentstream_pipeline-0.1.0a1-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

Details for the file segmentstream_pipeline-0.1.0a1.tar.gz.

File metadata

  • Download URL: segmentstream_pipeline-0.1.0a1.tar.gz
  • Upload date:
  • Size: 76.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for segmentstream_pipeline-0.1.0a1.tar.gz
Algorithm Hash digest
SHA256 92d996749669cc5a8a3eab74da7fe78e20510f8e8acc78dca5670169058f8157
MD5 f8930907be47d4b1ffc394bd57f02a98
BLAKE2b-256 2ee7b9f36c48084b181aace130d6ead3b5bcd9af0aa5408036f3541851482cc0

See more details on using hashes here.

Provenance

The following attestation bundles were made for segmentstream_pipeline-0.1.0a1.tar.gz:

Publisher: pipeline-sdk-release.yml on segmentstream/segmentstream

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file segmentstream_pipeline-0.1.0a1-py3-none-any.whl.

File metadata

File hashes

Hashes for segmentstream_pipeline-0.1.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 ac3e6f092baf87634ed8d4f8d10235d8408fb1610962131e14ccc419c2649a50
MD5 bfa43d5ac8274a0a575dc24d1a48006a
BLAKE2b-256 9c2fc6aa6ea11b162920226b3cf7abe6973d581b689b06f036990f696d389b49

See more details on using hashes here.

Provenance

The following attestation bundles were made for segmentstream_pipeline-0.1.0a1-py3-none-any.whl:

Publisher: pipeline-sdk-release.yml on segmentstream/segmentstream

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.
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