November 8th, 2023

Timefold Solver Community Edition 1.4.0

It's time for another monthly release of Timefold Solver Community Edition!

Featured Update - JSON-friendly score explanations:

  • Even wondered what does a score of -3hard/-5soft actually mean? Wonder no more!
  • Timefold Solver can now break down the score all the way to individual constraint matches.
  • It can also compute differences between any two solutions.
  • And finally, it can easily send them over the wire from the backend to the frontend.

Furthermore you can now generate a Spring Boot app and include the Timefold Solver dependency without it failing if there's no @PlanningSolution or @PlanningEntity classes.

On top of that, we have the usual assortment of performance improvements, bug fixes and dependency upgrades.

Changelog

🚀 Features

  • JSON-friendly score analysis (#336), closes #336

🐛 Fixes

  • Do not fail-fast in spring boot extension if there no @PlanningSolution or @PlanningEntity classes (#397), closes #388 #397
  • depend on spring-boot-starter in the starter module
  • invalidate computed variables in Project Job Scheduling correctly (#371), closes #371
  • Enable constraint matching when metrics dictate

🔄️ Changes

  • replace stream with a loop on the hot path
  • Implement node sharing for groupBy (#401), closes #401
  • Implement node sharing for expand, map and flattenLast (#376), closes #376
  • Implement node sharing for ifExists and ifNotExists (#375), closes #375
  • Use lambda constants in CS to allow for more node sharing (#374), closes #374

🧰 Tasks

  • Move implementations of Collectors outside of ConstraintCollectors (#392), closes #392
  • rationalize Spring dependencies
  • don't use Javadoc tags in Spring Boot properties, closes #387
  • remove trailing newlines from exception messages

📝 Documentation

  • move information about Enterprise Edition to a new section (#404), closes #404

Contributors

We'd like to thank the following people for their contributions:

Timefold Solver Community Edition is an open source project, and you are more than welcome to contribute as well! For more, see Contributing.

Should your business need to scale to truly massive data sets or require enterprise-grade support, check out Timefold Solver Enterprise Edition.

How to use Timefold Solver

To see Timefold Solver in action, check out the quickstarts.

With Maven or Gradle, just add the ai.timefold.solver : timefold-solver-core : 1.4.0 dependency in your pom.xml to get started.

You can also import the Timefold Solver Bom (ai.timefold.solver : timefold-solver-bom : 1.4.0) to avoid duplicating version numbers when adding other Timefold Solver dependencies later on.

Additional notes

The changelog and the list of contributors above are automatically generated. They exclude contributions to certain areas of the repository, such as CI and build automation. This is done for the sake of brevity and to make the user-facing changes stand out more.

Back to overview

Stay In-The-Know

Sign Up for Our Newsletter

We care about the protection of your data. Read our Privacy Policy.

Timefold

Timefold is an AI planning optimization platform, built on powerful open-source solver technology, enabling software builders to tackle real-world, complex and high-impact operational planning problems. It delivers significant economic value in optimization operations like extended VRP, maintenance scheduling, field service routing, task sequencing, etc.

© 2024 Timefold BV