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

core: Rewrite builder class signatures to avoid internal class #7834

Merged
merged 2 commits into from Jan 26, 2021

Commits on Jan 22, 2021

  1. core: Rewrite builder class signatures to avoid internal class

    This provides us a path forward with grpc#7211 (hiding
    AbstractManagedChannelImplBuilder and AbstractServerImplBuilder) while
    providing users a migration path to manage the ABI breakage (grpc#7552). We
    do a .class hack so that recompiling avoids the internal class reference
    yet the old methods are still available.
    
    Leaving the classes as-is causes javac to compile two versions of each
    method, one returning the public class (e.g. ServerBuilder) and one
    returning the internal class (e.g., AbstractServerImplBuilder). However,
    we rewrite the signature that is used at compile time so that new
    compilations will not reference internal-returning methods.
    
    This is intended to be temporary, just to give a migration path. Once we
    have given users some time to recompile we will remove this rewriting
    and change the generics to use public classes.
    ejona86 committed Jan 22, 2021
    Copy the full SHA
    dd4abae View commit details
    Browse the repository at this point in the history

Commits on Jan 26, 2021

  1. Copy the full SHA
    37dda7a View commit details
    Browse the repository at this point in the history