Skip to main content

spliterator (Python)

pip install sister-software-spliterator

The distribution is sister-software-spliterator; the import name is spliterator.

Streaming readers for delimited text, CSV, TSV, PSV and JSONL, with transparent zstd and gzip decompression.

This is the Python counterpart of the spliterator npm package and the spliterator Rust crate. All three read the same input into the same rows: the same defaults, the same trimming, the same quote rules and the same errors. A shared conformance suite holds them to it.

import spliterator

for row in spliterator.read_csv("people.csv"):          # {"Full Name": "Ada", "Age": "36"}
    ...

for value in spliterator.read_jsonl("part-0000.jsonl"):  # reads part-0000.jsonl.zst when it exists
    ...

for line in spliterator.read_text(b"  a \n\n b\n"):       # "a", "b"
    ...

Async and counts

Each reader has an async twin that reads each batch on a worker thread, so the event loop never blocks on I/O:

async for row in spliterator.aread_csv("people.csv"):
    ...

count_text, count_csv, count_tsv and count_psv return the number of rows the matching reader would yield, without building them.

Sources

A source is a path (str or os.PathLike), bytes-like data, or a binary file object.

  • Decompression. A source that begins with the zstd or gzip magic bytes is decompressed before it is split, whatever its name. Concatenated frames and members are read through. Pass decompress=False to read the bytes as given.
  • Compressed siblings. A path p reads p.zst, or failing that p.gz, when one exists. Pass prefer_compressed=False to read p itself.
  • Laziness. Nothing is opened until the first row is pulled.

Defaults worth knowing

Option Default Notes
trim True Strips the ECMAScript whitespace set (U+FEFF included, U+0085 not), not str.strip's. CSV trims cells and headers after unquoting.
skip_empty True Drops empty records; for text, rows that trim to nothing; for JSONL, whitespace-only rows.
normalize_keys False CSV keys are the header as written. In object mode a repeated header raises DuplicateHeaderError.
enable_quote_handling CSV/PSV True, TSV False Input that ends inside quotes raises UnterminatedQuoteError after the rows before it.
crlf CSV True, otherwise False

drop and take count the rows you receive. JSONL rejects NaN and Infinity, keeps large integers exact, and raises JSONRowError with the failing row's index.

The full semantics table is in the repository's docs/v10.md.

Errors

SpliteratorError is the base of UnterminatedQuoteError (.byte_offset), DuplicateHeaderError (.column) and JSONRowError (.row), each also a ValueError. I/O failures raise the usual OSError subclasses.

Metadata

Release files for sister-software-spliterator 10.1.1

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

Built distributions (wheels)

Table of built distributions (wheels) for sister-software-spliterator 10.1.1
File Actions
sister_software_spliterator-10.1.1-cp311-abi3-win_amd64.whl CPython 3.11 abi3 Windows x86-64 Details for sister_software_spliterator-10.1.1-cp311-abi3-win_amd64.whl
sister_software_spliterator-10.1.1-cp311-abi3-musllinux_1_2_x86_64.whl CPython 3.11 abi3 Linux musl 1.2+ x86-64 Details for sister_software_spliterator-10.1.1-cp311-abi3-musllinux_1_2_x86_64.whl
sister_software_spliterator-10.1.1-cp311-abi3-musllinux_1_2_aarch64.whl CPython 3.11 abi3 Linux musl 1.2+ ARM64 Details for sister_software_spliterator-10.1.1-cp311-abi3-musllinux_1_2_aarch64.whl
sister_software_spliterator-10.1.1-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 abi3 Linux glibc 2.17+ x86-64 Details for sister_software_spliterator-10.1.1-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
sister_software_spliterator-10.1.1-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.11 abi3 Linux glibc 2.17+ ARM64 Details for sister_software_spliterator-10.1.1-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
sister_software_spliterator-10.1.1-cp311-abi3-macosx_11_0_arm64.whl CPython 3.11 abi3 macOS 11.0+ ARM64 Details for sister_software_spliterator-10.1.1-cp311-abi3-macosx_11_0_arm64.whl
sister_software_spliterator-10.1.1-cp311-abi3-macosx_10_12_x86_64.whl CPython 3.11 abi3 macOS 10.12+ x86-64 Details for sister_software_spliterator-10.1.1-cp311-abi3-macosx_10_12_x86_64.whl

