Skip to main content

Impact Index for Information Retrieval

A Python/Rust library for efficient sparse retrieval. Built on Rust with PyO3 bindings for high performance.

Supports both neural IR models with floating-point impact scores and traditional BM25 bag-of-words retrieval with performance competitive with Lucene/Pyserini and Terrier.

Features

  • BM25 bag-of-words indexing with built-in tokenization, stemming (Snowball), and stop words: Lucene-family lists (17 languages) or Terrier's own, much longer list (English only) — see Stop Words
  • Block-Max MaxScore and BMW (Block-Max WAND) search with early termination
  • SIMD bitpacking compression (BitPacker4x) with quantized impacts and reusable block buffers
  • One-liner compression: index.compress("/path/to/output")
  • Document reordering by recursive graph bisection (index.reorder(...)) for smaller indices and stronger block-max pruning
  • Posting list splitting by quantile for term impact decomposition
  • Index versioning: per-index manifest.json with format version checks and one-step migration (Index.update(path))
  • BMP (Block-Max Pruning) for fast approximate search (SIGIR 2024)
  • Document store with zstd compression and key-based retrieval
  • Async support for non-blocking search and document retrieval
  • Parallel index compression with rayon
  • Structured queries: matchop-style #combine/#syn/#band/#1 (phrase)/#uwN (window) operators, evaluated directly by WAND/MaxScore (search_wand_query/search_maxscore_query); the positional ones (#1, #uwN) need an index built with positions=True

Performance

BM25 on MS MARCO passage (8.8M docs, 6,980 queries, top-100, single-threaded). impact-index is built twice below, each time matching one reference system's own tokenizer/stemmer/stopwords (see BENCHMARKS.md for why, and for a third build aligned with real Terrier 5 instead of PISA). MaxScore is its headline algorithm.

Lucene-aligned (pipeline="pyserini") — vs Pyserini:

System ARM q/s x86 q/s Index size MRR@10
impact-index (compressed + reordered, MaxScore) 295 102 ± 0 0.65 GB 0.1859
Pyserini (Lucene) 213 99 ± 1 0.59 GB 0.1855

PISA-aligned (pipeline="terrier-pisa") — vs PISA:

System x86 q/s Index size MRR@10
impact-index (compressed, MaxScore) 235 ± 2 0.64 GB 0.1866
PISA (Block-Max WAND) 215 ± 1 0.60 GB 0.1854
  • Result overlap: @10=0.985/@100=0.989 vs Pyserini, @10=0.976/@100=0.979 vs PISA.
  • Compressed index is lossless (same results as raw) in both configurations.
  • q/s is mean ± std over 5 search-only repeats, warm resident index. ARM numbers are from an earlier session (no ARM host this run).

See BENCHMARKS.md for WAND/BMW numbers, full methodology, and a settings ablation (stemmer, tokenizer, stopwords, positions).

Learned sparse — SPLADE-v3 on the same collection (dev/small, single-threaded, x86), retrieving the top-10 or the top-1000. "Exact top-k" is the fraction of the exact top-k retrieved:

Index / search Index size ms/query (top-10) ms/query (top-1000) MRR@10 R@1000 Exact top-10 Exact top-1000
Raw, MaxScore (exact) 17.5 GB 231 445 0.4026 0.9873 100% 100%
Split 0.9 + 16-bit, MaxScore 4.7 GB 188 530 0.4026 0.9873 ≈100%¹ ≈100%¹
BMP (alpha=1) 13.8 GB 27 381 0.4021 0.9872 97.4% 97.3%
BMP (alpha=0.9) 13.8 GB 14 243 0.4027 0.9872 92.5% 96.5%
Seismic (query_cut=5, heap_factor=0.9) 9.7 GB 0.9 7.3 0.4024 0.9760 98.3% 84.0%
Seismic (query_cut=10, heap_factor=0.8) 9.7 GB 1.3 8.7 0.4026 0.9823 99.3% 90.5%
Seismic (query_cut=20, heap_factor=0.6) 9.7 GB 4.3 15.1 0.4027 0.9845 99.7% 93.6%

¹ Not measured directly: exact search over a 16-bit quantized index; its MRR, nDCG and recall match the raw index at every depth.

Seismic is the fastest by far and near-exact for the top-10, but diverges from exact search deeper in the ranking (R@1000 0.976-0.985 against 0.987); BMP keeps ~97% of the exact top-1000 but gets close to exact search in speed at that depth.

See BENCHMARKS.md for all operating points, R@100 and build costs.

