This project follows semantic versioning for the installable C++ library package.
MAJOR.MINOR.PATCHproject(... VERSION ...).mlp/version.hpp:
MLP_VERSION_MAJORMLP_VERSION_MINORMLP_VERSION_PATCHMLP_VERSION_STRINGThese headers are considered public API for library consumers:
mlp/types.hppmlp/library.hppmlp/io.hppmlp/metrics.hppmlp/version.hppThe CMake imported target mlp::mlp_lib is also public API.
Component targets are public API as well:
mlp::mlp_coremlp::mlp_optimmlp::mlp_trainmlp::mlp_ioPATCH: bug fixes only, no breaking API changes.MINOR: backward-compatible feature additions.MAJOR: breaking changes are allowed.Validation and error behavior may become stricter in patch releases when the change prevents undefined behavior, unsafe memory access, malformed file loading, or silent numeric corruption. Consumers should treat documented exceptions from invalid inputs as part of normal error handling.
The following are currently internal implementation details and may change between minor versions:
layer.hpp, model.hpp, optimizer.hpp, dense.hpp, activations.hpp, matrix.hpp, loss.hpp, cuda_ops.hppsrc/Consumers should avoid depending on internal headers directly if long-term compatibility matters.