diff --git a/docs/src/modules/ROOT/pages/commercial-editions/_only-plus-and-enterprise.adoc b/docs/src/modules/ROOT/pages/commercial-editions/_only-plus-and-enterprise.adoc deleted file mode 100644 index a92afcb2de..0000000000 --- a/docs/src/modules/ROOT/pages/commercial-editions/_only-plus-and-enterprise.adoc +++ /dev/null @@ -1 +0,0 @@ -NOTE: This feature is exclusive to xref:commercial-editions/commercial-editions.adoc[Timefold Solver Plus and Enterprise Editions.] \ No newline at end of file diff --git a/docs/src/modules/ROOT/pages/commercial-editions/commercial-editions.adoc b/docs/src/modules/ROOT/pages/commercial-editions/commercial-editions.adoc index 961fdd1f70..e377b34e02 100644 --- a/docs/src/modules/ROOT/pages/commercial-editions/commercial-editions.adoc +++ b/docs/src/modules/ROOT/pages/commercial-editions/commercial-editions.adoc @@ -1,55 +1,33 @@ -= Plus/Enterprise Editions += Enterprise Edition :page-aliases: partitioned-search/partitioned-search.adoc, \ enterprise-edition/enterprise-edition.adoc :doctype: book :icons: font -_Timefold Solver Plus_ and _Timefold Solver Enterprise_ are commercial products which offer additional features, +_Timefold Solver Enterprise_ is a commercial product which offers additional features, such as xref:constraints-and-score/understanding-the-score.adoc[score analysis], xref:optimization-algorithms/move-selector-reference.adoc#nearbySelection[nearby selection] and xref:running-timefold-solver/multithreaded-solving.adoc#multithreadedIncrementalSolving[multithreaded solving]. These features are essential to scale out to large datasets and build trust with your users. -Unlike _Timefold Solver Community Edition_, these commercial editions are not open-source. +Unlike _Timefold Solver Community Edition_, Enterprise Edition is not open-source. TIP: Looking for quicker time-to-value? Timefold offers https://docs.timefold.ai/[pre-built, fully tuned optimization models], no constraint building required. Just plug into our API and start optimizing immediately. +[#_free_trials_and_licenses] == Free trials and licenses We offer free trials to everyone as well as free licenses to non-profit organizations and for academic research. See our https://licenses.timefold.ai/[license portal] to get your license, then follow the xref:commercial-editions/installation.adoc[installation guide] to get started. -== Feature Comparison - -[cols="4,^1,^1", options="header"] -|=== -| Feature | Plus | Enterprise - -| xref:constraints-and-score/understanding-the-score.adoc[Score Analysis] -| ✓ | ✓ - -| xref:responding-to-change/recommendation-api.adoc#assignmentRecommendationAPI[Recommendation API] -| ✓ | ✓ - -| xref:commercial-editions/performance-improvements.adoc[Performance improvements] -| | ✓ - -| xref:optimization-algorithms/move-selector-reference.adoc#nearbySelection[Nearby selection] -| | ✓ - -| xref:running-timefold-solver/multithreaded-solving.adoc#multithreadedIncrementalSolving[Multithreaded solving] -| | ✓ - -| xref:running-timefold-solver/multithreaded-solving.adoc#partitionedSearch[Partitioned search] -| | ✓ - -| xref:constraints-and-score/performance.adoc#constraintProfiling[Constraint profiling] -| | ✓ - -| xref:commercial-editions/multistage-moves.adoc[Multistage moves] -| | ✓ - -| xref:running-timefold-solver/library/library-integration.adoc#throttlingBestSolutionEvents[Throttling best solution events] -| | ✓ - -|=== \ No newline at end of file +== Features + +* xref:constraints-and-score/understanding-the-score.adoc[Score analysis] +* xref:responding-to-change/recommendation-api.adoc#assignmentRecommendationAPI[Recommendation API] +* xref:commercial-editions/performance-improvements.adoc[Performance improvements] +* xref:optimization-algorithms/move-selector-reference.adoc#nearbySelection[Nearby selection] +* xref:running-timefold-solver/multithreaded-solving.adoc#multithreadedIncrementalSolving[Multithreaded solving] +* xref:running-timefold-solver/multithreaded-solving.adoc#partitionedSearch[Partitioned search] +* xref:constraints-and-score/performance.adoc#constraintProfiling[Constraint profiling] +* xref:commercial-editions/multistage-moves.adoc[Multistage moves] +* xref:running-timefold-solver/library/library-integration.adoc#throttlingBestSolutionEvents[Throttling best solution events] diff --git a/docs/src/modules/ROOT/pages/commercial-editions/installation.adoc b/docs/src/modules/ROOT/pages/commercial-editions/installation.adoc index bc6eb69127..80c328ed8f 100644 --- a/docs/src/modules/ROOT/pages/commercial-editions/installation.adoc +++ b/docs/src/modules/ROOT/pages/commercial-editions/installation.adoc @@ -1,6 +1,6 @@ -= Installing Timefold Solver Plus & Enterprise += Installing Timefold Solver Enterprise Edition -In order to work with the commercial editions of Timefold Solver, 2 actions need to be taken: +In order to work with the commercial edition of Timefold Solver, 2 actions need to be taken: - <>; - <>; @@ -38,7 +38,6 @@ These artifacts are available from Maven Central, so no additional repositories [NOTE] ==== -To avoid operational complexity, both Plus and Enterprise editions of Timefold Solver use the `enterprise` artifacts. Features for your licensed version are enabled based on the provided license key. ==== diff --git a/docs/src/modules/ROOT/pages/constraints-and-score/score-calculation.adoc b/docs/src/modules/ROOT/pages/constraints-and-score/score-calculation.adoc index 1f0b58287d..5c4dfee202 100644 --- a/docs/src/modules/ROOT/pages/constraints-and-score/score-calculation.adoc +++ b/docs/src/modules/ROOT/pages/constraints-and-score/score-calculation.adoc @@ -2304,7 +2304,7 @@ add the `incrementalScoreCalculatorCustomProperties` element and use xref:runnin [#analyzableIncrementalScoreCalculator] ==== Incremental score calculator and score analysis -include::../commercial-editions/_only-plus-and-enterprise.adoc[] +include::../commercial-editions/_only-enterprise.adoc[] To add support for xref:constraints-and-score/understanding-the-score.adoc[score analysis], implement the `AnalyzableIncrementalScoreCalculator` interface instead of `IncrementalScoreCalculator`: diff --git a/docs/src/modules/ROOT/pages/constraints-and-score/understanding-the-score.adoc b/docs/src/modules/ROOT/pages/constraints-and-score/understanding-the-score.adoc index 5f9947ab59..0e87ec040c 100644 --- a/docs/src/modules/ROOT/pages/constraints-and-score/understanding-the-score.adoc +++ b/docs/src/modules/ROOT/pages/constraints-and-score/understanding-the-score.adoc @@ -8,7 +8,7 @@ The score in its pure form is just a number, and does not help us understand the It doesn't say which constraints are broken, or what caused them to break. To understand the score, it needs to be broken down. -include::../commercial-editions/_only-plus-and-enterprise.adoc[] +include::../commercial-editions/_only-enterprise.adoc[] The easiest way to break down the score during development is to print the score summary: diff --git a/docs/src/modules/ROOT/pages/frequently-asked-questions.adoc b/docs/src/modules/ROOT/pages/frequently-asked-questions.adoc index 1ec2cfcf72..37b52ade4b 100644 --- a/docs/src/modules/ROOT/pages/frequently-asked-questions.adoc +++ b/docs/src/modules/ROOT/pages/frequently-asked-questions.adoc @@ -9,10 +9,10 @@ released under http://www.apache.org/licenses/LICENSE-2.0.html[the Apache Licens This license is very liberal and allows reuse for commercial purposes. Read http://www.apache.org/foundation/licence-FAQ.html#WhatDoesItMEAN[the layman's explanation]. -_Timefold Solver Plus and Enterprise editions_ are commercial products -that offer xref:commercial-editions/commercial-editions.adoc[additional features] +_Timefold Solver Enterprise Edition_ is a commercial product +that offers xref:commercial-editions/commercial-editions.adoc[additional features] to scale out to very large datasets. -To find out more, see xref:commercial-editions/commercial-editions.adoc[Plus / Enterprise Edition section] of this documentation. +To find out more, see the xref:commercial-editions/commercial-editions.adoc[Enterprise Edition section] of this documentation. == Does Timefold offer pre-built models? diff --git a/docs/src/modules/ROOT/pages/responding-to-change/recommendation-api.adoc b/docs/src/modules/ROOT/pages/responding-to-change/recommendation-api.adoc index 16b1df728f..f016ec6731 100644 --- a/docs/src/modules/ROOT/pages/responding-to-change/recommendation-api.adoc +++ b/docs/src/modules/ROOT/pages/responding-to-change/recommendation-api.adoc @@ -5,7 +5,7 @@ :sectnums: :icons: font -include::../commercial-editions/_only-plus-and-enterprise.adoc[] +include::../commercial-editions/_only-enterprise.adoc[] With xref:responding-to-change/real-time-planning.adoc[real-time planning], we can respond to a continuous stream of external changes. However, it is often necessary to respond to ad hoc changes too, diff --git a/docs/src/modules/ROOT/pages/upgrading-timefold-solver/upgrade-from-v1.adoc b/docs/src/modules/ROOT/pages/upgrading-timefold-solver/upgrade-from-v1.adoc index a5479ec835..d2206f6498 100644 --- a/docs/src/modules/ROOT/pages/upgrading-timefold-solver/upgrade-from-v1.adoc +++ b/docs/src/modules/ROOT/pages/upgrading-timefold-solver/upgrade-from-v1.adoc @@ -301,7 +301,7 @@ We invite you to read the xref:upgrading-timefold-solver/migration-guides/variab [%collapsible%open] ==== `ScoreExplanation` has been removed. -Use `ScoreAnalysis` instead, which is now provided exclusively by _Timefold Solver Plus and Enterprise Editions_. +Use `ScoreAnalysis` instead, which is now provided exclusively by _Timefold Solver Enterprise Edition_. `ScoreAnalysis` provides the following methods: @@ -321,7 +321,7 @@ The following `ScoreExplanation` methods have no direct replacement and must be `IncrementalScoreCalculator` has also seen changes in this area. `ConstraintMatchAwareIncrementalScoreCalculator` was removed. -The replacement `AnalyzableIncrementalScoreCalculator` is provided by the Plus and Enterprise editions. +The replacement `AnalyzableIncrementalScoreCalculator` is provided by the Enterprise Edition. Instead of overriding methods to return constraint matches, implement the `enableConstraintMatch(ConstraintMatchRegistry)` method. Use `ConstraintMatchRegistry.registerConstraintMatch(ConstraintRef, score, justification)` to register each match;