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

Avoid accidental Java 9+ dependency with --release #10441

Merged
merged 1 commit into from
Aug 1, 2023

Commits on Aug 1, 2023

  1. Avoid accidental Java 9+ dependency with --release

    In d654707 we swapped compiling the uploaded artifacts to Java 11. This
    caused ABI issues with ByteBuffer, like clear() returning ByteBuffer
    instead of Buffer.
    
    There are source-level approaches to avoid the accidental ABI dependency
    on Java 11, but we have no tool able to detect such breakages.
    We use Animalsniffer for similar cases, but it fails to detect these[1].
    Since we have no tool, source-level approaches can't gain the necessary
    confidence that all incompatibility fixes have been resolved.
    
    Java has had javac-level ways to address this, but they used to require
    setting bootclasspath. Since Java 9, though, they made it easier and we
    can use --release, which does exactly what we need.
    
    Fixes grpc#10432
    
    1. mojohaus/animal-sniffer#77
    ejona86 committed Aug 1, 2023
    Configuration menu
    Copy the full SHA
    e361c21 View commit details
    Browse the repository at this point in the history