Installation

pip install impact-index

Or build from source:

pip install maturin
maturin develop --release
import impact_index

# Build a BM25 index with stemming and stop words
builder = impact_index.BOWIndexBuilder(
    "/path/to/index",
    stemmer="porter",  # matches Lucene/Pyserini
    stop_words=True,  # Lucene-compatible English stop words
)

# Index documents
builder.add_text(0, "the quick brown fox jumps over the lazy dog")
builder.add_text(1, "a quick brown cat jumps high")
builder.add_text(2, "the lazy dog sleeps all day")

# Build index (doc metadata and analyzer saved automatically)
index = builder.build(in_memory=True)

# BM25 scoring (doc lengths loaded automatically from index)
scored = index.with_scoring(impact_index.BM25Scoring(k1=0.9, b=0.4))

# Query analysis (analyzer loaded automatically from index)
query = index.analyzer().analyze_query("quick fox")
results = scored.search_maxscore(query, top_k=10)
for doc in results:
    print(f"Document {doc.docid}: {doc.score:.4f}")

Structured Queries

search_wand_query/search_maxscore_query also accept Terrier-matchop-style structured queries, on top of the flat {term_id: weight} form above:

  • Each operator runs as a "virtual" posting list under the same WAND/MaxScore pruning as flat queries — no separate exhaustive path.
  • #1 (phrase) and #uwN (window) need positions: BOWIndexBuilder(..., positions=True). Other operators and flat queries pay nothing for it.
Syntax Meaning Needs positions?
#combine(...) / #combine:0=W0:1=W1(...) Weighted sum of children's scores No
#syn(t1 t2 ...) Synonym/OR: term frequencies summed, one virtual term No
#band(n1 n2 ...) Boolean AND: matches all children, score = sum No
#1(t1 t2 ...) Exact phrase: adjacent positions Yes
#uwN(t1 t2 ...) Unordered window of width N tokens Yes

A query is either a matchop string (needs an index built with BOWIndexBuilder) or an equivalent nested Python structure with term ids: {"term": ix}/{"term": [ix, weight]}, {"combine": [[w, node], ...]}, {"syn": [ix, ...]}, {"band": [node, ...]}, {"phrase": [ix, ...]}, {"window": {"terms": [ix, ...], "width": N}}.

builder = impact_index.BOWIndexBuilder(
    "/path/to/index", stemmer="porter", stop_words=True, positions=True,
)
builder.add_text(0, "the quick brown fox jumps over the lazy dog")
index = builder.build(in_memory=True)
scored = index.with_scoring(impact_index.BM25Scoring())

results = scored.search_wand_query(
    "#combine(quick #1(brown fox) #band(lazy dog))", top_k=10
)
for doc in results:
    print(f"Document {doc.docid}: {doc.score:.4f}")

Scoring follows Terrier 5. Every operator is scored as one virtual term:

  • #syn: tf = sum of the children's tfs, df = sum of their dfs.
  • #band: tf = 1, df = sum of the children's dfs.
  • #1/#uwN: tf = number of matches, df = N/100 (Terrier's fixed heuristic).

Nested #combine weights multiply. With BM25Scoring(k3=8) and pipeline="terrier", stemmer="porter", rankings are identical to Terrier's. See the guide's "How structured queries are scored" section.

Compression

Compress for smaller index size and block-max pruning:

# Compress (standalone — includes vocab, docmeta, analyzer)
compressed = index.compress("/path/to/compressed")

# Search the compressed index (same API)
scored = compressed.with_scoring(impact_index.BM25Scoring())
results = scored.search_maxscore(query, top_k=10)

The default settings (block_size=128, nbits=0) are optimized:

  • block_size=128 aligns with SIMD registers and enables block-max pruning
  • nbits=0 lossless integer bitpacking for TF counts (~2-3 bits/value). Use nbits=8 for neural IR with float impacts

Document Reordering

Renumber documents by recursive graph bisection (BP) so similar documents get nearby ids, for a smaller index and stronger block-max pruning:

# From a raw index: reorder + compress in one step
reordered = index.reorder("/path/to/reordered")

# Fully transparent: search results carry the ORIGINAL document ids
scored = reordered.with_scoring(impact_index.BM25Scoring())
results = scored.search_maxscore(query, top_k=10)
for doc in results:
    print(f"Document {doc.docid}: {doc.score:.4f}")

The internal renumbering is invisible to callers; reorder_map() exposes the raw permutation for advanced uses.

Index Versioning & Migration

