- Notifications
You must be signed in to change notification settings - Fork90
Description
rest_version
is used to convey information about our REST implementation, and we populate it with versions of the dependencies we use in REST. We should either create a static string that we always send in all requests (for example, including the versions ofrequests
and ofauth
, even though eg REST sync and REST async only use a different one of those); or we should include only the versions of the dependencies relevant for a given call (egrequests
for REST sync andauth
for REST async). I would favor the former.
The format ofrest_value
should label which libraries the version numbers we're providing apply to. So I propose a format likerest_version="requests@1.2.3,auth@4.5.6"
.
Internally, we may want to implementrest_versions
as a dictionary of library name to version string. And then inclient_info.py, we can serialize the dictionary into the agreed format, such as the one I propose in the paragraph above. The advantage of this is that each module can independently add the dependencies it relies on, rather than us having to do it in a centralized place. This more moredular and scalable.