Fast exact KNN search with Vantage Point Trees — L2, L1, Chebyshev and Hamming, SIMD-accelerated
Project description
PyNear
Fast KNN search without compromise. Exact when you need exact, approximate when you need speed.
HNSW for text-embedding RAG · SQ8 for 4× memory · MIH for binary descriptors, ~40× faster than Faiss's brute-force scan at d=512, 100% recall · drop-in for scikit-learn · SIMD on x86 (AVX2/AVX-512) and ARM (NEON) · zero native deps beyond NumPy.
PyNear is a metric-space nearest-neighbour library with a C++ core covering exact (VP-Trees up to ~256-D), approximate float (HNSW + IVF-Flat, with optional int8 quantisation, for 384–1024-D embeddings / RAG), and binary / Hamming (MIH + IVF-Binary + the novel MIH-seeded HNSW) search — one small NumPy-only API with a scikit-learn drop-in and pre-built wheels (pip install pynear).
Table of Contents
- Introduction
- Why PyNear?
- Choosing an index
- Installation
- Quick start
- Migrating from scikit-learn
- Features
- Demos
- Benchmarks
- Real-World Benchmark — SIFT1M Binary
- Development
Introduction
Search, recommendation, deduplication, and retrieval-augmented generation all reduce to the same primitive: turn an item — an image, an audio clip, a document, a face — into a descriptor (a fixed-length vector or bit-string), then find the descriptors nearest to it. Similar items map to nearby points, so "find similar" becomes "find nearest neighbours."
The right way to search depends on the data, and PyNear gives you one API for all three regimes instead of forcing every problem through the same tool:
- Low-to-mid dimensions (a few up to ~256-D) — exact tree search wins. A VP-Tree prunes by distance to vantage points and returns the true nearest neighbours, no recall loss, no tuning.
- High-dimensional float vectors (512–1024-D embeddings) — exact pruning collapses (the curse of dimensionality), so IVF-Flat trades a sliver of recall for large speed-ups.
- Binary descriptors (ORB, BRIEF, perceptual hashes, SimHash) — Hamming distance plus Multi-Index Hashing uses the pigeonhole principle to find near-duplicates without scanning the whole dataset.
What people build with it:
- Image / video deduplication & copy detection — perceptual-hash / ORB
descriptors +
MIHBinaryIndex. - Audio fingerprinting (Shazam-style) — spectrogram-peak descriptors + Hamming search.
- Semantic & RAG retrieval — text/image embeddings +
IVFFlatCosineIndex. - Classic ML — drop-in
KNeighborsClassifier/Regressorbacked by VP-Trees.
New to nearest-neighbour search? See docs/intro.md for a gentle, jargon-free introduction — or the deep dive, The shared recipe behind image search, Shazam, and RAG.
Why PyNear?
| PyNear | Faiss | Annoy | scikit-learn | |
|---|---|---|---|---|
| Metric agnostic | ✅ L2, L1, L∞, cosine, Hamming | L2 / IP / cosine | L2 / cosine / Hamming | L2 / others |
| HNSW (incl. binary) | ✅ + novel MIH-seeded variant for binary | ✅ | ❌ | ❌ |
| Binary / Hamming approx | ✅ MIH + IVF, ~40× Faiss flat at d=512; faster than Faiss MIH at matched recall | ✅ MIH + IVF | ❌ | ❌ |
| scikit-learn drop-in | ✅ adapter classes | ❌ | ❌ | — |
| Zero native deps | ✅ NumPy only | ❌ compiled lib + optional GPU | ❌ | ❌ |
Choosing an index
| Your situation | Use |
|---|---|
| Text / image embeddings (cosine, 384-1024 D, want fast queries) | HNSWCosineIndex |
| Same but memory-tight (millions of vectors on one box) | HNSWL2IndexSQ8 — 4× less RAM, ~1-3% recall hit |
| Generic float L2 ANN | HNSWL2Index |
| Exact answers required (small / moderate D ≤ 256) | VPTreeL2Index (or L1, Chebyshev, Cosine) |
| Binary descriptors (perceptual hash, ORB, BRIEF, SimHash) — near-duplicate detection | MIHBinaryIndex (exact at small Hamming radius; ~40× faster than Faiss brute-force IndexBinaryFlat on 512-bit near-duplicates at 100% recall) |
| Binary + want graph fallback for larger queries | MIHSeededHNSWBinaryIndex (novel — MIH seeds the HNSW beam search) |
| Range / threshold queries on binary descriptors | BKTreeBinaryIndex |
Already on sklearn.neighbors.* |
pynear.sklearn_adapter.PyNearKNeighborsClassifier etc. — drop-in |
| Building from scratch and want the closest match to "what hnswlib does" | HNSWL2Index(M=16, ef_construction=200, ef_search=50) |
When in doubt: HNSWCosineIndex for embeddings, MIHBinaryIndex for binary, VPTreeL2Index for exact.
📖 For HNSW specifically — including the
add()/remove()/rebuild()mutation API, filtered search, parameter tuning, and a per-variant decision guide — seedocs/hnsw.md.
Installation
pip install pynear
Requires Python 3.8+ and NumPy ≥ 1.21.2. Pre-built wheels are available for Linux, macOS (x86-64 and Apple Silicon), and Windows — no compiler needed.
Quick start
PyNear's two headline indices: exact VP-Trees for low-to-mid dimensions, and Multi-Index Hashing for binary descriptors.
Low-dimensional exact search (VPTreeL2Index)
VP-Trees partition points by distance to a vantage point, so they prune whole branches in any metric space and return exact neighbours — no recall loss, no tuning — and stay effective up to ~256-D. The same API backs L2, L1, L∞, cosine, and Hamming.
import numpy as np
import pynear
# 100,000 vectors in 32-D
data = np.random.rand(100_000, 32).astype(np.float32)
index = pynear.VPTreeL2Index()
index.set(data)
# KNN search — returns (indices, distances) per query, sorted nearest-first
queries = np.random.rand(10, 32).astype(np.float32)
indices, distances = index.searchKNN(queries, k=5)
# 1-NN shortcut (slightly faster than searchKNN with k=1)
nn_indices, nn_distances = index.search1NN(queries)
High-dimensional binary descriptors (MIHBinaryIndex)
MIHBinaryIndex is pynear's flagship for binary descriptors (ORB, BRIEF,
AKAZE, perceptual hashes, SimHash). Multi-Index Hashing splits each d-bit
descriptor into m sub-strings and hashes them; by the pigeonhole
principle, any neighbour within radius Hamming bits is guaranteed to be
found. On wide descriptors it retrieves near-duplicates ~40× faster than
Faiss's brute-force scan at 100% recall — and faster than Faiss's own MIH.
import numpy as np
import pynear
# 1M × 512-bit descriptors (64 bytes each)
db = np.random.randint(0, 256, size=(1_000_000, 64), dtype=np.uint8)
queries = np.random.randint(0, 256, size=(100, 64), dtype=np.uint8)
mih = pynear.MIHBinaryIndex(m=8) # 8 sub-tables of 64 bits (m=4 for 128/256-bit)
mih.set(db)
indices, distances = mih.searchKNN(queries, k=10, radius=8)
# radius: any true neighbour within this Hamming distance is guaranteed found
# (pigeonhole). Increase for higher recall on noisier data.
When you'd rather cap the cost per query than reason about a radius,
IVFFlatBinaryIndex scans a fixed number of clusters instead:
ivf = pynear.IVFFlatBinaryIndex(nlist=512, nprobe=16)
ivf.set(db)
indices, distances = ivf.searchKNN(queries, k=10)
ivf.set_nprobe(32) # trade speed for recall at runtime
Choosing between MIH and IVFFlat:
MIHBinaryIndex |
IVFFlatBinaryIndex |
|
|---|---|---|
| Best for | Near-duplicate retrieval (small Hamming radius) | General approximate Hamming KNN |
| d=512, N=1M query time (near-duplicate) | 0.008 ms | 1.82 ms |
| Recall guarantee | Exact for distance ≤ radius (pigeonhole) | Probabilistic (depends on nprobe) |
| Recall control | radius parameter |
nprobe parameter |
Recommended m |
d/8 bytes (e.g. m=8 for 512-bit) | — |
For wide float vectors (512-D–1024-D embeddings, e.g. text / RAG) reach for
IVFFlatL2Index / IVFFlatCosineIndex. Every index type and its tuning knobs
are covered in docs/README.md.
Migrating from scikit-learn
PyNear provides adapter classes that implement the same interface as
sklearn.neighbors.NearestNeighbors, KNeighborsClassifier, and
KNeighborsRegressor. Changing the import is all that is required in most
cases:
# Before
from sklearn.neighbors import KNeighborsClassifier
clf = KNeighborsClassifier(n_neighbors=5, metric='euclidean')
# After — identical API, backed by a VP-Tree
from pynear.sklearn_adapter import PyNearKNeighborsClassifier
clf = PyNearKNeighborsClassifier(n_neighbors=5, metric='euclidean')
All three adapters follow the standard scikit-learn workflow:
from pynear.sklearn_adapter import (
PyNearNearestNeighbors,
PyNearKNeighborsClassifier,
PyNearKNeighborsRegressor,
)
# Unsupervised neighbour lookup
nn = PyNearNearestNeighbors(n_neighbors=5, metric='euclidean')
nn.fit(X_train)
distances, indices = nn.kneighbors(X_query)
# Classification
clf = PyNearKNeighborsClassifier(n_neighbors=5, weights='distance')
clf.fit(X_train, y_train)
clf.predict(X_test) # class labels
clf.predict_proba(X_test) # per-class probabilities
clf.score(X_test, y_test) # accuracy
# Regression
reg = PyNearKNeighborsRegressor(n_neighbors=5, weights='uniform')
reg.fit(X_train, y_train)
reg.predict(X_test) # predicted values
reg.score(X_test, y_test) # R²
Supported metrics: euclidean / l2, manhattan / l1, chebyshev / linf, cosine, hamming
Supported weights: uniform, distance (inverse-distance-weighted)
Note: Input arrays are cast to
float32(oruint8for Hamming) before indexing. scikit-learn usesfloat64internally, so very small numerical differences may appear at the precision boundary, but nearest-neighbour results are identical for all practical datasets.
Features
Available indices
Approximate ANN — float / cosine (graph-based, the modern default):
| Index | Distance | Notes |
|---|---|---|
HNSWL2Index |
L2 (Euclidean) | Paper-faithful HNSW (Malkov & Yashunin 2016) with α-heuristic + keepPrunedConnections. Opt-in parallel build via n_threads. AVX-512 paths gated on __AVX512F__. |
HNSWCosineIndex |
Cosine | HNSW on L2-normalised vectors. Default for text embeddings / RAG. |
HNSWL2IndexSQ8 |
L2 (Euclidean) | HNSW with int8 scalar quantisation — 4× less RAM, ~2-3× faster queries, ~1-3% recall hit. |
IVFFlatL2Index |
L2 (Euclidean) | IVF with BLAS SGEMV inner scan; best when memory layout matters more than per-query latency. |
IVFFlatCosineIndex |
Cosine | Spherical K-Means + BLAS SGEMV. |
Approximate ANN — binary / Hamming (image / document deduplication, perceptual hashes):
| Index | Distance | Notes |
|---|---|---|
MIHBinaryIndex |
Hamming | Multi-Index Hashing; ~40× faster than Faiss IndexBinaryFlat on 512-bit near-duplicates at 100% Recall@10, and faster than Faiss's own IndexBinaryMultiHash at matched recall on SIFT1M. Exact within a configurable Hamming radius. |
MIHSeededHNSWBinaryIndex |
Hamming | Novel — HNSW beam search seeded by MIH lookups. Exact for small-radius queries, graph-robust for larger ones. (Design doc.) |
HNSWBinaryIndex |
Hamming | Plain HNSW with hardware popcount distance. |
IVFFlatBinaryIndex |
Hamming | Binary K-Means IVF; faster build than Faiss binary IVF. |
Exact (small / moderate dim, when recall must be 1.0):
| Index | Distance | Data type | Notes |
|---|---|---|---|
VPTreeL2Index / L1Index / ChebyshevIndex / CosineIndex |
L2 / L1 / L∞ / Cosine | float32 |
SIMD-accelerated VP-Tree pruning. |
VPTreeBinaryIndex |
Hamming | uint8 |
Hardware popcount. |
BKTreeBinaryIndex |
Hamming | uint8 |
Threshold / range search (find_threshold(q, t)). |
Every index above supports pickle round-trip (build once, persist, restore in seconds).
All HNSW classes accept n_threads=N for parallel build.
Set n_probe = n_clusters on IVFFlatL2Index to make it exact.
See docs/approximate.md for a full guide on measuring
recall and tuning n_probe for your dataset.
Why approximate search? The curse of dimensionality
Tree pruning loses traction as dimensionality grows: in high-$n$ spaces, nearly all points concentrate in a thin shell near the boundary and distances between any two points become almost equal, leaving the tree nothing to prune. That's why exact tree search offers diminishing returns beyond $d \approx 256$ and why approximate methods (IVF-style probing) take over.
Full derivation, with volume integrals and a numerical illustration →
Pickle serialisation
All VPTree and IVFFlat indices are pickle-serialisable — save a built index to disk and reload it without rebuilding:
import pickle, numpy as np, pynear
data = np.random.rand(20_000, 32).astype(np.float32)
index = pynear.VPTreeL2Index()
index.set(data)
blob = pickle.dumps(index)
index2 = pickle.loads(blob)
Tree inspection
print(index.to_string())
####################
# [VPTree state]
Num Data Points: 100
Total Memory: 8000 bytes
####################
[+] Root Level:
Depth: 0
Height: 14
Num Sub Nodes: 100
...
Note:
to_string()traverses the whole tree — use it for debugging only.
Demos
Two interactive desktop demos ship in demo/ and run with a single command:
pip install PySide6
python demo/point_cloud.py # KNN Explorer — hover over 1M points to find neighbours
python demo/voronoi.py # Voronoi diagram — drag seed points, watch cells reshape live
- KNN Explorer — scatter up to 1 million 2-D points and hover to see k nearest neighbours highlighted in real time. Supports zoom, pan, and configurable point size.
- Voronoi Diagram — every canvas pixel is coloured by its nearest seed point. Add, drag, and remove seeds; the diagram redraws live using pynear's batch 1-NN.
See docs/demos.md for full details.
Benchmarks
HNSW family (v2.4) — query latency vs Faiss IndexHNSWFlat
Single machine, N=20k, ef_construction=200, ef_search=256, k=10, 8-thread build:
| Dim | HNSWL2Index |
HNSWL2IndexSQ8 |
Faiss IndexHNSWFlat |
Recall (pynear / Faiss) |
|---|---|---|---|---|
| 128 | 88 µs | 70 µs | 9 µs | 0.94 / 0.96 (at M=16); 0.99 / 0.99 at M=32 |
| 384 | 181 µs | 113 µs | 24 µs | 0.88 / 0.89 |
| 768 | 349 µs | 173 µs | 94 µs | 0.86 / 0.86 |
Build time at N=20k, d=128 with n_threads=24: pynear 0.18s vs Faiss 0.20s — competitive.
Use HNSWL2IndexSQ8 when memory matters: ~4× smaller index, query 2-3× faster than the float HNSW. Recall drops ~1-3% at the same ef_search.
Binary / Hamming (the long-standing wedge)
See the SIFT1M results below and the
reproducible, thread-matched pynear vs Faiss comparison
— ~40× faster than Faiss's brute-force IndexBinaryFlat on 512-bit near-duplicates,
and faster than Faiss's own IndexBinaryMultiHash at matched recall on SIFT1M.
Full benchmark report (PDF) — formal evaluation against Faiss, scikit-learn, and Annoy across L2 / L1 / Hamming, dimensionalities from 2-D to 1024-D, both exact and approximate modes. (Its binary-descriptor numbers are superseded by the thread-matched results/faiss_comparison.md.)
Quick standalone runs:
python bench_run.py # general suite
python -m pynear.benchmark.hnsw_benchmark # HNSW vs Faiss
python -m pynear.benchmark.arm64_neon_benchmark # ARM64 NEON path (on an M-series Mac)
Real-World Benchmark — SIFT1M Binary
Performance of pynear's approximate Hamming-distance indices on the INRIA TEXMEX SIFT1M dataset: 1,000,000 × 128-dim float SIFT descriptors sign-quantised to 128-bit binary (16 bytes/descriptor). Ground truth computed by exact brute-force Hamming k-NN over 500 queries, k=10. Machine: Intel(R) Core(TM) Ultra 9 285K.
The baseline below is a naive numpy scan. For the apples-to-apples comparison
against Faiss's optimised brute-force (IndexBinaryFlat) and Faiss's own
Multi-Index Hashing, see
results/faiss_comparison.md.
| Index | Configuration | Build (s) | ms / query | QPS | Recall@10 |
|---|---|---|---|---|---|
| numpy brute-force (naive) | N=1,000,000 | — | 50.1 | 20 | 1.000 |
| IVFFlatBinaryIndex | nlist=500, nprobe=31 | 6.24 | 1.47 | 679 | 0.825 |
| IVFFlatBinaryIndex | nlist=500, nprobe=62 | 6.24 | 2.85 | 351 | 0.842 |
| IVFFlatBinaryIndex | nlist=500, nprobe=125 | 6.24 | 5.65 | 177 | 0.845 |
| IVFFlatBinaryIndex | nlist=500, nprobe=250 | 6.24 | 10.74 | 93 | 0.845 |
| IVFFlatBinaryIndex | nlist=500, nprobe=500 | 6.24 | 20.95 | 48 | 0.845 |
| MIHBinaryIndex | m=8, radius=4 | 2.81 | 0.09 | 10825 | 0.585 |
| MIHBinaryIndex | m=8, radius=8 | 2.81 | 0.97 | 1031 | 0.829 |
| MIHBinaryIndex | m=8, radius=12 | 2.81 | 0.95 | 1053 | 0.829 |
| MIHBinaryIndex | m=8, radius=16 | 2.81 | 4.73 | 211 | 0.842 |
| MIHBinaryIndex | m=8, radius=24 | 2.81 | 12.37 | 81 | 0.844 |
| MIHBinaryIndex | m=8, radius=32 | 2.81 | 19.79 | 51 | 0.843 |
| MIHBinaryIndex | m=8, radius=48 | 2.81 | 36.34 | 28 | 0.843 |
Recall@10 is the standard
|returned ∩ true| / k, measured against a fixed exact-Hamming ground truth. Because Hamming distances are integers, the 10-th-nearest boundary is often tied, so even an exact scan can score below 1.0 against this reference — the value reflects tie-breaking, not missed neighbours.
Key takeaways:
IVFFlatBinaryIndex(nprobe=125) reaches Recall@10=0.845 at 177 QPS (9× faster than the naive numpy scan).MIHBinaryIndex(radius=4) is the lowest-latency single configuration at 10825 QPS (Recall@10=0.585).- MIH's real advantage shows on wide descriptors (256–512-bit) and small-radius / near-duplicate retrieval. On narrow 128-bit data at high recall, an optimised brute-force scan can outperform it — pick the index to the workload.
Reproduce:
python demo_binary.py· add--smallfor a 10 K quick test ·--n-gt-queries Nto adjust evaluation size.
Development
Building and installing locally
pip install .
Running tests
make test
Debugging C++ code on Unix
CMake build files are provided for building and running C++ tests independently:
make cpp-test
Tests are built in Debug mode by default, so you can debug with GDB:
gdb ./build/tests/vptree-tests
Debugging C++ code on Windows
Install CMake (py -m pip install cmake) and pybind11 (py -m pip install pybind11), then:
mkdir build
cd build
cmake ..\pynear
You may need to pass extra arguments, for example:
cmake ..\pynear -G "Visual Studio 17 2022" -A x64 ^
-DPYTHON_EXECUTABLE="C:\Program Files\Python312\python.exe" ^
-Dpybind11_DIR="C:\Program Files\Python312\Lib\site-packages\pybind11\share\cmake\pybind11"
Build and run vptree-tests.exe from the generated solution.
Formatting code
make fmt
Star history
If pynear saved you time, consider starring the repo — it's the cheapest way to support the project and helps others discover it.
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 pynear-2.4.0.tar.gz.
File metadata
- Download URL: pynear-2.4.0.tar.gz
- Upload date:
- Size: 116.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
54a62d2e2825304c9bd0376b95ce17d9abbd23af6c26f044e5f725d9db16f71b
|
|
| MD5 |
f8166ee710045a0832be2c5019a0ba2b
|
|
| BLAKE2b-256 |
98392632ecb389a7ff51803793b68e540b6a52180adcd109efade56e8599f321
|
Provenance
The following attestation bundles were made for pynear-2.4.0.tar.gz:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0.tar.gz -
Subject digest:
54a62d2e2825304c9bd0376b95ce17d9abbd23af6c26f044e5f725d9db16f71b - Sigstore transparency entry: 1930791179
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: pynear-2.4.0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 371.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 |
4d3e0ff4555474fef381a54cbacdfc4c99ab91ef70ebe4b33e35c6983b4f5128
|
|
| MD5 |
71d09d59ad91466116e2e329c69799e6
|
|
| BLAKE2b-256 |
b55b226d9421f65bd60b00a4172cd3e26a478570b970695ecc12710448d0f46c
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp312-cp312-win_amd64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp312-cp312-win_amd64.whl -
Subject digest:
4d3e0ff4555474fef381a54cbacdfc4c99ab91ef70ebe4b33e35c6983b4f5128 - Sigstore transparency entry: 1930793416
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp312-cp312-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp312-cp312-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 2.4 MB
- Tags: CPython 3.12, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb1af62e59e974eedd48823312f20c704e6cbfc64e430403f694634bdcc3de8c
|
|
| MD5 |
5be071e2a0b757c8fbc012f056d8054f
|
|
| BLAKE2b-256 |
8552ad9966dba940712067adccd39223eb9ee5feec5d889953a68ba2c585a156
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp312-cp312-musllinux_1_2_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp312-cp312-musllinux_1_2_x86_64.whl -
Subject digest:
bb1af62e59e974eedd48823312f20c704e6cbfc64e430403f694634bdcc3de8c - Sigstore transparency entry: 1930793705
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
270f717bb7e9a23280298425776bcae70435a69c67128a6cc14db25db79cc80c
|
|
| MD5 |
b028aa7b69f34a38bc179fa2c2851556
|
|
| BLAKE2b-256 |
88abcc2d5c45bb037dfdd21cb8063fa1699dc881c01b70047d3346d796dc7f55
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
270f717bb7e9a23280298425776bcae70435a69c67128a6cc14db25db79cc80c - Sigstore transparency entry: 1930793813
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: pynear-2.4.0-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 484.8 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 |
67ccad57138beb6bbc019be2e4dcc9c6a1d054eec181dfb16f04efa3ff01fb50
|
|
| MD5 |
ad6101b73abff63004f4e11bdd42fac8
|
|
| BLAKE2b-256 |
ddfd7b604b2a5f89ce30cde946d209294fe56d1d735884753322f4cdd1d7ff4b
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp312-cp312-macosx_11_0_arm64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp312-cp312-macosx_11_0_arm64.whl -
Subject digest:
67ccad57138beb6bbc019be2e4dcc9c6a1d054eec181dfb16f04efa3ff01fb50 - Sigstore transparency entry: 1930793366
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp312-cp312-macosx_10_13_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp312-cp312-macosx_10_13_x86_64.whl
- Upload date:
- Size: 505.3 kB
- Tags: CPython 3.12, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
09cd929d69145e13688e8b30de79b568382d3f81afc557ca66c1d2f25164a46c
|
|
| MD5 |
f420ae0c0e7ee20947aa652ddaae3228
|
|
| BLAKE2b-256 |
0d6cf206b65786a1a30cde4748d35c6778f2aa37b65baa1dbb29b867af490e3e
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp312-cp312-macosx_10_13_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp312-cp312-macosx_10_13_x86_64.whl -
Subject digest:
09cd929d69145e13688e8b30de79b568382d3f81afc557ca66c1d2f25164a46c - Sigstore transparency entry: 1930791677
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: pynear-2.4.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 369.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 |
3f8d6cc034e80efa1f632df93514d20d78a1da91a2cf83e267d5d4bee8b3dd28
|
|
| MD5 |
447713f307ea2654ae7a73a9e1820bf9
|
|
| BLAKE2b-256 |
ccfd1feeb768192e5b3d9c5f5c906f7ccbcf1f8cd19bedf4128f9421a6001d2c
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp311-cp311-win_amd64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp311-cp311-win_amd64.whl -
Subject digest:
3f8d6cc034e80efa1f632df93514d20d78a1da91a2cf83e267d5d4bee8b3dd28 - Sigstore transparency entry: 1930792225
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp311-cp311-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp311-cp311-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 2.4 MB
- Tags: CPython 3.11, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48ba71dc8020eaff6acd176d38a1592bd79fbdf6a2527f139bc75e40473e23b7
|
|
| MD5 |
3cec326d3adf1c808a9383424bae6d5d
|
|
| BLAKE2b-256 |
c556ac45ca6ef9039678e41478d8965a7c0443ba8037139d6cdcf98ec5ca48ac
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp311-cp311-musllinux_1_2_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp311-cp311-musllinux_1_2_x86_64.whl -
Subject digest:
48ba71dc8020eaff6acd176d38a1592bd79fbdf6a2527f139bc75e40473e23b7 - Sigstore transparency entry: 1930793242
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00c48b3321af91c8bfbc0df322d56d8e1f2bf802d3703555c24a95c1781d9ce5
|
|
| MD5 |
b76a0f7bda8571d111a0911289dd96b2
|
|
| BLAKE2b-256 |
accb9aeb7f23b2bee6ee0b48ef776d49360847d94d810e43d2da86d13d55ac56
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
00c48b3321af91c8bfbc0df322d56d8e1f2bf802d3703555c24a95c1781d9ce5 - Sigstore transparency entry: 1930793157
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: pynear-2.4.0-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 479.4 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 |
d03c94914043361ee418aa66e3bf00b5d1296eac760c585eae689c934f017a6b
|
|
| MD5 |
8d89aca08c6ea98b54d4ebf09bacf132
|
|
| BLAKE2b-256 |
82276186d2998c858316032398d9e6c2e88b7a7619f3ae0bb07230f361f9d875
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp311-cp311-macosx_11_0_arm64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp311-cp311-macosx_11_0_arm64.whl -
Subject digest:
d03c94914043361ee418aa66e3bf00b5d1296eac760c585eae689c934f017a6b - Sigstore transparency entry: 1930793934
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp311-cp311-macosx_10_9_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp311-cp311-macosx_10_9_x86_64.whl
- Upload date:
- Size: 490.6 kB
- Tags: CPython 3.11, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
938fd74add7776b28d83a703c5ad09b1e4d45516319a675ac797aa4092eccedc
|
|
| MD5 |
9ebf2feebb35123a91ba4be9cc0c156a
|
|
| BLAKE2b-256 |
358eebcd74ec2c5d759aceb3cc09f3c0bb6136ae02ceffe6acadc447e434c7d3
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp311-cp311-macosx_10_9_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp311-cp311-macosx_10_9_x86_64.whl -
Subject digest:
938fd74add7776b28d83a703c5ad09b1e4d45516319a675ac797aa4092eccedc - Sigstore transparency entry: 1930793473
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: pynear-2.4.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 367.6 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 |
802b4b7930a48f6708d843e494bf6093cf6dfa576ddc31625c83dab26dc8a68f
|
|
| MD5 |
c15a43c4e0dc968f427077dbb4c21eee
|
|
| BLAKE2b-256 |
b8be8fc2f88c4520a5d90379ae6c5e19636c8090fd4749576eec36c81d638b27
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp310-cp310-win_amd64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp310-cp310-win_amd64.whl -
Subject digest:
802b4b7930a48f6708d843e494bf6093cf6dfa576ddc31625c83dab26dc8a68f - Sigstore transparency entry: 1930792723
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp310-cp310-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp310-cp310-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 2.4 MB
- Tags: CPython 3.10, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
56006a8341130e0484b354bba8b24b181b35c1cdf055fc43b2b1f3c97e1dc06c
|
|
| MD5 |
52026dc95677f3f1da7d5e8328ef24d6
|
|
| BLAKE2b-256 |
0571dfa66ba9c2dd6710399ebf5e7a17808f375eaa9cb1067c756f245ae24800
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp310-cp310-musllinux_1_2_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp310-cp310-musllinux_1_2_x86_64.whl -
Subject digest:
56006a8341130e0484b354bba8b24b181b35c1cdf055fc43b2b1f3c97e1dc06c - Sigstore transparency entry: 1930793284
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
27c6e41e3cc5b627868dba95b1f5953e0ca72f270afd1c0d962bcb4b9ef48193
|
|
| MD5 |
77ce6466d97134f00e9724bcc8dc3a81
|
|
| BLAKE2b-256 |
38756c4bd23bc318accacd1d76ac171887e4173aeebef18b812dd8620d9f0966
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
27c6e41e3cc5b627868dba95b1f5953e0ca72f270afd1c0d962bcb4b9ef48193 - Sigstore transparency entry: 1930793620
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: pynear-2.4.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 478.5 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 |
122f7e40a85dd9c5e1b5e820259776e74b78d86fcc3ae968bdfce2de3d996841
|
|
| MD5 |
ac028e0926b713c32da10ed465ef7a91
|
|
| BLAKE2b-256 |
415cc89aa510c24df07a0c845675c79c274c0e01bfea3a51341211d43d7fee4c
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp310-cp310-macosx_11_0_arm64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp310-cp310-macosx_11_0_arm64.whl -
Subject digest:
122f7e40a85dd9c5e1b5e820259776e74b78d86fcc3ae968bdfce2de3d996841 - Sigstore transparency entry: 1930792458
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp310-cp310-macosx_10_9_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp310-cp310-macosx_10_9_x86_64.whl
- Upload date:
- Size: 488.9 kB
- Tags: CPython 3.10, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc4fed2dbf168276c6841df3f06edd9666acdd8ce344fbfb0c6d2b647628ff55
|
|
| MD5 |
d5d78a677517a055bf3e731478457ff1
|
|
| BLAKE2b-256 |
304fd2a4d59f16bb99fe03341a89dcb276904804ec601c01abc65bf5061742f8
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp310-cp310-macosx_10_9_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp310-cp310-macosx_10_9_x86_64.whl -
Subject digest:
cc4fed2dbf168276c6841df3f06edd9666acdd8ce344fbfb0c6d2b647628ff55 - Sigstore transparency entry: 1930791850
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp39-cp39-win_amd64.whl.
File metadata
- Download URL: pynear-2.4.0-cp39-cp39-win_amd64.whl
- Upload date:
- Size: 367.8 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 |
ea9c394097c4e37f0d3a80eff0013ba4a2c01f13047783b91f0f4db907f0645f
|
|
| MD5 |
1ab03f37e30776fa11bd7192be7a9bf1
|
|
| BLAKE2b-256 |
2fe25bf740392ab38eca48fe4ab1d95f3696b50870e44ddb7240651918711f12
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp39-cp39-win_amd64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp39-cp39-win_amd64.whl -
Subject digest:
ea9c394097c4e37f0d3a80eff0013ba4a2c01f13047783b91f0f4db907f0645f - Sigstore transparency entry: 1930792995
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp39-cp39-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp39-cp39-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 2.4 MB
- Tags: CPython 3.9, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cad60e3007be44db6bf54ac7e32cc7cdc9166dd439828a9b92bc80ca1b50b5f8
|
|
| MD5 |
8687308f7fd4cf25fc535ae6fc5eccfa
|
|
| BLAKE2b-256 |
447e3bfa3e5e8efe6c4fbab2adcdb79f226491a10f57b2cb90986b75a0ed213a
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp39-cp39-musllinux_1_2_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp39-cp39-musllinux_1_2_x86_64.whl -
Subject digest:
cad60e3007be44db6bf54ac7e32cc7cdc9166dd439828a9b92bc80ca1b50b5f8 - Sigstore transparency entry: 1930791523
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
19841be96150205011249440b37ff21ff02b08591672b6c77dac35cd724ae1d8
|
|
| MD5 |
60ffad727af70c62a54393e437c08289
|
|
| BLAKE2b-256 |
ec04262d7ccf0a1177cb100530ecc7808e10914d07f5ae752f7eb84cf6ce106d
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
19841be96150205011249440b37ff21ff02b08591672b6c77dac35cd724ae1d8 - Sigstore transparency entry: 1930793061
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp39-cp39-macosx_11_0_arm64.whl.
File metadata
- Download URL: pynear-2.4.0-cp39-cp39-macosx_11_0_arm64.whl
- Upload date:
- Size: 478.6 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 |
dd007db367db2293023f80d6816cda74a684eb9eddead8bef605259317b25860
|
|
| MD5 |
bf2b01960308abea067ad8da0978a670
|
|
| BLAKE2b-256 |
9b8777dcd99acca4d365e6203c8bb19276d53d47ff5fc83673ce3f1a382234f0
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp39-cp39-macosx_11_0_arm64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp39-cp39-macosx_11_0_arm64.whl -
Subject digest:
dd007db367db2293023f80d6816cda74a684eb9eddead8bef605259317b25860 - Sigstore transparency entry: 1930791283
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp39-cp39-macosx_10_9_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp39-cp39-macosx_10_9_x86_64.whl
- Upload date:
- Size: 488.9 kB
- Tags: CPython 3.9, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e2a20d8f55db5a7d9a9b15f5a2139d3f87219022412b16938806e59dccbd873c
|
|
| MD5 |
1b71fda0c792615bd6724dbc2934f67d
|
|
| BLAKE2b-256 |
5a72af16369da73dfe171e064821bb4f3c5692ac2219e4935280d9e7a159cb78
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp39-cp39-macosx_10_9_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp39-cp39-macosx_10_9_x86_64.whl -
Subject digest:
e2a20d8f55db5a7d9a9b15f5a2139d3f87219022412b16938806e59dccbd873c - Sigstore transparency entry: 1930792135
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp38-cp38-win_amd64.whl.
File metadata
- Download URL: pynear-2.4.0-cp38-cp38-win_amd64.whl
- Upload date:
- Size: 367.5 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 |
1f99ea66fa0bf24a4d00f7b5dca9d76bab77701605fdab82f6f07906e09cc597
|
|
| MD5 |
547eea1083b7d35800fbd683fa4a4748
|
|
| BLAKE2b-256 |
6038efa352392bbad0a4bf3db22c184db51fed40ecf8e43f3e2745bd50ac7165
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp38-cp38-win_amd64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp38-cp38-win_amd64.whl -
Subject digest:
1f99ea66fa0bf24a4d00f7b5dca9d76bab77701605fdab82f6f07906e09cc597 - Sigstore transparency entry: 1930792869
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp38-cp38-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp38-cp38-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 2.4 MB
- Tags: CPython 3.8, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b5bb0a484b182a8847d085d82f7c907e9dd99e59d158dfe774d93074232f7d26
|
|
| MD5 |
8eb8bd8ab376b7f95acd9e02a5bf12f4
|
|
| BLAKE2b-256 |
74e311deebf1b36ba5095a16a5b7928ba245902651eb785c177eec1ae3a7be88
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp38-cp38-musllinux_1_2_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp38-cp38-musllinux_1_2_x86_64.whl -
Subject digest:
b5bb0a484b182a8847d085d82f7c907e9dd99e59d158dfe774d93074232f7d26 - Sigstore transparency entry: 1930793526
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a2017e2fdff89b24689627d7c088a3ce9ec8dff7384e146a749921cfff997e2
|
|
| MD5 |
2ce1eb8402f0c170fe09538dc6bc26d5
|
|
| BLAKE2b-256 |
22e084e2a80cf026479664806c8c91d6f9ec85570e2cb1bb8c8377a78d9e81dc
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
6a2017e2fdff89b24689627d7c088a3ce9ec8dff7384e146a749921cfff997e2 - Sigstore transparency entry: 1930792000
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp38-cp38-macosx_11_0_arm64.whl.
File metadata
- Download URL: pynear-2.4.0-cp38-cp38-macosx_11_0_arm64.whl
- Upload date:
- Size: 478.1 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 |
a5129c363c9d6736dda9bceac627811a3e94419af7fcff359bcc58a6c7a719f0
|
|
| MD5 |
b0448bfd4270f668397386785b742d88
|
|
| BLAKE2b-256 |
2ed326f77b1eef1730bffe4bafc51cd8918d1af048944ba9032cbf132152dcb6
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp38-cp38-macosx_11_0_arm64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp38-cp38-macosx_11_0_arm64.whl -
Subject digest:
a5129c363c9d6736dda9bceac627811a3e94419af7fcff359bcc58a6c7a719f0 - Sigstore transparency entry: 1930792334
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pynear-2.4.0-cp38-cp38-macosx_10_9_x86_64.whl.
File metadata
- Download URL: pynear-2.4.0-cp38-cp38-macosx_10_9_x86_64.whl
- Upload date:
- Size: 488.4 kB
- Tags: CPython 3.8, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
73c30aed4c379b20564423f797592b43b525c43a45cf76119b965fc0dda6a1dc
|
|
| MD5 |
24a62c746ed0c7c9c8a2ce54404b9812
|
|
| BLAKE2b-256 |
487ea5de5247b170e0a77f10bbe3ad5bc02768d9034c8f555a71b25729f90f85
|
Provenance
The following attestation bundles were made for pynear-2.4.0-cp38-cp38-macosx_10_9_x86_64.whl:
Publisher:
pythonpackage.yml on pablocael/pynear
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pynear-2.4.0-cp38-cp38-macosx_10_9_x86_64.whl -
Subject digest:
73c30aed4c379b20564423f797592b43b525c43a45cf76119b965fc0dda6a1dc - Sigstore transparency entry: 1930792573
- Sigstore integration time:
-
Permalink:
pablocael/pynear@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/pablocael
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pythonpackage.yml@82bc9ae2ad2f46ef9b26a936e4d420755e5155e9 -
Trigger Event:
push
-
Statement type: