|
5 | 5 |
|
6 | 6 | Timefold Solver separates its API from its implementation: |
7 | 7 |
|
8 | | -* **Public API**: All classes in the following package namespaces are 100% *backwards compatible* in future releases, |
9 | | -especially minor and hotfix releases: |
| 8 | +* **Public API**: All classes under these `api` and `config` namespaces are 100% *backwards compatible* in future minor and hotfix releases: |
10 | 9 | ** `ai.timefold.solver.core.api` |
11 | 10 | ** `ai.timefold.solver.benchmark.api` |
12 | 11 | ** `ai.timefold.solver.test.api` |
13 | | -** `ai.timefold.solver...api*` |
14 | | -* **Configuration**: The solver configuration is backwards compatible for all elements, |
15 | | -except for elements that require the use of non-public API classes. |
16 | | -The solver configuration is defined by the classes in the following package namespaces: |
| 12 | +** `ai.timefold.solver.*.api` |
17 | 13 | ** `ai.timefold.solver.core.config` |
18 | 14 | ** `ai.timefold.solver.benchmark.config` |
19 | 15 | * **Implementation classes**: All other classes are _not_ backwards compatible. |
20 | 16 | They will change in future major or minor releases, |
21 | 17 | but probably not in hotfix releases. |
22 | 18 |
|
23 | | -Backwards incompatible changes will be clearly documented in xref:upgrading-timefold-solver/upgrade-to-latest-version.adoc#manualUpgrade[the upgrade recipe]. |
24 | | - |
25 | | - |
26 | | -[NOTE] |
27 | | -==== |
28 | | -This documentation covers some `impl` classes too. |
29 | | -Those documented `impl` classes are reliable and safe to use (unless explicitly marked as experimental in this documentation), |
30 | | -but we're just not entirely comfortable yet to write their signatures in stone. |
31 | | -==== |
| 19 | +Backwards incompatible changes for a new major version are clearly documented in xref:upgrading-timefold-solver/upgrade-to-latest-version.adoc#manualUpgrade[the upgrade recipe]. |
32 | 20 |
|
33 | 21 | [#previewFeatures] |
34 | 22 | == Preview features |
35 | 23 |
|
36 | 24 | Timefold Solver includes several components which are only available as preview features. |
| 25 | +These are in `preview.api` packages. |
37 | 26 | These are: |
38 | 27 |
|
39 | | -- xref:optimization-algorithms/local-search.adoc#diversifiedLateAcceptance[Diversified Late Acceptance] acceptor. |
| 28 | +- xref:optimization-algorithms/local-search.adoc#diversifiedLateAcceptance[Diversified Late Acceptance] acceptor |
40 | 29 | - xref:constraints-and-score/understanding-the-score.adoc#solutionDiff[Solution diff API] |
41 | 30 | in the `ai.timefold.solver.core.preview.api.domain.solution.diff` package, |
42 | | -and in the `SolutionManager`. |
| 31 | +and in the `SolutionManager` |
43 | 32 | - _Move Streams API_ in the `ai.timefold.solver.core.preview.api.move` package |
44 | 33 | and the `ai.timefold.solver.core.preview.api.domain.metamodel` package, |
45 | | -as well as in their subpackages. |
46 | | -- _Timefold Solver for Python_, which is currently in beta. |
| 34 | +as well as in their subpackages |
| 35 | +- _Timefold Solver for Python_, which is currently in beta |
47 | 36 |
|
48 | 37 | These preview features are developed to the same standard as the rest of Timefold Solver. |
49 | 38 | However, their APIs are not yet considered stable, pending user feedback. |
50 | 39 | Any class, method or field related to these features may change or be removed without prior notice, |
51 | | -although we will strive to avoid this as much as possible. |
| 40 | +although we strive to avoid this as much as possible. |
52 | 41 |
|
53 | 42 | We encourage you to try these preview features and give us feedback on your experience with them. |
54 | 43 | Please direct your feedback to |
|
0 commit comments