Skip to main content

Packaging

The wheel contains installable Talos runtime files and package-level documentation. The source distribution contains the authored sources needed to inspect, test and build that wheel, including documentation and the adopted repository tooling.

Prerequisites​

Use the pinned build and packaging toolchains from requirements/ci/; python -m build invokes Hatch. Read the include/exclude contract in pyproject.toml and the artifact audit in scripts/package_audit.py.

Artifact boundaries​

ArtifactRequired contentExcluded content
Wheeltalos/, bundled resources, package README and distribution metadataTests, repository governance and documentation frontend
Source distributionPackage, examples, maintained tests, authored docs, metadata and build/verification toolingInstalled dependencies, generated site, browser results, caches and local evidence trees

Keep authored docs-site files available in the source distribution because documentation execution uses them. Exclude node_modules, build, .generated, .docusaurus and test-results. Generated reports belong in release evidence rather than the install artifact.

The audit checks required paths and forbidden prefixes. Metadata validity alone cannot prove distribution completeness. Every mapped documentation page must be present and byte-equal to its committed source in the source archive.

Dynamic version​

pyproject.toml declares dynamic = ["version"]; [tool.hatch.version] points to talos/__init__.py. The package's __version__, wheel metadata and source archive identity must agree. Do not introduce a second static version in project metadata.

Dependencies​

Runtime and optional dependencies have lower and upper bounds or an exact pin. Frameworks and plotting remain optional; importing core Talos cannot eagerly import TensorFlow, Keras, Torch, Matplotlib or PyArrow. CI toolchains are compiled and hash-locked separately from the runtime dependency envelope.

Required proof​

Build twice with a fixed SOURCE_DATE_EPOCH, compare artifact bytes and run the package audit. Check wheel/sdist metadata and declared dependency bounds. Install the wheel in a fresh environment outside the checkout, verify the distribution/package version, exercise core imports and CLI help, and run the maintained acceptance suite against installed code.

Backend changes additionally require the affected current, minimum or historical compatibility lanes and fresh-process restore after caller-source deletion. Packaging success cannot substitute for model behavior. Source archive checks also verify documentation inventory and authored frontend content.