Upgrade from Eikon -> Workspace. Learn about programming differences.

For a deeper look into our Eikon Data API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
41 1 0 1

Port number was not identified. httpx api has changed.


httpx api has changed

I've upgraded to the latest version of eikon 1.1.6.post2 in order to solve a separate issue. However, I get the error Port number was not identified.

After doing some digging I've narrowed it to the check_port method:

In [1]:
APP_KEY = "..."
In [2]:
import logging
import eikon as ek

logger = logging.getLogger("pyeikon")
logger.setLevel(5)

desktop_session = ek.streaming_session.desktop_session.DesktopSession(APP_KEY)
await desktop_session.check_port(9000)
desktop_session._check_port_result

2020-09-24 15:02:27,834 P[23284] [MainThread 1104] Send GET request to http://localhost:9000/api/status to detect API Proxy...
2020-09-24 15:02:27,840 P[23284] [MainThread 1104] Error on checking port 9000 : AttributeError("'Request' object has no attribute 'prepare'",)

Calling http_request_async
_http_request <Request('GET', 'http://localhost:9000/api/status')>
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_prepare', 'aread', 'content', 'headers', 'method', 'read', 'stream', 'url']
Out[2]:
False

Within the eikon package I've also printed the _http_request object on line 630 of eikon.streaming_session.session.Session.

_http_request is an instance of httpx.Request. However, the api for this has changed and the prepare method has been made private as _prepare.

Note that the call to _http_request.prepare() will now throw an attribute error (as I am getting). I imagine that the devs will want to take a look and make changes as required (or lock the httpx dependency to a version that worked).

Thanks, Simon.



eikoneikon-data-apipythonrefinitiv-dataplatform-eikonworkspaceworkspace-data-api
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Hello @simon.garisch

Thank you for your participation in the forum. Is the reply below satisfactory in resolving your query?


If so please can you click the 'Accept' text next to the appropriate reply. This will guide all community members who have a similar question.

Thanks,


AHS


Please be informed that a reply has been verified as correct in answering the question, and has been marked as such.

Thanks,

AHS

1 Answer

· Write an Answer
Upvotes
Accepted
4.3k 2 4 5

Hi,

You're right, we detected yesterday a breaking change in httpx and we'll published soon a fix.
In the meantime, you can downgrade httpx to 0.14.2 as a workaround (pip install httpx==0.14.2)


icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.