[hibernate-commits] [hibernate/hibernate-search] 9adf06: HSEARCH-3929 Remove Java module tests in legacy code

Yoann Rodière noreply at github.com
Wed Jun 17 11:18:06 EDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/hibernate/hibernate-search
  Commit: 9adf06390795d6566ae24c7461518dcb564de010
      https://github.com/hibernate/hibernate-search/commit/9adf06390795d6566ae24c7461518dcb564de010
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    R legacy/integrationtest/jdk9-modules/pom.xml
    R legacy/integrationtest/jdk9-modules/src/main/java/module-info.java
    R legacy/integrationtest/jdk9-modules/src/main/java/org/hibernate/search/test/integration/jdk9_modules/client/model/MyEntity.java
    R legacy/integrationtest/jdk9-modules/src/main/java/org/hibernate/search/test/integration/jdk9_modules/client/service/MyEntityService.java
    R legacy/integrationtest/jdk9-modules/src/main/resources/hibernate.properties
    R legacy/integrationtest/jdk9-modules/src/test/java/org/hibernate/search/test/integration/jdk9_modules/MyEntityServiceIT.java
    M legacy/pom.xml

  Log Message:
  -----------
  HSEARCH-3929 Remove Java module tests in legacy code

We already test this with a different test in the new codebase.


  Commit: 1b305185b319165ac0fb862e4794213d6f4aa068
      https://github.com/hibernate/hibernate-search/commit/1b305185b319165ac0fb862e4794213d6f4aa068
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M .travis.yml
    M Jenkinsfile
    M lgtm.yml

  Log Message:
  -----------
  HSEARCH-3929 Use JDK11 instead of JDK8 in the default build

We will still produce Java 8 bytecode for the main artifacts.


  Commit: 946bc53bce5fcfc0a64b754efa13b7be51e87977
      https://github.com/hibernate/hibernate-search/commit/946bc53bce5fcfc0a64b754efa13b7be51e87977
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M pom.xml

  Log Message:
  -----------
  HSEARCH-3929 Add missing dependencies to run coveralls on Java 11


  Commit: d7f0e47a368a4abeb519f18c3d2a38db44ffc7f2
      https://github.com/hibernate/hibernate-search/commit/d7f0e47a368a4abeb519f18c3d2a38db44ffc7f2
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M legacy/elasticsearch/pom.xml
    M legacy/orm/pom.xml
    M legacy/testing/pom.xml
    M pom.xml

  Log Message:
  -----------
  HSEARCH-3929 Remove configuration specific to Java 9 or 10 in pom

We won't support building with these JDKs


  Commit: 2e9956490d9c327263d6b0540c7b01e56e89b513
      https://github.com/hibernate/hibernate-search/commit/2e9956490d9c327263d6b0540c7b01e56e89b513
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M Jenkinsfile
    M integrationtest/pom.xml
    M parents/public/pom.xml
    M pom.xml

  Log Message:
  -----------
  HSEARCH-3929 Build with JDK11 even when running tests with JDK8


  Commit: d1d5243f59fb8bdb6f3150551c9e9cfa178f5357
      https://github.com/hibernate/hibernate-search/commit/d1d5243f59fb8bdb6f3150551c9e9cfa178f5357
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M integrationtest/jdk/java-modules/pom.xml
    M pom.xml

  Log Message:
  -----------
  HSEARCH-3929 Require at least JDK11 for the build


  Commit: 2bb213a54e679213337df06a401c740f674780d7
      https://github.com/hibernate/hibernate-search/commit/2bb213a54e679213337df06a401c740f674780d7
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M util/internal/integrationtest/pom.xml
    M util/internal/test/pom.xml

  Log Message:
  -----------
  HSEARCH-3929 Use the baseline bytecode target (Java 8) for test utils

