grpc 第三方依赖 就是grpc的 third_party 文件夹
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1.2 KiB

Abseil in gRPC

This document explains how to use Abseil throughout gRPC. Note that this isn't supposed to explain general usage of Abseil.

The version of Abseil

gRPC intends to use the LTS versions of Abseil only because it simplifies dependency management. Abseil is being distributed via package distribution systems such as vcpkg and cocoapods. If gRPC depends on the certain version that aren't registered, gRPC in that system cannot get the right version of Abseil when being built, resulting in a build failure. Therefore, gRPC will use the LTS version only, preferably the latest one.

Libraries that are not ready to use

Most of Abseil libraries are okay to use but there are some exceptions because they're not going well yet on some of our test machinaries or platforms it supports. The following is a list of targets that are NOT ready to use.

  • absl/synchronization:*: Blocked by b/186685878.
  • absl/random: WIP.

Implemetation only

You can use Abseil in gRPC Core and gRPC C++. But you cannot use it in the public interface of gRPC C++ because i) it doesn't gurantee no breaking API changes like gRPC C++ does and ii) it may make users change their build system to address Abseil.