Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(deps): update dependency org.immutables:value to v2.10.1 #5

Merged
merged 1 commit into from
Sep 21, 2024

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Sep 18, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
org.immutables:value (source) 2.5.6 -> 2.10.1 age adoption passing confidence

Release Notes

immutables/immutables (org.immutables:value)

v2.10.1

Compare Source

Maintenance release

What's Changed
New Contributors

Full Changelog: immutables/immutables@2.10.0...2.10.1

v2.10.0

Compare Source

JakartaEE support

Style flag jakarta = true
Mainly package change for annotations and types like Validator

Miscellaneous
  • JDK9 unmodifiable collections for List, Set, Map, style flag jdk9Collections = true
  • Suppress from method, style flag from = ""
  • Non-strict modifiables allows reading unset attributes, style flag strictModifiables = false
  • Fixes in nested type_use annotations.
  • Performance: better initial capacity for collections
  • Refinements and fixes to Criteria modules
  • Plus many other refinements and maintance, see below
Workarounds for Gradle
  • imports for not-yet-generated types : add options.sourcepath
  • disable incremental compilation (options.incremental), may also help is some complex cases
What's Changed (since some last year's release)
New Contributors

Full Changelog: immutables/immutables@2.9.3...2.10.0

v2.9.3

Compare Source

Maintenance release
What's Changed
New Contributors

Full Changelog: immutables/immutables@2.9.2...2.9.3

v2.9.2

Compare Source

Fixes (reverts to older routine) issue affecting custom immutable annotations and meta annotation discovery in some cases leading to a deadlock: processing never finishes

v2.8.8

Compare Source

Value

Criteria

  • Add toLowerCase / toUpperCase functions to StringMatcher (6e4dd31)
  • Add GetByKey / DeleteByKey operations which allow low-level key lookups and deletions (ce9ad50)
  • Add isNot(boolean) function to BooleanMatcher (c9c6305)
  • Add is(Optional) / isNot(Optional) to generic OptionalValueMatcher (0c2d47e)
  • Add is(Optional) / isNot(Optional) functions to OptionalBooleanMatcher (c41ffaf)

Dependency Upgrades

Contributors

Thanks to all contributors. In no particular order:

v2.8.4: Generic KeyExtractor interface for Criteria

Compare Source

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.

Value
  1. Add support for Modifiable to extend an inner class/interface by Mitch Halpin (67f8083)
Criteria
  1. Pluggable KeyExtractor interface (3eb6958)
  2. Add projection support for iterable type(s) like List<String> (78c7c29)
  3. Add support for Fugue Option to CriteriaModel by Charlie La Mothe (207d631)
Geode
  1. add tests for generating OQL expressions by Javad Moghisi (0c5e5e3)
  2. include order by direction in OQL by Javad Moghisi (5c3d15b)
  3. add support for Iterable Size and Contains to OQL Generator by Javad Moghisi (cfb514b)
  4. add support for String Operators to OQL Generator by Javad Moghisi(43f4fff)
ElasticSearch
  1. Use more efficient id lookups for key attributes in ElasticSearch backend (db4fa98)
Mongo
  1. Add mongo optimization to convert $in/$nin into $eq/$ne for single element array (09c002c)
Mongo Repositories (legacy)
  1. Fix suppress warnings for generated MongoDB repositories by André Rouél (1afdfa4)
Contributors

Thanks to all contributors! In no particular order:

v2.8.3: Minor Bugfix release for Geode backend

Compare Source

Minor release fixing a couple of bugs in Geode backend :

  1. Use JDK collections for geode bind variables when sending query to server (7cc1fb8)
  2. Prefer Region.getAll() method for queries which filter only on ID attribute (5426af6)
  3. Drop ContainerResolver interface (cb9d064)
  4. Drop NamingStrategy interface (764d3b5)

v2.8.2: Criteria DISTINCT support

Compare Source

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)
// example of DISTINCT query
repository.find(person.isActive.isTrue())
     .orderBy(person.name.asc())
     .select(person.name)
     .distinct()
     .limit(2)
     .fetch();
