Fixes to improve Java 11 testing#6296
Merged
headius merged 9 commits intojruby:masterfrom Jun 25, 2020
Merged
Conversation
Similar to non-public classes, we don't want to bind the reflected methods from no-exported classes, since dispatching to those method objects will fail with an IllegalAccessException. We avoid setting up methods on those proxies and allow public supertypes to provide them. Fixes jruby#6287
The skipped test will fail on Java 9+ because we are calling from a named module into a java.base package that's not open. In order to keep the basic spirit of the test running, I added a similar test against the JI fixtures we load via classpath. These APIs (JavaClass etc) are deprecaed, but we do not yet have a clean path to replacing and removing them. Therefore we should at least keep basic tests working.
Member
Author
|
How boring. I only got to make one fix! With this change, the following test suites are green and running on JDK11 in CI:
The only fix here was to avoid binding non-exported classes' methods, which fixes #6287. It's simple, so I'll cherry-pick it for 9.2.12. |
Member
Author
|
I tossed FFI in as well since that rounds out the set of features being tested. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR will fix issues preventing some of our test suites from passing on Java 11, in order to help move toward full compatibility in the presence of Java modules.
This PR is based on 9.3 but most fixes should be mergeable to 9.2, and we may want to consider some or all of them for 9.2.12.