Immutables v2.8.0 Release Notes

Release Date: 2019-09-20 // 25 days ago
  • 🛠 (not a bugfix release yet, sorry, expect more bugfixes in 2.8.x versions)

    2.8.0 is available on Maven Central now

    Criteria & Repositories API

    Combine power of immutable objects with the flexibility of querying them

    🚀 Immutables team is pleased to announce Immutables 2.8.0 release.

    🚀 Major focus of this release was Criteria API which enables
    👉 users to generate model-specific query DSL. Generated class (along with criteria runtime) allows accessing different backends in a unified, fluent and type-safe manner.

    Benefits over raw driver API usage or string based abstractions (DSLs) are:

    1. Compile-time checking and type safety allows for much fewer mistakes
    2. IDE auto-completion guides through the choice of fields and operators
    3. Best in class readability due to drastically reduced number of parentheses and specially designed DNF approach ♻️ 4. Easier model refactoring

    Benefits over existing frameworks like Spring Data, Morphia, QueryDSL or jOOQ are:

    1. Derive immutable implementation, query DSL, repository and more from a single definition 🔀 2. Pluggable Sync / Async / Reactive execution models
    2. Pluggable backend implementations 📄 4. Generated or custom Repositories (aka DAOs) can be controlled to generate reading / writing or watching operations on entities

    🚀 Full release announcement here:
    Getting started with criteria API:

Previous changes from v2.7.4

    • 🛠 Bugfix and refinements release! Thank you issue reports and PRs!
    • Notable stuff
      • Propagate checked exceptions in throws for lazy attributes (only for @Value.Lazy)
    • Issues 2.7.4