Skip to main content

OFD Validator

High-performance validation library for the Open Filament Database, written in Rust with Python and Node.js bindings.

Features

  • JSON Schema Validation — validates filament data against JSON schemas with compiled schema caching
  • Logo Validation — checks image dimensions (PNG, JPEG) and validates SVG root elements
  • Folder Name Validation — ensures folder names match their JSON content IDs
  • Store ID Validation — cross-references store IDs in purchase links
  • GTIN/EAN Validation — validates product barcodes
  • Missing File Detection — checks for required files at each hierarchy level
  • Parallel Processing — multi-threaded validation using Rayon

Installation

Python

pip install ofd-validator

Requires Python 3.10+. No additional Python dependencies needed (self-contained compiled extension).

Node.js

Published to npm. Install it like any public package — the matching prebuilt binary is pulled in automatically, no Rust toolchain required:

npm install @openfilamentcollective/ofd-validator

Prebuilt binaries included for Linux (x64, arm64 — glibc), macOS (x64, arm64), and Windows (x64). (No prebuilt for musl/Alpine yet — those would need to build from source.)

Python Usage

Functions

The library exposes standalone functions rather than a class. All functions accept directory paths as strings and return a ValidationResult object.

Batch validators (internally parallel)

from ofd_validator import validate_all, validate_json_files, validate_logo_files, validate_folder_names

# Run all validations at once
result = validate_all("data", "stores")

# Or run specific batches
result = validate_json_files("data", "stores")
result = validate_logo_files("data", "stores")
result = validate_folder_names("data", "stores")

# JSON schemas can be in a custom directory
result = validate_all("data", "stores", schemas_dir="schemas")
result = validate_json_files("data", "stores", schemas_dir="schemas")

Individual validators

from ofd_validator import validate_store_ids, validate_gtin_ean, validate_required_files
from ofd_validator import validate_logo_file, validate_folder_name

result = validate_store_ids("data", "stores")
result = validate_gtin_ean("data")
result = validate_required_files("data", "stores")

# Single-item validators
result = validate_logo_file("data/BrandX/logo.png", logo_name="logo.png")
result = validate_folder_name("data/BrandX", "brand.json", "id")

Result objects

result = validate_all("data", "stores")

result.is_valid      # True if no errors (warnings are OK)
result.error_count   # Number of errors
result.warning_count # Number of warnings
result.errors        # List of ValidationError objects

# Merge results from multiple runs
combined = ValidationResult()
combined.merge(result_a)
combined.merge(result_b)

# Serialize to dict (for JSON output)
d = result.to_dict()
# {"is_valid": True, "error_count": 0, "warning_count": 0, "errors": [...]}

Error objects

for error in result.errors:
    error.level     # ValidationLevel.Error or ValidationLevel.Warning
    error.level.value  # "ERROR" or "WARNING"
    error.category  # e.g. "JSON Schema", "Logo", "Folder Name"
    error.message   # Human-readable description
    error.path      # Optional file path (str or None)

Node.js Usage

Path mode (filesystem-based)

const { validateAll, validateJsonFiles } = require('@openfilamentcollective/ofd-validator');

const result = validateAll('./data', './stores', './schemas');
console.log(result.isValid);      // boolean
console.log(result.errorCount);   // number
console.log(result.warningCount); // number
for (const err of result.errors) {
  console.log(`${err.level} [${err.category}]: ${err.message} (${err.path})`);
}

Content mode (in-memory, no filesystem access)

Pass file contents directly as strings or Buffers. Useful for CI pipelines, API-fetched data, or server-side validation.

const { validateJsonContent, validateAllContent } = require('@openfilamentcollective/ofd-validator');
const fs = require('fs');

// Single JSON validation
const schemas = {
  brand: fs.readFileSync('schemas/brand_schema.json', 'utf-8'),
};
const result = validateJsonContent(
  '{"id": "BrandX", "name": "Brand X", "logo": "logo.png"}',
  'brand',
  schemas,
  'data/BrandX/brand.json'  // optional label for error messages
);

// Batch validation from in-memory data
const fullResult = validateAllContent({
  jsonFiles: [
    { path: 'brand.json', schemaName: 'brand', content: '{"id":"BrandX"}' },
  ],
  logoFiles: [
    { path: 'logo.png', filename: 'logo.png', content: fs.readFileSync('logo.png') },
  ],
  folders: [
    { path: 'data/BrandX', folderName: 'BrandX', jsonContent: '{"id":"BrandX"}', jsonKey: 'id' },
  ],
  storeIds: ['amazon'],
  schemas: schemas,
});

For the full JS API reference, see docs/js-api.md.

Development

Prerequisites

  • Rust (stable)
  • Python 3.10+ and maturin (for Python bindings)
  • Node.js 18+ (for JS bindings)

Building

# Python: build and install into current env
maturin develop --release

# JS: build native addon
cd crates/ofd-validator-js && npm install && npm run build

# Check all crates
cargo check --workspace

Testing

cargo test --workspace

Project structure

ofd-validator/
├── Cargo.toml                            # Workspace definition
├── pyproject.toml                        # Python package config (maturin)
├── crates/
│   ├── ofd-validator-core/               # Pure Rust validation library (no FFI)
│   │   └── src/
│   │       ├── lib.rs
│   │       ├── types.rs                  # ValidationLevel, ValidationError, ValidationResult
│   │       ├── schema_cache.rs           # Compiled JSON schema cache
│   │       ├── util.rs                   # Constants, helpers
│   │       ├── orchestrator.rs           # DataSet + parallel batch validation
│   │       └── validators/               # Individual validator implementations
│   ├── ofd-validator-python/             # PyO3 bindings
│   │   └── src/
│   │       ├── lib.rs                    # #[pymodule] definition
│   │       ├── types.rs                  # PyO3 wrapper types
│   │       ├── orchestrator.rs           # Python batch validators
│   │       └── validators.rs             # Python individual validators
│   └── ofd-validator-js/                 # napi-rs bindings
│       ├── src/lib.rs                    # #[napi] exports (path mode + content mode)
│       ├── package.json                  # npm package config
│       └── build.rs                      # napi-build
├── docs/
│   └── js-api.md                         # Full JS API reference
└── MIGRATION.md                          # Migration guide for dependents

License

MIT

Metadata

Release files for ofd-validator 0.5.4

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

Source distribution (sdist)

Source distribution for ofd-validator 0.5.4
File Size Uploaded Provenance Actions
ofd_validator-0.5.4.tar.gz 39.3 kB With provenance Details for ofd_validator-0.5.4.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for ofd-validator 0.5.4
File Actions
ofd_validator-0.5.4-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for ofd_validator-0.5.4-cp314-cp314-win_amd64.whl
ofd_validator-0.5.4-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64 Details for ofd_validator-0.5.4-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ofd_validator-0.5.4-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ ARM64 Details for ofd_validator-0.5.4-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
ofd_validator-0.5.4-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details for ofd_validator-0.5.4-cp314-cp314-macosx_11_0_arm64.whl
ofd_validator-0.5.4-cp314-cp314-macosx_10_12_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.12+ x86-64 Details for ofd_validator-0.5.4-cp314-cp314-macosx_10_12_x86_64.whl
ofd_validator-0.5.4-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for ofd_validator-0.5.4-cp313-cp313-win_amd64.whl
ofd_validator-0.5.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details for ofd_validator-0.5.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ofd_validator-0.5.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64 Details for ofd_validator-0.5.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
ofd_validator-0.5.4-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for ofd_validator-0.5.4-cp313-cp313-macosx_11_0_arm64.whl
ofd_validator-0.5.4-cp313-cp313-macosx_10_12_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.12+ x86-64 Details for ofd_validator-0.5.4-cp313-cp313-macosx_10_12_x86_64.whl
ofd_validator-0.5.4-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for ofd_validator-0.5.4-cp312-cp312-win_amd64.whl
ofd_validator-0.5.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details for ofd_validator-0.5.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ofd_validator-0.5.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64 Details for ofd_validator-0.5.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
ofd_validator-0.5.4-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for ofd_validator-0.5.4-cp312-cp312-macosx_11_0_arm64.whl
ofd_validator-0.5.4-cp312-cp312-macosx_10_12_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.12+ x86-64 Details for ofd_validator-0.5.4-cp312-cp312-macosx_10_12_x86_64.whl
ofd_validator-0.5.4-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details for ofd_validator-0.5.4-cp311-cp311-win_amd64.whl
ofd_validator-0.5.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details for ofd_validator-0.5.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ofd_validator-0.5.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64 Details for ofd_validator-0.5.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
ofd_validator-0.5.4-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details for ofd_validator-0.5.4-cp311-cp311-macosx_11_0_arm64.whl
ofd_validator-0.5.4-cp311-cp311-macosx_10_12_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.12+ x86-64 Details for ofd_validator-0.5.4-cp311-cp311-macosx_10_12_x86_64.whl
ofd_validator-0.5.4-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details for ofd_validator-0.5.4-cp310-cp310-win_amd64.whl
ofd_validator-0.5.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details for ofd_validator-0.5.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ofd_validator-0.5.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64 Details for ofd_validator-0.5.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
ofd_validator-0.5.4-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details for ofd_validator-0.5.4-cp310-cp310-macosx_11_0_arm64.whl
ofd_validator-0.5.4-cp310-cp310-macosx_10_12_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.12+ x86-64 Details for ofd_validator-0.5.4-cp310-cp310-macosx_10_12_x86_64.whl

Total release size: 61.5 MB

Release files / ofd_validator-0.5.4.tar.gz

Download URL ofd_validator-0.5.4.tar.gz
Size 39.3 kB
Tags Source
SHA-256 checksum
How to use checksums
919f9b0045d392df781ff006909b6cbbebed619a434e7dc75d9dc20afeb9ae57
BLAKE2b-256 checksum
How to use checksums
fc8fdb7e6743888fb14ecc7945a51df89a3cb0ccf3c05b81bc0a997adad02eab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp314-cp314-win_amd64.whl

Download URL ofd_validator-0.5.4-cp314-cp314-win_amd64.whl
Size 2.5 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
871073e480e59d6caf17750f30bafcfdca25031fc3128694159ee292b08f61b0
BLAKE2b-256 checksum
How to use checksums
b1b1c58f2a09f4a107142f019754fc9c51d9d30105761b255aa847fac652480a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL ofd_validator-0.5.4-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.6 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
34b67b94db57400b716a0c0d3e901a78668d19d255441c3cac00f2574fcf7012
BLAKE2b-256 checksum
How to use checksums
0f626783eaddf5958406befd8e8421196abf7eac9e6d096bfcc7c5a6b2b08b51
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ofd_validator-0.5.4-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 2.5 MB
Tags CPython 3.14 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
bceefef5a2c7afd08205f248d9c8662beb655fb9a0130f0f1dfaa1fd719ff615
BLAKE2b-256 checksum
How to use checksums
c734e8da2915b74e3f9ce3fc162ae137385b08be91f2bb698ee0986a3cd5fecb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp314-cp314-macosx_11_0_arm64.whl

Download URL ofd_validator-0.5.4-cp314-cp314-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d524f0bc727dcea3aea170619062343845ca414da34edb4addf75dcd690be55c
BLAKE2b-256 checksum
How to use checksums
8603fce5b664facba1d1302eeca00d194242f5784002f5508c933104d8e0bebf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp314-cp314-macosx_10_12_x86_64.whl

