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.0

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.0
File Actions
sister_software_spliterator-10.1.0-cp311-abi3-win_amd64.whl CPython 3.11 abi3 Windows x86-64 Details for sister_software_spliterator-10.1.0-cp311-abi3-win_amd64.whl
sister_software_spliterator-10.1.0-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.0-cp311-abi3-musllinux_1_2_x86_64.whl
sister_software_spliterator-10.1.0-cp311-abi3-musllinux_1_2_aarch64.whl CPython 3.11 abi3 Linux musl 1.2+ ARM64 Details for sister_software_spliterator-10.1.0-cp311-abi3-musllinux_1_2_aarch64.whl
sister_software_spliterator-10.1.0-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.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
sister_software_spliterator-10.1.0-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.0-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
sister_software_spliterator-10.1.0-cp311-abi3-macosx_11_0_arm64.whl CPython 3.11 abi3 macOS 11.0+ ARM64 Details for sister_software_spliterator-10.1.0-cp311-abi3-macosx_11_0_arm64.whl
sister_software_spliterator-10.1.0-cp311-abi3-macosx_10_12_x86_64.whl CPython 3.11 abi3 macOS 10.12+ x86-64 Details for sister_software_spliterator-10.1.0-cp311-abi3-macosx_10_12_x86_64.whl

Total release size: 6.8 MB

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

Download URL sister_software_spliterator-10.1.0-cp311-abi3-win_amd64.whl
Size 757.3 kB
Tags CPython 3.11 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
2e018bb595716dcc916b8ddfcf289dd186a16b3003a287675d6db5e45b0ce087
BLAKE2b-256 checksum
How to use checksums
5fe7a18474aba28ebb9024ea871ba2bece35294d534859ed4a94c1f0dedcc3ba
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.0-cp311-abi3-musllinux_1_2_x86_64.whl

Download URL sister_software_spliterator-10.1.0-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
2ec471f3058752249724d53175e88177412450ab975715faa53924ebb500e726
BLAKE2b-256 checksum
How to use checksums
64896cc55c937864f6810b0f65857c8990290942917e6ffdb031f59286399e93
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.0-cp311-abi3-musllinux_1_2_aarch64.whl

Download URL sister_software_spliterator-10.1.0-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
a6965180dc80dab9cc83fcc17f43cd93d46429e5c898ff8d2eeb8b2300274501
BLAKE2b-256 checksum
How to use checksums
b61f05df8d45707dc0cae782ea80d640cf77b14deb116684f7ddcb6e3ccab9f5
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.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL sister_software_spliterator-10.1.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 997.1 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
36be39acbdfdc0fcbbb5702404d3b076356cc1d9bc2ada43c75e413dd1566cd7
BLAKE2b-256 checksum
How to use checksums
d3b8ee95f9a2db6e7562ac6cd14973b9fe3c1d43fc130c7060e455be3e09d6f6
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.0-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL sister_software_spliterator-10.1.0-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 983.5 kB
Tags CPython 3.11 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
ac71683846f76c52d9718c5d70b183b888f2061f1788e4d6aa58a11359ab2b5b
BLAKE2b-256 checksum
How to use checksums
236b9605d3b1bd3e510c0c7310b070509b63886543b24fb5c91f7628a29a6904
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.0-cp311-abi3-macosx_11_0_arm64.whl

Download URL sister_software_spliterator-10.1.0-cp311-abi3-macosx_11_0_arm64.whl
Size 816.9 kB
Tags CPython 3.11 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
51d8c4cf6eb46498f07309393cde52f707ed6a614478418f2e272ccced91b2e8
BLAKE2b-256 checksum
How to use checksums
8c0d90a2611d8fc0d43b7f00ad12d6da3fdc93d881bc8ac9e5fff81013597158
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.0-cp311-abi3-macosx_10_12_x86_64.whl

Download URL sister_software_spliterator-10.1.0-cp311-abi3-macosx_10_12_x86_64.whl
Size 865.5 kB
Tags CPython 3.11 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
6059c698a016d439aabc002445b233abe6e83f5df7a6463102c9bedbc6ecd9d0
BLAKE2b-256 checksum
How to use checksums
c5245e429ab76a7f60792d05ccad432f856c20554a1f032699e5ed5b47701137
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.0

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.0-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