Total release size: 6.8 MB

Release files / sister_software_spliterator-10.1.1-cp311-abi3-win_amd64.whl

Download URL sister_software_spliterator-10.1.1-cp311-abi3-win_amd64.whl
Size 758.2 kB
Tags CPython 3.11 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
af37a1c9949eae3c5fc44aa7c8d46d8011017a5d753df1b0dbcdc336a7bb0a14
BLAKE2b-256 checksum
How to use checksums
6fe0fc4f8c11512c943078fe0995ebde4b81004bafad00195719443d2b1d8436
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 28, 2026.

Transparency log

Release files / sister_software_spliterator-10.1.1-cp311-abi3-musllinux_1_2_x86_64.whl

Download URL sister_software_spliterator-10.1.1-cp311-abi3-musllinux_1_2_x86_64.whl
Size 1.2 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
c12171f16a9ccc55ae8ad39d6a3a6a8e199d400828e76e685300540ef4d8db45
BLAKE2b-256 checksum
How to use checksums
01105b69b6922892f368a6b86b8e7431ab724dcb9d4bede2288a0ee2a5e48e76
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 28, 2026.

Transparency log

Release files / sister_software_spliterator-10.1.1-cp311-abi3-musllinux_1_2_aarch64.whl

Download URL sister_software_spliterator-10.1.1-cp311-abi3-musllinux_1_2_aarch64.whl
Size 1.1 MB
Tags CPython 3.11 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
721e27e49391077aab3421c191369004662933819b8ab8b98c670b8ed6a5f023
BLAKE2b-256 checksum
How to use checksums
f698a065540b07a33343cbf6d9d3e0eab85868592b76d36b2fab5500ae5a5837
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 28, 2026.

Transparency log

Release files / sister_software_spliterator-10.1.1-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL sister_software_spliterator-10.1.1-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 997.7 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
231e74338dbd0470b272246399e6bcb3c325f3004ea0db2a0c6b580b1786a21b
BLAKE2b-256 checksum
How to use checksums
61333773e95e0b22e992f7da743308f30ae33252ce78402abd1589c89de67ed6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 28, 2026.

Transparency log

Release files / sister_software_spliterator-10.1.1-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL sister_software_spliterator-10.1.1-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 984.0 kB
Tags CPython 3.11 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
487f33c5c894f95f3ebdc904fe37c9de88486242c490e8ea1b1193c8bd5adfd7
BLAKE2b-256 checksum
How to use checksums
e2909f6e3446ab50dc187b33e337947c9580696f69ba032b2a0a1636e6e6dc58
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 28, 2026.

Transparency log

Release files / sister_software_spliterator-10.1.1-cp311-abi3-macosx_11_0_arm64.whl

Download URL sister_software_spliterator-10.1.1-cp311-abi3-macosx_11_0_arm64.whl
Size 817.5 kB
Tags CPython 3.11 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
61dfe558ace1c7e4d392f8541bf3fc99029999a0e76b0b6cec94b669beca51b5
BLAKE2b-256 checksum
How to use checksums
831c5c8a75e9e4be2e8300b2f65c6bed44c430d62234c83ce14d85ee581f2b04
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 28, 2026.

Transparency log

Release files / sister_software_spliterator-10.1.1-cp311-abi3-macosx_10_12_x86_64.whl

Download URL sister_software_spliterator-10.1.1-cp311-abi3-macosx_10_12_x86_64.whl
Size 866.1 kB
Tags CPython 3.11 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
6d5d9d052eb11c60335778338062026e39e435340b848ab411495afb7446b76c
BLAKE2b-256 checksum
How to use checksums
4766f7a3fef0f683227e088fa980055a45e3e1ef974770b7f422a9f4596f260d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 28, 2026.

Transparency log

Security for sister-software-spliterator 10.1.1

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.

Full provenance

All 7 files in this release have been uploaded with provenance metadata.

Select from 7 files

Attestation for sister_software_spliterator-10.1.1-cp311-abi3-win_amd64.whl

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 28, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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