Skip to content

Commit

Permalink
[#209, #442] Allow to build with JDK 9. Add initial support for Hiber…
Browse files Browse the repository at this point in the history
…nate 5.3 and DataNucleus 5.1. Adapt parameter handling in custom sql queries. Fix subview attribute flusher oversight. Documentation update
  • Loading branch information
beikov committed Mar 8, 2018
1 parent 5f89fcd commit d3b58e3
Show file tree
Hide file tree
Showing 241 changed files with 13,983 additions and 5,878 deletions.
195 changes: 180 additions & 15 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ cache:
- '$HOME/.m2/repository'
before_install:
- sh -c "if [ '$RDBMS' = 'firebird' ]; then sh travis/before_install_firebird.sh; fi"
- sh -c "if [ '$JDK' = '10' ]; then unset _JAVA_OPTIONS && . ./travis/install_jdk.sh; fi"
- sh -c "if [ '$JDK' = '11' ]; then unset _JAVA_OPTIONS && . ./travis/install_jdk_ea.sh; fi"
install:
- sh -c "if [ '$LATEST_MAVEN' = 'true' ]; then sh travis/install_latest_maven.sh; fi"
before_script:
Expand Down Expand Up @@ -56,7 +58,7 @@ matrix:
sudo: true
services:
- docker
- env: JPAPROVIDER=hibernate-5.2 RDBMS=h2 SPRING_DATA=spring-data-2.0.x
- env: JPAPROVIDER=hibernate-5.2 RDBMS=h2 SPRING_DATA=spring-data-2.0.x DELTASPIKE=deltaspike-1.8
jdk: oraclejdk8
# - env: JPAPROVIDER=hibernate-5.2 RDBMS=sqlite
# jdk: oraclejdk8
Expand Down Expand Up @@ -102,7 +104,7 @@ matrix:
# eclipselink
################################################
- env: JPAPROVIDER=eclipselink RDBMS=h2
jdk: openjdk7
jdk: oraclejdk8
# - env: JPAPROVIDER=eclipselink RDBMS=mysql
# dist: trusty
# sudo: required
Expand Down Expand Up @@ -157,6 +159,74 @@ matrix:
# - env: JPAPROVIDER=openjpa RDBMS=firebird
# sudo: true

################################################
# hibernate-5.3
################################################
# - env: JPAPROVIDER=hibernate-5.3 RDBMS=h2
# jdk: oraclejdk8
# - env: JPAPROVIDER=hibernate-5.3 RDBMS=mysql
# jdk: oraclejdk8
# dist: trusty
# sudo: required
# - env: JPAPROVIDER=hibernate-5.3 RDBMS=postgresql
# jdk: oraclejdk8
# addons:
# postgresql: "9.3"
# - env: JPAPROVIDER=hibernate-5.3 RDBMS=mssql
# jdk: oraclejdk8
# sudo: true
# services:
# - docker
# - env: JPAPROVIDER=hibernate-5.3 RDBMS=db2
# jdk: oraclejdk8
# sudo: true
# services:
# - docker
# - env: JPAPROVIDER=hibernate-5.3 RDBMS=oracle
# jdk: oraclejdk8
# sudo: true
# services:
# - docker
# - env: JPAPROVIDER=hibernate-5.3 RDBMS=sqlite
# jdk: oraclejdk8
# - env: JPAPROVIDER=hibernate-5.3 RDBMS=firebird
# jdk: oraclejdk8
# sudo: true

################################################
# datanucleus-5.1
################################################
# - env: JPAPROVIDER=datanucleus-5.1 RDBMS=h2
# jdk: oraclejdk8
# - env: JPAPROVIDER=datanucleus-5.1 RDBMS=mysql
# jdk: oraclejdk8
# dist: trusty
# sudo: required
# - env: JPAPROVIDER=datanucleus-5.1 RDBMS=postgresql
# jdk: oraclejdk8
# addons:
# postgresql: "9.3"
# - env: JPAPROVIDER=datanucleus-5.1 RDBMS=mssql
# jdk: oraclejdk8
# sudo: true
# services:
# - docker
# - env: JPAPROVIDER=datanucleus-5.1 RDBMS=db2
# jdk: oraclejdk8
# sudo: true
# services:
# - docker
# - env: JPAPROVIDER=datanucleus-5.1 RDBMS=oracle
# jdk: oraclejdk8
# sudo: true
# services:
# - docker
# - env: JPAPROVIDER=datanucleus-5.1 RDBMS=sqlite
# jdk: oraclejdk8
# - env: JPAPROVIDER=datanucleus-5.1 RDBMS=firebird
# jdk: oraclejdk8
# sudo: true

################################################
# hibernate-5.1
################################################
Expand Down Expand Up @@ -229,13 +299,13 @@ matrix:
# hibernate-4.3
################################################
- env: JPAPROVIDER=hibernate-4.3 RDBMS=h2
jdk: openjdk7
jdk: oraclejdk8
- env: JPAPROVIDER=hibernate-4.3 RDBMS=mysql
jdk: openjdk7
jdk: oraclejdk8
dist: trusty
sudo: required
- env: JPAPROVIDER=hibernate-4.3 RDBMS=postgresql
jdk: openjdk7
jdk: oraclejdk8
addons:
postgresql: "9.3"
- env: JPAPROVIDER=hibernate-4.3 RDBMS=mssql
Expand All @@ -244,7 +314,7 @@ matrix:
services:
- docker
- env: JPAPROVIDER=hibernate-4.3 RDBMS=db2
jdk: openjdk7
jdk: oraclejdk8
sudo: true
services:
- docker
Expand All @@ -262,13 +332,13 @@ matrix:
# hibernate-4.2
################################################
- env: JPAPROVIDER=hibernate RDBMS=h2
jdk: openjdk7
jdk: oraclejdk8
- env: JPAPROVIDER=hibernate RDBMS=mysql
jdk: openjdk7
jdk: oraclejdk8
dist: trusty
sudo: required
- env: JPAPROVIDER=hibernate RDBMS=postgresql
jdk: openjdk7
jdk: oraclejdk8
addons:
postgresql: "9.3"
- env: JPAPROVIDER=hibernate RDBMS=mssql
Expand All @@ -277,7 +347,7 @@ matrix:
services:
- docker
- env: JPAPROVIDER=hibernate RDBMS=db2
jdk: openjdk7
jdk: oraclejdk8
sudo: true
services:
- docker
Expand Down Expand Up @@ -332,19 +402,114 @@ matrix:
# jdk: oraclejdk8

################################################
# JDK 9
# JDK 9+
################################################
# JDK 9 - Not going to work until javassist is fixed
- env: JPAPROVIDER=hibernate-5.2 RDBMS=h2 JDK=10 LATEST_MAVEN=true
- env: JPAPROVIDER=hibernate-5.2 RDBMS=h2 JDK=11 LATEST_MAVEN=true
- env: JPAPROVIDER=hibernate-5.2 RDBMS=h2 JDK=9 LATEST_MAVEN=true
addons:
apt:
packages:
- oracle-java9-installer
jdk: oraclejdk9
allow_failures:
- env: JPAPROVIDER=hibernate-5.2 RDBMS=h2 JDK=9 LATEST_MAVEN=true
- env: JPAPROVIDER=datanucleus-5 RDBMS=h2 JDK=9 LATEST_MAVEN=true
addons:
apt:
packages:
- oracle-java9-installer
jdk: oraclejdk9
- env: JPAPROVIDER=eclipselink RDBMS=h2 JDK=9 LATEST_MAVEN=true
addons:
apt:
packages:
- oracle-java9-installer
jdk: oraclejdk9
jdk: oraclejdk9
# - env: JPAPROVIDER=hibernate-5.3 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
# - env: JPAPROVIDER=datanucleus-5.1 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
################################################
# Skip JDK 9 profile combinations for older JPA provider versions
################################################
# - env: JPAPROVIDER=hibernate-5.1 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
# - env: JPAPROVIDER=hibernate-5.0 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
# - env: JPAPROVIDER=hibernate-4.3 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
# - env: JPAPROVIDER=hibernate-4.2 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
# - env: JPAPROVIDER=datanucleus-4 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
allow_failures:
- env: JPAPROVIDER=hibernate-5.2 RDBMS=h2 JDK=11 LATEST_MAVEN=true
# - env: JPAPROVIDER=hibernate-5.3 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
# - env: JPAPROVIDER=datanucleus-5.1 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
# - env: JPAPROVIDER=hibernate-5.1 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
# - env: JPAPROVIDER=hibernate-5.0 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
# - env: JPAPROVIDER=hibernate-4.3 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
# - env: JPAPROVIDER=hibernate-4.2 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
# - env: JPAPROVIDER=datanucleus-4 RDBMS=h2 JDK=9 LATEST_MAVEN=true
# addons:
# apt:
# packages:
# - oracle-java9-installer
# jdk: oraclejdk9
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,21 @@ Not yet released
* Add method to enable query result caching
* `CorrelationBuilder` now returns `CorrelationQueryBuilder` that offers extended functionality
* Updatable attributes by default now allow all known subtypes that don't introduce cycles, rather than requiring the user to specify all allowed subtypes
* Spring Data Rest integration offering first class keyset pagination support
* Support for Spring Data 2.0 via a new integration module
* Support for DeltaSpike Data 1.8 via a new integration module
* Experimental support for Hibernate 5.3 and DataNucleus 5.1
* Support for compiling and running on JDK 9 & 10
* Add Automatic-Module-Name manifest entry for all modules
* Support for positional parameters
* Improve error messages for various error scenarios

### Bug fixes

* `EntityViewManager` was wrongly passed to `@PostCreate` Java 8 default methods in interfaces
* Fix illegal Entity-To-Association-Id rewrite
* Fix some bugs related to updatable inverse collection mappings
* Fix some small bugs related to the use of normal entity views and the change model API

### Backwards-incompatible changes

Expand All @@ -27,6 +36,9 @@ Not yet released
* Renamed `whereExpressionSubqueries` to `setWhereExpressionSubqueries`
* Renamed `havingExpressionSubqueries` to `setHavingExpressionSubqueries`
* Renamed `onExpressionSubqueries` to `setOnExpressionSubqueries`
* Package renamings for many modules to avoid split package problem on JDK 9
* Rename SpringData integration module since it was for 1.11 only and add module for 2.0
* Rename DeltaSpike integration module since it was for 1.7 only and add module for 1.8

## 1.2.0-Alpha4

Expand Down
Loading

0 comments on commit d3b58e3

Please sign in to comment.