diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index 81e8782..dfe6611 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -13,9 +13,11 @@ jobs: strategy: matrix: java: - - '8' - - '11' - #- '17' + # Java LTS versions + - '8' # 2030/12 + - '11' # 2032/01 + - '17' # 2029/09 + - '21' # 2031/09 name: Java ${{ matrix.Java }} sample steps: - uses: actions/checkout@v2 diff --git a/pom.xml b/pom.xml index 57fe027..bf1e992 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,7 @@ UTF-8 - 1.35 + 1.37 @@ -61,8 +61,6 @@ maven-surefire-plugin 2.22.2 - - 10 -Xms1g -Xmx1g @@ -107,6 +105,43 @@ + + + java-12-plus-reflection + + [12,) + + + + + org.apache.maven.plugins + maven-surefire-plugin + + --add-opens java.base/java.nio=ALL-UNNAMED + + + + + org.codehaus.mojo + exec-maven-plugin + + + run-benchmarks + + + --add-opens=java.base/java.nio=ALL-UNNAMED + -classpath + + org.openjdk.jmh.Main + + + + + + + + + no.fiken.oss.junixsocket @@ -119,21 +154,18 @@ 1.0.2 - net.java.dev.jna jna - 5.12.1 + 5.18.1 - net.java.dev.jna jna-platform - 5.12.1 + 5.18.1 - junit junit @@ -141,23 +173,20 @@ test - org.mockito mockito-core - 3.12.4 + 4.11.0 test - org.assertj assertj-core - 3.23.1 + 3.27.6 test - org.openjdk.jmh jmh-core diff --git a/src/main/java/bwapi/UnsafeTools.java b/src/main/java/bwapi/UnsafeTools.java index ec04219..cd3e73a 100644 --- a/src/main/java/bwapi/UnsafeTools.java +++ b/src/main/java/bwapi/UnsafeTools.java @@ -21,9 +21,7 @@ private static Object getOrCrash(final Class className, final Object object, return result; } catch (final Exception e) { // or crash... - e.printStackTrace(); - System.exit(-1); - return null; + throw new RuntimeException(e); } } diff --git a/src/test/java/bwapi/ClientDataBenchmark.java b/src/test/java/bwapi/ClientDataBenchmark.java index 2734b4e..52c9859 100644 --- a/src/test/java/bwapi/ClientDataBenchmark.java +++ b/src/test/java/bwapi/ClientDataBenchmark.java @@ -18,11 +18,12 @@ public static class EmptyState { @Setup(Level.Invocation) public void setup() { + WrappedBuffer wrappedBuffer = new WrappedBuffer(ClientData.GameData.SIZE); game = new Game(); - game.botClientData().setBuffer(new WrappedBuffer(ClientData.GameData.SIZE)); + game.botClientData().setBuffer(wrappedBuffer); + client = new Client(wrappedBuffer); strings = buildStrings(); } - } @State(Scope.Thread) @@ -33,9 +34,11 @@ public static class FilledWithStrings { @Setup(Level.Invocation) public void setup() { - data = client.liveClientData().gameData(); + WrappedBuffer wrappedBuffer = new WrappedBuffer(ClientData.GameData.SIZE); game = new Game(); - game.botClientData().setBuffer(new WrappedBuffer(ClientData.GameData.SIZE)); + game.botClientData().setBuffer(wrappedBuffer); + client = new Client(wrappedBuffer); + data = game.botClientData().gameData(); String[] strings = buildStrings(); for (String s : strings) { GameDataUtils.addString(client.liveClientData().gameData(), s);