Every index directory carries a manifest.json with its format version. Loading an index built by an older version raises an actionable error; migrate with:

impact_index.Index.update("/path/to/index")            # in place
impact_index.Index.update("/path/to/index", "/dest")   # or to a copy

Indices without a manifest (built before versioning existed) load normally and are stamped on first load.

Neural IR (Impact Scores)

import numpy as np
import impact_index

# Build an index from pre-computed impact scores
builder = impact_index.IndexBuilder("/path/to/index")
builder.add(0, np.array([1, 5, 10], dtype=np.uintp),
            np.array([0.5, 1.2, 0.8], dtype=np.float32))
index = builder.build(in_memory=True)

# Search
results = index.search_maxscore({5: 1.0, 10: 0.5}, top_k=10)

Approximate search with Seismic

Seismic (SIGIR 2024) gives fast approximate top-k over learned impacts (dot product only: not for BM25/LM or structured queries). It is included in the Python package (cargo feature seismic, which needs the nightly pinned in rust-toolchain.toml).

index.to_seismic("/path/to/seismic")  # defaults tuned for SPLADE / MS MARCO
searcher = impact_index.SeismicSearcher("/path/to/seismic")
results = searcher.search({5: 1.0, 10: 0.5}, top_k=10, query_cut=10, heap_factor=0.7)

query_cut (terms traversed) and heap_factor (block-skipping aggressiveness) trade accuracy for speed. A Seismic directory cannot be migrated across Seismic versions: rebuild it with to_seismic.

See Performance for SPLADE-v3 speed and accuracy against exact search and BMP.

Stop Words

Two built-in stop word families, selectable independently of stemmer/language:

  • "lucene" (default): short, per-language lists matching Lucene's language analyzers. 17 languages: arabic, danish, dutch, english, finnish, french, german, greek, hungarian, italian, norwegian, portuguese, romanian, russian, spanish, swedish, turkish.
  • "terrier": Terrier's own, much longer list (org.terrier.terms.Stopwords, 733 words for English) — what PISA and Terrier 5 use by default. English only — other languages raise an error rather than silently substituting something else.
# Get stop words for any supported language/family
words = impact_index.get_stop_words("english")              # 33 words (Lucene, default)
words = impact_index.get_stop_words("french")                # 154 words (Lucene)
words = impact_index.get_stop_words("german")                 # 231 words (Lucene)
words = impact_index.get_stop_words("english", "terrier")     # 733 words (Terrier)

BOWIndexBuilder's stop_words argument accepts the same families by name:

builder = impact_index.BOWIndexBuilder(
    "/path/to/index", stemmer="snowball", language="english",
    stop_words="terrier",   # or "lucene", True (alias for "lucene"), a list, or None
)
  • stop_words=True is a permanent alias for stop_words="lucene" — unaffected by the "terrier" addition.
  • Whichever family (or custom list) was used is saved with the index and restored on reload. Indices built before the family selector existed reload as Lucene, matching what stop_words=True meant at the time.

Documentation

Full documentation including guides on compression, BMP search, and the document store:

https://experimaestro-ir-rust.readthedocs.io/en/latest/index.html

Release files for impact-index 1.7.0

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

Source distribution (sdist)

Source distribution for impact-index 1.7.0
File Size Uploaded
impact_index-1.7.0.tar.gz 1.4 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for impact-index 1.7.0
File
impact_index-1.7.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
impact_index-1.7.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64 Details
impact_index-1.7.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
impact_index-1.7.0-cp314-cp314-macosx_10_12_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.12+ x86-64 Details
impact_index-1.7.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
impact_index-1.7.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details
impact_index-1.7.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
impact_index-1.7.0-cp313-cp313-macosx_10_12_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.12+ x86-64 Details
impact_index-1.7.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
impact_index-1.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
impact_index-1.7.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
impact_index-1.7.0-cp312-cp312-macosx_10_12_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.12+ x86-64 Details
impact_index-1.7.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
impact_index-1.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
impact_index-1.7.0-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
impact_index-1.7.0-cp311-cp311-macosx_10_12_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.12+ x86-64 Details
impact_index-1.7.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
impact_index-1.7.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
impact_index-1.7.0-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
impact_index-1.7.0-cp310-cp310-macosx_10_12_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.12+ x86-64 Details

Total release size: 52.8 MB

Release files / impact_index-1.7.0.tar.gz

