What version of gRPC and what language are you using?
grpcio==1.37.1 via python
What operating system (Linux, Windows,...) and version?
Linux (but built from source using pip)
What runtime / compiler are you using (e.g. python version or version of gcc)
Python 3.8 and likely clang
What did you do?
Following up on googleads/google-ads-python#423 it appears that with a http proxy set, grpc is can issue CONNECT requests that lack a port number. This was triggered by a change in google-ads in release 10.0.0 that I assume works in the non-proxy case.
What did you expect to see?
I would expect that either grpc validates that port is present, or grpc adds a default port.
The port is required as part of the "authority form", per
https://datatracker.ietf.org/doc/html/rfc7231#section-4.3.6
https://datatracker.ietf.org/doc/html/rfc7230#section-5.3.3
In google-ads==9.0.0, it provides the full form to grpc, and this works.
CONNECT googleads.googleapis.com:443 HTTP/1.0
What did you see instead?
CONNECT googleads.googleapis.com HTTP/1.0
In google-ads==10.0.0, it omits the port, and grpc passes this along to the proxy which then rejects it as invalid.
This shows as "failed to connect to all addresses" with no further information unless you enable GRPC_TRACE.
More logs are in the linked google-ads issue.
Anything else we should know about your project / environment?
What version of gRPC and what language are you using?
grpcio==1.37.1 via python
What operating system (Linux, Windows,...) and version?
Linux (but built from source using pip)
What runtime / compiler are you using (e.g. python version or version of gcc)
Python 3.8 and likely clang
What did you do?
Following up on googleads/google-ads-python#423 it appears that with a http proxy set, grpc is can issue CONNECT requests that lack a port number. This was triggered by a change in google-ads in release 10.0.0 that I assume works in the non-proxy case.
What did you expect to see?
I would expect that either grpc validates that port is present, or grpc adds a default port.
The port is required as part of the "authority form", per
https://datatracker.ietf.org/doc/html/rfc7231#section-4.3.6
https://datatracker.ietf.org/doc/html/rfc7230#section-5.3.3
In google-ads==9.0.0, it provides the full form to grpc, and this works.
What did you see instead?
In google-ads==10.0.0, it omits the port, and grpc passes this along to the proxy which then rejects it as invalid.
This shows as "failed to connect to all addresses" with no further information unless you enable
GRPC_TRACE.More logs are in the linked google-ads issue.
Anything else we should know about your project / environment?