ol-anura
The supply chain optimization data model for Optilogic's CosmicFrog platform — table and column definitions, data types, validation rules, and per-technology support matrices, exposed through a typed, read-only Python API.
- Distribution name:
ol-anura(PyPI) — import name:ol_anura - Python 3.11+ · single runtime dependency (
pydantic>=2) · fully typed (py.typed) · MIT license
Install
pip install ol-anura
Quickstart
The public entry point is the AnuraSchema facade. All methods are static — do not instantiate it. Results are cached, so repeated calls are fast.
from ol_anura import AnuraSchema
# Discover tables
all_tables = AnuraSchema.get_all_table_names()
input_tables = AnuraSchema.get_input_table_names()
output_tables = AnuraSchema.get_output_table_names()
# Inspect a table
columns = AnuraSchema.get_columns("Facilities")
primary_keys = AnuraSchema.get_primary_keys("Facilities")
metadata = AnuraSchema.get_table_metadata("Facilities")
# Filter by technology support
neo_tables = AnuraSchema.get_fully_supported_tables("neo")
supported = AnuraSchema.get_supported_tables("neo", include_in_development=True)
# Full engine-facing schema views
engine_schema = AnuraSchema.get_engine_schema("neo")
engine_dict = AnuraSchema.export_engine_schema_to_dict("neo")
# Relationships and validations
master_tables = AnuraSchema.get_master_tables("CustomerDemand", "CustomerName")
validations = AnuraSchema.get_table_validations("Facilities")
Table and column names are case-insensitive in most methods.
Concepts
Tables and columns are Pydantic models (ol_anura.core.Table / ol_anura.core.Column). The canonical instances returned by the API are shared — treat them as read-only.
Technologies are the optimization engines that may consume a table: NEO, THROG, TRIAD, HOPPER, DART, DENDRO, CYCLO. Support is declared per column at one of three levels (unsupported, in-development, fully-supported) and rolled up to the table level automatically.
Released vs. in-development: every table and column carries a released flag. Query functions default to released content; pass the released parameter where available to include in-development definitions.
from ol_anura import Technology, TechnologySupport, DataType, Category
from ol_anura.core import Table, Column, TableName
Advanced usage
AnuraSchema is a facade over the underlying query modules; new code can also import ol_anura.query functions directly. A set of deprecated compatibility methods (e.g. get_schema_dict) exists for consumers migrating from the legacy internal anura package — avoid them in new code.
Support
Maintained by Optilogic. Issues and questions: contact your Optilogic representative or visit optilogic.com.
Release files for ol-anura 2.8.20.12
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ol_anura-2.8.20.12.tar.gz | 270.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ol_anura-2.8.20.12-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 822.0 kB
Release files / ol_anura-2.8.20.12.tar.gz
| Download URL | ol_anura-2.8.20.12.tar.gz |
|---|---|
| Size | 270.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
788c650685afc0b389aa2180b44983b635e69d5a6f44c077f8292f2c2c5ca2ed
|
|
BLAKE2b-256 checksum How to use checksums |
30ba68ca7c876e188aa437e3ba4f2388328bffb313b58968985eab28ddcbd449
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.16
|
Release files / ol_anura-2.8.20.12-py3-none-any.whl
| Download URL | ol_anura-2.8.20.12-py3-none-any.whl |
|---|---|
| Size | 551.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
619e88cb760d92a178a41b3b9da977e7534e7390fdcd04fc56a34b2c9c918a4f
|
|
BLAKE2b-256 checksum How to use checksums |
9ba5d148b262cd464d50c1f3c2ed5bfd54876b6956d67fd7e86274fccdf3a1e8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.16
|