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: Remove builder class signature rewriter #10406

Merged
merged 2 commits into from Oct 3, 2023

Commits on Oct 3, 2023

  1. core: Remove temporary AbstractServerImplBuilder

    This breaks the ABI of the classes listed below.
    
    Users that recompiled  their code using grpc-java [`v1.36.0`]
    (https://github.com/grpc/grpc-java/releases/tag/v1.36.0) (released on
    Feb 23, 2021) and later, ARE NOT AFFECTED.
    
    Users that compiled their source using grpc-java earlier than
    [`v1.36.0`]
    (https://github.com/grpc/grpc-java/releases/tag/v1.36.0) need to
    recompile when upgrading to grpc-java `v1.59.0`. Otherwise the code
    will fail on runtime with `NoSuchMethodError`. For example, code:
    
    ```java
    NettyServerBuilder.forPort(80).directExecutor();
    ```
    
    Will fail with
    
    > `java.lang.NoSuchMethodError: 'io.grpc.internal.AbstractServerImplBuilder
      io.grpc.netty.NettyServerBuilder.directExecutor()'`
    
    **Affected classes**
    
    Class `AbstractServerImplBuilder` is deleted, and no longer in the
    class hierarchy of the server builders:
    - `io.grpc.netty.NettyServerBuilder`
    - `io.grpc.inprocess.InProcessServerBuilder`
    sergiitk committed Oct 3, 2023
    Configuration menu
    Copy the full SHA
    bb83978 View commit details
    Browse the repository at this point in the history
  2. core: Remove temporary AbstractManagedChannelImplBuilder

    This breaks the ABI of the classes listed below.
    
    Users that recompiled  their code using grpc-java [`v1.36.0`]
    (https://github.com/grpc/grpc-java/releases/tag/v1.36.0) (released on
    Feb 23, 2021) and later, ARE NOT AFFECTED.
    
    Users that compiled their source using grpc-java earlier than
    [`v1.36.0`]
    (https://github.com/grpc/grpc-java/releases/tag/v1.36.0) need to
    recompile when upgrading to grpc-java `v1.59.0`. Otherwise the code
    will fail on runtime with `NoSuchMethodError`. For example, code:
    
    ```java
    NettyChannelBuilder.forTarget("localhost:100").maxRetryAttempts(2);
    ```
    
    Will fail with
    
    > `java.lang.NoSuchMethodError: 'io.grpc.internal.AbstractManagedChannelImplBuilder
      io.grpc.netty.NettyChannelBuilder.maxRetryAttempts(int)'`
    
    **Affected classes**
    
    Class `AbstractManagedChannelImplBuilder` is deleted, and no longer in
    the class hierarchy of the channel builders:
    - `io.grpc.netty.NettyChannelBuilder`
    - `io.grpc.okhttp.OkhttpChannelBuilder`
    - `grpc.cronet.CronetChannelBuilder`
    sergiitk committed Oct 3, 2023
    Configuration menu
    Copy the full SHA
    3eaa4c0 View commit details
    Browse the repository at this point in the history