skillfed

pipelinewise-singer-python

Singer.io utility library - PipelineWise compatible

pipelinewise-singer-python v3.0.2 934.9K downloads/30d#4,695 on PyPI8
Permissive license Active released

What it is and what it does

pipelinewise-singer-python is a Python library that implements the Singer protocol for writing standardized data records. It's a maintained fork of the original Singer library, adapted for use within PipelineWise data pipelines. The package provides functions to write schemas, records, and state information in Singer format—a line-delimited JSON standard used in data extraction and loading workflows.

The library depends on common utilities like jsonschema for validation, orjson for fast JSON serialization, and backoff for retry logic. It's designed to be used within a Python environment (typically a virtualenv) to emit Singer-formatted output that downstream tools can consume. The package supports optional logging configuration via an environment variable, allowing callers to integrate it into their own logging infrastructure.

Use it for:

  • Build custom data extractors that emit Singer-formatted records for ingestion into PipelineWise.
  • Integrate Python-based data sources into Singer-compatible ETL pipelines.
  • Write schema and state metadata alongside record data in a standardized format for data synchronization.
  • Extend PipelineWise tap connectors with Python logic that outputs Singer protocol messages.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Writes data in Singer format from Python, enabling standardized data pipeline integration compatible with PipelineWise.

Yes, if you are building or extending PipelineWise data pipelines and need to emit Singer-formatted output from Python. The package is actively maintained, has low install friction, and carries a permissive license. The narrow Python version constraint (3.12–3.13) is a significant limitation if your project targets a wider range; verify compatibility with your environment before committing.

Install

pipelinewise-singer-python on PyPI

pip

pip install pipelinewise-singer-python

uv

uv add pipelinewise-singer-python

poetry

poetry add pipelinewise-singer-python

Installing pipelinewise-singer-python

Before you install

Low install friction with a pure-Python wheel and seven common dependencies. Active maintenance with a recent release, though the repository has modest visibility (8 stars).

License in practice

Permissive Apache License 2.0 allows commercial and private use with minimal restrictions.

Quickstart

pip install pipelinewise-singer-python

import singer

singer.write_schema('my_table', {'properties': {'id': {'type': 'string', 'key': True}}}, ['id'])
singer.write_records('my_table', [{'id': 'b'}, {'id': 'd'}])
singer.write_state({'my_table': 'd'})

Requires Python 3.12 or 3.13 (capped_below_current); earlier or later versions will not work.

Verify before relying

  • Whether the narrow Python version range (3.12–3.13) is intentional or a packaging constraint that may be relaxed.
  • How actively the PipelineWise fork diverges from the upstream singer-python project and whether upstream fixes are backported.

Package facts

License not declared (permissive)
Python support capped below the current Python release (<3.13,>=3.12)
Install friction low — pure-Python wheel
Runtime dependencies 7 — wrapt, pytz, jsonschema, orjson, python-dateutil, backoff, ciso8601
Maintenance actively maintained — 114 days since the last release
Last repo commit
First released
Downloads 934,899/month — #4,695 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pipelinewise_singer_python-3.0.2-py3-none-any.whl

License :: OSI Approved :: Apache Software LicenseProgramming Language :: Python :: 3 :: Only

Tags

singer format python librarydata pipeline singer protocolpipelinewise singer integrationwrite singer schema recordsetl singer format outputdata extraction singer standard
data-pipelineetlsinger-protocol

More Database packages