Fast ETL-focused CSV parsing for Python, backed by Vince's CSV Parser
Project description
fastpycsv
fastpycsv is a fast Python CSV toolkit backed by Vince's CSV Parser. It is built
for ETL-style workflows where users need to scan large CSV files, filter rows,
extract selected columns, materialize NumPy arrays, or write cleaned CSV output
without routing every job through pandas or pyarrow.
The package is named fastpycsv; it does not replace or shadow Python's stdlib
csv module.
Long-form Python documentation lives in python/docs/ and is written in
Sphinx/MyST-flavored Markdown so it can be published with Read the Docs later.
Main API:
fastpycsv.reader()yields lazy, list-like row objects over the native parser.fastpycsv.read_numpy()exports selected columns as eager NumPy arrays.fastpycsv.read_numpy_batches()streams selected columns as bounded-memory NumPy batches.fastpycsv.write_csv()streams lazy rows or Python iterables through the native CSV writer.
Building
Install the local package directly from the repository root:
python -m pip install -e E:\GitHub\csv-parser
For a regular non-editable local install:
python -m pip install E:\GitHub\csv-parser
The package build uses CMake through scikit-build-core and builds the native
fastpycsv extension for the Python interpreter running pip.
Build the extension with BUILD_PYTHON=ON:
cmake -S . -B build/fastpycsv -DBUILD_PYTHON=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build/fastpycsv --target fastpycsv --config Release
For an existing top-level build configured without BUILD_PYTHON=ON, build the
fastpycsv target directly. It bootstraps a separate build/fastpycsv tree with
BUILD_PYTHON=ON, so the main build does not need to be reconfigured:
cmake --build build/x64-Release --target fastpycsv --config Release
To force a specific interpreter, configure the main build with:
cmake -S . -B build/x64-Release -DFASTPYCSV_BOOTSTRAP_PYTHON_EXECUTABLE=C:/Python314/python.exe
The fastpycsv build fetches nanobind with CMake FetchContent only when the
Python binding is requested. A normal C++ library/test build does not require
the nanobind checkout.
Reader API
Use fastpycsv.reader() for lazy row objects. By default, it consumes the first row
as column names:
import fastpycsv
with open("data.csv", newline="", encoding="utf-8") as handle:
for row in fastpycsv.reader(handle):
assert isinstance(row["name"], str)
values = row.as_list() # Materialize explicitly when needed.
Pass consume_header=False when the first input row should be emitted as data:
with open("headerless.csv", newline="", encoding="utf-8") as handle:
for row in fastpycsv.reader(handle, consume_header=False):
print(row[0])
Call row.as_dict() only when you explicitly want to materialize a row as a
plain Python dictionary.
When plain Python row objects are the desired output, use the materialized row iterators instead of converting each lazy row manually:
predicate = fastpycsv.all_of(
fastpycsv.equal("region", "el paso", case_sensitive=False),
fastpycsv.less("price", "15000"),
)
reader = fastpycsv.reader("data.csv").filter(predicate)
for row in reader.lists(["id", "price"]):
...
for batch in fastpycsv.reader("data.csv").dicts(["id", "price"]).chunks(50_000):
...
rows = fastpycsv.reader("data.csv").tuples(["id", "price"]).all()
The .lists(), .tuples(), and .dicts() iterators stream one row at a time.
Their .chunks(size) methods keep memory bounded while amortizing native
conversion overhead, and .all() is the eager bulk-export path. Native
reader.filter(predicate) uses the same fastpycsv.equal(), less(), greater(),
and all_of() predicate objects as the NumPy APIs, and validates predicate
column names before rows are consumed.
Most users can ignore reader(batch_size=...). It does not make ordinary
iteration return batches:
for row in fastpycsv.reader("data.csv"):
... # one row at a time
Use .chunks(size) when you want Python lists of rows. batch_size only tunes
how many rows fastpycsv asks the native parser to process at once while doing
filtered or projected materialization, such as .filter(...).dicts(...).all().
The default is a good starting point; change it only after benchmarking a large
filtered export.
Use fastpycsv.write_csv() to stream lazy rows or ordinary Python iterables back
out through csv-parser's native writer:
reader = fastpycsv.reader("vehicles.csv")
fastpycsv.write_csv(
"cheap_el_paso_fords.csv",
(row for row in reader if row["region"] == "el paso" and row["manufacturer"] == "ford"),
fieldnames=["id", "price", "year", "region"],
)
Dictionary rows infer their header from the first row when fieldnames is not
provided. None is written as an empty field; all other Python field values are
stringified.
Pass cast=True only when you want csv-parser's scalar classification exposed
as Python values. Empty fields become None, boolean fields become bool,
integral fields become int, floating point fields become float, timestamp
fields become datetime.datetime, and all other fields remain str.
reader = fastpycsv.reader(["id,amount,active\n", "1,2.5,true\n"], cast=True)
rows = list(reader)
assert reader.fieldnames == ["id", "amount", "active"]
assert rows[0].as_list() == [1, 2.5, True]
Use fastpycsv.read_numpy(path, columns=None, *, cast=True, predicate=None) when
you want eager column arrays suitable for pandas:
import pandas as pd
frame = pd.DataFrame(fastpycsv.read_numpy("data.csv"))
read_numpy() returns a dict keyed by column name. String columns use NumPy
2.x StringDType, nullable numeric and boolean columns widen to float64 with
NaN, and non-null integer, float, and boolean columns use dense NumPy arrays.
It does not produce object arrays. The C++ export path batches rows through
DataFrame column views and DataFrameExecutor; remaining fixed costs are
mostly NumPy StringDType construction for string-heavy data and pandas'
DataFrame materialization after the arrays have been built.
Use fastpycsv.read_numpy_batches(path, columns=None, *, predicate=None, cast=True, batch_size=50000, schema="sample") when you want streaming dictionaries of
NumPy arrays instead of one eager full-file result. schema="sample" infers
dtypes from the first bounded batch and then streams once, schema="global"
does a full pre-scan for stable dtypes matching read_numpy(), and
schema="batch" infers each emitted batch independently for true one-pass
bounded-memory streaming. With cast=False, batches are string-only and skip
schema inference. Explicit dtypes={column: dtype} overrides are not implemented
yet and are tracked as a follow-up.
For simple row filters, create native predicates and pass them to
read_numpy() or read_numpy_batches():
predicate = fastpycsv.equal("region", "el paso", case_sensitive=False)
arrays = fastpycsv.read_numpy("vehicles.csv", columns=["price", "year"], predicate=predicate)
The facade supports the common delimiter, quotechar, doublequote=True,
skipinitialspace, strict, consume_header, and fieldnames options.
Unsupported dialect features intentionally fail fast instead of silently
diverging from stdlib behavior.
Lower-level extension objects remain available where they have a clear Python
use, but fastpycsv intentionally keeps C++ configuration machinery out of the
stable Python facade.
Benchmarks
To compare reader throughput locally:
python python/benchmarks/compare_readers.py path/to/input.csv
To compare the streaming EDA script against pandas using the pyarrow CSV engine:
python python/benchmarks/compare_eda.py path/to/input.csv
To compare a streaming fastpycsv filter against pyarrow on the Used Cars-style
region == "el paso" workload:
python python/benchmarks/compare_filter.py path/to/vehicles.csv
To compare selected-column CSV-to-NumPy materialization against pyarrow:
python python/benchmarks/compare_numpy_materialization.py path/to/vehicles.csv
To compare ordinary Python object materialization against pyarrow and Polars:
python python/benchmarks/compare_python_materialization.py path/to/vehicles.csv
This compares full CSV and first+last-column subset materialization for
row-oriented list[dict] outputs and column-oriented dict[str, list] outputs.
The NumPy benchmark includes pyarrow's direct CSV reader, Dataset/Scanner path,
streaming CSV reader, and Polars lazy scanning. The Dataset row is pyarrow's
closest API for parallel predicate/projection work, but it can require explicit
column types: otherwise pyarrow may infer a narrow integer type from early rows
and later fail on wider values. The benchmark pins obvious numeric columns such
as price, year, and odometer so the comparison measures throughput instead
of schema-inference failure handling.
This runs each workload in a fresh Python process and reports wall time, throughput, and peak resident/working-set memory.
The benchmark helper searches build/ and out/ for a compatible built
fastpycsv extension and errors clearly if it is missing. Use the same Python
version that built fastpycsv; a cp310 extension, for example, will not import
under Python 3.14.
The benchmark matrix compares stdlib csv.reader, lazy fastpycsv.reader rows with
strings, lazy fastpycsv.reader rows with cast=True, stdlib csv.DictReader, raw
fastpycsv.read_numpy() array export, and pandas.DataFrame(fastpycsv.read_numpy(...)).
It reports file path, size, rows, columns, elapsed seconds, MiB/s, and rows/s.
Exploratory Summary
For a small dependency-free EDA pass over a CSV:
python python/examples/eda_summary.py path/to/input.csv
The script streams lazy fastpycsv rows once and reports per-column mean, sample
standard deviation, null count, and top observed values. Histograms use a
bounded approximate heavy-hitter sketch by default to keep memory usage stable
on high-cardinality columns. Use --top-n N to change the report size,
--top-capacity N to change the per-column sketch size, --exact-values for
exact value counts, or --no-header for headerless files.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fastpycsv-5.2.0.tar.gz.
File metadata
- Download URL: fastpycsv-5.2.0.tar.gz
- Upload date:
- Size: 56.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
948de8e945a2221801d1d1c8b4ecfa5d89a69bd2c6a2dffc04bde86c3abf556c
|
|
| MD5 |
8aa6c1ec801228476c816139ae150572
|
|
| BLAKE2b-256 |
1a4cf250b3b5201c0f34c4da662678e6b09b4a0e17cc2f0ccdf591bdbaf4260a
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0.tar.gz:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0.tar.gz -
Subject digest:
948de8e945a2221801d1d1c8b4ecfa5d89a69bd2c6a2dffc04bde86c3abf556c - Sigstore transparency entry: 1521798948
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 264.1 kB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0246a53906e5a91d0a62872d6f8c61caaef6e033ea4b80382bb7baf7bb03d422
|
|
| MD5 |
1522b9e65a441bdf801dd5c12ad755cb
|
|
| BLAKE2b-256 |
3516438317e83a6ce3f180e5ab43760e480cc801fe7f4a73128e12dae9c49914
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp314-cp314-win_amd64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp314-cp314-win_amd64.whl -
Subject digest:
0246a53906e5a91d0a62872d6f8c61caaef6e033ea4b80382bb7baf7bb03d422 - Sigstore transparency entry: 1521799024
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 408.1 kB
- Tags: CPython 3.14, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b7daa69b744a7610261a895f4c96eddef159cce996026e66b092d2b7c1655f14
|
|
| MD5 |
f4e1cb7c6812d74d428fe13c39f3cf19
|
|
| BLAKE2b-256 |
56bc9b3a1dc836fdf780defb99dc5354fa31f3317da8520767d64a8a4db56169
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
b7daa69b744a7610261a895f4c96eddef159cce996026e66b092d2b7c1655f14 - Sigstore transparency entry: 1521799079
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 217.0 kB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d3afbe483ed6051b7b8c2ab53d672f63d3f122019f376cc4f4049482a3e62b90
|
|
| MD5 |
6157bcfa42367a92a54c7444c6582725
|
|
| BLAKE2b-256 |
6175470c936b1758cf586cb2c6ec17a20861ce74ed424f26ea2fe032a36e7eb2
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp314-cp314-macosx_11_0_arm64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp314-cp314-macosx_11_0_arm64.whl -
Subject digest:
d3afbe483ed6051b7b8c2ab53d672f63d3f122019f376cc4f4049482a3e62b90 - Sigstore transparency entry: 1521799030
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 255.8 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5d470cde0a1eec8d4e2d8b7907aa1960e12bc99fa1de8359a2adedbffdcdf243
|
|
| MD5 |
435f79f04fd239777659110f068777de
|
|
| BLAKE2b-256 |
39eba2623b8d72e610bb43b095e93f96fcabe455108a043d9a09c01260250a49
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp313-cp313-win_amd64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp313-cp313-win_amd64.whl -
Subject digest:
5d470cde0a1eec8d4e2d8b7907aa1960e12bc99fa1de8359a2adedbffdcdf243 - Sigstore transparency entry: 1521799046
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 407.6 kB
- Tags: CPython 3.13, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
20ecf495aa72fc8fab75c34872099f0d1a9eb71e9f01087f19db94f3aa5a901a
|
|
| MD5 |
0e5d87265b2542b3fba0e200fd378091
|
|
| BLAKE2b-256 |
3824db8adf185aed6acc93daf134cdaa504a8ebd77bac58baa7b0a36d0e6da23
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
20ecf495aa72fc8fab75c34872099f0d1a9eb71e9f01087f19db94f3aa5a901a - Sigstore transparency entry: 1521798954
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 216.8 kB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
89a177580c0edf20546d2273520ae5fc446ee0af76cb83b1b3026d02d76a3b4d
|
|
| MD5 |
43042b406e70097ad887623f03277b66
|
|
| BLAKE2b-256 |
d99c59218e0c3fb986dedd5f47ddf10bb27f1ff890e91de7c7e473ffcd2f227d
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp313-cp313-macosx_11_0_arm64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp313-cp313-macosx_11_0_arm64.whl -
Subject digest:
89a177580c0edf20546d2273520ae5fc446ee0af76cb83b1b3026d02d76a3b4d - Sigstore transparency entry: 1521799056
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 255.9 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
46a20462876ab9cea82834d9859f6ead9f0a3039981cd1bf75a0f5bcdf279d58
|
|
| MD5 |
9e063fb8165dc421b0d0141183ad12c5
|
|
| BLAKE2b-256 |
a2c4fbb921f44c14b1532451b4b952e5fdc6d4c019e67f179836a9e098d3db61
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp312-cp312-win_amd64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp312-cp312-win_amd64.whl -
Subject digest:
46a20462876ab9cea82834d9859f6ead9f0a3039981cd1bf75a0f5bcdf279d58 - Sigstore transparency entry: 1521799005
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 407.7 kB
- Tags: CPython 3.12, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
64e7a33e9c7dc7bc10fc070e1c765d760b474837548bdc18cf04b545cd8062d8
|
|
| MD5 |
69b61b931b6ecf2cb292e224a79d9d6e
|
|
| BLAKE2b-256 |
7354de499651d00daa1fbb1710e3d3998be19d7aaa0cb61117c88c603faad3c2
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
64e7a33e9c7dc7bc10fc070e1c765d760b474837548bdc18cf04b545cd8062d8 - Sigstore transparency entry: 1521798966
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 216.8 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6de13e92d13ebfc4be81efa280c0d69c310604dd2730e80fc31f3fad82273b90
|
|
| MD5 |
960a209b963a9479ef23647dafb5bafb
|
|
| BLAKE2b-256 |
4a16881256437a982ba915a4733a52558542c72b7b116a72a185a926b8d45dd5
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp312-cp312-macosx_11_0_arm64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp312-cp312-macosx_11_0_arm64.whl -
Subject digest:
6de13e92d13ebfc4be81efa280c0d69c310604dd2730e80fc31f3fad82273b90 - Sigstore transparency entry: 1521799068
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 256.0 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c2f704e0720d95e8fee82147261c350ee644b3519f5eca48b7dcf17ac664d30b
|
|
| MD5 |
1560e6d73410704285e4ac3a3769cc38
|
|
| BLAKE2b-256 |
9dbe485504b212c353b67f41098324826160cb86f2397de35efd1bcc23dcb534
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp311-cp311-win_amd64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp311-cp311-win_amd64.whl -
Subject digest:
c2f704e0720d95e8fee82147261c350ee644b3519f5eca48b7dcf17ac664d30b - Sigstore transparency entry: 1521799035
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 409.0 kB
- Tags: CPython 3.11, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
744607870dabdaadcd4e4a7e3d94b9daf46489c7c9f579354ee9a7efc40fd088
|
|
| MD5 |
906394bb871da5c514b54bfc516511df
|
|
| BLAKE2b-256 |
f587d6ea54c237b5e631a7e58ed9b0a4232cecb554e984a0f3a9cc40ffde02ec
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
744607870dabdaadcd4e4a7e3d94b9daf46489c7c9f579354ee9a7efc40fd088 - Sigstore transparency entry: 1521798989
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 217.1 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
be15c3e438acc745e6d37fba70eba0966741c0ea8d64cff77b994f6724458b2d
|
|
| MD5 |
5e55e6b8d3644fdca719d13b40965198
|
|
| BLAKE2b-256 |
afc6625707a81692ccaa126121084619582b8600df3c888d9b0f9b8b45f0c503
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp311-cp311-macosx_11_0_arm64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp311-cp311-macosx_11_0_arm64.whl -
Subject digest:
be15c3e438acc745e6d37fba70eba0966741c0ea8d64cff77b994f6724458b2d - Sigstore transparency entry: 1521799075
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 256.0 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1b6ce6817a0859528fd8df4999006f178b9b99a52f40db179796f4ddf6ff8d50
|
|
| MD5 |
105209dd8e98d163dab61e68fa37c14b
|
|
| BLAKE2b-256 |
51cebfadfa6c25f14e4705ea0d16b8a9de875acae3bf01bf2e0a0048d9983854
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp310-cp310-win_amd64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp310-cp310-win_amd64.whl -
Subject digest:
1b6ce6817a0859528fd8df4999006f178b9b99a52f40db179796f4ddf6ff8d50 - Sigstore transparency entry: 1521799048
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 408.8 kB
- Tags: CPython 3.10, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
416ea6d4dc9a90a0851f3da99ad50b32159c06a2105ccdeee7544d9fe1cbb2a1
|
|
| MD5 |
c4edc1833658c226ec352aeb9192080b
|
|
| BLAKE2b-256 |
35453459f4f2ce7972dc3015ad430a7e5b1b2ef783bd94b26b70eda160af759c
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
416ea6d4dc9a90a0851f3da99ad50b32159c06a2105ccdeee7544d9fe1cbb2a1 - Sigstore transparency entry: 1521798982
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 216.8 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e17d24efad11496425aa061791bc44f5b69042deca987380133d1eda1a72491f
|
|
| MD5 |
71d31e893b982d99162ff280e818711c
|
|
| BLAKE2b-256 |
0c98de6e9fe49a4ebfa4e48bce300950a87b577bb9b900e44cf313fe772309e4
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp310-cp310-macosx_11_0_arm64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp310-cp310-macosx_11_0_arm64.whl -
Subject digest:
e17d24efad11496425aa061791bc44f5b69042deca987380133d1eda1a72491f - Sigstore transparency entry: 1521799047
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp39-cp39-win_amd64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp39-cp39-win_amd64.whl
- Upload date:
- Size: 256.3 kB
- Tags: CPython 3.9, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
408eb75e7d01547797a025b7670467b43b03fe9ddb851bbf1e9d3a637ad3a934
|
|
| MD5 |
c9dfce1828e1e388844dfeefba471b27
|
|
| BLAKE2b-256 |
81a4669dce1973f25dda023af3a3e66d23bd99fc5b7c917e0c9234292ac7b255
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp39-cp39-win_amd64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp39-cp39-win_amd64.whl -
Subject digest:
408eb75e7d01547797a025b7670467b43b03fe9ddb851bbf1e9d3a637ad3a934 - Sigstore transparency entry: 1521799084
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 409.0 kB
- Tags: CPython 3.9, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
be1f3d3e2b4917083c0242b1f322966ff19637018d3673f926ee252ded1fda02
|
|
| MD5 |
5ea6767ff5cb02821acfbfdf15c66b62
|
|
| BLAKE2b-256 |
fb05aae6a5ca26b6f606b6f0fa6ba4c9fdda6ec6897bffa6b547703df7946fe8
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
be1f3d3e2b4917083c0242b1f322966ff19637018d3673f926ee252ded1fda02 - Sigstore transparency entry: 1521799051
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type:
File details
Details for the file fastpycsv-5.2.0-cp39-cp39-macosx_11_0_arm64.whl.
File metadata
- Download URL: fastpycsv-5.2.0-cp39-cp39-macosx_11_0_arm64.whl
- Upload date:
- Size: 217.0 kB
- Tags: CPython 3.9, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fce2c2036c28daade86e318f32444db90f128e42592efb653b1eed0c2681bb2f
|
|
| MD5 |
baa78b7bc81095fff120e956df69637f
|
|
| BLAKE2b-256 |
d8b668e7d21ca64f0cc8101631b216dcabfc9fb3d812cb9ec6e55cc6a942b9ec
|
Provenance
The following attestation bundles were made for fastpycsv-5.2.0-cp39-cp39-macosx_11_0_arm64.whl:
Publisher:
python-publish.yml on vincentlaucsb/csv-parser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fastpycsv-5.2.0-cp39-cp39-macosx_11_0_arm64.whl -
Subject digest:
fce2c2036c28daade86e318f32444db90f128e42592efb653b1eed0c2681bb2f - Sigstore transparency entry: 1521798963
- Sigstore integration time:
-
Permalink:
vincentlaucsb/csv-parser@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Branch / Tag:
refs/tags/5.2.0 - Owner: https://github.com/vincentlaucsb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@9d7001345fada593fbcb4dfc8ee7e667a7ec299a -
Trigger Event:
release
-
Statement type: