Backwards compatibility
Timefold Solver separates its API from its implementation:
-
Public API: All classes under these
apiandconfignamespaces are 100% backwards compatible in future minor and hotfix releases:-
ai.timefold.solver.core.api -
ai.timefold.solver.benchmark.api -
ai.timefold.solver.test.api -
ai.timefold.solver.*.api -
ai.timefold.solver.core.config -
ai.timefold.solver.benchmark.config
-
-
Implementation classes: All other classes are not backwards compatible. They will change in future major or minor releases, but probably not in hotfix releases.
Backwards incompatible changes for a new major version are clearly documented in the upgrade recipe.
Preview features
Timefold Solver includes several components which are only available as preview features.
These are in preview.api packages.
These are:
-
Diversified Late Acceptance acceptor
-
Solution diff API in the
ai.timefold.solver.core.preview.api.domain.solution.diffpackage, and in theSolutionManager -
Move Streams API in the
ai.timefold.solver.core.preview.api.movepackage and theai.timefold.solver.core.preview.api.domain.metamodelpackage, as well as in their subpackages -
Timefold Solver for Python, which is currently in beta
These preview features are developed to the same standard as the rest of Timefold Solver. However, their APIs are not yet considered stable, pending user feedback. Any class, method or field related to these features may change or be removed without prior notice, although we strive to avoid this as much as possible.
We encourage you to try these preview features and give us feedback on your experience with them. Please direct your feedback to Timefold Solver Github.