LateWeave
lateweave is a Rust library, with Python bindings, for composing retrieval
pipelines out of engines it does not implement:
Query -> CandidateGenerator -> [Reranker] -> deterministic top-k
A Query is raw text plus named features, each stamped with the
Representation (encoder identity) that produced it and materialized at most
once. Stages name documents by their corpus and the ID the system of record
gives them, never by an engine's internal position, so each stage reads its own
indexes and whoever maintains them, in any process and with any library, never
coordinates with lateweave or with the other stages. Every stage result says
when the index it read last committed; a search ranks only the documents every
stage holds and reports the oldest of those commits as as_of. The reranker
is optional: without one, gather scores rank.
The package supplies:
Query,Feature,Candidate,Gathered,Scored,Representation;- the
CandidateGenerator,Reranker, andMultiVectorSourcecontracts; SearchPipeline: compatibility checks, optional rerank, subset enforcement, deterministic ranking, freshness, provenance, timings;MaxSimRerankerover oneMultiVectorSourceper corpus, backed by a packed CPU MaxSim kernel (SGEMM, SIMD maximum reduction, bounded token batches, worker pools);VectorStore, a reader of memory-mapped multi-vector stores for gatherers, such as BM25, that keep no document vectors, andVectorStoreWriter, one writer of their documented format.
All of it is implemented once, in the lateweave crate, which builds without
PyO3 or NumPy. The Python package is a binding over that crate: a Python
gatherer, reranker, or source is adapted to the Rust contracts, and the
pipeline, MaxSim, and stores run natively.
Nothing in the package names an engine. bm25s, FastPLAID, NextPlaid and others appear only in cookbooks.
Installation
Python
pip install lateweave
Wheels are published for CPython 3.11 to 3.14 on:
| Platform | Wheel | SGEMM |
|---|---|---|
| Linux x86_64, aarch64 | manylinux_2_28 (glibc 2.28+) |
OpenBLAS, vendored in the wheel |
| macOS arm64 | macOS 11+ | Accelerate |
| macOS x86_64 | macOS 10.15+ | Accelerate |
Nothing needs to be installed on the host: the Linux wheels carry their own OpenBLAS. Elsewhere pip builds from the source distribution, which needs a Rust toolchain and uses the bundled pure-Rust SGEMM (see Building from source).
Rust
cargo add lateweave
The crate needs Rust 1.85 or later and, by default, no system library. On
Linux, enable the openblas feature for the faster kernel if the machine has
libopenblas.so.0:
[dependencies]
lateweave = { version = "0.1", features = ["openblas"] }
Layout
Cargo.toml the `lateweave` crate (workspace root)
src/ pipeline, stages, MaxSim kernel and reranker, stores
examples/ Rust usage
bindings/python/ `lateweave-python`: the PyO3 module `lateweave._native`
python/lateweave/ the Representation dataclass, protocols, type stubs
STORE_FORMAT.md the vector store on disk, for writers outside lateweave
Using it from Rust
use std::sync::Arc;
use lateweave::{
Feature, MaxSimReranker, MultiVectorSource, Query, SearchPipeline, SearchRequest,
TokenMatrix, VectorStore, DEFAULT_FEATURE,
};
let store = Arc::new(VectorStore::open("index/vectors")?);
let representation = store.representation().clone();
let gatherer = Arc::new(MyLexicalIndex::open("index/lexical")?); // impl CandidateGenerator
let reranker = MaxSimReranker::new([store as Arc<dyn MultiVectorSource>], DEFAULT_FEATURE)?;
let pipeline = SearchPipeline::new(gatherer, Some(Arc::new(reranker)));
let query = Query::new("prescripción de una deuda tributaria").with_feature(
DEFAULT_FEATURE,
Feature::lazy(representation, move || {
TokenMatrix::new(encode(&text), dimension)
}),
);
let result = pipeline.search(&query, &SearchRequest::new(500, 100))?;
println!("reflects every write committed before {:?}", result.as_of);
for document in &result.documents {
println!("{} {:?} {}", document.rank, document.key, document.score);
}
Stage and source errors from outside lateweave travel as Error::External.
examples/stored_maxsim.rs is a complete program:
cargo run --example stored_maxsim.
Building from source
cargo test # the Rust library and its example
pip install maturin
maturin build --release # the Python wheel
That default build has no external library dependency: the MaxSim kernel's
SGEMM comes from the bundled pure-Rust matrixmultiply, so the library links
and the extension imports on any host. CONTRIBUTING.md
has the full development setup.
For a deployment, take the OpenBLAS kernel instead, as the published Linux
wheels do: about 1.75x faster on the shapes this kernel sees, bit-identical
results. Rust dependents enable the crate's openblas feature; the wheel
forwards the same feature:
maturin build --release --features pyo3/extension-module,openblas
maturin runs auditwheel's repair step, which vendors libopenblas.so.0
into lateweave.libs/ inside the wheel. So this is self-contained too: it needs
OpenBLAS on the machine that builds the wheel, not on the machines that
install it. Set OPENBLAS_LIB_DIR if libopenblas.so.0 lives outside the
linker's default search path.
Two things to know about that command line:
pyo3/extension-modulemust be repeated.--featuresreplaces the list in[tool.maturin]instead of extending it, and withoutextension-modulepyo3 linkslibpython, which auditwheel then bundles into the wheel.- The library lateweave needs exports the plain Fortran symbol
sgemm_.scipy-openblas32on PyPI does not qualify -- it is a real threaded OpenBLAS, but every symbol carries ascipy_prefix.
macOS needs no feature flag: Accelerate ships with the OS and is used automatically. ARCHITECTURE.md explains why Linux does not have an equivalent default.
Queries and features
from lateweave import Feature, Query, Representation
representation = Representation(
encoder="lightonai/LateOn-Code", encoder_revision="main", dimension=128, normalized=True
)
query = Query(
"CUDA_ERROR_ILLEGAL_ADDRESS after switching to bf16 attention",
multi_vector=Feature(representation, provider=lambda: encode(text)),
)
provider runs the first time a stage asks for the feature, so a text-only
gatherer never pays for encoding, and a gatherer and reranker share one matrix.
A stage that needs the feature from another encoder is refused before anything
runs.
Implementing a gatherer
from lateweave import Candidate, Gathered
class MyGatherer:
requires = {} # consumes query.text only
score_semantics = "my-gather-score"
def __init__(self, engine, corpus):
self.engine = engine
self.corpus = corpus
def gather(self, query, limit, *, subset=None):
searcher = self.engine.searcher() # one consistent state of the index
accept = None if subset is None else lambda id: subset.allows(self.corpus, id)
hits = searcher.search(query.text, limit=limit, accept=accept)
return Gathered(
[Candidate(self.corpus, hit.id, hit.score, rank, "my-engine") for rank, hit in enumerate(hits)],
searcher.committed_at, # an aware datetime
)
A candidate names its corpus and its document ID; how the engine finds either
is its own business. as_of is when the index state the gatherer read was
committed: every write committed before it is reflected in the candidates. It
is the commit time, not the time the gatherer reloaded.
subset is None, or a lateweave.Subset naming, per corpus, either the
documents the search may return (Subset().including(corpus, ids)) or the ones
it must not (.excluding(corpus, ids)); subset.allows(corpus, id) answers
for one document and subset.restriction(corpus) returns ("only" | "except", ids). A corpus it does not name contributes nothing, and an ID the index does
not hold is simply not a candidate. A gatherer that cannot honour it
must raise; the pipeline refuses a candidate outside the subset. A gatherer
that consumes a vector feature declares it: requires = {"multi_vector": representation}. requires and score_semantics are read once, when the
SearchPipeline is built.
One gatherer may search several corpora, such as two indexes whose hits it fuses, reporting the older of their commits.
Freshness
Indexes move while a service searches them, each at its own pace. The pipeline needs nothing from whoever moves them beyond what every stage reports:
- A document is ranked only when every stage holds it. A candidate the
reranker's index does not hold scores
Noneand is dropped, counted indiagnostics["dropped"]. So a delete is served as soon as any index applies it, and an insert once all of them have. result.as_ofis the oldest commit among the indexes the search read: every write committed to all of them before it is reflected in the result. What to do with an answer older than a service tolerates, whether to fail, warn, or serve it anyway, is the service's policy:
from datetime import datetime, timedelta, timezone
result = pipeline.search(query, gather_limit=500, limit=100)
if datetime.now(timezone.utc) - result.as_of > timedelta(minutes=1):
...
An index that is idle still has to say it is current, or it looks older than
it is: a writer commits periodically even with nothing to write, as
VectorStoreWriter.commit() does.
Implementing a reranker or a source
A reranker owns whatever it needs to score. When what it needs is the token
vectors of candidate documents, implement MultiVectorSource over them, one
per corpus, and let MaxSimReranker do the scoring:
from lateweave import MaxSimReranker
class EngineVectors:
"""Token vectors an engine already holds; no second copy."""
representation = representation
score_semantics = "engine-reconstructed-full-maxsim"
def __init__(self, engine, corpus):
self.engine = engine
self.corpus = corpus
def view(self):
return EngineView(self.engine.snapshot()) # one consistent state, with .as_of
class EngineView:
def __init__(self, snapshot):
self.snapshot = snapshot
self.as_of = snapshot.committed_at
def document_lengths(self, document_ids):
return {item: self.snapshot.length(item) for item in document_ids if item in self.snapshot}
def fetch(self, document_ids, *, threads=None):
rows = [self.snapshot.vectors(item) for item in document_ids] # float32 [tokens, D]
return np.concatenate(rows), np.asarray([len(r) for r in rows], dtype=np.int64)
reranker = MaxSimReranker([EngineVectors(laws_engine, "laws"), EngineVectors(cases_engine, "cases")])
Each rerank takes one view of every source and reads it throughout. A document
a view leaves out of document_lengths is unscored; a candidate from a corpus
with no source is an error. A VectorStore passed as a source is read
natively, without calling back into Python.
Or write a reranker directly:
from lateweave import Scored
class MyReranker:
requires = {"multi_vector": representation}
score_semantics = "my-qualified-score-semantics"
def rerank(self, query, candidates, *, budget):
vectors = query.feature("multi_vector", representation)
state = self.index.snapshot()
return Scored([state.score(vectors, c.document_id) for c in candidates], state.committed_at)
The pipeline requires exactly one score or None per candidate, in candidate
order, never NaN.
Stores
A VectorStore holds the vectors of one corpus for gatherers without document
vectors, and carries the Representation of its vectors, so it refuses
queries from any other encoder. lateweave only reads stores; the
format is plain .npy files, document IDs as JSON, and
manifest.json, so any process can write one. VectorStoreWriter is the
writer lateweave ships:
from lateweave import MaxSimReranker, SearchPipeline, VectorStore, VectorStoreWriter
# The indexing process.
writer = VectorStoreWriter.create("index/vectors", "laws", representation, encoding="float32")
writer.append(ids, packed_embeddings, lengths) # replaces any document with the same ID
writer.delete(["law-17"])
writer.commit() # publishes both together
writer.compact() # whenever convenient: reclaims space only
writer.commit()
# The serving process.
pipeline = SearchPipeline(gatherer, MaxSimReranker([VectorStore("index/vectors")]))
| Encoding | Bytes per token | Score semantics |
|---|---|---|
float32 |
4D |
float32-exact-full-maxsim |
int8 |
D + 4 |
int8-reconstructed-approximate-full-maxsim |
Appends write a new segment and deletes a tombstone file; nothing is rewritten
until a compaction, which changes no result. VectorStore.view() returns the
last commit, loading only what it has not seen; views taken earlier keep
reading their own commit.
See ARCHITECTURE.md for the ownership rules and cookbook/README.md for the BM25 recipe.
Contributing
Issues and pull requests are welcome; see CONTRIBUTING.md for the development setup and CHANGELOG.md for what changed in each release. Please report security issues privately, as described in SECURITY.md.
License
Licensed under the Apache License, Version 2.0. The batching and SIMD reduction in the MaxSim kernel derive from maxsim-cpu; see NOTICE.
Metadata
Release files for lateweave 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| lateweave-0.2.0.tar.gz | 82.4 kB | Details |
Built distributions (wheels)
Total release size: 80.5 MB
Release files / lateweave-0.2.0.tar.gz
| Download URL | lateweave-0.2.0.tar.gz |
|---|---|
| Size | 82.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e33f3031c61c7aedde69ff0c267eb6c7ccc615e8702feb6df4e913eda82e35ee
|
|
BLAKE2b-256 checksum How to use checksums |
09f0fd1fac8af32567eabb1e9af0b8deee24c55f0ac7e689308522319a5e4639
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp314-cp314-manylinux_2_28_x86_64.whl
| Download URL | lateweave-0.2.0-cp314-cp314-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 13.0 MB |
| Tags | CPython 3.14 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
b6fb258ade53fbd766b33e5ceb74d9e8e2699f131868b32b5f3953403b55d578
|
|
BLAKE2b-256 checksum How to use checksums |
04378d45a068064b5c906e60843ff3aff54af9bf97f3c021afdaacd9c68a8f31
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp314-cp314-manylinux_2_28_aarch64.whl
| Download URL | lateweave-0.2.0-cp314-cp314-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 5.8 MB |
| Tags | CPython 3.14 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
75d7c80f6fc4fff9256aabe2b86b1ff602de1a60ebc2db44982ac87deac55fb7
|
|
BLAKE2b-256 checksum How to use checksums |
06e79beab3f142e8be4b2371b3a43e6c99f6722932f5f5333a5516a18b207bda
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | lateweave-0.2.0-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 630.7 kB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
60eff222b93674d4a8e3efd46c4769d6a0393fa04631076d508f95e790352663
|
|
BLAKE2b-256 checksum How to use checksums |
7074c2c7eeb875d08ff32f8d82b6a9c8c140afcb7aa7c41017b9b1fada9e6a07
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp314-cp314-macosx_10_15_x86_64.whl
| Download URL | lateweave-0.2.0-cp314-cp314-macosx_10_15_x86_64.whl |
|---|---|
| Size | 666.1 kB |
| Tags | CPython 3.14 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
f3cb0ba44f7e1f56a5baa508f3fc92e0e6f213a9e21b61d370d610093da8af79
|
|
BLAKE2b-256 checksum How to use checksums |
4af4acb503f22d3620c9cf0b43ba56420d2bec4f2e91f87292ec994ee423da93
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp313-cp313-manylinux_2_28_x86_64.whl
| Download URL | lateweave-0.2.0-cp313-cp313-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 13.0 MB |
| Tags | CPython 3.13 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
a5cd6725902cd1dd318db60a65bf175dde43c7fa36a8d97568c04464d00659f8
|
|
BLAKE2b-256 checksum How to use checksums |
23b0fd4d4daab8115ec7840a3f3d668c442a7709ab87e04fcf697e9184e556b6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp313-cp313-manylinux_2_28_aarch64.whl
| Download URL | lateweave-0.2.0-cp313-cp313-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 5.8 MB |
| Tags | CPython 3.13 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
f873901844a7c2f6b340fbbd099dc1d240636149a9a7b3284b8a5850b2ed54fa
|
|
BLAKE2b-256 checksum How to use checksums |
2d11d64081b40e74f76a5321542e1af89cb457430ecc38f5966972a1162606bb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | lateweave-0.2.0-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 631.2 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
d46133311d37b284c3e13bb4a05f40c78e1da823af27865779fea75eae9509eb
|
|
BLAKE2b-256 checksum How to use checksums |
65a360dd8e0f69964c51bc41d68bf7b663c3a8e1e2d8a245d31987b3501fe2bb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp313-cp313-macosx_10_15_x86_64.whl
| Download URL | lateweave-0.2.0-cp313-cp313-macosx_10_15_x86_64.whl |
|---|---|
| Size | 666.3 kB |
| Tags | CPython 3.13 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
0b551b084b5db8df391a490956a349eee94ad317d6a719701478a8d8169a4b6c
|
|
BLAKE2b-256 checksum How to use checksums |
598944187d8d270c83bac15b0cbac0275f185f190a21dd8ceb084873d7ca1aee
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp312-cp312-manylinux_2_28_x86_64.whl
| Download URL | lateweave-0.2.0-cp312-cp312-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 13.0 MB |
| Tags | CPython 3.12 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
4c1944c448d920fe0b5ee8dbc3f5ed0b15f49849ccea3a3e1874e2b1efb6b3d3
|
|
BLAKE2b-256 checksum How to use checksums |
c08555f66784331b9ebd53804fdfde91fd9a049f74d2e6a05eac5643f1449e3a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp312-cp312-manylinux_2_28_aarch64.whl
| Download URL | lateweave-0.2.0-cp312-cp312-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 5.8 MB |
| Tags | CPython 3.12 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
bfffa7a3ba03e492e8a5ba0b93b6251e8cbb357a7d940716de147e9991301494
|
|
BLAKE2b-256 checksum How to use checksums |
b9e2fa7dc635e6b306f7b74b3b83db568cadc1cd9e3f8b97b170c476ef0cda28
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | lateweave-0.2.0-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 630.9 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
e54352e2d57f18d8ed70e5bc35b0f1434f2dfe3984d91cd9babeaabc5a2b8e3b
|
|
BLAKE2b-256 checksum How to use checksums |
96bf58d0736fab33cd7e3f9c2edbc04699290a2ae97cee1b5faa228f5de9ac08
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp312-cp312-macosx_10_15_x86_64.whl
| Download URL | lateweave-0.2.0-cp312-cp312-macosx_10_15_x86_64.whl |
|---|---|
| Size | 665.9 kB |
| Tags | CPython 3.12 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
2336846cee03d6016805d1f3667e58a0cbcd47baa3f045a669db8dbf5a65bbbe
|
|
BLAKE2b-256 checksum How to use checksums |
0bc5551f5e0a6a574d41d230c61a6acba1d8ac218cfcb151ff5b533e00d4b2e9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp311-cp311-manylinux_2_28_x86_64.whl
| Download URL | lateweave-0.2.0-cp311-cp311-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 13.0 MB |
| Tags | CPython 3.11 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
18557542778d45b5ba6b8fd4bfd6cc3c4ca6778ec59fbe74351b46bc19ef3f6a
|
|
BLAKE2b-256 checksum How to use checksums |
dd349324a1ef326486c9ebcae2b364524fda30517e9d1559e97c52c451bb1f56
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp311-cp311-manylinux_2_28_aarch64.whl
| Download URL | lateweave-0.2.0-cp311-cp311-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 5.8 MB |
| Tags | CPython 3.11 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
7c7060fa92c61022c8e58823c0f04c2d5f6b59452ed0605b65f2c20fcf88a1d4
|
|
BLAKE2b-256 checksum How to use checksums |
568b029b2a1965f56bb72f5e2b477f84200d9899c0e13e6ee2724a4b4722c8ca
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | lateweave-0.2.0-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 635.8 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
0526368ac516c8238ff0d7d4cd799d283d7b7de27b7c660da9f7b4eb5558766d
|
|
BLAKE2b-256 checksum How to use checksums |
0f1b806e12048df1805cde0a163c9b1d08c0b13dbd1fca2d25b86eac83d9289e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency logRelease files / lateweave-0.2.0-cp311-cp311-macosx_10_15_x86_64.whl
| Download URL | lateweave-0.2.0-cp311-cp311-macosx_10_15_x86_64.whl |
|---|---|
| Size | 658.8 kB |
| Tags | CPython 3.11 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
a221ee89a7b0ac0a1f03a46b1e710a0befbbb8c6666aac007d25f32852caf5a4
|
|
BLAKE2b-256 checksum How to use checksums |
f80c1d273931df206c2aa4456213811aba13f4d9259bae336703b78c2b9389ab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.
Transparency log