Skip to main content

pbg-emitters

Focused emitter library for process-bigraph composites. Hosts the heavy-dependency emitters out-of-tree so the process-bigraph core stays lean.

The zero-dependency built-ins — RAMEmitter, ConsoleEmitter, JSONEmitter — continue to live in process_bigraph.emitter. This package adds:

Emitter Extra What it does
SQLiteEmitter [sqlite] One row per tick into a single .db file (stdlib).
ParquetEmitter [parquet] Hive-partitioned Parquet dataset, batched writes.

Install

pip install 'pbg-emitters[sqlite]'        # SQLiteEmitter only
pip install 'pbg-emitters[parquet]'       # ParquetEmitter only
pip install 'pbg-emitters[sqlite,parquet]'  # both

The [sqlite] extra is empty (Python's stdlib sqlite3 is enough); it exists for symmetry. The [parquet] extra pulls in duckdb, polars, pyarrow, fsspec, and tqdm.

Usage

from pbg_emitters import SQLiteEmitter, ParquetEmitter

# Wire either as a step inside a process-bigraph Composite, e.g. via the
# usual emitter_from_wires helper:
#
#   from process_bigraph.emitter import emitter_from_wires
#   spec = emitter_from_wires(wires, address='local:SQLiteEmitter')

Reader helpers for the Parquet datasets (create_duckdb_conn, read_stacked_columns, named_idx, ndidx_to_duckdb_expr, ...) are also re-exported from the top-level package.

Tests

pip install -e '.[parquet,dev]'
pytest

License

MIT. See LICENSE.

Metadata

Release files for pbg-emitters 0.2.1

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

Source distribution (sdist)

Source distribution for pbg-emitters 0.2.1
File Size Uploaded
pbg_emitters-0.2.1.tar.gz 94.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pbg-emitters 0.2.1
File Interpreter ABI Platform
pbg_emitters-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 178.0 kB

Release files / pbg_emitters-0.2.1.tar.gz

Download URL pbg_emitters-0.2.1.tar.gz
Size 94.4 kB
Tags Source
SHA-256 checksum
How to use checksums
32eee4871745440044667ae2bb94f8d69d09e649503d2cb4dd27cc836dfa4fe5
BLAKE2b-256 checksum
How to use checksums
9eacc7e8a52facc4a73ca57ce918e4a4b38e1fe9205da65048160c98c06a0822
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 Jul 3, 2026.

Transparency log

Release files / pbg_emitters-0.2.1-py3-none-any.whl

Download URL pbg_emitters-0.2.1-py3-none-any.whl
Size 83.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fa72e0269c7278e5a9f5a01a4bc7cb502109cff1007b8258c58d48a1322cf01e
BLAKE2b-256 checksum
How to use checksums
89cb7543a7d38fe7ce30019cd0d1616bd2dc249adad02b6a360ce079b8b90800
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 Jul 3, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.1 This release

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