Download URL ofd_validator-0.5.4-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
802e39da5c930063b53ad95e68c61f7ce8438fde3cac662ddbb59529ad9f9624
BLAKE2b-256 checksum
How to use checksums
72b5322b7b61de4987c97165dd0f22c41aa84fb0acf7d4bec7beabc461ba891c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp313-cp313-win_amd64.whl

Download URL ofd_validator-0.5.4-cp313-cp313-win_amd64.whl
Size 2.5 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
a32a35913fb583301dca5edf4d13761f65901546ca07fbfcc63b869ab3968d75
BLAKE2b-256 checksum
How to use checksums
03acc1ecb61370b391751cf067989cad309c9e816f7c247562095d3bbb7f989a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL ofd_validator-0.5.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.6 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
15a5a58e32a1fa63985a30fb28fbc5e151539ceec432493df90d72478448e231
BLAKE2b-256 checksum
How to use checksums
5ef7d7c6fc0c40b024bb08e373374cbdc11a387fe69f40aa1ce5400ab5e7a207
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ofd_validator-0.5.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 2.5 MB
Tags CPython 3.13 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
0f19d0ca8ed3d0a51b0ef9e82c5a0f47fee06f8a95d2dfa35c3b432260e5623d
BLAKE2b-256 checksum
How to use checksums
42a67b60018d136877dbdb710255e5bef0553aa77d78449caacc2cf2fe0e21fe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp313-cp313-macosx_11_0_arm64.whl

Download URL ofd_validator-0.5.4-cp313-cp313-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2ef0df8236e566fed4e8bc4587d6a8d969efdf656d099db8ff05b7dc020d4b5f
BLAKE2b-256 checksum
How to use checksums
390297fcf04807e94e12815c6b5cbc3b1ced36458de79882e6900987a81a52ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp313-cp313-macosx_10_12_x86_64.whl

Download URL ofd_validator-0.5.4-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
91d4727b5a1530e0094fe0025943070e4a25982919da1d65b5ad0db5b50a44b5
BLAKE2b-256 checksum
How to use checksums
7b071f660f57984a55c7c46c68026169c0b92a4906b6bb78f90919a30aaacff8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp312-cp312-win_amd64.whl

Download URL ofd_validator-0.5.4-cp312-cp312-win_amd64.whl
Size 2.5 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
9eb217f7ef7c09751c9c9b66218e686ec1e8e01d840840bf3ab6dbf6256b6303
BLAKE2b-256 checksum
How to use checksums
f1484d87f0aa6b8c498cd3c00349decab404149a774a6d742357ffb2caed6642
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL ofd_validator-0.5.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.6 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
fcb76f7a1d5240603eff8490b93b7ae6f58baad7d3905ed50a29583a4ca99273
BLAKE2b-256 checksum
How to use checksums
292393c19ff3e0b5c65b900394a67fc297ba015c7de0c032bc1ee3207d1c6b88
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ofd_validator-0.5.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 2.5 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
8ba9aa1065da15362556b7eea1cb0562299d64ea47a16159ff87971ab5edbf4b
BLAKE2b-256 checksum
How to use checksums
76b97a74d37f218db45600742c49a92c9d9935ad9a53a384782a5633d9573b36
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp312-cp312-macosx_11_0_arm64.whl

Download URL ofd_validator-0.5.4-cp312-cp312-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e32e4b9d0bef5cb187db9d5676b372b647b17fc3e7035a1dea639f2683c3ed59
BLAKE2b-256 checksum
How to use checksums
9d6bdf11df7c6ca27733097fcca1410ef4f3f003b9e5229d57c318e9cce7e2a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp312-cp312-macosx_10_12_x86_64.whl

Download URL ofd_validator-0.5.4-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
a76d166ff59e1cf6fd69a943f70a088dfb22e9a96142f10531f268c7ac8da193
BLAKE2b-256 checksum
How to use checksums
13b323883714030bc1b61d1b54adfb553679187d922d802ecde8477793f400c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp311-cp311-win_amd64.whl

Download URL ofd_validator-0.5.4-cp311-cp311-win_amd64.whl
Size 2.5 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
fb9a13090517d504460f7c035e205b1d426c17d8f08f20475f286433bf090399
BLAKE2b-256 checksum
How to use checksums
fa2120ae9de38a727be1aa40b803c0f8ab44b80b94a8e14f0700d11f767baef8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL ofd_validator-0.5.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.6 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
060e56c0cf5e7fa85d9efa72f0ee18492416a9458480c8d6ef3c7897d4cec914
BLAKE2b-256 checksum
How to use checksums
d40ca3b22ce4de253c351209e34682b880b62de7edcaa59a3b397ac0f97174e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ofd_validator-0.5.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 2.5 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
356c353e1df848173e16260cd2fc8cbda5132e0c1fad3f58d4cdb19e3eb0a19f
BLAKE2b-256 checksum
How to use checksums
a7240580121527241d110c269deb7c1b6b4088de82a2276ba99b3de57fc7eda2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp311-cp311-macosx_11_0_arm64.whl

Download URL ofd_validator-0.5.4-cp311-cp311-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e0ff7f8596f1b6c0e12195841a2424f5ab5d154193f92174f70044d52c5ecd87
BLAKE2b-256 checksum
How to use checksums
603ca1a5b5fdc89752a1960bdebe26c76dcf0eb77053eabf73faae79d979b863
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp311-cp311-macosx_10_12_x86_64.whl

Download URL ofd_validator-0.5.4-cp311-cp311-macosx_10_12_x86_64.whl
Size 2.4 MB
Tags CPython 3.11 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
9673ecf31ed232f1eb71e9c2ddeb79f63e51aa1bf5c565869aaca0358b242c7c
BLAKE2b-256 checksum
How to use checksums
96a3fcd9627db4136d0be6f16b5db1d7286f2189e45e744cd3c87e92e4dde0c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp310-cp310-win_amd64.whl

Download URL ofd_validator-0.5.4-cp310-cp310-win_amd64.whl
Size 2.5 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
262bdb62e508b3984d8ceb7faa2d839e6644c09fba82aa26461e27e28790c6d3
BLAKE2b-256 checksum
How to use checksums
142599583b9302dd5051a42a13e56cf515caa83933c30719789d8bc517e9154c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL ofd_validator-0.5.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.6 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
a2158347decbbdbeaad4679ac6dc6813e513296cfbcd8083f78696c58af2442c
BLAKE2b-256 checksum
How to use checksums
314cd1c4b0590a9c220a411cd26f0c9402c9772c10c4e678bbc6d43452a92938
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ofd_validator-0.5.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 2.5 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
066bc27927df136cd3b6bcdf6e467f8aac5639ac90575b32eac697e02b33512b
BLAKE2b-256 checksum
How to use checksums
09d99103d7789446e8633b7da15b4564300c6c6ccdb2f70a4c6744b18fc8010d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp310-cp310-macosx_11_0_arm64.whl

Download URL ofd_validator-0.5.4-cp310-cp310-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
cb9d087f4402d774eedefda50e043da45949a1c5d3434db04e5dd5748046662b
BLAKE2b-256 checksum
How to use checksums
7063ee90e754dec45f9bd08a305a49746441cde8f23718890766e7eb7ba6d98d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / ofd_validator-0.5.4-cp310-cp310-macosx_10_12_x86_64.whl

Download URL ofd_validator-0.5.4-cp310-cp310-macosx_10_12_x86_64.whl
Size 2.4 MB
Tags CPython 3.10 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
faecfd1016409531e99bf1af0d538d37bacfb01aa2eae1cda501e033c979a448
BLAKE2b-256 checksum
How to use checksums
e51162b1ff1c6eef3e034c953488fc265b67f8d3e3f9e605b61233c6fc122542
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Security for ofd-validator 0.5.4

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.

Full provenance

All 26 files in this release have been uploaded with provenance metadata.

Select from 26 files

Attestation for ofd_validator-0.5.4.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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