Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: test with Java 11 #637

Merged
merged 10 commits into from
Sep 23, 2019
Merged

ci: test with Java 11 #637

merged 10 commits into from
Sep 23, 2019

Conversation

AirQuick
Copy link
Member

@AirQuick AirQuick commented Sep 22, 2019

Summary

This pull request adds Java 11 to the test matrix of Azure Pipelines and Travis CI.
AppVeyor is left intact, because I suppose Java 11 is not considered as the mainstream support of XSpec.

Why

Although XSpec itself does not depend on a specific Java version, testing with Java 11 is necessary to catch derivative issues like #633 (and consequently nkutsche/xspec-maven-plugin#1).

What has changed

  • Azure Pipelines

    • Move the main settings to a template (test/ci/azure-pipelines_template.yml) and parameterize the Java version
    • Create a Java version switcher (test/ci/switch-java.cmd) and call it from the template for switching to Java 11
    • Perform Java compilation only on Java 8 using condition
  • Travis CI

    • Add openjdk11 to jdk
    • Externalize Java compilation command line into test/ci/compile-java.sh and perform compilation only on Java 8

How I tested it

  • I inspected the console logs on Azure and Travis, and verified these

    • java -version output
    • A Java 11 warning ("Warning: Nashorn engine is planned to be removed from a future JDK release") is observed in Java 11 jobs
  • Bats test failure

  • XSpec test failure

  • End-to-end test failure

  • .class file verification failure

Further work

Update Wiki to mention Java 11.

@AirQuick AirQuick added the test label Sep 22, 2019
@AirQuick AirQuick added this to the v1.5.0 milestone Sep 22, 2019
@AirQuick
Copy link
Member Author

Maybe a bit too quick, but I'm merging this, for

  • Test failures are demonstrated
  • No change in XSpec core code
  • We'll need this test duality eventually
  • Broadening the test range is generally a good thing
  • Some other pull requests depend on this

A drawback is we now exceeds the max concurrent jobs of Travis CI.

@AirQuick AirQuick merged commit 4645c74 into xspec:master Sep 23, 2019
@AirQuick AirQuick deleted the test_java-11 branch September 23, 2019 12:09
@AirQuick
Copy link
Member Author

@xspec/xspec

Further work

Update Wiki to mention Java 11.

Done.
I added (recommended) to Java 8 and Saxon 9.9, just because that's where our CI executes the largest test set.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant