Skip to content

Commit

Permalink
Raise minimum JDK version to 17 (openhab#2994)
Browse files Browse the repository at this point in the history
* Raise source level to Java 17 (except for model classes)
* Remove Nashorn script engine
* Upgrade spotless and add jvm options  
  See diffplug/spotless#834
* Add suppression for findBugs false positive error
* Upgrade xtext to 2.29.0
* Adjust JNA
* Resolve itests

Signed-off-by: Jan N. Klug <github@klug.nrw>
  • Loading branch information
J-N-K authored Dec 19, 2022
1 parent d48ac20 commit 41ba3ff
Show file tree
Hide file tree
Showing 42 changed files with 163 additions and 522 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/ci-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
strategy:
fail-fast: false
matrix:
java: [ '11', '17' ]
java: [ '17' ]
maven: [ '3.8.6' ]
os: [ 'ubuntu-22.04' ]
name: Build (Java ${{ matrix.java }}, ${{ matrix.os }})
Expand Down Expand Up @@ -56,7 +56,7 @@ jobs:
maven-version: ${{ matrix.maven }}

- name: Register Problem Matchers
if: ${{ matrix.java == '11' }}
if: ${{ matrix.java == '17' }}
id: problem_matchers
run: |
echo "::add-matcher::.github/openhab-compile-problems.json"
Expand Down Expand Up @@ -86,7 +86,7 @@ jobs:
path: target/summary_report.html

- name: Report SAT Errors as Annotations
if: ${{ matrix.java == '11' && always() && ((steps.build.outcome == 'success') || (steps.build.outcome == 'failure')) }}
if: ${{ matrix.java == '17' && always() && ((steps.build.outcome == 'success') || (steps.build.outcome == 'failure')) }}
uses: ghys/checkstyle-github-action@main
with:
title: CheckStyle Violations
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ If you have not worked with Maven yet, just follow the instructions and everythi

What you need before you start:

- Java SE Development Kit 11
- Java SE Development Kit 17
- Maven 3 from https://maven.apache.org/download.html

Make sure that the `mvn` command is available on your path
Expand Down
2 changes: 1 addition & 1 deletion bom/compile-model/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@
<dependency>
<groupId>org.eclipse.orbit.bundles</groupId>
<artifactId>io.github.classgraph</artifactId>
<version>4.8.138.v20211212-1642 </version>
<version>4.8.149.v20220915-0556</version>
<scope>compile</scope>
</dependency>

Expand Down
2 changes: 1 addition & 1 deletion bom/compile/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.9</version>
<version>2.9.1</version>
<scope>compile</scope>
</dependency>

Expand Down
9 changes: 2 additions & 7 deletions bom/runtime/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -440,7 +440,7 @@
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.9</version>
<version>2.9.1</version>
<scope>compile</scope>
</dependency>

Expand Down Expand Up @@ -771,7 +771,7 @@
<dependency>
<groupId>org.eclipse.orbit.bundles</groupId>
<artifactId>io.github.classgraph</artifactId>
<version>4.8.138.v20211212-1642 </version>
<version>4.8.149.v20220915-0556</version>
<scope>compile</scope>
</dependency>
<dependency>
Expand Down Expand Up @@ -878,11 +878,6 @@
<version>${xtext.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm</artifactId>
Expand Down

This file was deleted.

2 changes: 1 addition & 1 deletion bundles/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.1.1</version>
<version>3.3.0</version>
<executions>
<execution>
<id>unpack-eea</id>
Expand Down
6 changes: 3 additions & 3 deletions features/karaf/openhab-core/src/main/feature/feature.xml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@

<feature dependency="true">openhab.tp-gson</feature>

<requirement>openhab.tp;filter:="(&amp;(feature=xtext)(version&gt;=2.26.0)(!(version&gt;=2.27.0)))"</requirement>
<requirement>openhab.tp;filter:="(&amp;(feature=xtext)(version&gt;=2.29.0)(!(version&gt;=2.30.0)))"</requirement>
<feature dependency="true">openhab.tp-xtext</feature>

<requirement>openhab.tp;filter:="(feature=jax-rs-whiteboard)"</requirement>
Expand Down Expand Up @@ -349,10 +349,10 @@

<feature name="openhab-core-model-lsp" version="${project.version}">

<requirement>openhab.tp;filter:="(&amp;(feature=xtext-ide)(version&gt;=2.26.0)(!(version&gt;=2.27.0)))"</requirement>
<requirement>openhab.tp;filter:="(&amp;(feature=xtext-ide)(version&gt;=2.29.0)(!(version&gt;=2.30.0)))"</requirement>
<feature dependency="true">openhab.tp-xtext-ide</feature>

<requirement>openhab.tp;filter:="(&amp;(feature=lsp4j)(version&gt;=0.12.0)(!(version&gt;=0.13.0)))"</requirement>
<requirement>openhab.tp;filter:="(&amp;(feature=lsp4j)(version&gt;=0.19.0)(!(version&gt;=0.20.0)))"</requirement>
<feature dependency="true">openhab.tp-lsp4j</feature>

<feature>openhab-core-model-item-ide</feature>
Expand Down
2 changes: 1 addition & 1 deletion features/karaf/openhab-tp/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

<properties>
<jetty.version>9.4.46.v20220331</jetty.version>
<jna.version>5.11.0</jna.version>
<jna.version>5.12.1</jna.version>
</properties>

<build>
Expand Down
38 changes: 19 additions & 19 deletions features/karaf/openhab-tp/src/main/feature/feature.xml
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,8 @@
</feature>

<feature name="openhab.tp-gson" description="Gson" version="${project.version}">
<capability>openhab.tp;feature=gson;version=2.8.9</capability>
<bundle>mvn:com.google.code.gson/gson/2.8.9</bundle>
<capability>openhab.tp;feature=gson;version=2.9.1</capability>
<bundle>mvn:com.google.code.gson/gson/2.9.1</bundle>
</feature>

<feature name="openhab.tp-hivemqclient" description="MQTT Client" version="${project.version}">
Expand Down Expand Up @@ -200,9 +200,9 @@
</feature>

<feature name="openhab.tp-lsp4j" description="Eclipse LSP4J" version="${project.version}">
<capability>openhab.tp;feature=lsp4j;version=0.12.0</capability>
<bundle>mvn:org.eclipse.lsp4j/org.eclipse.lsp4j/0.12.0</bundle>
<bundle>mvn:org.eclipse.lsp4j/org.eclipse.lsp4j.jsonrpc/0.12.0</bundle>
<capability>openhab.tp;feature=lsp4j;version=0.19.0</capability>
<bundle>mvn:org.eclipse.lsp4j/org.eclipse.lsp4j/0.19.0</bundle>
<bundle>mvn:org.eclipse.lsp4j/org.eclipse.lsp4j.jsonrpc/0.19.0</bundle>

<feature dependency="true">openhab.tp-gson</feature>
<feature dependency="true">openhab.tp-xtext</feature>
Expand All @@ -222,32 +222,32 @@
</feature>

<feature name="openhab.tp-xtext" description="Xtext - Language Engineering Made Easy" version="${project.version}">
<capability>openhab.tp;feature=xtext;version=2.26.0</capability>
<capability>openhab.tp;feature=xtext;version=2.29.0</capability>

<bundle>mvn:org.eclipse.xtext/org.eclipse.xtext/2.26.0</bundle>
<bundle>mvn:org.eclipse.xtext/org.eclipse.xtext/2.29.0</bundle>

<bundle dependency="true">mvn:org.eclipse.emf/org.eclipse.emf.common/2.17.0</bundle>
<bundle dependency="true">mvn:org.eclipse.emf/org.eclipse.emf.ecore/2.20.0</bundle>
<bundle dependency="true">mvn:org.eclipse.emf/org.eclipse.emf.ecore.change/2.14.0</bundle>
<bundle dependency="true">mvn:org.eclipse.emf/org.eclipse.emf.ecore.xmi/2.16.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.common.types/2.26.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.common.types/2.29.0</bundle>

<bundle dependency="true">mvn:javax.annotation/javax.annotation-api/1.2</bundle>

<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.xbase/2.26.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.xbase.lib/2.26.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.smap/2.26.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.util/2.26.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtend/org.eclipse.xtend.lib/2.26.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtend/org.eclipse.xtend.lib.macro/2.26.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.xbase/2.29.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.xbase.lib/2.29.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.smap/2.29.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.util/2.29.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtend/org.eclipse.xtend.lib/2.29.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtend/org.eclipse.xtend.lib.macro/2.29.0</bundle>

<bundle dependency="true">mvn:com.google.guava/failureaccess/1.0.1</bundle>
<bundle dependency="true">mvn:com.google.guava/guava/30.1-jre</bundle>
<bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.javax-inject/1_2</bundle>

<bundle dependency="true">mvn:org.eclipse.orbit.bundles/org.aopalliance/1.0.0.v201105210816</bundle>
<bundle dependency="true">mvn:org.eclipse.orbit.bundles/com.google.inject/5.0.1.v20210324-2015</bundle>
<bundle dependency="true">mvn:org.eclipse.orbit.bundles/io.github.classgraph/4.8.138.v20211212-1642</bundle>
<bundle dependency="true">mvn:org.eclipse.orbit.bundles/io.github.classgraph/4.8.149.v20220915-0556</bundle>
<bundle dependency="true">mvn:org.eclipse.orbit.bundles/org.antlr.runtime/3.2.0.v201101311130</bundle>

<bundle dependency="true">mvn:org.eclipse.platform/org.eclipse.equinox.common/3.13.0</bundle>
Expand All @@ -256,16 +256,16 @@

<!-- Add ASM package -->
<!-- org.eclipse.xtext.common.types is using Require-Bundle -->
<bundle dependency="true" start-level="20">mvn:org.ow2.asm/asm/9.2</bundle>
<bundle dependency="true" start-level="20">mvn:org.ow2.asm/asm/9.4</bundle>
</feature>

<feature name="openhab.tp-xtext-ide" description="Xtext - IDE Support" version="${project.version}">
<capability>openhab.tp;feature=xtext-ide;version=2.26.0</capability>
<capability>openhab.tp;feature=xtext-ide;version=2.29.0</capability>
<feature dependency="true">openhab.tp-xtext</feature>

<!-- Support for the Language Server Protocol -->
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.ide/2.26.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.xbase.ide/2.26.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.ide/2.29.0</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.xbase.ide/2.29.0</bundle>
</feature>

<feature name="openhab.tp-swagger-jaxrs" description="JAX-RS Whiteboard Swagger Support" version="${project.version}">
Expand Down
3 changes: 1 addition & 2 deletions itests/itest-include.bndrun
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Test-Cases: ${classes;CONCRETE;PUBLIC;NAMED;*Test}
-runsystempackages: sun.reflect

-runfw: org.eclipse.osgi
-runee: JavaSE-11
-runee: JavaSE-17

# An unused random HTTP port is used during tests to prevent resource conflicts
# This property is set by the build-helper-maven-plugin in the itests pom.xml
Expand All @@ -36,7 +36,6 @@ Export-Package:
bnd.identity;id='junit-jupiter-engine'

-runproperties: \
nashorn.args=--no-deprecation-warning,\
org.ops4j.pax.logging.DefaultServiceLog.level=WARN

-runvm.java9plus: \
Expand Down
4 changes: 2 additions & 2 deletions itests/org.openhab.core.auth.oauth2client.tests/itest.bndrun
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ Fragment-Host: org.openhab.core.auth.oauth2client
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
com.google.gson;version='[2.8.9,2.8.10)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.eclipse.jetty.client;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
Expand All @@ -62,4 +61,5 @@ Fragment-Host: org.openhab.core.auth.oauth2client
org.openhab.core.auth.oauth2client.tests;version='[4.0.0,4.0.1)',\
org.openhab.core.io.console;version='[4.0.0,4.0.1)',\
org.openhab.core.io.net;version='[4.0.0,4.0.1)',\
org.openhab.core.test;version='[4.0.0,4.0.1)'
org.openhab.core.test;version='[4.0.0,4.0.1)',\
com.google.gson;version='[2.9.1,2.9.2)'
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ Fragment-Host: org.openhab.core.automation
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
com.google.gson;version='[2.8.9,2.8.10)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
Expand All @@ -56,4 +55,5 @@ Fragment-Host: org.openhab.core.automation
org.openhab.core.ephemeris;version='[4.0.0,4.0.1)',\
org.openhab.core.io.console;version='[4.0.0,4.0.1)',\
org.openhab.core.test;version='[4.0.0,4.0.1)',\
org.openhab.core.thing;version='[4.0.0,4.0.1)'
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
com.google.gson;version='[2.9.1,2.9.2)'
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ Fragment-Host: org.openhab.core.automation
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
com.google.gson;version='[2.8.9,2.8.10)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
Expand All @@ -56,4 +55,5 @@ Fragment-Host: org.openhab.core.automation
org.openhab.core.ephemeris;version='[4.0.0,4.0.1)',\
org.openhab.core.io.console;version='[4.0.0,4.0.1)',\
org.openhab.core.test;version='[4.0.0,4.0.1)',\
org.openhab.core.thing;version='[4.0.0,4.0.1)'
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
com.google.gson;version='[2.9.1,2.9.2)'
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ Fragment-Host: org.openhab.core.automation.module.script
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
com.google.gson;version='[2.8.9,2.8.10)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
Expand All @@ -58,4 +57,5 @@ Fragment-Host: org.openhab.core.automation.module.script
org.openhab.core.io.console;version='[4.0.0,4.0.1)',\
org.openhab.core.test;version='[4.0.0,4.0.1)',\
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
org.openhab.core.transform;version='[4.0.0,4.0.1)'
org.openhab.core.transform;version='[4.0.0,4.0.1)',\
com.google.gson;version='[2.9.1,2.9.2)'
Loading

0 comments on commit 41ba3ff

Please sign in to comment.