|
28 | 28 |
|
29 | 29 | fromgoogle.rpcimporterror_details_pb2 |
30 | 30 |
|
| 31 | + |
| 32 | +def_warn_could_not_import_grpcio_status(): |
| 33 | +warnings.warn( |
| 34 | +"Please install grpcio-status to obtain helpful grpc error messages.", |
| 35 | +ImportWarning, |
| 36 | + )# pragma: NO COVER |
| 37 | + |
| 38 | + |
31 | 39 | try: |
32 | 40 | importgrpc |
33 | 41 |
|
34 | 42 | try: |
35 | 43 | fromgrpc_statusimportrpc_status |
36 | 44 | exceptImportError:# pragma: NO COVER |
37 | | -warnings.warn( |
38 | | -"Please install grpcio-status to obtain helpful grpc error messages.", |
39 | | -ImportWarning, |
40 | | - ) |
| 45 | +_warn_could_not_import_grpcio_status() |
41 | 46 | rpc_status=None |
42 | 47 | exceptImportError:# pragma: NO COVER |
43 | 48 | grpc=None |
@@ -560,6 +565,9 @@ def _is_informative_grpc_error(rpc_exc): |
560 | 565 |
|
561 | 566 |
|
562 | 567 | def_parse_grpc_error_details(rpc_exc): |
| 568 | +ifnotrpc_status:# pragma: NO COVER |
| 569 | +_warn_could_not_import_grpcio_status() |
| 570 | +return [],None |
563 | 571 | try: |
564 | 572 | status=rpc_status.from_call(rpc_exc) |
565 | 573 | exceptNotImplementedError:# workaround |
|