Append-only time-series table format with gap/overlap tracking (Python bindings).
Project description
timeseries-table-format (Python)
Python-first workflow for managing local, append-only time-series tables stored as Parquet
segments on disk, with SQL querying (DataFusion) that returns pyarrow.Table.
- PyPI:
timeseries-table-format - Import:
timeseries_table_format - Docs: https://mag1cfrog.github.io/timeseries-table-format/
v0 is local-filesystem-only (no S3/object storage backend yet).
Install
pip install timeseries-table-format
Requires: Python 3.10+. pyarrow is installed automatically (dependency: pyarrow>=23.0.0).
If pip tries to build from source (Rust errors), see Troubleshooting below.
Verify installation
import timeseries_table_format as ttf
out = ttf.Session().sql("select 1 as x")
print(type(out)) # pyarrow.Table
Development: build and test locally
To run the Python test suite against the local editable Rust extension, build the extension into
the repo virtualenv first, then run pytest with the same interpreter.
cd python
uv run -p .venv/bin/python maturin develop --features test-utils
uv run --no-sync -C build-args="--features test-utils" pytest -q
Return type and interop
Session.sql(...) returns a pyarrow.Table.
- Polars:
pip install polars, thenpolars.from_arrow(out)
Notebook display (Jupyter/IPython)
In IPython/Jupyter (including VS Code notebooks), pyarrow.Table results will display as a bounded HTML preview by default (the return type is still a real pyarrow.Table).
- Defaults:
max_rows=20(head/tail),max_cols=50(left/right),max_cell_chars=2000 - Opt-out: set
TTF_NOTEBOOK_DISPLAY=0before importingtimeseries_table_format, or calltimeseries_table_format.disable_notebook_display() - Configure: call
timeseries_table_format.enable_notebook_display(max_rows=..., max_cols=..., max_cell_chars=..., align=...) - Config file (TOML): set
TTF_NOTEBOOK_CONFIG=path/to/ttf.tomlbefore importingtimeseries_table_format(or calltimeseries_table_format.load_notebook_display_config("path/to/ttf.toml")) (On Python 3.10, installtomlito enable TOML parsing.) - Alignment:
align="right"(default) oralign="auto"(strings left, numbers right); auto-enable can be configured withTTF_NOTEBOOK_ALIGN=auto|left|right - Cells are visually clipped to a bounded column width with an ellipsis indicator; copying a cell copies the underlying value (up to
max_cell_chars).
Example ttf.toml:
[notebook_display]
max_rows = 20
max_cols = 50
max_cell_chars = 2000
align = "auto"
Maintainers: releasing the Python package
The PyPI package version is derived from crates/timeseries-table-python/Cargo.toml (via maturin).
If you change the pure-Python sources under python/src/ (or python/pyproject.toml / python/README.md),
CI will automatically update crates/timeseries-table-python/python-src.stamp on PRs from branches in
this repository.
If you need to update it locally (e.g. working on a fork, or before pushing), run:
python3 scripts/update_python_wheel_stamp.py
If your development environment uses the repo venv, you can also run:
python/.venv/bin/python scripts/update_python_wheel_stamp.py
CI enforces the stamp, and it helps the release automation notice python-only changes for version bumps.
Quickstart: create → append → query
import tempfile
from pathlib import Path
import pyarrow as pa
import pyarrow.parquet as pq
import timeseries_table_format as ttf
with tempfile.TemporaryDirectory() as d:
table_root = Path(d) / "my_table"
tbl = ttf.TimeSeriesTable.create(
table_root=str(table_root),
time_column="ts",
bucket="1h",
entity_columns=["symbol"],
timezone=None,
)
seg_path = table_root / "incoming" / "prices.parquet"
seg_path.parent.mkdir(parents=True, exist_ok=True)
pq.write_table(
pa.table(
{
"ts": pa.array([0, 3_600 * 1_000_000, 7_200 * 1_000_000], type=pa.timestamp("us")),
"symbol": pa.array(["NVDA", "NVDA", "NVDA"], type=pa.string()),
"close": pa.array([10.0, 20.0, 30.0], type=pa.float64()),
}
),
str(seg_path),
)
tbl.append_parquet(str(seg_path))
sess = ttf.Session()
sess.register_tstable("prices", str(table_root))
out = sess.sql("select ts, symbol, close from prices order by ts")
print(out) # pyarrow.Table
Bucket size (important):
bucket=1hdoes not resample your data. It defines the time grid used for overlap detection and coverage tracking. Example: withbucket=1h, timestamps10:05and10:55fall into the same bucket (10:00–11:00). See https://mag1cfrog.github.io/timeseries-table-format/concepts/bucketing_and_overlap/
Join multiple tables
# Aligned with python/examples/register_and_join_two_tables.py
import tempfile
from pathlib import Path
import pyarrow as pa
import pyarrow.parquet as pq
import timeseries_table_format as ttf
with tempfile.TemporaryDirectory() as d:
base_dir = Path(d)
prices_root = base_dir / "prices_tbl"
prices = ttf.TimeSeriesTable.create(
table_root=str(prices_root),
time_column="ts",
bucket="1h",
entity_columns=["symbol"],
timezone=None,
)
prices_seg = base_dir / "prices.parquet"
pq.write_table(
pa.table(
{
"ts": pa.array([0, 3_600 * 1_000_000], type=pa.timestamp("us")),
"symbol": pa.array(["NVDA", "NVDA"], type=pa.string()),
"close": pa.array([1.0, 2.0], type=pa.float64()),
}
),
str(prices_seg),
)
prices.append_parquet(str(prices_seg))
volumes_root = base_dir / "volumes_tbl"
volumes = ttf.TimeSeriesTable.create(
table_root=str(volumes_root),
time_column="ts",
bucket="1h",
entity_columns=["symbol"],
timezone=None,
)
volumes_seg = base_dir / "volumes.parquet"
pq.write_table(
pa.table(
{
"ts": pa.array([0, 3_600 * 1_000_000], type=pa.timestamp("us")),
"symbol": pa.array(["NVDA", "NVDA"], type=pa.string()),
"volume": pa.array([10, 20], type=pa.int64()),
}
),
str(volumes_seg),
)
volumes.append_parquet(str(volumes_seg))
sess = ttf.Session()
sess.register_tstable("prices", str(prices_root))
sess.register_tstable("volumes", str(volumes_root))
out = sess.sql(
"""
select p.ts as ts, p.symbol as symbol, p.close as close, v.volume as volume
from prices p
join volumes v
on p.ts = v.ts and p.symbol = v.symbol
order by p.ts
"""
)
print(out) # pyarrow.Table
Parameterized queries
DataFusion infers placeholder types from context when possible (e.g. in WHERE clauses).
If you use placeholders in a SELECT projection without type context, you may need an explicit cast.
# Aligned with python/examples/parameterized_queries.py
import timeseries_table_format as ttf
sess = ttf.Session()
out_positional = sess.sql(
"select cast($1 as bigint) as x, cast($2 as varchar) as y",
params=[1, "hello"],
)
out_named = sess.sql(
"select cast($a as bigint) as x, cast($b as varchar) as y",
params={"a": 2, "b": "world"},
)
print(out_positional)
print(out_named)
Building from source (contributors)
Prereqs:
- Rust toolchain installed
- Python 3.10+ (CI targets 3.10–3.14; examples below use 3.12)
uvinstalled
From the repo root:
uv venv -p 3.12 python/.venv
uv pip install -p python/.venv/bin/python -e python --group dev
python/.venv/bin/python -m pytest
Type checking (ty):
uvx ty check --project python
Alternative (uses the python/ dev environment):
cd python
uv run ty check
Alternative: build with maturin directly:
cd python
uv venv -p 3.12 .venv
uv pip install -p .venv/bin/python pyarrow --group dev
uv run -p .venv/bin/python maturin develop
.venv/bin/python -m pytest
Benchmark: SQL conversion and streaming SQL
Session.sql(...) returns results as a pyarrow.Table.
By default, results are exported via the Arrow C Data Interface (C Stream) when supported, and fall back to an in-memory Arrow IPC stream otherwise. To compare the two paths and estimate the conversion overhead, run:
cd python
uv pip install -p .venv/bin/python numpy
uv run -p .venv/bin/python maturin develop --features test-utils
.venv/bin/python bench/sql_conversion.py --target-ipc-gb 2
To also benchmark the streaming SQL API (Session.sql_reader(...)), include the streaming mode:
cd python
uv pip install -p .venv/bin/python numpy
uv run -p .venv/bin/python maturin develop --features test-utils
.venv/bin/python bench/sql_conversion.py --target-ipc-gb 2 --include-streaming --summary
Environment variables (useful for debugging and benchmarks):
TTF_SQL_EXPORT_MODE=auto|ipc|c_stream(default:c_stream)TTF_SQL_EXPORT_DEBUG=1to emit a debug warning whenautofalls back from C Stream → IPCTTF_SQL_EXPORT_AUTO_RERUN_FALLBACK=1to re-run the SQL query on C Stream failure inautomode (avoids cloning batches on the hot path, but may change results for non-deterministic queries)
Optional: benchmark IPC ZSTD compression (requires building with ipc-zstd):
uv run -p .venv/bin/python maturin develop --features test-utils,ipc-zstd
.venv/bin/python bench/sql_conversion.py --target-ipc-gb 2 --ipc-compression zstd
The script can print a human-friendly terminal summary (--summary) and/or write a JSON payload
to a file (--json path). It reports separate timings for:
- end-to-end
Session.sql(...) - Rust-side query+IPC encode (
_native._testing._bench_sql_ipc) - Rust-side query+C Stream export (
_native._testing._bench_sql_c_stream) - Python-side decode/import
With --include-streaming, it also reports:
- time to first batch for
Session.sql_reader(...) - total incremental iteration time and batch counts
- process-as-you-go comparison:
Session.sql_reader(...)batch iteration vsSession.sql(...)materialize-then-process Session.sql_reader(...).read_all()vsSession.sql(...)parity- best-effort process peak RSS (
ru_maxrss) after each run - isolated child-process peak RSS for the process-as-you-go comparison
(sampled from Linux
/proc/<pid>/status)
Sample streaming benchmark results
One local Linux run over a generated dataset of about 10.5M rows:
| Query | Metric | Session.sql_reader(...) |
Session.sql(...) materialize-then-process |
Improvement |
|---|---|---|---|---|
select * from prices |
First batch available | 370.7ms |
2.312s |
84.0% earlier |
select * from prices |
Peak RSS | 2.30 GiB |
3.60 GiB |
36.1% lower |
select * from prices order by ts |
First batch available | 2.489s |
13.182s |
81.1% earlier |
select * from prices order by ts |
Peak RSS | 3.66 GiB |
4.84 GiB |
24.4% lower |
sql_reader(...).read_all() stayed in the same general performance range as Session.sql(...).
Large targets can require high peak RAM (IPC bytes + decoded Table + intermediate buffers). Start with
--target-ipc-gb 2 and scale up to 3 or 6 on a machine with plenty of memory.
If you hit Disk quota exceeded, pass --tmpdir /path/with/more/space (the bench uses a temporary
directory and cleans it up on exit).
Troubleshooting
pipis building from source / fails with Rust errors: no wheel is available for your platform/Python; install Rust and retry, or use a supported Python/platform combination.DataFusionErrorabout an unknown table name: callsess.register_tstable("name", "/path/to/table")first; usesess.tables()to list registrations.- Append fails with a time column error: the timestamp column must be an Arrow
timestamp(...), and the unit should remain consistent across segments (e.g.timestamp("us")). SchemaMismatchErroron append: the new Parquet segment schema must match the table's adopted schema (column names and types).- SQL errors / parameter placeholders: try an explicit
CAST(...)for placeholders used inSELECTprojections.
Project details
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 timeseries_table_format-0.1.4.tar.gz.
File metadata
- Download URL: timeseries_table_format-0.1.4.tar.gz
- Upload date:
- Size: 247.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eed9c4bf200a815f56f71f91a13958c0b60125b5aab2c733094319115f9dae95
|
|
| MD5 |
a9d02bd58e61d2470c4a7b916c95ac5f
|
|
| BLAKE2b-256 |
75ea18d6e47dfb9f2da868069c24bc0b4d9c6e2b16da260b209935a9b91c8dab
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4.tar.gz:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4.tar.gz -
Subject digest:
eed9c4bf200a815f56f71f91a13958c0b60125b5aab2c733094319115f9dae95 - Sigstore transparency entry: 1059422150
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 33.3 MB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1512889889407507167be2fd3d5b91cbedec13b25c23eed14f46bdc8a57cdf5
|
|
| MD5 |
411ef2bfed8c2483f2d5516f123cd557
|
|
| BLAKE2b-256 |
e37ac6fcacba291be6f4676f49981dc455c24f803e00d2f718689cceee63db58
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp314-cp314-win_amd64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp314-cp314-win_amd64.whl -
Subject digest:
d1512889889407507167be2fd3d5b91cbedec13b25c23eed14f46bdc8a57cdf5 - Sigstore transparency entry: 1059422151
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp314-cp314-manylinux_2_35_x86_64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp314-cp314-manylinux_2_35_x86_64.whl
- Upload date:
- Size: 37.8 MB
- Tags: CPython 3.14, manylinux: glibc 2.35+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d406b84a2e9078b356435a45cbb7adaa712b9eb45cd001ae50337f8ab00ec3a5
|
|
| MD5 |
f5ff9f531fa06c7f492a24934d0c6682
|
|
| BLAKE2b-256 |
582200e6fd46ef38e0eafc64c0e21f48a19c2f12d1d2aae26c77f8e2fdc9b7f3
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp314-cp314-manylinux_2_35_x86_64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp314-cp314-manylinux_2_35_x86_64.whl -
Subject digest:
d406b84a2e9078b356435a45cbb7adaa712b9eb45cd001ae50337f8ab00ec3a5 - Sigstore transparency entry: 1059422181
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 33.4 MB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
297f86977b6890ee235974e964b9019040054e99c28c0d2792446c85242ae378
|
|
| MD5 |
ceff800ae65c09a5b040655744e13913
|
|
| BLAKE2b-256 |
e630affc2d1253d234c4c02256347441b9e4199e22bb76c7ef77a76df9a3eaf7
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp314-cp314-macosx_11_0_arm64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp314-cp314-macosx_11_0_arm64.whl -
Subject digest:
297f86977b6890ee235974e964b9019040054e99c28c0d2792446c85242ae378 - Sigstore transparency entry: 1059422153
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 33.3 MB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
701246e0dda6f3ad8a6667ef3a2fcaab635a1cae9adf7401ee2498170da52468
|
|
| MD5 |
9fb78d2b4a311a07493cbf90f2c6329c
|
|
| BLAKE2b-256 |
9e619861bb9d72bf8de8d5625ce3420ce1bac5bc1b10d5bad7b977749cd3a497
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp313-cp313-win_amd64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp313-cp313-win_amd64.whl -
Subject digest:
701246e0dda6f3ad8a6667ef3a2fcaab635a1cae9adf7401ee2498170da52468 - Sigstore transparency entry: 1059422184
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp313-cp313-manylinux_2_35_x86_64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp313-cp313-manylinux_2_35_x86_64.whl
- Upload date:
- Size: 37.8 MB
- Tags: CPython 3.13, manylinux: glibc 2.35+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
253f5a723ee382894bfbda5a30b8c9f93c96718ba00da69ad89a0bb86eae85e4
|
|
| MD5 |
13da694e0f154399501914c323316bb5
|
|
| BLAKE2b-256 |
d6c65312bc799bd0323e7f0df2277e9227579a07e1e8fd103a963143c6297a28
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp313-cp313-manylinux_2_35_x86_64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp313-cp313-manylinux_2_35_x86_64.whl -
Subject digest:
253f5a723ee382894bfbda5a30b8c9f93c96718ba00da69ad89a0bb86eae85e4 - Sigstore transparency entry: 1059422168
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 33.4 MB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a7fe36dbcea30aaacef8bbca0f6f8f9f0fc91fce3c2cb02cfaa7dcccb31869a5
|
|
| MD5 |
27966a08ef5b7516c4032b2f61958131
|
|
| BLAKE2b-256 |
e0241153151df89cd6fd413deed1881aed40b224b12205a4c6ef07e743206d9a
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp313-cp313-macosx_11_0_arm64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp313-cp313-macosx_11_0_arm64.whl -
Subject digest:
a7fe36dbcea30aaacef8bbca0f6f8f9f0fc91fce3c2cb02cfaa7dcccb31869a5 - Sigstore transparency entry: 1059422179
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 33.3 MB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
321a8c784cab4c0b575cbfa34f15b8c2484a7f5c8704d1f06521042384aaa924
|
|
| MD5 |
22b9c19c4089df6f2080cab63943bc04
|
|
| BLAKE2b-256 |
0502e0b4b52fe784a3426a9bee6c28115bc38df35e7f2bea863e9ae94d6f8ecd
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp312-cp312-win_amd64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp312-cp312-win_amd64.whl -
Subject digest:
321a8c784cab4c0b575cbfa34f15b8c2484a7f5c8704d1f06521042384aaa924 - Sigstore transparency entry: 1059422163
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp312-cp312-manylinux_2_35_x86_64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp312-cp312-manylinux_2_35_x86_64.whl
- Upload date:
- Size: 37.8 MB
- Tags: CPython 3.12, manylinux: glibc 2.35+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cacb0145027deb81d147131e5d120eceb1ac08bff08db1162f351dc57ff7784c
|
|
| MD5 |
f18b0e3407d48ee93e2742395028a074
|
|
| BLAKE2b-256 |
4c5c99715e04c9e29faf0223026c5251f49313935782fc06b662b37918dce004
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp312-cp312-manylinux_2_35_x86_64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp312-cp312-manylinux_2_35_x86_64.whl -
Subject digest:
cacb0145027deb81d147131e5d120eceb1ac08bff08db1162f351dc57ff7784c - Sigstore transparency entry: 1059422174
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 33.4 MB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c583672b1380e7e5a1a9299568dc1f03664cd0fbb89b0b21281d8b0c83ae03be
|
|
| MD5 |
c04be558e780fc00d2f3d89ff146d18b
|
|
| BLAKE2b-256 |
8de5b919096e7c9d083a212a1cff827c970a2e8caa586de6bbb05ec0ac7de929
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp312-cp312-macosx_11_0_arm64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp312-cp312-macosx_11_0_arm64.whl -
Subject digest:
c583672b1380e7e5a1a9299568dc1f03664cd0fbb89b0b21281d8b0c83ae03be - Sigstore transparency entry: 1059422154
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 33.3 MB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
77b259853d16988783a99af3b8a13102c14bff481f1bc4c5d81e527594877f10
|
|
| MD5 |
aa45435616df39f7542ea9043684b48d
|
|
| BLAKE2b-256 |
a26cfd064d08e568f1d5e2a35008666a17935e393fa209ffe8e94b9c2238794d
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp311-cp311-win_amd64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp311-cp311-win_amd64.whl -
Subject digest:
77b259853d16988783a99af3b8a13102c14bff481f1bc4c5d81e527594877f10 - Sigstore transparency entry: 1059422162
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp311-cp311-manylinux_2_35_x86_64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp311-cp311-manylinux_2_35_x86_64.whl
- Upload date:
- Size: 37.8 MB
- Tags: CPython 3.11, manylinux: glibc 2.35+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b9746603608ad0284f59ab2e83dd12da853d63dac4c376b75534a94a84721902
|
|
| MD5 |
1002fdf4aa0d5b84a3c626ee829cc7ce
|
|
| BLAKE2b-256 |
e495e68272d224038bc83a2e81d93f1009330a473175a487771a64e2c344f346
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp311-cp311-manylinux_2_35_x86_64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp311-cp311-manylinux_2_35_x86_64.whl -
Subject digest:
b9746603608ad0284f59ab2e83dd12da853d63dac4c376b75534a94a84721902 - Sigstore transparency entry: 1059422165
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 33.4 MB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e3310c1aad6b467222b685c96d88f71470361a60c1e5ed616d2cf6b8cac08db6
|
|
| MD5 |
13b8f8469ba57f4f7da8838023224410
|
|
| BLAKE2b-256 |
5b2fa9a850f9dee67d146d64427b09d9f4b91d3a3cf79cebda38bb1c90f13fee
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp311-cp311-macosx_11_0_arm64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp311-cp311-macosx_11_0_arm64.whl -
Subject digest:
e3310c1aad6b467222b685c96d88f71470361a60c1e5ed616d2cf6b8cac08db6 - Sigstore transparency entry: 1059422188
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 33.3 MB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8b02221b73b793021af49e1e74af6d339ac8a5db2821fe8341dd44ff1f943b01
|
|
| MD5 |
96db713968c179cf26ec5185ed2f153f
|
|
| BLAKE2b-256 |
96e7001c9603b5aded851b0c81bae689ea5ea1109d307180fe1c8e341d9b9f17
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp310-cp310-win_amd64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp310-cp310-win_amd64.whl -
Subject digest:
8b02221b73b793021af49e1e74af6d339ac8a5db2821fe8341dd44ff1f943b01 - Sigstore transparency entry: 1059422155
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp310-cp310-manylinux_2_35_x86_64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp310-cp310-manylinux_2_35_x86_64.whl
- Upload date:
- Size: 37.8 MB
- Tags: CPython 3.10, manylinux: glibc 2.35+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
afe31114891e897b2b3d04fd90889ac9eb53c7d7f062e990ab72acffbef49acb
|
|
| MD5 |
4748adfce4f04b6191cfdf3759243d77
|
|
| BLAKE2b-256 |
ab1a13e17b7ae8d9878e6c7c581a22df8d5f5f1433cf7f01aab2dffb2af01ccd
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp310-cp310-manylinux_2_35_x86_64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp310-cp310-manylinux_2_35_x86_64.whl -
Subject digest:
afe31114891e897b2b3d04fd90889ac9eb53c7d7f062e990ab72acffbef49acb - Sigstore transparency entry: 1059422158
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type:
File details
Details for the file timeseries_table_format-0.1.4-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: timeseries_table_format-0.1.4-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 33.4 MB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3fba0d240220a29304c4e2bf8ffdf5d4aab8a7d0791811bfdb7b7e7212c3868f
|
|
| MD5 |
f323929fbf9a87846611957401458777
|
|
| BLAKE2b-256 |
be2ef07a9515710b47658f12eeb50407764896aaa88482ecbb5e0bd3f1a676d8
|
Provenance
The following attestation bundles were made for timeseries_table_format-0.1.4-cp310-cp310-macosx_11_0_arm64.whl:
Publisher:
publish-pypi.yml on mag1cfrog/timeseries-table-format
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
timeseries_table_format-0.1.4-cp310-cp310-macosx_11_0_arm64.whl -
Subject digest:
3fba0d240220a29304c4e2bf8ffdf5d4aab8a7d0791811bfdb7b7e7212c3868f - Sigstore transparency entry: 1059422176
- Sigstore integration time:
-
Permalink:
mag1cfrog/timeseries-table-format@4c356e141766c97f68fce2ab1442672bcf6906cf -
Branch / Tag:
refs/tags/timeseries-table-python-v0.1.4 - Owner: https://github.com/mag1cfrog
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@4c356e141766c97f68fce2ab1442672bcf6906cf -
Trigger Event:
push
-
Statement type: