11import logging
2- import warnings
32
43import requests
54import urllib3
@@ -63,10 +62,6 @@ def __init__(self, server_address, use_server_version=False, http_options=None,
6362 self ._site_id = None
6463 self ._user_id = None
6564
66- # TODO: this needs to change to default to https, but without breaking existing code
67- if not server_address .startswith ("http://" ) and not server_address .startswith ("https://" ):
68- server_address = "http://" + server_address
69-
7065 self ._server_address : str = server_address
7166 self ._session_factory = session_factory or requests .session
7267
@@ -96,6 +91,8 @@ def __init__(self, server_address, use_server_version=False, http_options=None,
9691 self .flow_runs = FlowRuns (self )
9792 self .metrics = Metrics (self )
9893
94+ self .logger = logging .getLogger ("TSC.server" )
95+
9996 self ._session = self ._session_factory ()
10097 self ._http_options = dict () # must set this before making a server call
10198 if http_options :
@@ -110,6 +107,9 @@ def __init__(self, server_address, use_server_version=False, http_options=None,
110107 def validate_connection_settings (self ):
111108 try :
112109 Endpoint (self ).set_parameters (self ._http_options , None , None , None , None )
110+ if not server_address .startswith ("http://" ) and not server_address .startswith ("https://" ):
111+ self ._server_address = "http://" + self ._server_address
112+ self ._session .prepare_request (requests .Request ("GET" , url = self ._server_address , params = self ._http_options ))
113113 except Exception as req_ex :
114114 raise ValueError ("Server connection settings not valid" , req_ex )
115115
@@ -149,8 +149,8 @@ def _get_legacy_version(self):
149149 try :
150150 info_xml = fromstring (response .content )
151151 except ParseError as parseError :
152- logging . getLogger ( "TSC.server" ) .info (parseError )
153- logging . getLogger ( "TSC.server" ) .info (
152+ logger .info (parseError )
153+ logger .info (
154154 "Could not read server version info. The server may not be running or configured."
155155 )
156156 return self .version
@@ -165,7 +165,8 @@ def _determine_highest_version(self):
165165 version = self .server_info .get ().rest_api_version
166166 except ServerInfoEndpointNotFoundError :
167167 version = self ._get_legacy_version ()
168- except BaseException :
168+ except BaseException as e :
169+ logger .info ("Could not get version info from server, guessing {}" .format (e .__class__ ))
169170 version = self ._get_legacy_version ()
170171
171172 self .version = old_version
@@ -177,7 +178,7 @@ def use_server_version(self):
177178
178179 def use_highest_version (self ):
179180 self .use_server_version ()
180- warnings . warn ("use use_server_version instead" , DeprecationWarning )
181+ logger . info ("use use_server_version instead" , DeprecationWarning )
181182
182183 def check_at_least_version (self , target : str ):
183184 server_version = Version (self .version or "0.0" )
0 commit comments