Geode backend
Codegen
  • Remove unnecessary empty line between hashCode() and toString() functions introduced by previous commit
  • Suppress ErrorProne error (with @SuppressWarnings(Immutable)) for lazy hashCode field (#​1114)
Gson / JSON Adapters
  • Fixed issue where integers are always printed as doubles (#​1120) by Ben Mazzarol (@​bmazzarol)
  • Fixed issue using the jackson XML streaming parser where boolean tokens are always strings (#​1120) by Ben Mazzarol (@​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 static analysis in criteria module (ef5f1a267)

Thanks to all contributors:

v2.8.1: Criteria & Repositories API, Update

Compare Source

Immutables team is happy to announce Immutables 2.8.1 release.

This release 2.8.1 comes one month after 2.8.0 and contains several improvements, bugfixes and new functionalities.

Notable changes

Criteria
  • Generate criteria DSL from existing JavaBeans(spec) classes. Useful for projects which use JavaBeans for legacy reasons or not yet fully migrated to immutables. See #​1103
  • Pluggable ID resolution. Introduce IdResolver interface to allow users to provide their own annotations (or logic) for ID attribute selection. It complements default @Criteria.Id annotation.
  • Initial support for partial updates. Allow partial changes to be applied directly by the backend (if supported).
repository.update(person.id.is(123))
  .set(person.name, "Changed Name")
  .set(person.age, 33)
  .execute()
  • Support top-level count() operation similar to COUNT(*) in SQL
repository.findAll().count();
repository.find(person.age.greaterThan(33)).count();
  • Add upsert / update operations on entity in Writable interface
Mongo jackson adapter
  • Support BSON undefined type which is converted to java null (9a64881)
  • Support BSON binary data (76fb7b44)
  • Lazily read values from bson stream (1c07466). Potentially a performance improvement since values don't have to be deserialized unless required by deserializer. Allows faster skipChildren() calls.
  • Make BsonGenerator null safe on strings and numbers (ba78d7)
Mongo repositories

Changes related to mongo repositories (predecessor to criteria).

  • Enable _id initialization in MongoDB (#​1074). PR from André Rouél
  • bson4gson adapter. Support BSON undefined type translated to java null
  • bson4gson adapter. Friendlier type conversion between BSON temporal types and java numbers (int / long etc.)
  • bson4gson adapter. Fix peek() method in JsonReader (6f1247)
  • Require Java 8
Codegen
  • Support lazy hashing via lazyhash attribute. Contrary to existing prehash, lazyhash would compute hashcode on first access to hashCode() method.
  • Changed how META-INF/annotations/org.immutables.value.immutable is read - disabled URLConnection caching. PR-1060 from Canay ÖZEL
  • Set optBits for Modifiable, Default maps. PR-1086 from Dylan Wragge
Third party library upgrades and other dependencies
  • Jackson databind 2.8.11.3 -> 2.8.11.4 (9ea18)
  • Mongo java (sync) driver 3.10.1 -> 3.11.0 (33f98d4)
  • Mongo reactive streams 1.11 -> 1.12 (fed2e07)
  • rxjava2 2.2.10 -> 2.2.12 (c6e06ce)
  • ErrorProne 2.3.2 -> 2.3.3 (b62fab4f)
  • Remove utility maven module (1089). All modules will declare dependencies explicitly.

Thanks to all contributors. In no particular order:

v2.8.0: Criteria & Repositories API

(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
  3. 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: https://github.com/immutables/immutables.github.io/blob/src/2.8.0-release.md
Getting started with criteria API: https://immutables.github.io/criteria.html


Configuration

📅 Schedule: Branch creation - "before 4am" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Sorry, something went wrong.

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
@renovate renovate bot added the chore label Sep 18, 2024
@codecov-commenter
Copy link

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 90.34%. Comparing base (b6d4e73) to head (9cdf8b0).

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@            Coverage Diff            @@
##             master       #5   +/-   ##
=========================================
  Coverage     90.34%   90.34%           
  Complexity      188      188           
=========================================
  Files            60       60           
  Lines          1284     1284           
  Branches         76       76           
=========================================
  Hits           1160     1160           
  Misses           99       99           
  Partials         25       25           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@alexey-lapin alexey-lapin merged commit 726ee6d into master Sep 21, 2024
3 checks passed
@renovate renovate bot deleted the renovate/org.immutables-value-2.x branch September 21, 2024 13:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants