Commit Graph

10766 Commits

Author SHA1 Message Date
Yoann Rodière 588115bb0a HHH-13682 Restore the system property net.bytebuddy.experimental=true in tests on JDK15+
Turns out it's necessary for JDKs with experimental support.
2020-04-16 10:12:00 +01:00
Sanne Grinovero 0b4bcce3fa HHH-13947 Switch the JPA Javadoc prefix URL to a build parameter
Applying the following script, and setting the current value as a
documentation parameter:

find . -type f -name '*.java' -o -name '*.adoc'  -o -name '.xml' | xargs sed -i 's/https:\/\/javaee\.github\.io\/javaee-spec\/javadocs\/javax\/persistence\//\{jpaJavadocUrlPrefix\}/g'

Having the script might help re-migrating existing documentation patches,
or forward porting subsequent improvements from previous branches.

The javadocs for JPA 3.0 have not been published yet at this point;
having a parameter will make it easier to leave this single task for
a later point in time.
2020-04-14 23:41:07 +01:00
Andrea Boriero 299826b9b7 HHH-13937 Get rid of junit5 compile-time dependencies 2020-04-14 14:23:29 +01:00
Yoann Rodière 5fab58bf76 HHH-13682 Upgrade to forbiddenapis 2.7
So that we can feed it Java 13/14 bytecode
2020-04-14 13:36:43 +01:00
Yoann Rodière b32ff5cd9c HHH-13682 Allow forcing the tested Java version in the Gradle build
... just in case we need that for some cutting-edge JDK, for example 15,
that would not be supported by Gradle yet.
2020-04-14 13:36:43 +01:00
Yoann Rodière 1060baf74b HHH-13682 Enable extended bytecode enhancement in NaturalIdInUninitializedAssociationTest
This test accesses a field of an entity directly and expects it to be
automatically initialized; this cannot work without extended bytecode
enhancement.

This used to work with Java 8 bytecode, but only by chance. It seems
that Java 8 bytecode relies on "synthetic", static access methods
inserted by the compiler to access the fields of entities in this test:
any access to the field is done through this access method instead of
through a direct field access. Since we apply bytecode enhancement to
all methods of entities, this means that access to fields triggers
initialization, without any bytecode enhancement in the caller class.

I believe this is specific to nested classes, but couldn't find a
source. For reference, the bytecode of access methods looks like this:

  static int access$002(org.hibernate.test.bytecode.enhancement.lazy.NaturalIdInUninitializedAssociationTest$AnEntity, int);
    Code:
       0: aload_0
       1: iload_1
       2: dup_x1
       3: putfield      #3                  // Field id:I
       6: ireturn

  static org.hibernate.test.bytecode.enhancement.lazy.NaturalIdInUninitializedAssociationTest$EntityImmutableNaturalId access$102(org.hibernate.test.bytecode.enhancement.lazy.NaturalIdInUninitializedAssociationTest$AnEntity, org.hibernate.test.bytecode.enhancement.lazy.NaturalIdInUninitializedAssociationTest$EntityImmutableNaturalId);
    Code:
       0: aload_0
       1: aload_1
       2: dup_x1
       3: putfield      #2                  // Field entityImmutableNaturalId:Lorg/hibernate/test/bytecode/enhancement/lazy/NaturalIdInUninitializedAssociationTest$EntityImmutableNaturalId;
       6: areturn

With Java 11, however, access to fields of entities is done directly,
even for nested classes. So the access methods no longer exist, and we
don't get automatic initialization upon field access. We need extended
bytecode enhancement, like we would in any other case of field access
(in particular accessing fields of non-nested classes).
2020-04-14 13:36:43 +01:00
Yoann Rodière 96f7870528 HHH-13682 Do not set net.bytebuddy.experimental=true in tests anymore
It's no longer necessary since we upgraded to byte-buddy 1.10.2,
and it causes bytecode to be converted from Java 14 to Java 12 in some
cases (I don't know why).
2020-04-14 13:36:43 +01:00
Yoann Rodière 0cdf4c19e3 HHH-13682 Generate Java 13/14 bytecode for tests when building with JDK13/14 2020-04-14 13:36:43 +01:00
Yoann Rodière c906989989 HHH-13682 Remove unnecessary checks around Java 8 compatibility
The build requires JDK8+, so we're alwways Java 8 compatible.
2020-04-14 13:36:43 +01:00
Sanne Grinovero 0069aa7be9 Switching version to 5.5.0-SNAPSHOT 2020-04-14 12:23:38 +01:00
Nathan Xu 34d5a2ae7a implement @Filter for loader 2020-04-14 10:54:05 +01:00
Nathan Xu c23ded50ba update user guide regarding the new feature of `@SortNatural` by default 2020-04-14 10:48:32 +01:00
Nathan Xu 7e571cc75c fix some obvious logging bugs 2020-04-14 10:35:51 +01:00
Nathan Xu a91383a226 revert back v5 implementation of fetch entity graph 2020-04-14 10:22:55 +01:00
Nathan Xu 11c5a1019f renaming and some legacy code fixing 2020-04-14 10:22:55 +01:00
Andrea Boriero 5d1aea1897 Fix merge checkstyle and compilation errors 2020-04-09 11:07:00 +01:00
Andrea Boriero 5c86c4a805 Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_29 2020-04-09 07:37:11 +01:00
Andrea Boriero ba0902d99a 5.4.14 2020-04-06 18:48:40 +01:00
Andrea Boriero b897a36f2f Fix issue with generated pom missing project description 2020-04-06 18:21:11 +01:00
Andrea Boriero 016f8ed285 5.4.14 2020-04-06 16:42:29 +01:00
Sanne Grinovero 6ea9844874 HHH-13935 Allow subclasses of StandardServiceRegistryBuilder to initialize a custom list of StandardServiceInitiator(s) 2020-04-06 16:10:44 +01:00
Yoann Rodière 9bb76a5cca HHH-13925 Upgrade hibernate-gradle-plugin to Gradle 6 2020-04-06 16:04:55 +02:00
Yoann Rodière bee15c498f HHH-13925 Fix malformed @author tags in javadoc
You're not supposed to use unescaped "<" or ">".

This wasn't detected by checkstyle in Gradle 5, but it is now, and that
fails the build.
2020-04-06 16:04:55 +02:00
Yoann Rodière aebf9d192f HHH-13925 Fix invalid javadoc syntax
This wasn't detected by checkstyle in Gradle 5, but it is now, and that
fails the build.
2020-04-06 16:04:55 +02:00
Yoann Rodière 1cd9ad0efe HHH-13925 Disable Gradle module metadata publishing until we know what we want 2020-04-06 16:04:55 +02:00
Yoann Rodière dbd49f1100 HHH-13925 Upgrade from the gradle-build-scan plugin to the gradle-enterprise plugin
That's the new name of the plugin in Gradle 6.
2020-04-06 16:04:55 +02:00
Yoann Rodière 8168a5cfb3 HHH-13925 Upgrade to Gradle 6 2020-04-06 16:04:55 +02:00
Sanne Grinovero 0a962bdd7e HHH-13934 GraalVM native-image metadata needs to register class metadata antlr.CommonToken 2020-04-06 14:30:01 +01:00
Sanne Grinovero e1aa8714c0 HHH-13930 Minor formatting improvements and comments 2020-04-05 23:07:39 +01:00
Stuart Douglas 0955394c82 HHH-13930 Allow for creation of unloaded proxies in ByteBuddyProxyHelper 2020-04-05 23:07:22 +01:00
Sanne Grinovero a975d0de19 HHH-13929 Add test coverage using PersistenceUtilHelper within exising test for Enhanced Proxies 2020-04-05 22:26:34 +01:00
Sanne Grinovero 2ac0d2ee91 HHH-13929 Improve the PersistenceUtilHelper to allow dealing with Enhanced Proxies 2020-04-05 22:26:31 +01:00
Chris Cranford e9f2c02140 HHH-13886 Revert behavior changes introduced by HHH-10844 2020-04-02 11:50:22 -04:00
Steve Ebersole fe25fee834 initial migration guide 2020-04-01 13:50:37 -05:00
Steve Ebersole 40d0c8580e Merge remote-tracking branch 'upstream/master' into wip/6.0
- up to the point of upgrading Gradle version for wrapper to 5.6.3
2020-04-01 11:32:00 -05:00
Yoann Rodière 2f32169249 HHH-13689 Replace uses of the deprecated osgi plugin with the biz.aQute.bnd plugin
https://docs.gradle.org/5.0-milestone-1/release-notes.html#deprecated-osgi-plugin
2020-04-01 10:54:56 -05:00
Yoann Rodière bb93bc839f HHH-13685 Move Suppression*CommentFilter to its new place in checkstyle config
See https://stackoverflow.com/a/55266521/6692043
2020-04-01 09:53:13 -05:00
Yoann Rodière 42f3948ce5 HHH-13685 Remove the obsolete FileContentsHolder module in checkstyle configuration
See https://github.com/checkstyle/checkstyle/issues/3573
2020-04-01 09:53:13 -05:00
Yoann Rodière ab4d87cfd1 HHH-13685 Upgrade to gradle-karaf-plugin 0.5.1 2020-04-01 09:53:13 -05:00
Yoann Rodière 34e498fb3d HHH-13685 Upgrade to maven-repo-auth 3.0.2 2020-04-01 09:53:13 -05:00
Yoann Rodière 7be9e62504 HHH-13685 Increase the heap size for Gradle
Otherwise I get an OutOfMemoryError...
2020-04-01 09:53:13 -05:00
Yoann Rodière cee0fce043 HHH-13685 Replace uses of deprecated classifier property in Jar tasks with archiveClassifier 2020-04-01 09:53:13 -05:00
Yoann Rodière 1d98edc402 HHH-13685 Remove the deprecated "stable publishing" feature flag
It's the default behavior in Gradle 5.
2020-04-01 09:53:13 -05:00
Yoann Rodière e14d20d829 HHH-13685 Upgrade to build-scan plugin 2.4.2 2020-04-01 09:53:13 -05:00
Yoann Rodière 30ad825775 HHH-13685 Upgrade to gradle-xjc-plugin 2.0.1 2020-04-01 09:53:13 -05:00
Yoann Rodière 08132916bb HHH-13685 Upgrade to hibernate-matrix-testing 3.0.0.Final 2020-04-01 09:53:13 -05:00
Yoann Rodière 6921b02891 HHH-13685 Upgrade to Gradle 5.6.3 2020-04-01 09:53:13 -05:00
Yoann Rodière ae4bc5e55d HHH-13685 Remove uses of deprecated classesDir 2020-04-01 09:53:13 -05:00
Yoann Rodière 47f02f2e6e HHH-13685 Enable the "stable publishing" feature to test it before upgrading to Gradle 5 2020-04-01 09:53:13 -05:00
Andrea Boriero 2f98e4bfe8 Fix ToOne @Fetch(FetchMode.SELECT) 2020-04-01 14:44:25 +01:00