L* model and Zarr interchange for single-cell/spatial omics, with a fast C++ core
Project description
L★
A general model for single-cell omics data — built from axes and fields — and the lightweight glue that moves data losslessly between AnnData, Seurat, SingleCellExperiment, and pagoda/conos, including their disk-backed forms (backed AnnData, Seurat v5/BPCells, SCE/HDF5Array) — so even datasets too large for memory convert in bounded memory.
L★ represents a dataset as axes (the entities you index by — cells, genes, samples, clusters) and
fields (typed data over them — counts, embeddings, graphs, labels, designs). Because everything is
just axes and fields, one small model spans the diversity of real single-cell work that a fixed
cells × genes container strains on — for example a multi-sample (even cross-species) integration kept
as a collection of heterogeneous samples rather than one concatenated matrix; a CITE-seq object with
a second, protein feature axis; or a case-control cohort carrying a statistical design over its
samples. The routine count-matrix-plus-a-clustering case stays just as simple, while the harder cases
use the same vocabulary instead of an opaque uns/misc blob (see Why lstar?).
In the short term, the most immediately useful thing this buys you is moving data between the formats people already use. Each existing container — AnnData (Python), Seurat and SingleCellExperiment (R), pagoda/conos — fixes a few named slots; routing a dataset through L★ converts one to another while preserving the meaning of each piece and reporting anything a target can't hold instead of dropping it silently.
lstar is available in Python, R, and C++ (sharing one fast C++ core), reads and writes a portable Zarr-based format, and is built to scale. Everything heavy can be streamed in bounded memory — convert a multi-gigabyte dataset, write a store, or compute per-gene statistics without ever loading the whole matrix, so work that needs a big machine today runs on a laptop (see Large data: lazy reads and streaming). You can also open a million-cell dataset over the network and read just the parts you need.
Status: early development, not yet released. Working today: read/write the same store from Python, C++, and R; profiles for AnnData, Seurat (legacy v2 → v5), SingleCellExperiment, and Conos; the collection model; lazy/streaming reads; a browser/WebAssembly data layer.
Why lstar?
Three things are hard with today's fixed-schema containers, and L★ is designed around them:
- Conversion is lossy and pairwise. Every container hard-codes a few named slots; what fits the slots converts, and the rest is lost. Routing every format through one shared model with a shared vocabulary makes conversion lossless on the common core and explicit about the remainder.
- The interesting results have no home. A gene-regulatory network, a cell–cell communication
tensor, RNA-velocity graphs, a fitted model — none of these fit a
cells × genesslot, so they end up as opaque blobs inuns/misc. In L★ they are ordinary, typed, queryable fields. - A study is many samples, not one matrix. Different donors, conditions, even species and gene sets cannot be honestly concatenated into a single matrix. L★ keeps a multi-sample study as a collection of heterogeneous parts joined by a graph.
If you only ever need to move data between AnnData, Seurat, and SCE, point 1 is reason enough to use lstar. Points 2 and 3 are why the model is shaped the way it is.
Converting between formats (the common case)
One command — lstar convert detects each format from its path, routes through the L★ store (in-process
for Python formats, an Rscript bridge for Seurat/SCE), and reports what crossed:
lstar convert pbmc.h5ad pbmc.rds # AnnData (Python) -> Seurat (R), bridged automatically
lstar convert atlas.h5ad atlas.lstar.zarr # -> a portable L* store (--to sce for SingleCellExperiment)
lstar convert pbmc.rds pbmc.h5ad --report # + a fidelity report (every field, and what was `dropped`)
Two things make it more than a one-liner:
-
a fidelity report (
--report/--report-json) lists every axis and field with its role, state, andprovenance, and — crucially —dropped: what the target couldn't represent, made visible rather than silently lost. -
a native-acceptance check (
--check, on by default;--strictto gate the exit code) opens the result in its own library and runs a canonical-ops smoke (scanpy / Seurat / scran), so you know the native analysis tools will accept it — not just that the bytes round-tripped. -
a package-free fallback (
--backend auto|native|direct): each conversion uses the format's native package when it's installed, else lstar's own codec — so you don't need the domain packages for the common cases. What works without the native packages:convert (no native package) needs only .h5ad↔ store — read and writelstar+h5pySeurat .rds↔ store — read and writelstar+ base R (no SeuratObject)SCE .rds→ store — readlstar+ base R (no SingleCellExperiment)store → SCE .rds(write) ·.h5mu↔ storenative-only — needs SingleCellExperiment/mudataAt a wall (an unknown on-disk version, a
BPCells-backed matrix) it stops and names exactly what to install. The heavy analysis packages (scanpy / full Seurat / scran) are never needed to convert — only for the optional--check. Details: docs/conversions.md.
Under the hood it is just write_Y(read_X(...)) with the on-disk L★ store as the bridge between the two
languages, which you can also drive directly:
python3 -c 'import anndata as ad, lstar; from lstar.profiles.anndata import read_anndata
lstar.write(read_anndata(ad.read_h5ad("pbmc.h5ad")), "pbmc.lstar.zarr")' # AnnData -> L* store
Rscript -e 'library(lstar); saveRDS(write_seurat(lstar_read("pbmc.lstar.zarr")), "pbmc.rds")' # -> Seurat
The shared-vocabulary core — raw counts, normalized/scaled expression, PCA (scores and gene
loadings), UMAP/t-SNE, clusterings, cell/gene metadata — survives. Whatever the target can't hold (e.g.
neighbor graphs through Seurat) is listed in the dataset's dropped manifest, so nothing vanishes
unannounced. A runnable, commented version is
examples/convert_h5ad_to_seurat.sh.
See docs/conversions.md for the full glue guide (every reader/writer, the conversion matrix, what is preserved vs. recorded as dropped, version detection) and docs/mapping.md for the deterministic role→slot contract — what lands where in each target, and the native-acceptance check that verifies the native tools won't choke.
Building a dataset directly
If you want to author or inspect L★ data, the model is just axes (the things you index by) and fields (typed data over them):
import scipy.sparse as sp, lstar
ds = lstar.Dataset(kind="sample")
ds.add_axis("cells", [f"cell{i}" for i in range(100)])
ds.add_axis("genes", [f"g{i}" for i in range(50)])
# A field declares what it IS (a `measure` over cells × genes) — no fixed "X" slot.
ds.add_field("counts", sp.random(100, 50, density=0.1, format="csc"),
role="measure", span=["cells", "genes"], state="raw")
lstar.write(ds, "sample.lstar.zarr")
ds2 = lstar.read("sample.lstar.zarr") # also readable from R and C++
A field's role (measure, embedding, loading, relation, label, …) says what kind of object
it is. A new kind of result is a new field with a role — never a change to the format. See
docs/model.md.
Two design choices worth knowing
Collections, not one big matrix. A multi-sample study is stored as a samples axis plus
per-sample cells.{s}/genes.{s} axes and measures (samples may differ in cells and genes), with a
union cells axis for the joint analysis (embedding, clusters, and the integration graph as a
relation). The R package ingests a Conos object (write_conos) and a split Seurat v5 assay
this way — see examples/conos_collection_demo.R.
Versions are recognized, not assumed. Formats change shape across releases, so the readers detect
the variant and adapt — even a legacy v2 seurat object (the pre-Assay S4 class, read via its raw
slots) through v3/v4 Assay vs. v5 Assay5 (with a fallback for SeuratObject < 5),
pagoda2's getRawCounts() accessor vs. the legacy $counts slot, AnnData's .raw slot. The detected
<format>@<version> is recorded, so a downstream reader knows what produced the data.
Large data: lazy reads and streaming
Single-cell stores get big — hundreds of thousands of cells, tens of thousands of genes. lstar is built so you never hold a whole dataset in memory to work with it: the heavy operations stream the matrix in blocks, so peak memory stays bounded and roughly flat as the data grows.
h5ad → L* conversion of the Tabula Muris Senis droplet atlas (subsampled from 25k to 245k cells, up to 502M nonzeros): the in-memory path's peak RAM grows with the matrix (to ~4 GB) while streaming stays ~flat (~0.3 GB, ~13× less at full size), for a small, roughly constant time premium. Reproduce with examples/streaming_scaling.py.
- Convert and write in bounded memory.
convert_anndata(h5ad → L*) andconvert_to_h5ad(L* → h5ad) move data between formats with a backed read + block-by-block write, never materializing the matrix;lstar.write(..., stream=True)does the same for any lazy/backed source. A multi-gigabyte atlas converts in a few hundred MB. - Open without downloading.
lstar.read(path, lazy=True)reads only the small manifest; the heavy arrays stay on disk (or on the server) until you touch them. Opening a 78-million-nonzero matrix this way costs a few megabytes of memory instead of hundreds. - Compute without materializing. A per-gene statistic (say, finding the most variable genes) is computed by streaming the matrix in column blocks, so memory stays bounded and the matrix is never expanded into a dense array.
ds = lstar.read("big.lstar.zarr", lazy=True) # opens in MBs, not GBs
# per-gene mean/variance over log-normalized counts, streamed in bounded memory:
mean, var, nnz = lstar.stream_col_stats(ds.field("counts").values,
lognorm=True, # normalize on the fly; the dense matrix is never built
n_threads=8) # use as many cores as you like
top_variable_genes = var.argsort()[::-1][:2000]
When you write a store, chunking and compression make these reads cheap (a lazy read fetches only the chunks it needs):
import numcodecs
lstar.write(ds, "big.lstar.zarr", chunk_elems=1_000_000, compressor=numcodecs.GZip(5))
In practice this is fast and frugal: opening that 40,220 × 20,138 matrix lazily uses ~9 MB instead of
~780 MB, per-gene statistics stream in bounded memory, and the heavy reductions run on a shared C++
core (used automatically when available, ~8× faster on 16 threads, identical results in Python, R, and
the browser). Measurements and the full picture are in misc/plan1.md §12.
Languages and components
| what it is | |
|---|---|
Python (python/) |
the lstar package on zarr-python, with an optional compiled C++ accelerator |
R (R/) |
the lstar package; the format profiles (Seurat, SCE, Conos) live here |
C++ (core/) |
libstar, the header-only core: the model, chunked+gzip Zarr IO, and the fast kernels |
Browser/Node (js/) |
a TypeScript reader (zarrita) + the kernels compiled to WebAssembly, for viewers |
docs/ principles, the model & format specs, conversions, worked examples
core/ libstar — the C++ core
python/ R/ the Python and R packages
js/ the browser/WASM data layer
conformance/ the shared round-trip / cross-format / cross-language test suite
examples/ runnable, commented end-to-end demos
misc/ the design proposal (Lstar_proposal.md) + plans
Documentation
- docs/principles.md — the idea and the reasoning. Start here.
- docs/conversions.md — using lstar as glue between formats (incl. the
lstar convertCLI). - docs/mapping.md — the deterministic role→slot conversion contract + native-acceptance.
- docs/model.md — the model: axes, fields, roles, collections.
- docs/format.md — the on-disk Zarr layout.
- docs/examples.md — worked, commented examples (Python, R, C++, browser).
- SUPPORT.md — format & language support matrix: what converts/reads/writes today, per format and per language, with real-vs-synthetic test coverage and the known gaps.
The full normative specification (the model, the Zarr schema, and the bidirectional profile rule
catalog for every format) is the proposal, misc/Lstar_proposal.md.
License
MIT.
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 lstar_sc-0.1.0.tar.gz.
File metadata
- Download URL: lstar_sc-0.1.0.tar.gz
- Upload date:
- Size: 258.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48f5029a68ad14f284b54e1cdac90a4923ed18672716dba441d86843b7a541bc
|
|
| MD5 |
581ee21e94ace693b4337332bc895616
|
|
| BLAKE2b-256 |
02e660051d1cd843ee04d759cbd5ea7fdc94bf161d59933a1c638a4affbc88b3
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0.tar.gz:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0.tar.gz -
Subject digest:
48f5029a68ad14f284b54e1cdac90a4923ed18672716dba441d86843b7a541bc - Sigstore transparency entry: 1854464401
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 161.6 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ccbc93724e2a49810909b936ac3c7208ecbd68b9a2c6fb5c439b15673fa1addf
|
|
| MD5 |
0da1945e40584ce2db7a6f36fdb6c02c
|
|
| BLAKE2b-256 |
e5ddf71be91018bd5e091c1296f68dcecf55f0882a1d3c350d88dec86cebd8c0
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp312-cp312-win_amd64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp312-cp312-win_amd64.whl -
Subject digest:
ccbc93724e2a49810909b936ac3c7208ecbd68b9a2c6fb5c439b15673fa1addf - Sigstore transparency entry: 1854464613
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp312-cp312-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp312-cp312-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.7 MB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a4204b1fcf7080ed8254e1669c02797c8a21f91b500f709cf70915fe7018e07
|
|
| MD5 |
763cea14e724e059d4d4c9d4fd772b98
|
|
| BLAKE2b-256 |
197fa2baea2b8148abd2d0a59a03601658ef9f1192f45ba25dcede67902bfc7b
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp312-cp312-manylinux_2_28_x86_64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp312-cp312-manylinux_2_28_x86_64.whl -
Subject digest:
8a4204b1fcf7080ed8254e1669c02797c8a21f91b500f709cf70915fe7018e07 - Sigstore transparency entry: 1854465670
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 445.9 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e3fce98d1b8f525f5a7bbac306a70cb94b9ac8d4962ecfb2d762eb89a8b9c23
|
|
| MD5 |
c36535a324c40000f71e34d487948fb8
|
|
| BLAKE2b-256 |
484c532b827884f704121d1caef42b9f70eedc7e409fb3efab7b90f2573b5125
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp312-cp312-macosx_11_0_arm64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp312-cp312-macosx_11_0_arm64.whl -
Subject digest:
1e3fce98d1b8f525f5a7bbac306a70cb94b9ac8d4962ecfb2d762eb89a8b9c23 - Sigstore transparency entry: 1854465791
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 159.0 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ff12dee2c6b3680bbef224c7ba625879ddfa0b2aa65aca985ba80254ba5ec79c
|
|
| MD5 |
2f2df5c9e11cd8fc8c7c2d85647e7e09
|
|
| BLAKE2b-256 |
f1d5bb42a6a70a5e2813fa80a7d4d61e6e0173ec0a7161c5566588a251a33248
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp311-cp311-win_amd64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp311-cp311-win_amd64.whl -
Subject digest:
ff12dee2c6b3680bbef224c7ba625879ddfa0b2aa65aca985ba80254ba5ec79c - Sigstore transparency entry: 1854464725
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp311-cp311-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp311-cp311-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0d74a8d31e90dcf2c70543e6228e3b5f23db532b62507ebd6115dd33af676e30
|
|
| MD5 |
b9598c7ec74c4137a184764cdfcb8284
|
|
| BLAKE2b-256 |
757435ca9063b0fa02617adb2ba69746c1942426c34c35c11170074d24089512
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp311-cp311-manylinux_2_28_x86_64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp311-cp311-manylinux_2_28_x86_64.whl -
Subject digest:
0d74a8d31e90dcf2c70543e6228e3b5f23db532b62507ebd6115dd33af676e30 - Sigstore transparency entry: 1854464507
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 443.0 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c184e0a398f0882680f83ddf4426a73cd112fd4f688e6c118e20bc1c3990e569
|
|
| MD5 |
f7801d315e09d09450b9effd339273ec
|
|
| BLAKE2b-256 |
e0eaa92cb9434be4a69e2dbb308f0fc1cb97a1eb2ead47d0a4824501cd0ea0bd
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp311-cp311-macosx_11_0_arm64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp311-cp311-macosx_11_0_arm64.whl -
Subject digest:
c184e0a398f0882680f83ddf4426a73cd112fd4f688e6c118e20bc1c3990e569 - Sigstore transparency entry: 1854466234
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 158.5 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ef93ca8ba696ac8351280318f5c61ed05cea078bd09cc10fc0ec2cf1d4c81ec6
|
|
| MD5 |
4de3d49f33ae19867339b38ca37327a2
|
|
| BLAKE2b-256 |
a336bd35a3308a71cfb06f8efc30d3fbd8ca1ce760284ac5940310c243046167
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp310-cp310-win_amd64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp310-cp310-win_amd64.whl -
Subject digest:
ef93ca8ba696ac8351280318f5c61ed05cea078bd09cc10fc0ec2cf1d4c81ec6 - Sigstore transparency entry: 1854466120
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp310-cp310-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp310-cp310-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.10, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fac8b6973cfd7e22ff14f6073e6583dc3aadb6b916cc2200207202549680136f
|
|
| MD5 |
11b84e80e288d5159df6aff186dd7919
|
|
| BLAKE2b-256 |
d19856629717946399f7387e04ee12883785aa7e2a769c8e6cb99e8b3fdb4caa
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp310-cp310-manylinux_2_28_x86_64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp310-cp310-manylinux_2_28_x86_64.whl -
Subject digest:
fac8b6973cfd7e22ff14f6073e6583dc3aadb6b916cc2200207202549680136f - Sigstore transparency entry: 1854465001
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 441.7 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8624877cb2a118def11af4729f51e228999dbcfc5dfd8051030eb6abb75ccf72
|
|
| MD5 |
43798560cd71a9c0376226c72647496c
|
|
| BLAKE2b-256 |
d2354b3a4ff5ec458fd849f73e19291f29c4bbba1db47dbc5507760c1a164674
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp310-cp310-macosx_11_0_arm64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp310-cp310-macosx_11_0_arm64.whl -
Subject digest:
8624877cb2a118def11af4729f51e228999dbcfc5dfd8051030eb6abb75ccf72 - Sigstore transparency entry: 1854465135
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp39-cp39-win_amd64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp39-cp39-win_amd64.whl
- Upload date:
- Size: 158.7 kB
- Tags: CPython 3.9, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6c1ed32c994bd9a81ad250c82f74aa968b2cb4bf7aae454a3014d760e1eb7e6b
|
|
| MD5 |
86204f85cf817310d5bebec225237f9e
|
|
| BLAKE2b-256 |
9d64aef618197cc27d56d0ee8b2bfe6f97361188a223838ff42a6dfa7c3035d7
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp39-cp39-win_amd64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp39-cp39-win_amd64.whl -
Subject digest:
6c1ed32c994bd9a81ad250c82f74aa968b2cb4bf7aae454a3014d760e1eb7e6b - Sigstore transparency entry: 1854464843
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp39-cp39-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp39-cp39-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.9, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0ca44da3f52933ad5096cb0970820a913cd5d995aa597b53875c97761f2cd46d
|
|
| MD5 |
f54ed13ea7c498ef40f30190f97ff4c3
|
|
| BLAKE2b-256 |
108a0b83184577c49108334ddc96af00e7300bc277051ddeda511178fc715fde
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp39-cp39-manylinux_2_28_x86_64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp39-cp39-manylinux_2_28_x86_64.whl -
Subject digest:
0ca44da3f52933ad5096cb0970820a913cd5d995aa597b53875c97761f2cd46d - Sigstore transparency entry: 1854465282
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp39-cp39-macosx_11_0_arm64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp39-cp39-macosx_11_0_arm64.whl
- Upload date:
- Size: 441.9 kB
- Tags: CPython 3.9, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
31c26f5dc95806030168ba3ec6bd69374bbfad1b127427c9213e703f2641acd2
|
|
| MD5 |
f5d278cb62ef4800b2ad82344e77b60d
|
|
| BLAKE2b-256 |
f2e4b008eabb06c608b30aa58cd0d4bdc17002a1c1f019de20d29d271fd4138b
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp39-cp39-macosx_11_0_arm64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp39-cp39-macosx_11_0_arm64.whl -
Subject digest:
31c26f5dc95806030168ba3ec6bd69374bbfad1b127427c9213e703f2641acd2 - Sigstore transparency entry: 1854465978
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp38-cp38-win_amd64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp38-cp38-win_amd64.whl
- Upload date:
- Size: 158.1 kB
- Tags: CPython 3.8, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
427444feb78b1df5896838fb44286f8ee36f23234e2e596dfa4e9f9caf8fea36
|
|
| MD5 |
4edb8c25ce1c72ded806ff94f21b70cd
|
|
| BLAKE2b-256 |
b422d03ae2bb73715cbdabe3dbed86a80bb2bf15b8d8aeddf72fe1999b5bf498
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp38-cp38-win_amd64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp38-cp38-win_amd64.whl -
Subject digest:
427444feb78b1df5896838fb44286f8ee36f23234e2e596dfa4e9f9caf8fea36 - Sigstore transparency entry: 1854465409
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp38-cp38-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp38-cp38-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.8, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8bfe8720d6e0e0261f23226119782c77bda917566572ea7d7958b047cac5ff8b
|
|
| MD5 |
b604cd85f0757a5e65ebee653b3f654a
|
|
| BLAKE2b-256 |
4298f4f5b7cf171728cf3135d30a3183386986c6b409db9859d833c4193bfad9
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp38-cp38-manylinux_2_28_x86_64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp38-cp38-manylinux_2_28_x86_64.whl -
Subject digest:
8bfe8720d6e0e0261f23226119782c77bda917566572ea7d7958b047cac5ff8b - Sigstore transparency entry: 1854465894
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type:
File details
Details for the file lstar_sc-0.1.0-cp38-cp38-macosx_11_0_arm64.whl.
File metadata
- Download URL: lstar_sc-0.1.0-cp38-cp38-macosx_11_0_arm64.whl
- Upload date:
- Size: 441.4 kB
- Tags: CPython 3.8, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bd2501428e9c14d147fcf061e8741796b80e622dfb30337fe3f73187e0860327
|
|
| MD5 |
8c741846090693d19ec2e235889478fa
|
|
| BLAKE2b-256 |
b0aeea2d160e662ae22ae3e062aa033b55a2ca230d10de5ab089f14ef73bfb4b
|
Provenance
The following attestation bundles were made for lstar_sc-0.1.0-cp38-cp38-macosx_11_0_arm64.whl:
Publisher:
wheels.yml on kharchenkolab/lstar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lstar_sc-0.1.0-cp38-cp38-macosx_11_0_arm64.whl -
Subject digest:
bd2501428e9c14d147fcf061e8741796b80e622dfb30337fe3f73187e0860327 - Sigstore transparency entry: 1854465523
- Sigstore integration time:
-
Permalink:
kharchenkolab/lstar@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/kharchenkolab
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@dc23b17207817b9a13423d96aa21e5d0a543b3aa -
Trigger Event:
release
-
Statement type: