Release notes
*Sourced from [value's releases](https://github.com/immutables/immutables/releases).*
> ## 2.8.3 Minor Bugfix release for Geode backend
> Minor release fixing a couple of bugs in Geode backend :
>
> 1. Use JDK collections for geode bind variables when sending query to server (7cc1fb818)
> 2. Prefer [Region.getAll()](https://geode.apache.org/releases/latest/javadoc/org/apache/geode/cache/Region.html#getAll-java.util.Collection-) method for queries which filter only on ID attribute (5426af61)
> 3. Drop `ContainerResolver` interface (cb9d064)
> 4. Drop `NamingStrategy` interface (764d3b5)
>
>
> ## 2.8.2 Criteria DISTINCT support
> Main feature of this release is `DISTINCT` statement in Criteria. Plus, small functionalities and bugfixes.
>
> # Notable changes
>
> ### Criteria
> - Support for `DISTINCT` modifier in queries. Simple DSL to allow chaining `DISTINCT / LIMIT / OFFSET` modifiers ([9d639225](https://github.com/immutables/immutables/commit/9d6392258ce5b47b09d7d6b35a5f5b168de3471b))
>
> ```java
> // example of DISTINCT query
> repository.find(person.isActive.isTrue())
> .orderBy(person.name.asc())
> .select(person.name)
> .distinct()
> .limit(2)
> .fetch();
> ```
>
> ### Geode backend
> - Escape [reserved words](https://geode.apache.org/docs/guide/19/developing/querying_basics/reserved_words.html) (eg. `type`, `time`) in Geode OQL ([da9b7e1](https://github.com/immutables/immutables/commit/da9b7e1a8052442dd8e0abf0ff1a5a544a8c6b4f))
>
> ### Codegen
> - Remove unnecessary empty line between `hashCode()` and `toString()` functions introduced by previous commit
> - Suppress ErrorProne error (with `@SuppressWarnings(Immutable)`) for [lazy hashCode](https://immutables.github.io/immutable.html#lazy-computation-of-hashcode) field ([#1114](https://github-redirect.dependabot.com/immutables/immutables/issues/1114))
>
> ### Gson / JSON Adapters
> - Fixed issue where integers are always printed as doubles ([#1120](https://github-redirect.dependabot.com/immutables/immutables/pull/1120)) by Ben Mazzarol ([@bmazzarol](https://github.com/bmazzarol))
> - Fixed issue using the jackson XML streaming parser where boolean tokens are always strings ([#1120](https://github-redirect.dependabot.com/immutables/immutables/pull/1120)) by Ben Mazzarol ([@bmazzarol](https://github.com/bmazzarol))
>
> ### Other changes
> - Change dependency scope of `jackson-datatype-guava` and `jackson-datatype-jdk8` to `test` in ElasticSearch backend. They were used only in tests.
> - Enable [errorprone](https://errorprone.info/) static analysis in criteria module ([ef5f1a267](https://github.com/immutables/immutables/commit/ef5f1a2672daca5955ecb2c755a5a975964ae603))
>
> Thanks to all contributors:
> - [Ben Mazzarol](https://github.com/bmazzarol)
>
> ## 2.8.1 Criteria & Repositories API, Update
> [Immutables](https://immutables.github.io/) team is happy to announce Immutables 2.8.1 release.
>
> This release [2.8.1](https://github.com/immutables/immutables.github.io/blob/src/2.8.1-release.md) comes one month after [2.8.0](https://github.com/immutables/immutables.github.io/blob/src/2.8.0-release.md) and contains several improvements, bugfixes and new functionalities.
>
> ... (truncated)
Changelog
*Sourced from [value's changelog](https://github.com/immutables/immutables/blob/master/CHANGELOG.md).*
> ### 2.8.1 (2019-10-19)
> - Support for JavaBeans in Criteria API
> - Partial updates applied in the backend
> - Top level `count()`
> - lazyhash
> - [2.8.1 release notes](https://github.com/immutables/immutables.github.io/blob/3e800596e5577770df9bb466977614fe01e6b08d/2.8.1-release.md)
>
> ### 2.8.0 (2019-09-19)
> - Criteria & Repositories API
> - Not a bugfix release yet, expect more bugfixes in future 2.8.x versions
> - [2.8.0 release notes](https://github.com/immutables/immutables.github.io/blob/204c4ada80dcb42226b448294f1e90a36524ce52/2.8.0-release.md)
>
> ### 2.7.4 (2018-12-26)
> - 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](https://github.com/immutables/immutables/milestone/73?closed=1)
>
> ### 2.7.3 (2018-11-10)
> - Important fix for Modifiables/Immutables/from (aka mergeFrom) methods broken in 2.7.2
> - [Issues [#863](https://github-redirect.dependabot.com/immutables/immutables/issues/863) [#864](https://github-redirect.dependabot.com/immutables/immutables/issues/864)](https://github.com/immutables/immutables/milestone/72?closed=1)
>
> ### 2.7.2 (2018-11-05)
> - Many fixes and corrections! Thank you issue reports and PRs!
> - [Issues 2.7.2](https://github.com/immutables/immutables/milestone/71?closed=1)
> - Notable stuff
> + Experimental support for Codecs and Jackson (along with Gson) for mapping to MongoDB repositories ([#850](https://github-redirect.dependabot.com/immutables/immutables/issues/850), [#817](https://github-redirect.dependabot.com/immutables/immutables/issues/817) by [@asereda-gs](https://github.com/asereda-gs))
> + `Style.optionalAcceptNullable=true` now also generates alternative constructor accepting nullable input for `java.util.Optional` attributes ([#843](https://github-redirect.dependabot.com/immutables/immutables/issues/843) by [@ThLeu](https://github.com/ThLeu))
> + `org.immutables.value.Generated` now covers generated nested classes ([#854](https://github-redirect.dependabot.com/immutables/immutables/issues/854) by [@before](https://github.com/before))
>
> ### 2.7.1 (2018-08-25)
> - Thank you issue reports and PRs! Not many features here, but minor version increment was needed
> - Notable stuff
> + Added `org.immutables:value-annotations` annotation only jar. Previously we had equivalent artifact `org.immutables:value:annotations` (classifier `annotations`). Apparently some tools have trouble with properly addressing jars with classifiers and attached sources. Both artifacts are released.
> + `org.immutables.value.Generated` annotation (which auto added to generated classes / builders) is class-retention annotation now. Some tools (like osgi related) will not automatically add such annotation as runtime dependency.
> + `Automatic-Module-Name` now have no dashes for `org.immutables.value.annotations` (annotation only) and `org.immutables.value.processor` (unshaded processor). Most used artifact/module `org.immutables.value` is obviously unchanged.
> + Can suppress a bit finer categories of warnings `@Suppression("immutables:subtype")`, each warning message now contain such token in parentheses.
> + Subtyping value type with another value type directly is now a warning, not an error. It's still better avoid it.
> - [Issues 2.7.1](https://github.com/immutables/immutables/milestone/70?closed=1)
>
> ### 2.6.3 (2018-07-21)
> * [immutables/immutables#784](https://github-redirect.dependabot.com/immutables/immutables/issues/784)
> * [immutables/immutables#788](https://github-redirect.dependabot.com/immutables/immutables/issues/788)
>
> ### 2.6.1 (2018-05-23)
> - Hotfixes for 2.6. Thank you for reported issues and PRs!
> - [Issues 2.6.1](https://github.com/immutables/immutables/milestone/69?closed=1)
>
> ### 2.6.0 (2018-05-19)
> - Tons of fixes and small improvements. Thank you for reported issues and PRs!
> ... (truncated)
Commits
- [`245522d`](https://github.com/immutables/immutables/commit/245522dc89a5048cddeb73c12849205f33c39b91) v2.8.3
- [`764d3b5`](https://github.com/immutables/immutables/commit/764d3b50d711033c91ddb31523e65a0fb9237845) Drop interface NamingStrategy
- [`cb9d064`](https://github.com/immutables/immutables/commit/cb9d0648926935152d7aafd4d8b8dfa0f0392fa4) Drop ContainerResolver interface
- [`6b724a7`](https://github.com/immutables/immutables/commit/6b724a7f40f1ba5b101191480b3ce97526aae866) Geode. Reuse deleteByKeys() method in SyncDelete
- [`0f24884`](https://github.com/immutables/immutables/commit/0f24884dc3303755bde80ea39b6863bfd69e57f6) Extract IdOnlyFilter into separate class for easier testing and composition (...
- [`5426af6`](https://github.com/immutables/immutables/commit/5426af61eceda26a8a7067d1c4b2e174caba34c8) For Geode backend prefer getAll() function over OQL when query is a simple ID...
- [`7cc1fb8`](https://github.com/immutables/immutables/commit/7cc1fb818d07a349b8e13500bbfcdd5fc51e57f8) Use JDK collections for geode bind variables when sending query to server
- [`0bb7faa`](https://github.com/immutables/immutables/commit/0bb7faa7b908555f49fbc4ddd046169e2287e1f6) v2.8.3-SNAPSHOT
- [`bb87567`](https://github.com/immutables/immutables/commit/bb8756796e72a8e1349fb40da5663a4adf25fa22) v2.8.2
- [`62a83d1`](https://github.com/immutables/immutables/commit/62a83d18d7d4c00d389e768a99711571bb761902) Better exception message in IdResolver showing missing annotation name
- Additional commits viewable in [compare view](https://github.com/immutables/immutables/compare/immutables-2.7.5...2.8.3)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
Bumps value from 2.7.5 to 2.8.3.
Release notes
*Sourced from [value's releases](https://github.com/immutables/immutables/releases).* > ## 2.8.3 Minor Bugfix release for Geode backend > Minor release fixing a couple of bugs in Geode backend : > > 1. Use JDK collections for geode bind variables when sending query to server (7cc1fb818) > 2. Prefer [Region.getAll()](https://geode.apache.org/releases/latest/javadoc/org/apache/geode/cache/Region.html#getAll-java.util.Collection-) method for queries which filter only on ID attribute (5426af61) > 3. Drop `ContainerResolver` interface (cb9d064) > 4. Drop `NamingStrategy` interface (764d3b5) > > > ## 2.8.2 Criteria DISTINCT support > Main feature of this release is `DISTINCT` statement in Criteria. Plus, small functionalities and bugfixes. > > # Notable changes > > ### Criteria > - Support for `DISTINCT` modifier in queries. Simple DSL to allow chaining `DISTINCT / LIMIT / OFFSET` modifiers ([9d639225](https://github.com/immutables/immutables/commit/9d6392258ce5b47b09d7d6b35a5f5b168de3471b)) > > ```java > // example of DISTINCT query > repository.find(person.isActive.isTrue()) > .orderBy(person.name.asc()) > .select(person.name) > .distinct() > .limit(2) > .fetch(); > ``` > > ### Geode backend > - Escape [reserved words](https://geode.apache.org/docs/guide/19/developing/querying_basics/reserved_words.html) (eg. `type`, `time`) in Geode OQL ([da9b7e1](https://github.com/immutables/immutables/commit/da9b7e1a8052442dd8e0abf0ff1a5a544a8c6b4f)) > > ### Codegen > - Remove unnecessary empty line between `hashCode()` and `toString()` functions introduced by previous commit > - Suppress ErrorProne error (with `@SuppressWarnings(Immutable)`) for [lazy hashCode](https://immutables.github.io/immutable.html#lazy-computation-of-hashcode) field ([#1114](https://github-redirect.dependabot.com/immutables/immutables/issues/1114)) > > ### Gson / JSON Adapters > - Fixed issue where integers are always printed as doubles ([#1120](https://github-redirect.dependabot.com/immutables/immutables/pull/1120)) by Ben Mazzarol ([@bmazzarol](https://github.com/bmazzarol)) > - Fixed issue using the jackson XML streaming parser where boolean tokens are always strings ([#1120](https://github-redirect.dependabot.com/immutables/immutables/pull/1120)) by Ben Mazzarol ([@bmazzarol](https://github.com/bmazzarol)) > > ### Other changes > - Change dependency scope of `jackson-datatype-guava` and `jackson-datatype-jdk8` to `test` in ElasticSearch backend. They were used only in tests. > - Enable [errorprone](https://errorprone.info/) static analysis in criteria module ([ef5f1a267](https://github.com/immutables/immutables/commit/ef5f1a2672daca5955ecb2c755a5a975964ae603)) > > Thanks to all contributors: > - [Ben Mazzarol](https://github.com/bmazzarol) > > ## 2.8.1 Criteria & Repositories API, Update > [Immutables](https://immutables.github.io/) team is happy to announce Immutables 2.8.1 release. > > This release [2.8.1](https://github.com/immutables/immutables.github.io/blob/src/2.8.1-release.md) comes one month after [2.8.0](https://github.com/immutables/immutables.github.io/blob/src/2.8.0-release.md) and contains several improvements, bugfixes and new functionalities. > > ... (truncated)Changelog
*Sourced from [value's changelog](https://github.com/immutables/immutables/blob/master/CHANGELOG.md).* > ### 2.8.1 (2019-10-19) > - Support for JavaBeans in Criteria API > - Partial updates applied in the backend > - Top level `count()` > - lazyhash > - [2.8.1 release notes](https://github.com/immutables/immutables.github.io/blob/3e800596e5577770df9bb466977614fe01e6b08d/2.8.1-release.md) > > ### 2.8.0 (2019-09-19) > - Criteria & Repositories API > - Not a bugfix release yet, expect more bugfixes in future 2.8.x versions > - [2.8.0 release notes](https://github.com/immutables/immutables.github.io/blob/204c4ada80dcb42226b448294f1e90a36524ce52/2.8.0-release.md) > > ### 2.7.4 (2018-12-26) > - 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](https://github.com/immutables/immutables/milestone/73?closed=1) > > ### 2.7.3 (2018-11-10) > - Important fix for Modifiables/Immutables/from (aka mergeFrom) methods broken in 2.7.2 > - [Issues [#863](https://github-redirect.dependabot.com/immutables/immutables/issues/863) [#864](https://github-redirect.dependabot.com/immutables/immutables/issues/864)](https://github.com/immutables/immutables/milestone/72?closed=1) > > ### 2.7.2 (2018-11-05) > - Many fixes and corrections! Thank you issue reports and PRs! > - [Issues 2.7.2](https://github.com/immutables/immutables/milestone/71?closed=1) > - Notable stuff > + Experimental support for Codecs and Jackson (along with Gson) for mapping to MongoDB repositories ([#850](https://github-redirect.dependabot.com/immutables/immutables/issues/850), [#817](https://github-redirect.dependabot.com/immutables/immutables/issues/817) by [@asereda-gs](https://github.com/asereda-gs)) > + `Style.optionalAcceptNullable=true` now also generates alternative constructor accepting nullable input for `java.util.Optional` attributes ([#843](https://github-redirect.dependabot.com/immutables/immutables/issues/843) by [@ThLeu](https://github.com/ThLeu)) > + `org.immutables.value.Generated` now covers generated nested classes ([#854](https://github-redirect.dependabot.com/immutables/immutables/issues/854) by [@before](https://github.com/before)) > > ### 2.7.1 (2018-08-25) > - Thank you issue reports and PRs! Not many features here, but minor version increment was needed > - Notable stuff > + Added `org.immutables:value-annotations` annotation only jar. Previously we had equivalent artifact `org.immutables:value:annotations` (classifier `annotations`). Apparently some tools have trouble with properly addressing jars with classifiers and attached sources. Both artifacts are released. > + `org.immutables.value.Generated` annotation (which auto added to generated classes / builders) is class-retention annotation now. Some tools (like osgi related) will not automatically add such annotation as runtime dependency. > + `Automatic-Module-Name` now have no dashes for `org.immutables.value.annotations` (annotation only) and `org.immutables.value.processor` (unshaded processor). Most used artifact/module `org.immutables.value` is obviously unchanged. > + Can suppress a bit finer categories of warnings `@Suppression("immutables:subtype")`, each warning message now contain such token in parentheses. > + Subtyping value type with another value type directly is now a warning, not an error. It's still better avoid it. > - [Issues 2.7.1](https://github.com/immutables/immutables/milestone/70?closed=1) > > ### 2.6.3 (2018-07-21) > * [immutables/immutables#784](https://github-redirect.dependabot.com/immutables/immutables/issues/784) > * [immutables/immutables#788](https://github-redirect.dependabot.com/immutables/immutables/issues/788) > > ### 2.6.1 (2018-05-23) > - Hotfixes for 2.6. Thank you for reported issues and PRs! > - [Issues 2.6.1](https://github.com/immutables/immutables/milestone/69?closed=1) > > ### 2.6.0 (2018-05-19) > - Tons of fixes and small improvements. Thank you for reported issues and PRs! > ... (truncated)Commits
- [`245522d`](https://github.com/immutables/immutables/commit/245522dc89a5048cddeb73c12849205f33c39b91) v2.8.3 - [`764d3b5`](https://github.com/immutables/immutables/commit/764d3b50d711033c91ddb31523e65a0fb9237845) Drop interface NamingStrategy - [`cb9d064`](https://github.com/immutables/immutables/commit/cb9d0648926935152d7aafd4d8b8dfa0f0392fa4) Drop ContainerResolver interface - [`6b724a7`](https://github.com/immutables/immutables/commit/6b724a7f40f1ba5b101191480b3ce97526aae866) Geode. Reuse deleteByKeys() method in SyncDelete - [`0f24884`](https://github.com/immutables/immutables/commit/0f24884dc3303755bde80ea39b6863bfd69e57f6) Extract IdOnlyFilter into separate class for easier testing and composition (... - [`5426af6`](https://github.com/immutables/immutables/commit/5426af61eceda26a8a7067d1c4b2e174caba34c8) For Geode backend prefer getAll() function over OQL when query is a simple ID... - [`7cc1fb8`](https://github.com/immutables/immutables/commit/7cc1fb818d07a349b8e13500bbfcdd5fc51e57f8) Use JDK collections for geode bind variables when sending query to server - [`0bb7faa`](https://github.com/immutables/immutables/commit/0bb7faa7b908555f49fbc4ddd046169e2287e1f6) v2.8.3-SNAPSHOT - [`bb87567`](https://github.com/immutables/immutables/commit/bb8756796e72a8e1349fb40da5663a4adf25fa22) v2.8.2 - [`62a83d1`](https://github.com/immutables/immutables/commit/62a83d18d7d4c00d389e768a99711571bb761902) Better exception message in IdResolver showing missing annotation name - Additional commits viewable in [compare view](https://github.com/immutables/immutables/compare/immutables-2.7.5...2.8.3)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)