Open
Description
While the Python API is formally unstable, the documentation largely covers the pieces that are expected to remain public in the stable API:
cli
.main
pack_venv
.convert_symlinks
.create_archive
.export_venv
.get_archive_path
stacks
.StackSpec
.BuildEnvironment
The API definition work that mainly needs to be done is for the stacks
namespace, identifying the lower level types that API consumers will need for:
- defining inputs to operations (e.g. passing in
PackageIndexConfig
) - type declarations related to metadata file formats and other things returned from various APIs
As well as looking at which types are sufficiently tightly coupled to each other that they really need to be treated as internal implementation details (in particular, the build environment classes make very strong assumptions about how they're going to be processed, so they're not going to be readily consumable outside a stacks.BuildEnvironment
instance).