Skip to main content

Pyroparse

Fast and opinionated activity data parsing. Forged in Rust. Fired up in Python.

Pyroparse reads FIT files and gives you a typed PyArrow table with structured metadata. This Rust-backed parser loads a typical activity in 15 ms (see benchmark), which is roughly 20x faster than pure-Python FIT parsers. It standardizes the mess of manufacturer-specific field names into a clean, consistent schema. It round-trips to Parquet with metadata preserved. And it hands you Arrow memory that Polars, DuckDB, and pandas can consume with zero-copy.

Parse. Standardize. Serialize. Analyze. One library, no glue code.


Quick start

import pyroparse as pp

# One line to a DataFrame
df = pp.read_fit("ride.fit").to_pandas()

# Or zero-copy into Polars
import polars as pl
df = pl.from_arrow(pp.read_fit("ride.fit"))

With metadata

import pyroparse as pp

activity = pp.Activity.load_fit("ride.fit")

activity.metadata.sport         # "cycling" (open-sport-taxonomy code)
activity.metadata.start_time    # datetime(2024, 3, 19, 5, 30, tzinfo=UTC)
activity.metadata.duration      # 3842.7 (seconds)
activity.metadata.distance      # 45230.5 (meters)
activity.metadata.metrics       # {"heart_rate", "power", "speed", "cadence", "gps"}
activity.metadata.devices       # [Device(garmin edge_540 (creator), columns=[heart_rate,power])]

activity.data                   # pyarrow.Table — 21,666 rows × 11 typed columns

Lazy loading

open_fit() and open_parquet() read metadata immediately but defer data loading until you access .data. Useful when you need to inspect metadata before deciding whether to load the full timeseries.

activity = pp.Activity.open_fit("ride.fit")
activity.metadata.sport     # "cycling" — available immediately
activity.metadata.duration  # 3842.7         — no data parsed yet

activity.data               # pyarrow.Table — parsed on first access

FIT to Parquet

activity = pp.Activity.load_fit("ride.fit")
activity.to_parquet("ride.parquet")  # ZSTD compressed, metadata preserved

Load it back with data and metadata intact:

loaded = pp.Activity.load_parquet("ride.parquet")
loaded.metadata.sport      # "cycling"
loaded.metadata.distance   # 45230.5
loaded.data.num_rows       # 21,666

Batch conversion

Convert an entire directory tree of FIT files to Parquet, preserving the folder structure:

import pyroparse as pp

# In-place — parquet files appear next to fit files
pp.convert_fit_tree("~/garmin/activities")

# Mirror to a separate directory
pp.convert_fit_tree("~/garmin/activities", "~/parquet/activities")

# Use all CPU cores
result = pp.convert_fit_tree("~/garmin", "~/parquet", workers=-1, progress=True)
result.converted  # [Path("~/parquet/2024/ride.parquet"), ...]
result.errors     # [(Path("~/garmin/corrupt.fit"), FitParseError(...))]

Re-runs are idempotent — only new files are converted. Pass overwrite=True to force re-conversion.

CLI

Install the CLI tool:

curl -LsSf uvx.sh/pyroparse/install.sh | sh
# Single file
pyroparse convert morning_ride.fit
pyroparse convert morning_ride.fit -o /tmp/ride.parquet

# Directory tree, all cores, with progress bar
pyroparse convert ~/garmin/activities/ -o ~/parquet/ -w -1

# Dump raw FIT messages as JSON
pyroparse dump ride.fit
pyroparse dump ride.fit --kind event,hr_zone
pyroparse dump ride.fit --exclude record -o debug.json

Run pyroparse convert --help or pyroparse dump --help for all options.


Standardized schema

FIT files are a mess. enhanced_speed vs speed, semicircle-encoded GPS, manufacturer-specific field names. Pyroparse normalizes all of it into a single, opinionated schema with purpose-chosen Arrow types:

Column Arrow Type Notes
timestamp Timestamp(us, UTC) Microsecond, timezone-aware, always present
heart_rate Int16 BPM
power Int16 Watts
cadence Int16 RPM (cycling), SPM (running), or strokes/min (swimming)
speed Float32 m/s, normalized from enhanced_speed variants
latitude Float64 Degrees, converted from semicircles
longitude Float64 Degrees, converted from semicircles
altitude Float32 Meters, normalized from enhanced_altitude
temperature Int8 Celsius
distance Float64 Cumulative meters
lap Int16 0-based lap index, from FIT Lap messages

These 11 columns are the default output. Use columns="all" to get additional columns like core_temperature, smo2, form_power, and stance_time from CIQ apps and running dynamics, plus length and swim_stroke for pool swims (see Swimming).

Canonical columns and developer-field mappings

Manufacturer and Connect IQ developer fields are folded into canonical columns as a supported contract, so you don't have to special-case per-device naming:

Canonical column Folded sources Availability
power native power; Stryd developer field Power standard column
cadence native cadence; Stryd developer field Cadence standard column
smo2 saturated_hemoglobin_percent, SmO2, Current Saturated Hemoglobin Percent columns="all"
core_temperature core_temperature, Core Body Temperature columns="all"
enhanced_respiration_rate native enhanced_respiration_rate, already scaled to breaths/min columns="all"

Sorted, de-duplicated by default

Every FIT load returns records sorted by timestamp. By default records that share a timestamp are collapsed to one row (deduplicate=True, keeping the last), giving a unique, index-ready series that absorbs device backward-corrections:

pp.read_fit("ride.fit")                      # sorted + deduplicated (default)
pp.read_fit("ride.fit", deduplicate=False)   # keep every row (still sorted)

Pass deduplicate=False for sub-second-sampled files — e.g. a 10 Hz sensor writing several records under one 1-second FIT timestamp — where collapsing to one row per second would discard real data.

These types are native across the ecosystem, no casting, no surprises:

# DuckDB: direct Arrow scan
import duckdb
duckdb.from_arrow(activity.data).filter("power > 300").fetchdf()

Laps

Pyroparse parses FIT Lap messages and assigns a lap index to every record row. The lap column is included by default — use it for per-lap analysis with any tool:

import polars as pl
import pyroparse as pp

activity = pp.Activity.load_fit("intervals.fit")
df = pl.from_arrow(activity.data)
df.group_by("lap").agg(pl.col("power").mean(), pl.col("heart_rate").mean())

The lap_trigger column tells you what ended each lap — useful for distinguishing manual presses from auto-laps:

activity = pp.Activity.load_fit("ride.fit", extra_columns=["lap_trigger"])
df = pl.from_arrow(activity.data)

# Find laps the user deliberately marked (ignoring auto-lap noise)
manual_laps = df.filter(pl.col("lap_trigger") == "manual")["lap"].unique()

Trigger values come directly from the FIT SDK: "manual", "distance", "time", "session_end", "fitness_equipment", "position_start", "position_lap", "position_waypoint", "position_marked". The trigger describes what ended the lap — so a lap closed by pressing the lap button has lap_trigger="manual".

Files without Lap messages get lap=0 for all rows. lap_trigger is omitted entirely when no laps are present.


Swimming

Pool ("lap") swimming is special: underwater there is no GPS or speed sensor, so the FIT Record stream carries only heart rate. The movement data lives in per-pool-length Length messages. Pyroparse reconstructs the missing distance, speed, and cadence columns from those lengths, so a pool swim behaves like any other activity:

import polars as pl
import pyroparse as pp

activity = pp.Activity.load_fit("pool-swim.fit")
df = pl.from_arrow(activity.data)

df["distance"].max()            # 1500.0 — reconstructed, reconciles with the session total

# Distance per lap (interval). `distance` is cumulative, so subtract within each lap:
df.group_by("lap").agg(
    (pl.col("distance").max() - pl.col("distance").min()).alias("lap_distance")
)

The three columns are stretched over each length's records differently. distance ramps smoothly within a length, so it's a genuine per-record cumulative curve, landing on the exact total at each wall. speed and cadence are the length's average held constant across all its records (there's no intra-length pace variation to recover — the file stores one average per length), and both are null while resting. Because these are reconstructed rather than measured, pyroparse says so — and exposes the pool length:

activity.metadata.extra["pool_length"]            # 25.0 (metres)
activity.metadata.extra["reconstructed_columns"]  # ["distance", "speed", "cadence"]

Two opt-in extra columns describe the pool-length structure (via columns="all" or extra_columns=[...]):

Column Arrow Type Notes
length Int16 0-based pool-length index — the swim analogue of lap
swim_stroke Utf8 FIT stroke name: freestyle, backstroke, breaststroke, butterfly, drill, mixed, im, … (null on rest lengths)
activity = pp.Activity.load_fit("pool-swim.fit", extra_columns=["length", "swim_stroke"])
df = pl.from_arrow(activity.data)

# Average speed per length (pace per 100 m = 100 / speed)
df.group_by("length").agg(pl.col("speed").first())
# Isolate the butterfly lengths
df.filter(pl.col("swim_stroke") == "butterfly")

Open-water swims carry GPS, distance, and speed in the Record stream like any outdoor activity, so nothing is reconstructed and neither length nor swim_stroke appears. The same is true of pool swims recorded without lap-swim mode. Reconstruction activates only when a file contains Length messages, and it never overwrites a measured value.


Structured metadata

Metadata is extracted from FIT Session and DeviceInfo messages, the same source Garmin Connect and Strava use. Sport, timestamps, duration, distance, device info, available metrics: all parsed into a typed dataclass, not left as raw dicts for you to dig through.

@dataclass
class ActivityMetadata:
    sport: str | None               # open-sport-taxonomy code, e.g. "cycling", "running.trail"
    name: str | None                # user-given activity name
    start_time: datetime | None     # UTC
    start_time_local: datetime | None  # naive, local wall-clock time
    duration: float | None          # seconds
    distance: float | None          # meters
    metrics: set[str]               # {"heart_rate", "power", "speed", "cadence", "gps"}
    devices: list[Device]           # head unit + connected sensors
    extra: dict                     # sub_sport, anything format-specific

The extra dict holds format- or sport-specific fields that don't earn a top-level attribute: sub_sport (e.g. "lap_swimming"), and — for pool swims — pool_length (metres) and reconstructed_columns (which record columns were derived from Length messages rather than measured; see Swimming).

Manual overrides merge on top of file-native values. A sport override is validated against the taxonomy, so a typo fails loudly instead of silently entering your data:

activity = pp.Activity.load_fit("ride.fit", metadata={"sport": "cycling.gravel"})
activity.metadata.sport       # "cycling.gravel" (overridden)
activity.metadata.duration    # 3842.7           (preserved from FIT)

pp.Activity.load_fit("ride.fit", metadata={"sport": "gravel"})  # ValueError: invalid sport

Sport values

