Look at the release notes for 1.7.0 and 1.8.0 in the behavior changes.   We 
removed some deprecated APIs.

On Monday, December 4, 2017 at 2:08:31 AM UTC-8, [email protected] wrote:
>
> This is great!
>
> How "safe" is it to upgrade from 1.6 to 1.8?
>
> Should I take something into account?
>
> Thanks
>
> On Wednesday, November 22, 2017 at 7:11:01 PM UTC+1, Eric Anderson wrote:
>>
>> gRPC Java 1.8.0 is now released and available on Maven Central.
>>
>> v1.9.0 is scheduled for January 2nd, but the holidays will likely delay 
>> the release some. Delays will not impact later releases; v1.10 would still 
>> be scheduled for 6 weeks from January 2nd.
>>
>> Dependencies
>>    
>>    - core: Now using io.opencensus:opencensus-api and 
>>    io.opencensus:opencensus-contrib-grpc-metrics instead of 
>>    com.google.instrumentation:instrumentation-api for stats and tagging. The 
>>    gRPC Monitoring Service continues to use instrumentation-api.
>>    - examples: In Android example, bump minSdkVersion to 14. Google Play 
>>    Services, which is used for TLS, bumped their minimum supported version
>>
>> API Changes
>>    
>>    - core: Removed deprecated load balancer and name resolver APIs. This 
>>    includes LoadBalancer.handleResolvedAddresses(), 
>>    LoadBalancer.Helper.updatePicker(), NameResolver.Listener.onUpdate(), 
>>    ResolvedServerInfo, and ResolvedServerInfoGroup
>>    - stub: Added @DoNotMock annotations to AbstractStub, 
>>    CallStreamObserver, ClientCallStreamObserver, ServerCallStreamObserver. 
>>    The normal gRPC implementations of these classes should be used in tests
>>    - codegen: Removed enable_deprecated protoc plugin option (#3541 
>>    <https://github.com/grpc/grpc-java/pull/3541>). These deprecated APIs 
>>    pre-date 1.0 and were off by default
>>    - codegen: Added methods for accessing generated method descriptors. 
>>    This replaces the METHOD_FOO constants with static getFooMethod() 
>> methods. 
>>    The constants are deprecated and will be removed in a future release. 
>> Once 
>>    the constants are removed, this change will allow the descriptors (and 
>> the 
>>    messages they reference) to be lazily created which can dramatically 
>>    decrease class initialization time and allows unused RPC messages to be 
>>    removed by Proguard.
>>    - testing: TestMethodDescriptors.noopMethod() is deprecated in favor 
>>    voidMethod() or test services. The simple service in 
>>    grpc-testing-proto should work in most cases where voidMethod()is 
>>    insufficient
>>    - testing: Marked DeadlineSubject experimental. It is planned for 
>>    removal to ease future Guava dependency issues with Truth. It could be 
>>    moved into its own artifact, but best as we can tell nobody is using it. 
>> If 
>>    you're using it, please file an issue so we can be made aware
>>    - testing: Deprecated StreamRecorder. It will be removed in a future 
>>    release. The class is *very* old (since the beginning in OSS) and was 
>>    used in internal tests before there were blocking stubs. Most users 
>> should 
>>    use blocking stubs instead. To use properly, you must know the class's 
>>    implementation; if you liked it, copy the code to your own codebase
>>    - testing: Deprecated TestUtils.recordServerCallInterceptor(). It 
>>    will be removed in a future release. It has no known use cases for normal 
>>    users
>>    - The (unreleased) Thrift support has been removed from this 
>>    repository. It can be found athttps://github.com/grpc-ecosystem/grift
>>     instead
>>
>> New Features
>>    
>>    - The Cronet transport is open-sourced. Cronet is Chrome's network 
>>    stack made into a library for mobile. We do not provide a build file nor 
>>    are we making binaries, but if you're interested it shouldn't be too hard 
>>    to build manually
>>    - context: CancellableContext now implements Closeable (#3607 
>>    <https://github.com/grpc/grpc-java/pull/3607>). close() is an alias 
>>    for cancel(null). This should make it more clear that the context 
>>    needs to be cancelled/closed, while also enabling try-with-resources
>>    - core: Attributes.Builder.build() may now be called multiple times
>>    - core: Added first-class drop support for load balancers via 
>>    PickResult.withDrop(Status). This is necessary if the LB wants to 
>>    fail waitForReady RPCs to shed load
>>    - core: Added MethodDescriptor.getSampledToLocalTracing()/
>>    Builder.setSampledToLocalTracing to permit per-method stats keeping 
>>    memory overhead (#3627 <https://github.com/grpc/grpc-java/pull/3627>). 
>>    The option is to prevent unbounded memory overhead when 
>> dynamically-created 
>>    MethodDescriptors are used and is enabled in the generated code.
>>    - core: Added resetConnectBackoff() method to ManagedChannel. This 
>>    can be used when the OS notifies your application that the network has 
>>    become available
>>    - stub: Added stub.withExecutor(Executor). This was already available 
>>    on CallOptions and can be used to specify a call-specific executor to use 
>>    for callbacks
>>    - testing: Added TlsTesting.loadCert as an alternative to deprecated 
>>    TestUtils.loadCert. The TlsTesting version returns an InputStream instead 
>>    of a File which avoids creating temporary files
>>
>> Behavior changes
>>    
>>    - core: Added handshake timeout for all server transports. The 
>>    default is 20 seconds (which is a bug; should be 120 seconds to match 
>>    client-side). The default can be overridden by 
>>    ServerBuilder.handshakeTimeout()
>>    - core: LoadBalancer callbacks will no longer be called after shut 
>>    down (#3573 <https://github.com/grpc/grpc-java/pull/3573>). This 
>>    changes the behavior to match that documented in 
>>    LoadBalancer.shutdown()
>>    - core: Refresh name resolution when an OOB connection is closed (
>>    #3588 <https://github.com/grpc/grpc-java/pull/3588>). This has 
>>    already been happening for Subchannels.
>>    - netty,okhttp: Now detecting proxy via ProxySelector. This enables 
>>    observation of the Java-standard proxy options -Dhttps.proxyHost=host 
>>    -Dhttps.proxyPort=port. Authenticator is consulted for along with 
>>    auth. Users of the GRPC_PROXY_EXP environment variable should 
>>    migrate; the environment variable will be removed in a future release.
>>    - netty: Connection log info has been moved to a separate logger: 
>>    io.grpc.netty.NettyServerTransport.connections (#3591 
>>    <https://github.com/grpc/grpc-java/pull/3591>).
>>    - auth: Treat IOExceptions as UNAVAILABLE instead of UNAUTHENTICATED (
>>    #3267 <https://github.com/grpc/grpc-java/issues/3267>). This allows 
>>    retrying RPCs if the OAuth token failed to be retrieved
>>
>> Bug fixes
>>    
>>    - core: Fixed ManagedChannel docs since it supports the 
>>    getState/notifyWhenStateChanged API (#3762 
>>    <https://github.com/grpc/grpc-java/issues/3762>)
>>    - core: When Context cancellation cancels an RPC, and the Context 
>>    cancellation cause is null, we now include a description in the 
>>    Status to help expose what happened
>>    - netty: Fixed broken server keepalive when using TLS. If using Netty 
>>    server, server keepalives, and TLS, you were impacted. Plaintext did not 
>>    exhibit the bug. This could trigger grpc-java clients to log "WARNING: 
>>    Received unexpected ping ack. No ping outstanding."
>>    - netty: Improved ALPN error message to be less misleading and link 
>>    to troubleshooting procedures
>>    - netty: Fixed clearing of SSLParameters. This may fix ALPN with 
>>    JDK9, but full support for ALPN with JDK9 is still later work and not 
>>    supporting it yet. Fixes #3532 
>>    <https://github.com/grpc/grpc-java/issues/3532>
>>    - netty: When a RST_STREAM kills an RPC, we now include the HTTP/2 
>>    error code in the Status
>>    - netty: Fixed Netty server poorly handling unknown content type. It 
>>    previously would refuse the stream; now it responds with a normal grpc 
>>    status and HTTP error code
>>    - bazel: java_grpc_library: Fixed remote protos that are 'src's. 
>>    Fixes #3650 <https://github.com/grpc/grpc-java/issues/3650>
>>    - examples: Replaced IntelliJ IDEA-specific sourceDirs with 
>>    sourceSets. This helps Eclipse and other IDE users
>>
>> Documentation
>>    
>>    - SECURITY.md now includes a table showing the preferred Netty and 
>>    netty-tcnative version for each grpc-java release
>>    - SECURITY.md clarify that the Dynamic Security Provider must be 
>>    installed before OkHttp channel creation
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/grpc-io.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/grpc-io/99ab2adf-b053-430b-bcaa-dbcb67d793a8%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to