Download URL impact_index-1.7.0.tar.gz
Size 1.4 MB
Tags Source
SHA-256 checksum
How to use checksums
e8f8e5a411a8b7272ef69a2d768ab13e6ed9c13a227840e52f5b20a0197e83a0
BLAKE2b-256 checksum
How to use checksums
e19599af4ee233d94f6f39c1d63bb1e0358486805bbb8dca539c7f5ef7ebfe09
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp314-cp314-win_amd64.whl

Download URL impact_index-1.7.0-cp314-cp314-win_amd64.whl
Size 2.4 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
f7f4023fabe77c9bb62722c38c4ce2a0c85f75c2aeba6ac3633c6f79fc7567b1
BLAKE2b-256 checksum
How to use checksums
af8a8d7641b870bf777d83360923ad9257f6c8e8df868b5f1bbd423e26e11b7b
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL impact_index-1.7.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.8 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
7f1d1793edf13a34440f0381bc0ae1365944a7a46f31b3446d470b386282f998
BLAKE2b-256 checksum
How to use checksums
d02b0b9b270e36bd26359f0edc4555706c01b6e53eae9f4f48088aa8be7ea705
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp314-cp314-macosx_11_0_arm64.whl

Download URL impact_index-1.7.0-cp314-cp314-macosx_11_0_arm64.whl
Size 2.4 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
c91cad2c9bbac641278f200fa5f2d46c3023bb4d33ac300261acab75c5806fc2
BLAKE2b-256 checksum
How to use checksums
7f02efbcb02e8b7f8dcebd16d2049cd531d5a37d96f0308d54fa59660d03288f
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp314-cp314-macosx_10_12_x86_64.whl

Download URL impact_index-1.7.0-cp314-cp314-macosx_10_12_x86_64.whl
Size 2.6 MB
Tags CPython 3.14 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
969bcf88de3c275289edb03234a9534a3770a4d03c9cc2c36c76284d439465bb
BLAKE2b-256 checksum
How to use checksums
74cdc31f331cb9e42564f7ed934574ba30659d3e77ff2612714c34d7f89348c9
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp313-cp313-win_amd64.whl

Download URL impact_index-1.7.0-cp313-cp313-win_amd64.whl
Size 2.4 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
f158d2902d14b6578df2104683ced8771ab1a14cf4ea31e11fb480f44f9e67ee
BLAKE2b-256 checksum
How to use checksums
3d8ebbafcce7d5a01635eccf5a2896bbb03e3c1fda7d37427f6c444219303b53
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL impact_index-1.7.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.8 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
c029cedaa283dda003234b6fbf82f43fe7dc735369ef8859bca8280d21bb1adf
BLAKE2b-256 checksum
How to use checksums
d51c12e94a73683200810324bc3fbaf6aa8bce497235694784744579144fe1e8
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL impact_index-1.7.0-cp313-cp313-macosx_11_0_arm64.whl
Size 2.4 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
3a5af18f92bdf27324cce51def65ad52c8f677933134328903a9ac1dc7f9c45e
BLAKE2b-256 checksum
How to use checksums
e5ef3843b97fd2ac789cce888403b4c000755a9b4988e3620c18ab79959dc9cd
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp313-cp313-macosx_10_12_x86_64.whl

Download URL impact_index-1.7.0-cp313-cp313-macosx_10_12_x86_64.whl
Size 2.6 MB
Tags CPython 3.13 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
e90fe3cc455e51d84526f2fad82ea30477ffc424fc13abf5bdff0c022278124e
BLAKE2b-256 checksum
How to use checksums
e6d2aac32d5929619902f70005a78d227d9e9db4266a36f6000185a096b162dd
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp312-cp312-win_amd64.whl

Download URL impact_index-1.7.0-cp312-cp312-win_amd64.whl
Size 2.4 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
f126783d04645b269c6dbbeec8903e655dc2a6ace88e7f70142d5cc16d3939da
BLAKE2b-256 checksum
How to use checksums
be0bad13f4b5b9738be0bf442113ec34e2ba61c1f8a6ee54d307f1375236768a
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL impact_index-1.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.8 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
6f3dc7c0afe6c07a939e6b15a79914b53789a676be61107012eedf0a1a64d9b5
BLAKE2b-256 checksum
How to use checksums
aaa4bddc3506ec68864dc175441bfc203aa4734d007f8d65f0d32ab32eec3522
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp312-cp312-macosx_11_0_arm64.whl

Download URL impact_index-1.7.0-cp312-cp312-macosx_11_0_arm64.whl
Size 2.4 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
87ed501c1d9c8a758a98fdc19777c1cf3b72f9c83ab02981635829c93b2da14a
BLAKE2b-256 checksum
How to use checksums
dccd50f6abe9dbcae2dbdb09265c0d74e63a24e40c54d254d52bbc444a88016c
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp312-cp312-macosx_10_12_x86_64.whl

Download URL impact_index-1.7.0-cp312-cp312-macosx_10_12_x86_64.whl
Size 2.6 MB
Tags CPython 3.12 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
d6d5fec8ed9dd41cd12fe85906d5da594c48f10287e5ef4c5b6d02bab83ca5de
BLAKE2b-256 checksum
How to use checksums
8f7fdab1ab7a10c92abae4527dc873120682ee54548948801266a26c1be7a0f0
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp311-cp311-win_amd64.whl

Download URL impact_index-1.7.0-cp311-cp311-win_amd64.whl
Size 2.4 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
edfb16c9c38d2517ff3697880802f3e4dca4604ecca3b20c8df5191bff6fbc96
BLAKE2b-256 checksum
How to use checksums
94672868bd9b20f9bfea749c9e9719f086c0c5aa86ca3a1e6e5681c32849467a
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL impact_index-1.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.8 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
538dadfe324804ad42048df1714dce9a9c87ac02cae950e2765a0de7557f0fbc
BLAKE2b-256 checksum
How to use checksums
023eaef9a74ee48e470303ed73c9652386a6a82e08b86d6c0b2e2c345eeb4eee
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp311-cp311-macosx_11_0_arm64.whl

Download URL impact_index-1.7.0-cp311-cp311-macosx_11_0_arm64.whl
Size 2.4 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6683b05f1c8186b618c61f3930eb824fec33f2b43f6f231933626bd4b9996426
BLAKE2b-256 checksum
How to use checksums
b5732aceb03c7ac4daf08805cc9cd69fa648c899cc1d97eb4900d41f6f532143
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp311-cp311-macosx_10_12_x86_64.whl

Download URL impact_index-1.7.0-cp311-cp311-macosx_10_12_x86_64.whl
Size 2.6 MB
Tags CPython 3.11 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
2118414e1100512ece3c66ef1ab9cbdfcffc179525a740204565fd351fc1f716
BLAKE2b-256 checksum
How to use checksums
3500724cc834d532f1e0d4835ee17b700629ad8df0032d23b7faab38a2aa3657
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp310-cp310-win_amd64.whl

Download URL impact_index-1.7.0-cp310-cp310-win_amd64.whl
Size 2.4 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
53dd11288701752d5ea70f3476f3da08585fc9cc5e386676abeecede44b0ae02
BLAKE2b-256 checksum
How to use checksums
8fd0227a377113bc643cfabf94a66d3d2c6468996e6238a34f20456d7e3a0d5b
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL impact_index-1.7.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.8 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
f0e266b810e653a3b590190e3c04938d8a5240b98cfffb008b146612a3e841d9
BLAKE2b-256 checksum
How to use checksums
ca3b4f9006ed0b05662e01fcdef6b1f6a320eab8567565f5eef6197ea64162a8
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp310-cp310-macosx_11_0_arm64.whl

Download URL impact_index-1.7.0-cp310-cp310-macosx_11_0_arm64.whl
Size 2.4 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
187424810ff8433f0b7a58998497b3493671629fd53ba94a45041236568da0f3
BLAKE2b-256 checksum
How to use checksums
064ea6ea7ced6b9773804526c82bc5ce4161b78a41472f5a6bc48281c6d01c66
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 Sep 25, 2026.

Transparency log

Release files / impact_index-1.7.0-cp310-cp310-macosx_10_12_x86_64.whl

Download URL impact_index-1.7.0-cp310-cp310-macosx_10_12_x86_64.whl
Size 2.6 MB
Tags CPython 3.10 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
9538663d6d969ad49f8f9cfc5afa692caf5cfd3985df3e8409cf02a8d0a79cca
BLAKE2b-256 checksum
How to use checksums
228e6d04fbc28deb35b8960835cd16c0afd40c64e95a4fa22027ca20df22b7ef
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 Sep 25, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.7.0 This release

21 release files

1.6.0

21 release files

1.5.0

21 release files

1.3.1

21 release files

1.3.0

21 release files

1.2.1

21 release files

1.2.0

21 release files

1.1.0

7 release files

1.0.0

5 release files

0.30.1

5 release files

0.27.4

6 release files

0.27.3

5 release files

0.27.2

5 release files

0.26.2

5 release files

0.22.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page