Skip to content

Orionis metadata and compatibility

Use orionis.metadata to display the installed framework version in an application’s diagnostics, about screen, or command output. The values are read directly from the installed package; importing them needs no application bootstrap, configuration file, or network request.

This complete example runs anywhere Orionis is installed:

from orionis.metadata import NAME, PYTHON_REQUIRES, VERSION
required_python = ".".join(map(str, PYTHON_REQUIRES))
print(f"{NAME} {VERSION}; Python {required_python}+")

VERSION describes the installed Orionis framework, not your application’s release. Keep application versioning separate. PYTHON_REQUIRES is the interpreter floor as a tuple, currently (3, 14).

ConstantUse in an application
NAMEDistribution/import identity, orionis.
VERSIONInstalled framework release string.
DESCRIPTIONFramework description.
AUTHOR / AUTHOR_EMAILFramework maintainer identity and contact.
PYTHON_REQUIRESMinimum Python (major, minor) tuple.
APIPyPI JSON endpoint for the distribution.
DOCSDocumentation root.
FRAMEWORKFramework source repository.
SKELETONApplication skeleton repository.

The strings and tuple are release metadata; treat them as read-only. API refers to package metadata on PyPI, not a callable application API or the framework API reference site. Importing any URL constant does not contact that destination or check its availability.

import sys
from orionis.metadata import PYTHON_REQUIRES
running = sys.version_info[: len(PYTHON_REQUIRES)]
if running < PYTHON_REQUIRES:
required = ".".join(map(str, PYTHON_REQUIRES))
raise RuntimeError(f"Orionis requires Python {required}+")

Compare the same number of components. Python packaging already enforces requires-python during normal installation; this check is useful for a separate diagnostic or launcher. Installed wheels may not contain the repository’s pyproject.toml, so application code should use the exported constants instead of looking for that file.

VERSION is a plain release string, not a PEP 440 parser or a supported-feature query. Determine behavior from the documentation and public API for the installed release. There is no metadata configuration, provider, facade, or per-request state.

Implementation reference: framework.py.