googleapis / googleapis/google-cloud-python
[config] Add validation to ConfigClient/ConfigAsyncClient to ensure the transport is compatible
- Langage dominant
- Python
- Étoiles
- 5.4k
- Forks
- 1.8k
- Merge moyen
- 3 j 4 h
- PR mergées (30 j)
- 122
Description
### Determine this is the right repository
- [x] I determined this is the correct repository in which to report this feature request.
### Summary of the feature request
Since the `ConfigAsyncClient` appears to only correctly function with the `grpc_asyncio` transport, it would be useful to validate that the sync-or-async of the transport matches the sync-or-async of the Client.
### Desired code experience
file: main.py
```python
def my_ideal_error_checking():
ConfigClient(..., transport="grpc_asyncio") # ERROR
ConfigAsyncClient(..., transport="grpc") # ERROR
ConfigAsyncClient(..., transport="rest") # ERROR
ConfigAsyncClient(..., transport="grpc_asyncio") # Success!
```
### Expected results
Creating a `ConfigClient` with an async transport or creating a `ConfigAsyncClient` with a synchronous transport would raise an exception.
### API client name and version
google-cloud-config==0.1.17
### Use case
This will prevent unnecessary troubleshooting of later issues which arise from incompatible transports.
### Additional context
_No response_
Guide de contribution
Ouvrir le guide de contribution
Évaluation
Cette issue n'a pas encore été évaluée.