Public API and stability#

From version 1.0, simtools follows semantic versioning for the interfaces listed here. Everything else may change in any release.

Stable#

  • Command-line applications (simtools-*): names, options and exit codes. Removed or renamed options are announced in the release notes.

  • Configuration and result files: the model-parameter, application-workflow and data-product schemas (simtools/schemas) and the file formats written by the applications (production tables, job-grid files, HDF5 histogram files).

  • Simulation model repository layout as read by simtools.model_repository.

  • Extension points: the interfaces described in the developer guide for simulation stages (shower and telescope simulators), ray-tracing backends, event readers, execution backends and plot configurations.

Not stable#

  • Python modules, classes and functions of the simtools package not listed above. The API reference documents them for developers; names with a leading underscore are private. Import them in your own code at your own risk and pin the simtools version.

  • Log messages, file names of temporary files and the layout of output directories that are not documented in an application page.

Changes before 1.0#

The release notes list removed and renamed applications, options and file formats.