A database-backed catalog for defining and managing Pandera schemas.
Project description
pandera-catalog
Overview
pandera-catalog is a Python package that provides a database-backed catalog for registering, looking up, and
managing Pandera schemas. It is designed to grow into a SQLAlchemy-connected
(SQLite initially) registry of schema entries, validation rules, and schema metadata — keeping schemas
organized, discoverable, and version-aware.
Installation
Install the base package:
pip install pandera-catalog
Or with uv:
uv add pandera-catalog
Install optional extras for schema validation helpers using Pydantic:
pip install "pandera-catalog[schema]"
Quick Usage
import pandera.pandas as pa
from pandera_catalog import PanderaCatalog
# Create a catalog
catalog = PanderaCatalog()
# Define a schema
schema = pa.DataFrameSchema(
columns={
"id": pa.Column(int),
"value": pa.Column(float, pa.Check.greater_than(0)),
}
)
# Register the schema
catalog.register("my_schema", schema)
# Look up the schema
retrieved = catalog.get("my_schema")
print(retrieved)
# List all registered schemas
print(catalog.list())
Loading schemas from YAML
from pathlib import Path
from pandera_catalog import PanderaCatalog
from pandera_catalog.schemas import load_schema_from_yaml
catalog = PanderaCatalog()
schema = load_schema_from_yaml(Path("schemas/my_schema.yaml"))
catalog.register("my_schema", schema)
See the documentation and examples for more detail.
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 Distribution
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 pandera_catalog-0.3.0.tar.gz.
File metadata
- Download URL: pandera_catalog-0.3.0.tar.gz
- Upload date:
- Size: 24.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5c6c31b33a0c2335efe3dbb7e97c06a5378d55bd4415f493a5caa846002f902f
|
|
| MD5 |
db3c6b9e56a5727c8d1fe0a8241a3f68
|
|
| BLAKE2b-256 |
e1d662d7784eb31d9227e8a4744603ae63f3e7bda5466134c5a24cd1a4244ddc
|
Provenance
The following attestation bundles were made for pandera_catalog-0.3.0.tar.gz:
Publisher:
publish_to_pypi.yml on elphick/pandera-catalog
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pandera_catalog-0.3.0.tar.gz -
Subject digest:
5c6c31b33a0c2335efe3dbb7e97c06a5378d55bd4415f493a5caa846002f902f - Sigstore transparency entry: 2042933050
- Sigstore integration time:
-
Permalink:
elphick/pandera-catalog@ab005d1143e551baf0525aca988636689cef3ec6 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/elphick
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_to_pypi.yml@ab005d1143e551baf0525aca988636689cef3ec6 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file pandera_catalog-0.3.0-py3-none-any.whl.
File metadata
- Download URL: pandera_catalog-0.3.0-py3-none-any.whl
- Upload date:
- Size: 14.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5b833474e4339de30703fbee8e1bef4ee780c2f03451a2b2e4b67c430ede7cd9
|
|
| MD5 |
68178e49ba503660487f72be4b071ba0
|
|
| BLAKE2b-256 |
6021c2a615c443fe0af365632cee00a734a5f7a476e6a722e61bbd760fac2448
|
Provenance
The following attestation bundles were made for pandera_catalog-0.3.0-py3-none-any.whl:
Publisher:
publish_to_pypi.yml on elphick/pandera-catalog
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pandera_catalog-0.3.0-py3-none-any.whl -
Subject digest:
5b833474e4339de30703fbee8e1bef4ee780c2f03451a2b2e4b67c430ede7cd9 - Sigstore transparency entry: 2042933632
- Sigstore integration time:
-
Permalink:
elphick/pandera-catalog@ab005d1143e551baf0525aca988636689cef3ec6 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/elphick
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_to_pypi.yml@ab005d1143e551baf0525aca988636689cef3ec6 -
Trigger Event:
workflow_dispatch
-
Statement type: