googleapis / googleapis/google-cloud-python

[config] Add validation to ConfigClient/ConfigAsyncClient to ensure the transport is compatible

Offen
#13,820 8 Kommentare 0 Reaktionen 1 zugewiesene Person Beansprucht von @chalmerlowe Auf GitHub ansehen
type: feature request
Vorherrschende Sprache
Python
Sterne
5.4k
Forks
1.8k
Ø Merge
3 T. 4 Std.
Gemergte PRs (30 T.)
122

Beschreibung

### 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_

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.