Versioning and public API¶
Acts uses Semantic Versioning to indicate breaking changes in its public API. A breaking change will result in a new major version. The Conventional Commits convention is used for pull requests to track the type of changes that have been merged and ensure that the version number is increased correctly.
Since Acts is still under active development not all visible symbols are automatically considered part of the public API and as such fall under the Semantic Versioning rules. The subset of symbols that are currently part of the public API is outlined below.
At the moment only the following modules of the core library in the
directory contribute to the public API.
Within these modules, only symbols defined directly in the
must be considered as public.
The following components are not part of the public API but are expected to become part of it at a later stage:
All modules of the core library that are not explicitly listed as part of the public API.
All plugins in the
The Fatras library in the
The following components will never become part of the public API:
Symbols in helper namespaces e.g. in
Acts::detailmust be considered implementation details and are not part of the public API.
Symbols in the namespace
Acts::Experimentalare not part of the public API.
The examples framework and executables in the
All units tests, integration tests, (micro)-benchmarks, and related code in the