So that we can re-use them in tests regardless of the bytecode target
of these tests.


  Commit: 011dcfbeb5105e22c05690ceb29bf03275954e6e
      https://github.com/hibernate/hibernate-search/commit/011dcfbeb5105e22c05690ceb29bf03275954e6e
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M Jenkinsfile

  Log Message:
  -----------
  HSEARCH-3929 Rename the stash used for the default build result in Jenkinsfile

Due to how the stashing/unstashing steps are displayed in Jenkins, the
previous name was confusing.


  Commit: 7eb075ddac5ceaf34e8acdd40db3b70724c5b8dd
      https://github.com/hibernate/hibernate-search/commit/7eb075ddac5ceaf34e8acdd40db3b70724c5b8dd
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M Jenkinsfile

  Log Message:
  -----------
  HSEARCH-3929 Use artifacts from the default build for tests against non-default JDKs

E.g. don't re-build the engine: just use the one we built in
the default build.


  Commit: 948382dc160d36ae8fe06172b6c507dae021f967
      https://github.com/hibernate/hibernate-search/commit/948382dc160d36ae8fe06172b6c507dae021f967
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M pom.xml

  Log Message:
  -----------
  HSEARCH-3929 Upgrade to JQAssistant 1.8.0

Hopefully this will get rid of these warnings, which seem caused by
JQAssistant bundling an old version of ASM:

[WARNING] Cannot scan class '/org/hibernate/search/util/common/reflect/impl/ReflectionUtilsTest$16.class'.
java.lang.UnsupportedOperationException
    at org.objectweb.asm.ClassVisitor.visitNestHostExperimental (ClassVisitor.java:158)
    at org.objectweb.asm.ClassReader.accept (ClassReader.java:541)
    at org.objectweb.asm.ClassReader.accept (ClassReader.java:391)
    at com.buschmais.jqassistant.plugin.java.impl.scanner.ClassFileScannerPlugin$1.execute (ClassFileScannerPlugin.java:68)
    at com.buschmais.jqassistant.plugin.java.impl.scanner.ClassFileScannerPlugin$1.execute (ClassFileScannerPlugin.java:65)
    at com.buschmais.jqassistant.plugin.common.api.scanner.MD5DigestDelegate.digest (MD5DigestDelegate.java:79)
    at com.buschmais.jqassistant.plugin.java.impl.scanner.ClassFileScannerPlugin.scan (ClassFileScannerPlugin.java:65)
    at com.buschmais.jqassistant.plugin.java.impl.scanner.ClassFileScannerPlugin.scan (ClassFileScannerPlugin.java:27)
    at com.buschmais.jqassistant.core.scanner.impl.ScannerImpl.scan (ScannerImpl.java:116)
    at com.buschmais.jqassistant.core.scanner.impl.ScannerImpl.scan (ScannerImpl.java:85)
    at com.buschmais.jqassistant.core.scanner.impl.ScannerImpl.scan (ScannerImpl.java:60)
    at com.buschmais.jqassistant.plugin.common.api.scanner.AbstractContainerScannerPlugin.scan (AbstractContainerScannerPlugin.java:50)
    at com.buschmais.jqassistant.plugin.common.api.scanner.AbstractContainerScannerPlugin.scan (AbstractContainerScannerPlugin.java:29)
    at com.buschmais.jqassistant.core.scanner.impl.ScannerImpl.scan (ScannerImpl.java:116)
    at com.buschmais.jqassistant.core.scanner.impl.ScannerImpl.scan (ScannerImpl.java:85)
    at com.buschmais.jqassistant.core.scanner.impl.ScannerImpl.scan (ScannerImpl.java:60)
    at com.buschmais.jqassistant.plugin.maven3.impl.scanner.MavenProjectScannerPlugin.scanPath (MavenProjectScannerPlugin.java:326)
    at com.buschmais.jqassistant.plugin.maven3.impl.scanner.MavenProjectScannerPlugin.scanPath (MavenProjectScannerPlugin.java:297)
    at com.buschmais.jqassistant.plugin.maven3.impl.scanner.MavenProjectScannerPlugin.scanClassesDirectory (MavenProjectScannerPlugin.java:275)
    at com.buschmais.jqassistant.plugin.maven3.impl.scanner.MavenProjectScannerPlugin.scan (MavenProjectScannerPlugin.java:83)
    at com.buschmais.jqassistant.plugin.maven3.impl.scanner.MavenProjectScannerPlugin.scan (MavenProjectScannerPlugin.java:35)
    at com.buschmais.jqassistant.core.scanner.impl.ScannerImpl.scan (ScannerImpl.java:116)
    at com.buschmais.jqassistant.core.scanner.impl.ScannerImpl.scan (ScannerImpl.java:85)
    at com.buschmais.jqassistant.core.scanner.impl.ScannerImpl.scan (ScannerImpl.java:60)
    at com.buschmais.jqassistant.scm.maven.ScanMojo.execute (ScanMojo.java:101)
    at com.buschmais.jqassistant.scm.maven.AbstractModuleMojo$1.run (AbstractModuleMojo.java:21)
    at com.buschmais.jqassistant.scm.maven.AbstractMojo.execute (AbstractMojo.java:396)
    at com.buschmais.jqassistant.scm.maven.AbstractModuleMojo.execute (AbstractModuleMojo.java:24)
    at com.buschmais.jqassistant.scm.maven.AbstractMojo.execute (AbstractMojo.java:263)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:193)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:566)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)


  Commit: 530f9f33f328cb03d201c09ed9a3978c7fca8c9a
      https://github.com/hibernate/hibernate-search/commit/530f9f33f328cb03d201c09ed9a3978c7fca8c9a
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M pom.xml

  Log Message:
  -----------
  HSEARCH-3929 Upgrade to the latest version of plexus-compiler and ECJ

Hopefully this will fix problems we're having with ECJ rejecting our
target/source parameters:

[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] [ecj] The compiler reported an error but has not written it to its logging
[ERROR] [ecj] The following line(s) might indicate the issue:
Compliance level '1.8' is incompatible with target level '11'. A compliance level '11' or better is required


  Commit: 445817377ab86047d1ff6b3101d3bf9c59fb1d6d
      https://github.com/hibernate/hibernate-search/commit/445817377ab86047d1ff6b3101d3bf9c59fb1d6d
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M CONTRIBUTING.md
    M README.md

  Log Message:
  -----------
  HSEARCH-3929 Move source code structure and build options from the README to CONTRIBUTING.md


  Commit: cd2cf2a03c5f40dfd77389249eb2429f55d98177
      https://github.com/hibernate/hibernate-search/commit/cd2cf2a03c5f40dfd77389249eb2429f55d98177
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M CONTRIBUTING.md

  Log Message:
  -----------
  HSEARCH-3929 Document build requirements


  Commit: cd03553455ceb941d55ba076a9be7f39204dc310
      https://github.com/hibernate/hibernate-search/commit/cd03553455ceb941d55ba076a9be7f39204dc310
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M Jenkinsfile
    M integrationtest/jdk/java-modules/pom.xml
    M integrationtest/pom.xml
    M parents/integrationtest/pom.xml
    M parents/public/pom.xml
    M pom.xml

  Log Message:
  -----------
  HSEARCH-3929 Use the -release javac parameter instead of -source/-target

1. This will make sure the application is built against the classes
   available in the standard library for the target version (8),
   not the ones available in the standard library for the version of the
   JDK we're using (11). E.g. using List.of() will trigger a compilation
   failure.
   See https://stackoverflow.com/a/43103038/6692043.
2. This will make the Eclipse compiler happy: it didn't agree with us
   setting -source 1.8 -target 11, because it needs the source to be
   greater than or equal to the target (javac doesn't have such
   requirement).
3. This will unfortunately allow the use of Java 9+ language features in
   tests. However, this shouldn't be a problem as we don't distribute
   test JARs. Also, the CI build will ultimately fail if we do that in
   integration tests, since the CI build compiles integration tests
   while targeting Java 8.


  Commit: 293e17ac4c2f6a3e00ba9aabd885c9f9dbc5d9da
      https://github.com/hibernate/hibernate-search/commit/293e17ac4c2f6a3e00ba9aabd885c9f9dbc5d9da
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M pom.xml

  Log Message:
  -----------
  HSEARCH-3929 Upgrade to maven-processor-plugin 3.3.3

To get the releaseVersion configuration property.


  Commit: 370b4dd1495287c8265ed4c4d2f89c694f4a6133
      https://github.com/hibernate/hibernate-search/commit/370b4dd1495287c8265ed4c4d2f89c694f4a6133
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M integrationtest/pom.xml
    M parents/integrationtest/pom.xml
    M pom.xml

  Log Message:
  -----------
  HSEARCH-3929 Remove the weird hack around maven.compiler.argument.X/maven.compiler.X

We no longer needs this.


  Commit: 76667aa77836999e9623d7813bcc62517454fd87
      https://github.com/hibernate/hibernate-search/commit/76667aa77836999e9623d7813bcc62517454fd87
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M Jenkinsfile

  Log Message:
  -----------
  HSEARCH-3929 Disable Java Module ITs when compiling with the Eclipse compiler

It seems it cannot handle automatic module names? Anyway, it fails to
resolve some modules, and the error message is buggy (it doesn't tell us
which module it failed to resolve). For example:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project hibernate-search-integrationtest-java-modules: Compilation failure: Compilation failure:
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/module-info.java:[14,11] Cannot bind message for problem (id: 1300) "{0} cannot be resolved to a module" with arguments: {}
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/module-info.java:[15,11] Cannot bind message for problem (id: 1300) "{0} cannot be resolved to a module" with arguments: {}
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/module-info.java:[16,11] Cannot bind message for problem (id: 1300) "{0} cannot be resolved to a module" with arguments: {}
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/module-info.java:[17,11] Cannot bind message for problem (id: 1300) "{0} cannot be resolved to a module" with arguments: {}
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/module-info.java:[20,11] Cannot bind message for problem (id: 1300) "{0} cannot be resolved to a module" with arguments: {}
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/module-info.java:[21,11] Cannot bind message for problem (id: 1300) "{0} cannot be resolved to a module" with arguments: {}
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/org/hibernate/search/integrationtest/java/module/config/MyElasticsearchAnalysisConfigurer.java:[9,8] The import org.hibernate.search.backend cannot be resolved
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/org/hibernate/search/integrationtest/java/module/config/MyElasticsearchAnalysisConfigurer.java:[10,8] The import org.hibernate.search.backend cannot be resolved
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/org/hibernate/search/integrationtest/java/module/config/MyElasticsearchAnalysisConfigurer.java:[12,59] ElasticsearchAnalysisConfigurer cannot be resolved to a type
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/org/hibernate/search/integrationtest/java/module/config/MyElasticsearchAnalysisConfigurer.java:[17,24] ElasticsearchAnalysisConfigurationContext cannot be resolved to a type
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/org/hibernate/search/integrationtest/java/module/service/AuthorService.java:[11,8] The import org.hibernate.Session cannot be resolved
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/org/hibernate/search/integrationtest/java/module/service/AuthorService.java:[12,8] The import org.hibernate.SessionFactory cannot be resolved
[ERROR] /mnt/jenkins-workdir/workspace/arch-personal-yoann_HSEARCH-3929/integrationtest/jdk/java-modules/src/main/java/org/hibernate/search/integrationtest/java/module/service/AuthorService.java:[13,8] The import org.hibernate.boot cannot be resolved

....


  Commit: 398ea54664b54039194691b1e27941142ebfba33
      https://github.com/hibernate/hibernate-search/commit/398ea54664b54039194691b1e27941142ebfba33
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M pom.xml

  Log Message:
  -----------
  HSEARCH-3929 Upgrade to sonar-maven-plugin 3.7.0.1746


Compare: https://github.com/hibernate/hibernate-search/compare/c192bdf4cbad...398ea54664b5



More information about the hibernate-commits mailing list