The sport field is an open-sport-taxonomy code, not a free-form string. The same vocabulary is used by pp.Sport (the taxonomy's Sport class, re-exported for convenience). Codes use a dotted hierarchy for disciplines and + for modifiers:

Example code Meaning
cycling cycling, discipline unspecified
cycling.road road cycling
cycling.gravel gravel cycling
cycling+stationary indoor / trainer cycling
running.trail trail running
running+stationary treadmill running
generic sport recorded but unrecognized

Specificity comes only from the FIT sport/sub_sport fields — pyroparse never guesses a discipline. A road ride saved without a sub_sport decodes to the bare cycling, and metadata.extra["sub_sport"] preserves the raw FIT sub-sport name when present.


Parquet with metadata

to_parquet() writes ZSTD-compressed Parquet with metadata embedded in the Arrow schema under the b"pyroparse" key. This means you can scan metadata across thousands of files without reading row data:

-- DuckDB: find all cycling activities
SELECT filename, json_extract_string(value, '$.sport') AS sport
FROM parquet_kv_metadata('activities/*.parquet')
WHERE key = 'pyroparse'
  AND json_extract_string(value, '$.sport') = 'cycling';

Batch operations

Scan a directory of .fit or .parquet files, filter by metadata, load only what you need:

import pyroparse as pp

# Scan: metadata only, no timeseries parsing (fast)
catalog = pp.scan_fit("~/data/activities/")
# file_path | sport | start_time | duration | distance | metrics | ...

# Same API for Parquet (reads schema footers only)
catalog = pp.scan_parquet("~/data/parquet/")

# Filter with PyArrow compute
import pyarrow.compute as pc
cycling = catalog.filter(pc.field("sport") == "cycling")

# Load only the files and columns you need
paths = cycling.column("file_path").to_pylist()
data = pp.load_fit_batch(paths, columns=["timestamp", "power", "heart_rate"])
# file_path | timestamp | power | heart_rate

Column selection

All loaders accept a columns parameter to keep only the data you need. For Parquet files, this pushes down to the reader and skips column chunks entirely. For FIT and CSV, it drops unwanted columns after parse.

# Single file: only timestamp and power
table = pp.read_fit("ride.fit", columns=["timestamp", "power"])

# Parquet: true column pushdown, skips unused data on disk
activity = pp.Activity.load_parquet("ride.parquet", columns=["timestamp", "speed"])

Polars

import polars as pl
import pyroparse.polars as ppl

ppl.scan_fit("~/data/")
  .filter(pl.col("sport") == "cycling")
  .fit.load_data(columns=["timestamp", "power"])
  .select("file_path", "timestamp", "power")

DuckDB

import pyroparse.duckdb as ppdb

catalog = ppdb.scan_fit("~/data/")
catalog.filter("sport = 'cycling'").fetchdf()

paths = catalog.filter("sport = 'cycling'").fetchnumpy()["file_path"].tolist()
data = ppdb.load_fit(paths, columns=["timestamp", "power"])
data.filter("power > 300").fetchdf()

Note: polars and duckdb are optional dependencies, install them separately.


Multi-activity FIT files

Triathlon and multisport files split cleanly by session:

session = pp.Session.load_fit("triathlon.fit")
session.activities[0].metadata.sport  # "swimming"
session.activities[1].metadata.sport  # "cycling"
session.activities[2].metadata.sport  # "running"

Activity.load_fit() raises MultipleActivitiesError for multi-activity files, no silent data loss.


Course files

Course FIT files (planned routes from Garmin Connect, Strava, race organizers) are a different file type from activities. Parse them with Course:

course = pp.Course.load_fit("stage3.fit")

course.track                          # PyArrow Table: latitude, longitude, altitude, distance
course.metadata.name                  # "Volta Ciclista a Catalunya 2026 - Stage 3"
course.metadata.distance              # 162110.4 (meters)
course.metadata.ascent                # 2358.0 (meters)
course.metadata.waypoints             # list[Waypoint] — turns, climbs, sprints, etc.
course.metadata.waypoints[0].name     # "km 0"
course.metadata.waypoints[0].type     # "generic"

course.to_parquet("stage3.parquet")   # single file, waypoints in schema metadata

Passing a course file to Activity.load_fit() raises FileTypeMismatchError with guidance to use Course instead.


Raw FIT messages

all_messages() is the escape hatch — every message in the FIT file, no pyroparse opinions applied. Field names, values, and units come straight from the FIT profile as decoded by fitparser. Use it for HR zones, workout steps, events, or anything the opinionated interface doesn't cover.

import pyroparse as pp

msgs = pp.all_messages("ride.fit")

# Each message has a kind and a list of fields
msgs[0]
# {"kind": "file_id", "fields": [{"name": "type", "number": 0, ...}, ...]}

# Get HR zones
zones = [m["fields"] for m in msgs if m["kind"] == "hr_zone"]

# Get all events in order
events = [m["fields"] for m in msgs if m["kind"] == "event"]

# Get workout interval definitions
steps = [m["fields"] for m in msgs if m["kind"] == "workout_step"]

# Access session fields that pyroparse doesn't model
sessions = [m for m in msgs if m["kind"] == "session"]
fields = {f["name"]: f["value"] for f in sessions[0]["fields"]}
fields["avg_stance_time"]  # not in ActivityMetadata, but here

Or from the command line:

pyroparse dump ride.fit --kind event,session --compact | jq '.'

CSV

activity = pp.Activity.load_csv("export.csv", metadata={"sport": "cycling"})
activity.to_parquet("ride.parquet")  # inferred + manual metadata preserved

Timestamps, duration, and available metrics are inferred automatically. Constant-value string columns (like sport=cycling in every row) are promoted to metadata.


Installation

uv add pyroparse

Or with pip:

pip install pyroparse

From source

Requires a Rust toolchain and maturin:

git clone <repo>
cd pyroparse
maturin develop --release

Releasing

Releases are automated via GitHub Actions. On tag push:

  1. CI runs the full test suite
  2. Wheels are built for Linux (x86_64, aarch64), macOS (x86_64, arm64), and Windows (x86_64)
  3. All artifacts are published to PyPI via trusted publisher (OIDC)
# 1. Bump version in pyproject.toml and Cargo.toml
# 2. Commit and tag
git commit -am "Release v0.4.0"
git tag v0.4.0
git push && git push --tags

To build wheels locally for testing (requires Docker for Linux targets):

make wheels          # all targets
./build.sh macos     # macOS only
./build.sh linux     # Linux only (Docker)

Docker

A minimal HTTP server for FIT to Parquet/CSV conversion:

docker build -t pyroparse .
docker run -p 8000:8000 pyroparse
# Upload at http://localhost:8000

Metadata

Release files for pyroparse 0.7.0

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

Source distribution (sdist)

Source distribution for pyroparse 0.7.0
File Size Uploaded
pyroparse-0.7.0.tar.gz 2.2 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for pyroparse 0.7.0
File
pyroparse-0.7.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
pyroparse-0.7.0-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
pyroparse-0.7.0-cp313-cp313-musllinux_1_2_aarch64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ ARM64 Details
pyroparse-0.7.0-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
pyroparse-0.7.0-cp313-cp313-manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64 Details
pyroparse-0.7.0-cp313-cp313-macosx_11_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 11.0+ x86-64 Details
pyroparse-0.7.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
pyroparse-0.7.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
pyroparse-0.7.0-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
pyroparse-0.7.0-cp312-cp312-musllinux_1_2_aarch64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ ARM64 Details
pyroparse-0.7.0-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
pyroparse-0.7.0-cp312-cp312-manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64 Details
pyroparse-0.7.0-cp312-cp312-macosx_11_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 11.0+ x86-64 Details
pyroparse-0.7.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
pyroparse-0.7.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
pyroparse-0.7.0-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
pyroparse-0.7.0-cp311-cp311-musllinux_1_2_aarch64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ ARM64 Details
pyroparse-0.7.0-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
pyroparse-0.7.0-cp311-cp311-manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64 Details
pyroparse-0.7.0-cp311-cp311-macosx_11_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 11.0+ x86-64 Details
pyroparse-0.7.0-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
pyroparse-0.7.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
pyroparse-0.7.0-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
pyroparse-0.7.0-cp310-cp310-musllinux_1_2_aarch64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ ARM64 Details
pyroparse-0.7.0-cp310-cp310-manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64 Details
pyroparse-0.7.0-cp310-cp310-manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ ARM64 Details
pyroparse-0.7.0-cp310-cp310-macosx_11_0_x86_64.whl CPython 3.10 CPython 3.10 macOS 11.0+ x86-64 Details
pyroparse-0.7.0-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details

Total release size: 82.6 MB

Release files / pyroparse-0.7.0.tar.gz

Download URL pyroparse-0.7.0.tar.gz
Size 2.2 MB
Tags Source
SHA-256 checksum
How to use checksums
cab92fba6bce22be64c0c8e846ca70565b03eb73e38ac9ca308198d9391d27bb
BLAKE2b-256 checksum
How to use checksums
fb37be63bfae653576992b858e652be94715d9a97297986bb2721d3a7b7aff85
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp313-cp313-win_amd64.whl

Download URL pyroparse-0.7.0-cp313-cp313-win_amd64.whl
Size 2.7 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
063a631a8e274a48fc65c853df9881e21cb7cf985d75d140656513e28f4d564b
BLAKE2b-256 checksum
How to use checksums
4640bda54ca291814e1d90365766c710a32fe86b2f090185481857cb077aef63
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL pyroparse-0.7.0-cp313-cp313-musllinux_1_2_x86_64.whl
Size 3.2 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
1007f96971ca6dc270a68f9645c13fa25ce15e0b3890d629ddb1c5bdeac110f6
BLAKE2b-256 checksum
How to use checksums
a6e1b0844b63777774e55979c85c39b75335aede8b743e664d846ed0b90513b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp313-cp313-musllinux_1_2_aarch64.whl

Download URL pyroparse-0.7.0-cp313-cp313-musllinux_1_2_aarch64.whl
Size 3.0 MB
Tags CPython 3.13 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
fe86c348a47541bdc107f2216e9d3de4d9477039d2917edace6c4178c29fe849
BLAKE2b-256 checksum
How to use checksums
ea027036d85e97f0284b899b65d4fa275f14127d8ad1eccf64eded371e17d889
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL pyroparse-0.7.0-cp313-cp313-manylinux_2_28_x86_64.whl
Size 3.0 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7ed34a51f7ea13335f66a635a3cf472488ebe3bc98e161592e4f777da0e9483f
BLAKE2b-256 checksum
How to use checksums
898fbbcd63da5fa5bbcc1b3b7e87ab06eae44731e93c6d5040ee191d2f80a0c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp313-cp313-manylinux_2_28_aarch64.whl

Download URL pyroparse-0.7.0-cp313-cp313-manylinux_2_28_aarch64.whl
Size 3.0 MB
Tags CPython 3.13 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
278f34e8a52f0dd72b7eecb44c5ede5119966756659182e99d1404da72801327
BLAKE2b-256 checksum
How to use checksums
f01d5d02b1009e73a0273a043640e1b61a1f480c9450a7d4894b42d4b901ffbd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp313-cp313-macosx_11_0_x86_64.whl

Download URL pyroparse-0.7.0-cp313-cp313-macosx_11_0_x86_64.whl
Size 2.7 MB
Tags CPython 3.13 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
4d05e634e5b848e88647a88dd1e38b00ad1e084487f0f6ce181c7abfe90129e5
BLAKE2b-256 checksum
How to use checksums
0c916fe982a6c653707e5469ad3038065f71a45fcb31df98cbe7060e5bb9f2c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL pyroparse-0.7.0-cp313-cp313-macosx_11_0_arm64.whl
Size 2.5 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1e5b064db94b9dc453bbcf0e874226f83d622691ab8b72da1b65c460df8040ce
BLAKE2b-256 checksum
How to use checksums
174396a01089af1aa097ef41f949c7456cea3175eb9c3728b5a29e26c0436628
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp312-cp312-win_amd64.whl

Download URL pyroparse-0.7.0-cp312-cp312-win_amd64.whl
Size 2.7 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
6aa805684d263b530ac4ac78d8cb847c5de1a54e66ee5a1032e54ee0202b9aa1
BLAKE2b-256 checksum
How to use checksums
2fcbfc3cb2c87fb6a6fdcf94c97e4974c4d5da377187087ddc4eff27fd95e9ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL pyroparse-0.7.0-cp312-cp312-musllinux_1_2_x86_64.whl
Size 3.2 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
baed9de30ffe7b664e9859bbc044cdf25f0a6a4aec6c64bd244d1a6fba89b8dc
BLAKE2b-256 checksum
How to use checksums
c8056e8d029bd878bdf1a2448772cf9de1b252c28531fa001589fd32780173e0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp312-cp312-musllinux_1_2_aarch64.whl

Download URL pyroparse-0.7.0-cp312-cp312-musllinux_1_2_aarch64.whl
Size 3.0 MB
Tags CPython 3.12 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
1d93fda80242ce00bd12b48cbb4427e37e871c0df3c16ef8f08aa62fea093a08
BLAKE2b-256 checksum
How to use checksums
e1f5e17a301ef7dc899c2a48adec3412946ddd95155f33ff41d751c4b9370a33
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL pyroparse-0.7.0-cp312-cp312-manylinux_2_28_x86_64.whl
Size 3.0 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
9654af99d72c19def608927361d703d5fecf066c8a60fb2ce6ad5f0d29efb79b
BLAKE2b-256 checksum
How to use checksums
ae745839e2eb258239fc161968626d714eac319cdaf4d2d997b429eff1eab793
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp312-cp312-manylinux_2_28_aarch64.whl

Download URL pyroparse-0.7.0-cp312-cp312-manylinux_2_28_aarch64.whl
Size 3.0 MB
Tags CPython 3.12 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
19ce452df937e593cc68fa48507f7fbab04cf85feb1b8652d1bb33f13a54388f
BLAKE2b-256 checksum
How to use checksums
4c63b869099cac0a372518b3220817ba99dbb1ac82ee6707d88d02c458187569
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp312-cp312-macosx_11_0_x86_64.whl

Download URL pyroparse-0.7.0-cp312-cp312-macosx_11_0_x86_64.whl
Size 2.7 MB
Tags CPython 3.12 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
90d7f28ab4e61a5da12e5f5d491be2b807073e0400b969fc7055e5ada10f1317
BLAKE2b-256 checksum
How to use checksums
e23f1c90b5f5a497636f6445c14ffceb6fd5f16bcd710e9d2a23c08a5685b52b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp312-cp312-macosx_11_0_arm64.whl

Download URL pyroparse-0.7.0-cp312-cp312-macosx_11_0_arm64.whl
Size 2.5 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1e4a73e8a9609cf301925a1fae7db02cf24f9d8e11e11e0e98618030103cf5cc
BLAKE2b-256 checksum
How to use checksums
137d47f3ff1e924ee13e2c46029f496a940b013a7d01453fe732c62f4d3a4715
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp311-cp311-win_amd64.whl

Download URL pyroparse-0.7.0-cp311-cp311-win_amd64.whl
Size 2.7 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
c9543b77fa5bc49f64f0c4117c92134528b8617bccb3773f17a6b216aeff5d82
BLAKE2b-256 checksum
How to use checksums
bf56d99f3b5376ca22b643501aaf9209220f9f43ca57374d2edeaf07b9d94428
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL pyroparse-0.7.0-cp311-cp311-musllinux_1_2_x86_64.whl
Size 3.2 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
63fb3d57e57aae487c6849a0b99f0c022321549831cb1b2f7cf29dfaa6102be1
BLAKE2b-256 checksum
How to use checksums
1c79f52d126af244e003eff4354f51b1ff1d070e7caf7bd270e081e3d6fc350c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp311-cp311-musllinux_1_2_aarch64.whl

Download URL pyroparse-0.7.0-cp311-cp311-musllinux_1_2_aarch64.whl
Size 3.0 MB
Tags CPython 3.11 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
dcb0e61f5f22474d84c4680d78cc7de177af344dfdc1caaf64db22a289316bb3
BLAKE2b-256 checksum
How to use checksums
c825ed8d0edf8d6e6d897e31c1fe236e8014df38a62e8447d063b5fd28923688
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL pyroparse-0.7.0-cp311-cp311-manylinux_2_28_x86_64.whl
Size 3.0 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
49f96ceb74dd3351c37ec1d00c65f3f614f2450b3047c5b6e55b710c8b672a78
BLAKE2b-256 checksum
How to use checksums
910f7773eaa356baf3162df4d872736f975bf1119d0d83d5495f494cb012d687
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp311-cp311-manylinux_2_28_aarch64.whl

Download URL pyroparse-0.7.0-cp311-cp311-manylinux_2_28_aarch64.whl
Size 2.9 MB
Tags CPython 3.11 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
93f148ce638d5e8ad958f1f7561a5812280329677ea27516226558c317a93ca6
BLAKE2b-256 checksum
How to use checksums
d939fead433d01cafe50795099053865088a881290e6d49234a0c016ff35fb66
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp311-cp311-macosx_11_0_x86_64.whl

Download URL pyroparse-0.7.0-cp311-cp311-macosx_11_0_x86_64.whl
Size 2.7 MB
Tags CPython 3.11 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
344a7203d7bc36a11b385c1d694d2ec1e8f84ff3cb8487b36a245a01c8e906e2
BLAKE2b-256 checksum
How to use checksums
22372d94aa22766dc7f1ef02966755502586ec2530eb6c2d6486e092bf619d6c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp311-cp311-macosx_11_0_arm64.whl

Download URL pyroparse-0.7.0-cp311-cp311-macosx_11_0_arm64.whl
Size 2.5 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
bb762d0864b4bd8b79d2a10005d08578cad7031e588e810aea3843add57b5e57
BLAKE2b-256 checksum
How to use checksums
a251c1e9d38eafe4ddb0693f63d415595707ff75c24a4f53bea6a7ffef1e1a7c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp310-cp310-win_amd64.whl

Download URL pyroparse-0.7.0-cp310-cp310-win_amd64.whl
Size 2.7 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
68244e98e4f0bac0bcce4ca3625c28d681ec19c220e5e2d71c447a042051d6ac
BLAKE2b-256 checksum
How to use checksums
79838265c980a399e36ece8171386f8e57c20fe21a78a932e155d2cb81052438
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL pyroparse-0.7.0-cp310-cp310-musllinux_1_2_x86_64.whl
Size 3.2 MB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
c5bdfc8ebe5db2a87f932473661da5063f5c2f87e7bde4496366aed16ee59ee5
BLAKE2b-256 checksum
How to use checksums
afd5a30753ea220a18d70173f2b29bf2a1137062752eefae4589359f19200cfc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp310-cp310-musllinux_1_2_aarch64.whl

Download URL pyroparse-0.7.0-cp310-cp310-musllinux_1_2_aarch64.whl
Size 3.0 MB
Tags CPython 3.10 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
cb41e864273bdd6f1e5a6208ee593bda858f413c6c347f4ec37cb74a40c03f23
BLAKE2b-256 checksum
How to use checksums
f914ebe931307da374700e75d685bc7789ecc1a8f306765691fe23b16c8f273b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp310-cp310-manylinux_2_28_x86_64.whl

Download URL pyroparse-0.7.0-cp310-cp310-manylinux_2_28_x86_64.whl
Size 3.0 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
adef355e83f5b34fc0c9b549397b23784e9ad1ef3efa0c80f56f88e56b322370
BLAKE2b-256 checksum
How to use checksums
9deb7f863785431a99170e3f373ef1bc953a880f5c1b08c27dfee4017e393545
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp310-cp310-manylinux_2_28_aarch64.whl

Download URL pyroparse-0.7.0-cp310-cp310-manylinux_2_28_aarch64.whl
Size 2.9 MB
Tags CPython 3.10 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
9576bac2cfdf87119373408a3a9384bb0e4e6a70a5badf78081c1c57066dabc4
BLAKE2b-256 checksum
How to use checksums
041e1cb351c28bf370e272f00a04f5279d60f0a2bac2974cc47ccbd41a263cba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp310-cp310-macosx_11_0_x86_64.whl

Download URL pyroparse-0.7.0-cp310-cp310-macosx_11_0_x86_64.whl
Size 2.7 MB
Tags CPython 3.10 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
68fbe533e0695fb1275d8e03daf92e397e7a219b9b4948e3f9e0e4613973fa4c
BLAKE2b-256 checksum
How to use checksums
69ef6180ff3cff80ce54e75d74bf85f8ff872727aaf2e965891622fbe6fb6763
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release files / pyroparse-0.7.0-cp310-cp310-macosx_11_0_arm64.whl

Download URL pyroparse-0.7.0-cp310-cp310-macosx_11_0_arm64.whl
Size 2.5 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
678320787b45494e600685303280c63bd60ebed96175ad846d4efd4588eb1f28
BLAKE2b-256 checksum
How to use checksums
cee3bd4a63892698954c021d676a057674336694ecee166a151668357eaeb00a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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

Transparency log

Release history Release notifications | RSS feed

0.9.0

29 release files

0.8.0

29 release files

This release

0.7.0 This release

29 release files

0.6.0

29 release files

0.5.0

29 release files

0.4.0

29 release files

0.3.6

29 release files

0.3.0

1 release file

0.2.0

1 release file

0.1.0

1 release file

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