Named-entity bank validation and Rust-backed extraction
Project description
Named Entity Regex Builder (NERB)
NERB is a Python package, CLI, and MCP server for validated named-entity regex banks. It lets you define curated entity names and aliases, validate them before use, scan text locally with a Rust-backed engine, and return deterministic JSON records for agents, services, and CI gates.
The full documentation site is published at https://johnnygreco.dev/nerb/. It includes the quickstart, workflow guides, schema reference, interface guide, anonymization notes, and performance evidence.
Use NERB when you need:
- local, explainable extraction for known entities such as companies, people, products, codes, accounts, or domains;
- stable byte-offset records that agents can cite, patch, diff, evaluate, and promote;
- one shared extraction surface across Python code, shell commands, and MCP clients;
- Rust-backed matching performance without moving authoring, validation, and workflow control out of Python.
Installation
pip install --upgrade nerb
nerb --help
NERB requires Python 3.10 or newer. Published releases include the Rust extension in CPython 3.10 through 3.14 wheels
for Linux x86_64 (manylinux_2_28), macOS universal2 (x86_64 and arm64), and Windows x86_64. Source installs and other
platform builds require a Rust toolchain with cargo available on PATH.
From a source checkout:
git clone https://github.com/johnnygreco/nerb.git
cd nerb
make sync
uv run nerb --help
Quickstart
JSON banks are the main format for agent and service workflows. A bank stores entity types, canonical names, literal or
regex patterns, statuses, metadata, and optional eval references in one validated JSON object. See
docs/quickstart.md for a copyable minimal company.json, and docs/schemas.md
for the complete bank schema, extraction record contracts, and eval JSONL format.
After saving the minimal company.json from the quickstart, validate and extract:
nerb validate-bank --bank company.json
nerb extract-text \
--bank company.json \
--text "Send this to Acme Corp today."
nerb extract-text --bank company.json --file email.txt
nerb extract-file --bank company.json --file email.txt
nerb extract-report --bank company.json --file email.txt
Extraction responses are JSON. Records include canonical names, matched strings, byte offsets, JSON-bank IDs, pattern kind, and the current captures object.
Agent repair and promotion commands use the same JSON-compatible response style:
nerb apply-patches --bank company.json --patch patches.json
nerb diff-banks old-company.json new-company.json
nerb eval-bank --bank company.json
nerb benchmark-bank --bank company.json
nerb regress-bank \
--old-bank old-company.json \
--new-bank new-company.json
apply-patches accepts RFC 6902 JSON Patch operations, validates the patched candidate, and returns diagnostics with
the candidate response. regress-bank combines diff, eval, and benchmark checks so a bank update can be promoted by a
machine-readable gate.
Anonymization And De-Anonymization
NERB can replace extracted entities with stable redaction tokens or pseudonyms. Reversible workflows use an explicit local replacement database; that database is sensitive when it stores originals.
Reversible redaction with a JSON bank:
nerb replacement-db init --db replacements.json --reversible
nerb anonymize-text --bank people.json --db replacements.json \
--text "John Smith joined." --mode redact --save-db
nerb deanonymize-text --db replacements.json --text "[PERSON_0001] joined."
Config-backed anonymization uses the Rust-resolved YAML detector records. Because YAML configs do not have JSON-bank
name_id values, initialize or configure the replacement DB with canonical or surface assignment scope:
nerb replacement-db init --db config-replacements.json --reversible --assignment-scope canonical
nerb anonymize-config-text --config detectors.yaml --db config-replacements.json \
--text "Miles Davis met M. Davis." --mode redact --save-db
Pseudonyms require a replacement set and are not restored by default:
nerb replacement-db init --db pseudonym-replacements.json --reversible
nerb replacement-db add-set --db pseudonym-replacements.json --set person_names \
--candidate "Mikey Law" --candidate "Nina Vale"
nerb replacement-db set-entity --db pseudonym-replacements.json --entity person \
--mode pseudonym --set person_names --store-originals
nerb anonymize-text --bank people.json --db pseudonym-replacements.json \
--text "John Smith joined." --mode pseudonym --save-db
nerb deanonymize-text --db pseudonym-replacements.json --text "Mikey Law joined." --restore-pseudonyms
Default CLI response metadata omits originals, replacement values, raw assignment keys, fingerprints, bank hashes, and
replacement DB hashes. The transformed text still contains replacement values by design. Python and MCP anonymization
response metadata include replacement values because they are already present in the transformed text, but still omit
originals, raw keys, fingerprints, and hashes by default. Use --include-originals or
--include-sensitive-metadata only when you are intentionally sending sensitive data to the caller. The
replacement-db list command also has --include-values for explicitly inspecting candidate and assignment values.
Python API
Use JSON-bank helpers for agent, service, and test integrations:
from nerb import extract_text, load_bank, validate_bank
bank = load_bank("company.json")
validation = validate_bank(bank)
result = extract_text(bank, "Send this to Acme Corp today.")
file_result = extract_text(bank, file_path="email.txt")
print(validation["valid"])
print(result["records"])
print(file_result["records"])
For direct source-bank scanning, use the Rust-backed Bank API:
from nerb import Bank
bank = Bank.from_source_bytes(b'{"ARTIST":{"Rush":"Rush"}}', format_hint="json")
records = bank.scan_text("Rush played in Toronto.")
Bank.scan_text returns records with entity, canonical_name, surface_name, string, start, end, and
offset_unit. Byte offsets are the default record contract across the CLI, Python helpers, and MCP tools.
Other public helpers include anonymize_text, anonymize_file, anonymize_config_text, anonymize_config_file,
deanonymize_text, deanonymize_file, apply_bank_patches, bank_stats, benchmark_bank, canonicalize_bank,
diff_banks, eval_bank, extract_batch, extract_file, extract_report, explain_match, hash_bank,
regress_bank, and validate_bank_schema.
MCP Server
NERB ships a local stdio MCP server for agents that should validate, patch, diff, scan, report, evaluate, benchmark, or regress banks without reimplementing file handling or serialization.
nerb-mcp --version
Minimal installed-package client config:
{
"mcpServers": {
"nerb": {
"command": "nerb-mcp"
}
}
}
From a source checkout, point the client at the repo:
{
"mcpServers": {
"nerb": {
"command": "uv",
"args": ["run", "nerb-mcp"],
"cwd": "/path/to/nerb"
}
}
}
The MCP tools mirror the Python and CLI surfaces: JSON-bank validation, patching, diffing, extraction, reporting, eval, benchmarking, regression, stats, match explanation, replacement DB validation/save, anonymization, and de-anonymization. Config-backed extraction and config-backed anonymization tools are also available for YAML detector configs.
MCP anonymization tools:
create_replacement_dbvalidate_replacement_dbsave_replacement_dbanonymize_textanonymize_fileanonymize_config_textanonymize_config_filedeanonymize_textdeanonymize_file
MCP writes are explicit: create_replacement_db does not write files; save_replacement_db writes only to
save_db_path; anonymize tools save DB changes only when options.save is true and save_db_path is provided. Reading
from replacement_db_path never implies an in-place save.
YAML Detector Configs
YAML detector configs are a compact authoring format for simple regex extraction:
ARTIST:
Pink Floyd: 'Pink\sFloyd'
The Who: '[Tt]he\sWho'
GENRE:
_flags: IGNORECASE
Rock: '(?:progressive\s)?rock'
Common commands:
nerb init --config detectors.yaml
nerb add ARTIST "Pink Floyd" 'Pink\sFloyd' --config detectors.yaml
nerb validate --config detectors.yaml
nerb doctor --config detectors.yaml --format json
nerb extract ARTIST document.txt --config detectors.yaml --format json
nerb extract --all --text "Pink Floyd played progressive rock." \
--detector 'ARTIST:Pink Floyd=Pink\sFloyd' \
--detector 'GENRE:Rock=rock' \
--format json
Config path resolution is explicit --config, then NERB_CONFIG_PATH, then the platform user config path. YAML
extraction uses the same Rust-backed Bank scanner and byte-offset record contract.
Security Notes
NERB pseudonymization is deterministic replacement, not cryptographic anonymization. A pseudonym can still be identifying
through context, frequency, or an exposed replacement database. Treat reversible DBs as sensitive local files, especially
when store_originals is true. store_originals=false supports stable future replacement but cannot de-anonymize back
to originals.
De-anonymization restores redaction tokens by default. Pseudonym restoration is opt-in because it is exact string replacement: if the pseudonym also appears naturally in transformed text, that natural occurrence may be restored too.
Performance
NERB uses Python as the authoring and control plane, and Rust as the matching data plane. Literal and regex patterns are canonicalized into Rust detector metadata, scanned natively, then projected into stable JSON records. Compiled banks are cached in process by canonical bank hash, engine version, compile options, and platform dimensions.
The final Rust engine gate covers conformance, dense memory, mode strategy, wheel smoke tests, and a representative
synthetic medium bank with 1,000 entities. See docs/performance.md for the current performance
summary and docs/rust-engine-gates.md for recorded release-gate evidence.
For large-source bank construction, see the Enron-backed benchmark guide in
docs/enron-benchmark.md and the measured optimization harness in
docs/autoresearch.md. Agent workflows can also use the reusable
nerb-large-source-bank-building skill for corpus profiling
and privacy-safe handoff guidance.
Development
make sync
make check
make build
make check runs Ruff linting and formatting checks, mypy src/nerb, ty check, pytest, and Rust crate tests.
make build builds and validates the source distribution plus the local platform wheel with twine check --strict.
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 nerb-0.0.11.tar.gz.
File metadata
- Download URL: nerb-0.0.11.tar.gz
- Upload date:
- Size: 156.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b06bca9f49edfddb40da38543e3412d5fe2edc17d15132a35fcba1499b0376a3
|
|
| MD5 |
8c16fcf162cf5d95274fad0f3fe28790
|
|
| BLAKE2b-256 |
d2f5693ba1eb8c6d7153c557f69cbc15f2f65efc7e12814834d4ee3eb7c1d7f0
|
Provenance
The following attestation bundles were made for nerb-0.0.11.tar.gz:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11.tar.gz -
Subject digest:
b06bca9f49edfddb40da38543e3412d5fe2edc17d15132a35fcba1499b0376a3 - Sigstore transparency entry: 1941990873
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: nerb-0.0.11-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30390443f3a65d4620810b296cc7aa9c64f3ce6a8cfc9429f83110711ac56bad
|
|
| MD5 |
5dd82560ace1dce48281f811f59b06d6
|
|
| BLAKE2b-256 |
14a953ed05fd05d1a1029802e766a8fcfd4d2e619812f8b41eb1ddfaf731ea87
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp314-cp314-win_amd64.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp314-cp314-win_amd64.whl -
Subject digest:
30390443f3a65d4620810b296cc7aa9c64f3ce6a8cfc9429f83110711ac56bad - Sigstore transparency entry: 1941991750
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp314-cp314-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: nerb-0.0.11-cp314-cp314-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.14, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
49e97cfa5f91eab5f5ab83046c3688467bbb5dff17abd4f0e40b6b071a9ac3dd
|
|
| MD5 |
0de1046e32bc9bd566e2367ae9ad3e9b
|
|
| BLAKE2b-256 |
60303dbf57c76877d34777fd22c4158120b2bee9f7014910c167cdddbae0fbe8
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp314-cp314-manylinux_2_28_x86_64.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp314-cp314-manylinux_2_28_x86_64.whl -
Subject digest:
49e97cfa5f91eab5f5ab83046c3688467bbb5dff17abd4f0e40b6b071a9ac3dd - Sigstore transparency entry: 1941991624
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.
File metadata
- Download URL: nerb-0.0.11-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
- Upload date:
- Size: 2.3 MB
- Tags: CPython 3.14, macOS 10.12+ universal2 (ARM64, x86-64), macOS 10.12+ x86-64, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
51b990492bb63c7bda3dd004633ab5a860887f0fb3e109223acff8ce070c8378
|
|
| MD5 |
c7bdcc07a0a13d732a7f537ac31feb67
|
|
| BLAKE2b-256 |
326881584868169aad4dcc13ccdcdcb7fb9694290ae8fb2fef5669306e5c22e8
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl -
Subject digest:
51b990492bb63c7bda3dd004633ab5a860887f0fb3e109223acff8ce070c8378 - Sigstore transparency entry: 1941991967
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: nerb-0.0.11-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7df78cd6ffb54db2b39562ec731b3f9eef92920c1247761c87eba96acf8fc5eb
|
|
| MD5 |
68516b83db9ce54f1581cd0198983633
|
|
| BLAKE2b-256 |
c9c346e364cb94a6629f1e4dff946d71f3ffcb49bb72b057e419d9044d12c17f
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp313-cp313-win_amd64.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp313-cp313-win_amd64.whl -
Subject digest:
7df78cd6ffb54db2b39562ec731b3f9eef92920c1247761c87eba96acf8fc5eb - Sigstore transparency entry: 1941991185
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp313-cp313-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: nerb-0.0.11-cp313-cp313-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.13, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f6f55284d0fa3c4ff374465e5439508c07d0909f211d27bbb7883fe118f68429
|
|
| MD5 |
51986bc825dbf98f7459e4ac038db90f
|
|
| BLAKE2b-256 |
4fcf553b263447fe7ab6445cf4df3d8bc387b491e4cf9e764c30dd188eb22167
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp313-cp313-manylinux_2_28_x86_64.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp313-cp313-manylinux_2_28_x86_64.whl -
Subject digest:
f6f55284d0fa3c4ff374465e5439508c07d0909f211d27bbb7883fe118f68429 - Sigstore transparency entry: 1941991899
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.
File metadata
- Download URL: nerb-0.0.11-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
- Upload date:
- Size: 2.3 MB
- Tags: CPython 3.13, macOS 10.12+ universal2 (ARM64, x86-64), macOS 10.12+ x86-64, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0fcba79a0a7751efca26e1a277e0ed006cb803fbd774adcdae5324130386d566
|
|
| MD5 |
ff8c248b4c2c92a52f2018cfa4c220e5
|
|
| BLAKE2b-256 |
4bacaec2aafc89c0c67b1425fd5a74d303a280787e9876a0599404dc487a2cce
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl -
Subject digest:
0fcba79a0a7751efca26e1a277e0ed006cb803fbd774adcdae5324130386d566 - Sigstore transparency entry: 1941991427
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: nerb-0.0.11-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
975e42651e0a9b30b44c7898b64c4ad258a6af995a884f72b4ece4aaecc4a785
|
|
| MD5 |
edbd046cb2e1114cd9a4ce184882996d
|
|
| BLAKE2b-256 |
be686b78a74f470f2749807a9ec00df036ea957675b325e28167d1f697b3779a
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp312-cp312-win_amd64.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp312-cp312-win_amd64.whl -
Subject digest:
975e42651e0a9b30b44c7898b64c4ad258a6af995a884f72b4ece4aaecc4a785 - Sigstore transparency entry: 1941991485
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp312-cp312-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: nerb-0.0.11-cp312-cp312-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
396bf1c12c70153fb7d256937b3060bfa22449791384f663961134a5815f49c9
|
|
| MD5 |
6cbbb72dc65110cc0a9c6461214e7fcb
|
|
| BLAKE2b-256 |
44701332da7288df5173f0627469e53f0f27c8d7479fa70ea7ba72d7c4df20ed
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp312-cp312-manylinux_2_28_x86_64.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp312-cp312-manylinux_2_28_x86_64.whl -
Subject digest:
396bf1c12c70153fb7d256937b3060bfa22449791384f663961134a5815f49c9 - Sigstore transparency entry: 1941991081
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.
File metadata
- Download URL: nerb-0.0.11-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
- Upload date:
- Size: 2.3 MB
- Tags: CPython 3.12, macOS 10.12+ universal2 (ARM64, x86-64), macOS 10.12+ x86-64, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
510f0393973b1807a65166b57dd08712f537d75753efa9d5d13b41a4721c9644
|
|
| MD5 |
3b3d105d65631cb8bb16d355f431894c
|
|
| BLAKE2b-256 |
f9245d11dfb580436499485414edcd4786e9e18acce2078549379128647f0ceb
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl -
Subject digest:
510f0393973b1807a65166b57dd08712f537d75753efa9d5d13b41a4721c9644 - Sigstore transparency entry: 1941991692
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: nerb-0.0.11-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c7e47d101ab2d8fcf3d4032563b44b5f11bc9490830d88ad27bfa355d337c78a
|
|
| MD5 |
3d010be8a5f5864db74d1ef840feae6c
|
|
| BLAKE2b-256 |
d46bc0af17cfd4b2dc8a5f6ce562aab68bb2711e78c2ee6094dcc1d71d6aa495
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp311-cp311-win_amd64.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp311-cp311-win_amd64.whl -
Subject digest:
c7e47d101ab2d8fcf3d4032563b44b5f11bc9490830d88ad27bfa355d337c78a - Sigstore transparency entry: 1941990930
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp311-cp311-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: nerb-0.0.11-cp311-cp311-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a1dabefae6a019991720b53b82a11e7a236b71669927f47aa95c27170838cf5d
|
|
| MD5 |
624f335f61f25986f41c8abfd3c6b823
|
|
| BLAKE2b-256 |
8d1d529d8b5a50ddbeb6a421051bdf2413d0fc7990ed41436d3422f84d9a41e1
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp311-cp311-manylinux_2_28_x86_64.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp311-cp311-manylinux_2_28_x86_64.whl -
Subject digest:
a1dabefae6a019991720b53b82a11e7a236b71669927f47aa95c27170838cf5d - Sigstore transparency entry: 1941991833
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.
File metadata
- Download URL: nerb-0.0.11-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
- Upload date:
- Size: 2.3 MB
- Tags: CPython 3.11, macOS 10.12+ universal2 (ARM64, x86-64), macOS 10.12+ x86-64, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
793e420faf466d0c83da303a2fa172fdd479e0926a99485ad69f5d18cbdfe007
|
|
| MD5 |
40765c1ad8bc222e271a489a4e7a9f1b
|
|
| BLAKE2b-256 |
4d86ccfb48233ff4e7bf9e36e1d61b2935c9d7910f22bbd6aea512cc1f72021a
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl -
Subject digest:
793e420faf466d0c83da303a2fa172fdd479e0926a99485ad69f5d18cbdfe007 - Sigstore transparency entry: 1941991357
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: nerb-0.0.11-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8edd9d6cdc32012d5488cfc31181d1561f8adb67a63fb879f7f14010751dcf7e
|
|
| MD5 |
aa26dcc47117ffc7f86751b0b409cce9
|
|
| BLAKE2b-256 |
0eea326e20ed129ea17db1208b00b67e7cbb9c2c80d72d6b24180c75cfcc05d2
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp310-cp310-win_amd64.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp310-cp310-win_amd64.whl -
Subject digest:
8edd9d6cdc32012d5488cfc31181d1561f8adb67a63fb879f7f14010751dcf7e - Sigstore transparency entry: 1941991551
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp310-cp310-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: nerb-0.0.11-cp310-cp310-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.10, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8db3cb1b0d24130bb1ece24c52a87aa6b8a72f2119938725a28fe7e11d441d7a
|
|
| MD5 |
a10a197d3881e8a70ee1044c22c5608a
|
|
| BLAKE2b-256 |
f1750868089322455721d8f3a4c5cefb85ac889732b9b600d799f169edc21e32
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp310-cp310-manylinux_2_28_x86_64.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp310-cp310-manylinux_2_28_x86_64.whl -
Subject digest:
8db3cb1b0d24130bb1ece24c52a87aa6b8a72f2119938725a28fe7e11d441d7a - Sigstore transparency entry: 1941991270
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type:
File details
Details for the file nerb-0.0.11-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.
File metadata
- Download URL: nerb-0.0.11-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
- Upload date:
- Size: 2.3 MB
- Tags: CPython 3.10, macOS 10.12+ universal2 (ARM64, x86-64), macOS 10.12+ x86-64, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
995cb91f4e60140682ddced4fe99262bd7ed1a0c05c983ba1936bdec89dde264
|
|
| MD5 |
aa7328c86e61fb62fc1fc58108125c63
|
|
| BLAKE2b-256 |
b494049afac7616381a5715a4d86cda220740772c80e9d86e21353503eaf4060
|
Provenance
The following attestation bundles were made for nerb-0.0.11-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:
Publisher:
publish.yml on johnnygreco/nerb
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nerb-0.0.11-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl -
Subject digest:
995cb91f4e60140682ddced4fe99262bd7ed1a0c05c983ba1936bdec89dde264 - Sigstore transparency entry: 1941991000
- Sigstore integration time:
-
Permalink:
johnnygreco/nerb@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Branch / Tag:
refs/tags/v0.0.11 - Owner: https://github.com/johnnygreco
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@abdb1e998aaa6eb849a34c549c2e1b38e429b8a2 -
Trigger Event:
release
-
Statement type: