Releases: Blazebit/blaze-persistence
1.2.0-Alpha4
It has been too long since the last official release, almost a year!
But don't think we didn't do anything in this time! Many new and shiny features are part of this release.
- #328 DeltaSpike Data integration
- #361 Entity view attribute converter support
- #414 Updatable Entity views
- #419 Improved keyset pagination implementation
- #430 Entity view equality now based on entity type rather than entity view type
- #443 DML support for entity collections
- #496 Entity View convenience methods for access by id
- #441 Support for non-public entity view attribute getters and setters
- #428 New archetypes for Spring Boot, Spring Data, Java EE and DeltaSpike Data
and lots of bugfixes, most notably
- #417 Single valued id expression optimization was buggy in an edge case
- #455 Expression cloning didn't work properly leading to various problems
- #456, #475, #480 Entity view inheritance was buggy for non-trivial use cases(Thanks for the tests Jan-Willem Gmelig Meyling)
We advise you to update to 1.2.0-Alpha4 as soon as possible to prevent getting hit from the expression cloning issue #455
1.2.0-Alpha3
This release which should already be available on Maven Central includes some very hot features
- #406 Spring Boot 1.5.0 support
- #375 Entity views support primitive types now
- #357 Allow to refer to
this
in entity view mappings - #351 Spring Data JPA Specification support
- #312 Treat support and inheritance mapping support for entity views
- #257 Support for specifying fetches in entity views
- #198 Proper One-To-One mapping support
and lots of bugfixes
- #381 Query caching issues with advanced SQL queries
- #338 Workaround for Hibernate CASE WHEN parser bug
- #330 Group by
KEY
expression regression - #319 Fixes for raw type uses in entities
There will be 1-2 subsequent Alpha releases until we reach feature completion for the planned features.
After that we will focus on stabilizing the API and release 1-2 Beta versions before the final version goes out.
In the next Alpha release you can expect at least the following
- #414 Updatable entity view prototype
- #321 Better support for JPA field access strategy
- #88 Avoid generation of duplicate GROUP BY clauses
- #188 SIZE to COUNT transformation when used in WHERE clause
- #387 Macro for referring to query root in entity views
- #317 Nesting of OUTER functions for proper multi-level subquery-to-parent access
- #401 Mapping of
java.util.Map
in entity views with custom keys - #367 Support for referring to embedding query in subquery of entity view
- #325 Support providing
EntityViewSetting
to Spring-Data repositories - #352 Support Blaze-Persistence Criteria Specification in Spring-Data repositories
1.2.0-Alpha2
This release includes some very hot features
- #264 + #261 Spring and Spring Data Integrations for entity views are available now
- #202 Entity views can now have subviews for map keys
- #275 + #303 Embeddable support in CTEs and VALUES clause
- #298 Using an undefined CTE class now results in a meaningful exception
- #108 Entity views can now correlate unrelated entities with 3 different strategies
- #183 Primitive type support in Entity Views was added
- #276 Exists subquery selects a constant now
- #242 + #246 Support for Oracle and SQL Server was added
- #258 + #274 Support for uber-jar deployment was improved
and lots of bugfixes
- #296 Implicit group by support was reworked
- #314 Tracking of not finished builders was improved
- #240 Edge case for entity views that resulted in duplicate results
- #277 + #281 Subquery and Set operation aliases are now properly isolated from upper levels and access to aliases 2 levels above also works now
- #308 Entity view metamodel building is more deterministic now and throws validation errors when non-deterministic mapping is encountered
- #297 + #302 Binding of Set operations and CTEs now works on column level
- #302 CTE types can now be used in the VALUES clause
- #304 Using a VALUES clause within a CTE works now
- #271 Keyset pagination backward scrolling order fixed
- #262 Fetch joins in PaginatedCriteriaBuilder work now
There will be 2-3 subsequent Alpha releases until we reach feature completion for the planned features.
After that we will focus on stabilizing + documentation and release 1-2 Beta versions before the final version goes out.
In the next Alpha release you can expect at least the following
- #120 + #312 Treat operator support for entity views
- #327 Better subview mapping validation
- #323 Fetch strategy support for non-correlated attributes
- #191 + #216 Entity views will allow better collection usage
- #204 Polymorphic queries will be supported
- #190 + #257 Entity attributes in entity views will be able to specify fetches
- #198 Proper One-To-One mapping support
- #181 Custom table functions and builtins for generating series
1.2.0-Alpha1
This release includes some very hot features
- #222 Entity joins support in core has landed!
- #202 Entity views can now reference their view root via
VIEW_ROOT
- #218 Entity views can also now have a custom root defined when applying the setting
- #211 Parser implements negation optimizations
- #200 Parser supports literals with type suffix
- #193 Subqueries can use correlated paths now
- #205 IN-predicate API of core supports Collection now instead of List
- #192 Various API changes for supporting multi-subquery expressions
- #108 Entity views can now correlate separate queries as subviews to an entity view
- #120 Treat support was added
- #181 Support for the VALUES clause has been added
- #183 JPA Criteria API has been implemented that is backed by blaze-persistence
- #90 + #67 SIZE to COUNT transformation was reworked from ground up for better reliability
and lots of bugfixes
- #234 Fix SIZE to COUNT transformation for indexed collections
- #233 Workaround for Hibernate bug included: https://hibernate.atlassian.net/browse/HHH-9329
- #208 Provider classes for entity view get validated now to avoid runtime exceptions
- #219 Embeddable entity views now allowed to be abstract classes too
- #214 Generics issues fixed
There will be 2-3 subsequent Alpha releases until we reach feature completion for the planned features.
After that we will focus on stabilizing + documentation and release 1-2 Beta versions before the final version goes out.
In the next Alpha release you can expect at least the following
- #108 Correlation strategy subselect and batching will be implemented
- #120 Treat operator support will be finished
- #181 Table function support will be finished
- #198 Problems with one-to-one mappings will be fixed
- #191 + 216 Entity views will allow better collection usage
- #204 Polymorphic queries will be supported
- #257 Entity attributes in entity views will be able to specify fetches
1.1.1
This release includes some bugfixes for the core module
This will probably be the last release for the 1.1 branch as 1.2 is approaching the first Alpha release which is quite stable from a user perspective. We recommend updating to 1.2.0-Alpha1 directly.
1.1.0-Alpha7
1.1.0
This release includes some bugfixes for the core module
- #90 Size-to-Count transformation for SELECT clause can be disabled with the property
com.blazebit.persistence.size_to_count_transformation
- #104 Group concat for the major supported databases, DB2 might be problematic because of DB2 bugs
- #178 day_diff, month_diff, etc. functions for all major supported databases
- #179 Concurrency bugfix
- #189 String literals in array indices
and some bugfixes for the entity-view module
- #83 and #148 JPA Metamodel check can be disabled with the property
com.blazebit.persistence.view.expression_validation_disabled
- #127 Partial implementation for updatable entity views
- #152 Embeddables can have custom entity views now with
@EmbeddableEntityView
- #182 Classloader fix for entity views
NOTE that there is a breaking change. We had to change the way blaze-persistence is bootstraped because of a concurrency bug(#179). The cdi integration modules that previously provided producers for the CriteriaBuilderFactory
and EntityViewManager
have been completely replaced.
The integration module blaze-persistence-integration-core-cdi has been removed.
The integration module blaze-persistence-integration-entity-view-cdi only provides a producer for a default EntityViewConfiguration
.
For the new integration approach take a look into the documentation https://github.com/Blazebit/blaze-persistence/blob/master/documentation/src/main/asciidoc/core/manual/en_US/01_getting_started.adoc#java-ee and https://github.com/Blazebit/blaze-persistence/blob/master/documentation/src/main/asciidoc/entity-view/manual/en_US/01_ev_getting_started.adoc#java-ee
There are some new configuration properties and new methods(setProperty(String, String)
etc.) for setting the configuration on a per-CriteriaBuilder
-basis. The new properties can be used to deactivate implicit logic that might not always be wanted
com.blazebit.persistence.implicit_group_by_from_select
com.blazebit.persistence.implicit_group_by_from_having
com.blazebit.persistence.implicit_group_by_from_order_by
Take a look at the documentation for further information about the properties: https://github.com/Blazebit/blaze-persistence/blob/master/documentation/src/main/asciidoc/core/manual/en_US/03_configuration.adoc and https://github.com/Blazebit/blaze-persistence/blob/master/documentation/src/main/asciidoc/entity-view/manual/en_US/03_configuration.adoc
1.1.0-Alpha6
1.1.0-Alpha5
This release includes support for expressions and subqueries in the set clause of update queries and some fixes for embeddable support
1.1.0-Alpha4
This release includes embeddable support for the returning clause.