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).

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)

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.6.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.6.0
File Size Uploaded
impact_index-1.6.0.tar.gz 1.4 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for impact-index 1.6.0
File
impact_index-1.6.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
impact_index-1.6.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.6.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
impact_index-1.6.0-cp314-cp314-macosx_10_12_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.12+ x86-64 Details
impact_index-1.6.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
impact_index-1.6.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.6.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
impact_index-1.6.0-cp313-cp313-macosx_10_12_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.12+ x86-64 Details
impact_index-1.6.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
impact_index-1.6.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.6.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
impact_index-1.6.0-cp312-cp312-macosx_10_12_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.12+ x86-64 Details
impact_index-1.6.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
impact_index-1.6.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.6.0-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
impact_index-1.6.0-cp311-cp311-macosx_10_12_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.12+ x86-64 Details
impact_index-1.6.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
impact_index-1.6.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.6.0-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
impact_index-1.6.0-cp310-cp310-macosx_10_12_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.12+ x86-64 Details

Total release size: 47.4 MB

Release files / impact_index-1.6.0.tar.gz

Download URL impact_index-1.6.0.tar.gz
Size 1.4 MB
Tags Source
SHA-256 checksum
How to use checksums
06d990adad59149e890b90be6f74f893c2407ae6a211f2181e3613221da9aba8
BLAKE2b-256 checksum
How to use checksums
21979dc409e15feb232246a02e6eebb929534b59c753f024072517fb9c31f28c
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp314-cp314-win_amd64.whl
Size 2.1 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
99b706b1dbc42c419de64c8ef8c649355c54c2c7ec3ca5949dedb53cb2089ecd
BLAKE2b-256 checksum
How to use checksums
5397036f5cdc191fa480cad5399a3ae59de70e73a173ac2bfc36d738353bc198
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.5 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
b110858ea3929f4ecf72ed90f9d2f8d5ec542a54829266a6ec1ca5c41d78743d
BLAKE2b-256 checksum
How to use checksums
ba6b99c195355915908a255206e32d39feedeac681998c166f2d37825e9a51e8
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp314-cp314-macosx_11_0_arm64.whl
Size 2.2 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
c73ba1c664c350d1fa1ce73d736c8fd6b404e53d07fff244935cf3d59f199987
BLAKE2b-256 checksum
How to use checksums
457685d269e795bba683c842d5524d9c725e87190b5167251eb9330c4c110d47
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp314-cp314-macosx_10_12_x86_64.whl
Size 2.4 MB
Tags CPython 3.14 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
89b52d6c19b9ce0b9441361b70a6cefdca42c926cbd0a70cf6ecfba859d2eb52
BLAKE2b-256 checksum
How to use checksums
302a442fcbb1e23e5c5d101730d3bb5df18ee65525b041f4f41de8b07090d600
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp313-cp313-win_amd64.whl
Size 2.1 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
8639b63f365f09b4a69e82ce4f83e20295df699cb1448696879df07bf86b7d0c
BLAKE2b-256 checksum
How to use checksums
55f939871a93a59ad0cd22ece7742a137b14a473d8408e9261f8d3c927329eae
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.5 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
459d3b424cb00ee8ce6ca47c765befb9dcbb72457887f5f8a9e9ad5ad313784d
BLAKE2b-256 checksum
How to use checksums
102d55cd16e8905815a510ac70d5aef450267631e13d27a9ad9bb55c63b019bb
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp313-cp313-macosx_11_0_arm64.whl
Size 2.2 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5fd3c7366c127082450174e96cd75ebbc3f95c986c6f0c783bee10b686ee99d0
BLAKE2b-256 checksum
How to use checksums
2951728cd0204366246bcf38631bc09c2927593517a1d09a43968321868c32f0
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp313-cp313-macosx_10_12_x86_64.whl
Size 2.4 MB
Tags CPython 3.13 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
23de0a8e58eb880589ddf17004de8203f6c74cb39b13789e37773a1bf96bd6cc
BLAKE2b-256 checksum
How to use checksums
dad676812018b07da5772c4df117b297fc12c3ec0ad0d3620890cc791986ec2a
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp312-cp312-win_amd64.whl
Size 2.1 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
369199055592c08dc7e3ad750a6ff6c5c2d3e9cbd14406541d3f8f6c71cc4bb3
BLAKE2b-256 checksum
How to use checksums
ee64d82bdc178a2860f39a1e267a08b4715f73237a2eb179885befce68b2a027
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.5 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
60d48468f8f01d50b3b7938ad05f2989a6e484020e60e83a2c86178dbf917035
BLAKE2b-256 checksum
How to use checksums
281e3dd1ba44f91436bb872b87ab61dbd5932b5aae9c82528ebdfd4cc0d4d00f
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp312-cp312-macosx_11_0_arm64.whl
Size 2.2 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
768b1e1a380501c3a8fab86377be2baf992c5d5112730cc5f7e98127fbf07e17
BLAKE2b-256 checksum
How to use checksums
0847bab9808564c953dec14b731b81ebec4730239880113e9dadd6f9d9820c89
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp312-cp312-macosx_10_12_x86_64.whl
Size 2.4 MB
Tags CPython 3.12 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
1614d01697657b52c0669996cf080d076f6f77d9fedca05b804694fad9d9e45e
BLAKE2b-256 checksum
How to use checksums
0bbaa8ca5154dedde01331f107c068615e05081fceb94a3ba0374ff3dcc9e7d2
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp311-cp311-win_amd64.whl
Size 2.1 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
6de43c5e032b3b2cc8cae1fea93c427f97786263b9b99e4ef08050f35bc5d00d
BLAKE2b-256 checksum
How to use checksums
c23162d51573dc83d0630ddd19bd4dd38976ac3d9c95741539ebc6ff9674ac58
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.5 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
653772b564101230b85410cb1566be03b6f0e9e20e510a67144ca11976a45606
BLAKE2b-256 checksum
How to use checksums
e34c48f57399ad18c768fab76aec504cc0805dbc15fcb7a8da7e89bcb3ec5b0d
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp311-cp311-macosx_11_0_arm64.whl
Size 2.2 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
31cf4d0399de01cc599ba7e559f7109ee5b7589d648d586fe587e62ed6e1bae0
BLAKE2b-256 checksum
How to use checksums
e3c57a3fd2896da47683dde14fa2d34bcb468579de50dd7eef45ba23637c7dcf
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp311-cp311-macosx_10_12_x86_64.whl
Size 2.3 MB
Tags CPython 3.11 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
90c1e0ac25141ef63087b6fe2937627a4be5504054caf3d37ca237a2d240b729
BLAKE2b-256 checksum
How to use checksums
8fd58040181ee5170a04fe7f1616c12b92d787abf8c6134bfd05e7b76ac22651
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp310-cp310-win_amd64.whl
Size 2.1 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
3f0747b6b5d188f942864a9715d5ac95177b92bd51666e566b45ca6fea872299
BLAKE2b-256 checksum
How to use checksums
1d5f6ffa71b785c40482868e3bffe03f60bc2c88140c692c0c1eae3d3368ae76
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.5 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
5f78a2692a7c3ac448254b7a72a82f4a31714f9abfbb8a14e95936b9678dcaf2
BLAKE2b-256 checksum
How to use checksums
6c9efa6578d6278443c9888c82672d75fd98868d298e4195ae83eca31030355b
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp310-cp310-macosx_11_0_arm64.whl
Size 2.2 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
62fa07d54b41b735ce1af3fa8c82ffa802b68ce8d8f043bfd345cd77ae4895f7
BLAKE2b-256 checksum
How to use checksums
ed320f8342a803ee5cbabc9f70c40009f2ad537e8f3d778f0a3895a1a95beadc
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 18, 2026.

Transparency log

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

Download URL impact_index-1.6.0-cp310-cp310-macosx_10_12_x86_64.whl
Size 2.3 MB
Tags CPython 3.10 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
0dd980c77196bc9bd9e3b8de63b3737bc6f938db9e173288887307193d6a2e8a
BLAKE2b-256 checksum
How to use checksums
a55da5c7999c1272df699615f669693c71170b49cc6b764de1cf527a847c854e
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 18, 2026.

Transparency log

Release history Release notifications | RSS feed

1.7.0

21 release files

This release

1.6.0 This release

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