google-cloud-python icon indicating copy to clipboard operation
google-cloud-python copied to clipboard

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

Open jhollowe opened this issue 9 months ago • 2 comments

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

   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

jhollowe avatar Apr 22 '25 18:04 jhollowe

Any update on this? It has been 3 months with no movement.

jhollowe avatar Aug 07 '25 15:08 jhollowe

One month later and no updates. Please triage this issue.

jhollowe avatar Sep 16 '25 15:09 jhollowe