github immutables/immutables 2.8.4
2.8.4 Generic KeyExtractor interface for Criteria
on GitHub

Introduce KeyExtractor interface to Criteria for pluggable entity key definition and extraction. Other improvements in different backend implementations.

Support for Modifiables to extend an inner class/interface.


  1. Add support for Modifiable to extend an inner class/interface by Mitch Halpin (67f808358672)


  1. Pluggable KeyExtractor interface (3eb6958db5)
  2. Add projection support for iterable type(s) like List<String> (78c7c29ced)
  3. Add support for Fugue Option to CriteriaModel by Charlie La Mothe (207d631d8c)


  1. add tests for generating OQL expressions by Javad Moghisi (0c5e5e3f18)
  2. include order by direction in OQL by Javad Moghisi (5c3d15b1f3c)
  3. add support for Iterable Size and Contains to OQL Generator by Javad Moghisi (cfb514bfe)
  4. add support for String Operators to OQL Generator by Javad Moghisi(43f4fff8)


  1. Use more efficient id lookups for key attributes in ElasticSearch backend (db4fa9804ea)


  1. Add mongo optimization to convert $in/$nin into $eq/$ne for single element array (09c002cca)

Mongo Repositories (legacy)

  1. Fix suppress warnings for generated MongoDB repositories by André Rouél (1afdfa44f7)


Thanks to all contributors! In no particular order:

  • Javad Moghisi (@jmoghisi)
  • Mitch Halpin (@kiddkaffeine)
  • André Rouél (@arouel)
  • Blake Hurlburt (@blakehurlburt)
  • The Alchemis (@The-Alchemist)
  • Charlie La Mothe (@clamothe)
2 months ago