mirror of
https://github.com/pgadmin-org/pgadmin4.git
synced 2025-02-25 18:55:31 -06:00
Change the following to replace Python 2 code with Python 3:
1) Replace the deprecated unit test method. 2) Wraps filter usage in a list call. 3) Converts the old metaclass syntax to new. 4) Use range instead of xrange method. 5) Change Unicode to str. 6) Several other transformations. 7) Fixed change password test cases. 8) Use simplejson instead of plain JSON.
This commit is contained in:
committed by
Akshay Joshi
parent
11d5613866
commit
5a253f9053
@@ -306,20 +306,20 @@ class Driver(BaseDriver):
|
||||
return True
|
||||
# certain types should not be quoted even though it contains a space.
|
||||
# Evilness.
|
||||
elif for_types and value[-2:] == u"[]":
|
||||
elif for_types and value[-2:] == "[]":
|
||||
val_noarray = value[:-2]
|
||||
|
||||
if for_types and val_noarray.lower() in [
|
||||
u'bit varying',
|
||||
u'"char"',
|
||||
u'character varying',
|
||||
u'double precision',
|
||||
u'timestamp without time zone',
|
||||
u'timestamp with time zone',
|
||||
u'time without time zone',
|
||||
u'time with time zone',
|
||||
u'"trigger"',
|
||||
u'"unknown"'
|
||||
'bit varying',
|
||||
'"char"',
|
||||
'character varying',
|
||||
'double precision',
|
||||
'timestamp without time zone',
|
||||
'timestamp with time zone',
|
||||
'time without time zone',
|
||||
'time with time zone',
|
||||
'"trigger"',
|
||||
'"unknown"'
|
||||
]:
|
||||
return False
|
||||
|
||||
@@ -328,12 +328,12 @@ class Driver(BaseDriver):
|
||||
(val_noarray.startswith('"') or val_noarray.endswith('"')):
|
||||
return False
|
||||
|
||||
if u'0' <= val_noarray[0] <= u'9':
|
||||
if '0' <= val_noarray[0] <= '9':
|
||||
return True
|
||||
|
||||
for c in val_noarray:
|
||||
if (not (u'a' <= c <= u'z') and c != u'_' and
|
||||
not (u'0' <= c <= u'9')):
|
||||
if (not ('a' <= c <= 'z') and c != '_' and
|
||||
not ('0' <= c <= '9')):
|
||||
return True
|
||||
|
||||
# check string is keywaord or not
|
||||
@@ -385,7 +385,7 @@ class Driver(BaseDriver):
|
||||
value = None
|
||||
|
||||
for val in args:
|
||||
if type(val) == list:
|
||||
if isinstance(val, list):
|
||||
return map(lambda w: Driver.qtIdent(conn, w), val)
|
||||
|
||||
# DataType doesn't have len function then convert it to string
|
||||
|
@@ -312,9 +312,9 @@ class Connection(BaseConnection):
|
||||
else:
|
||||
msg = str(e)
|
||||
current_app.logger.info(
|
||||
u"Failed to connect to the database server(#{server_id}) for "
|
||||
u"connection ({conn_id}) with error message as below"
|
||||
u":{msg}".format(
|
||||
"Failed to connect to the database server(#{server_id}) for "
|
||||
"connection ({conn_id}) with error message as below"
|
||||
":{msg}".format(
|
||||
server_id=self.manager.sid,
|
||||
conn_id=conn_id,
|
||||
msg=msg
|
||||
@@ -407,7 +407,7 @@ class Connection(BaseConnection):
|
||||
return False, status
|
||||
|
||||
if manager.role:
|
||||
status = _execute(cur, u"SET ROLE TO %s", [manager.role])
|
||||
status = _execute(cur, "SET ROLE TO %s", [manager.role])
|
||||
|
||||
if status is not None:
|
||||
self.conn.close()
|
||||
@@ -519,7 +519,7 @@ WHERE
|
||||
raise ConnectionLost(
|
||||
self.manager.sid,
|
||||
self.db,
|
||||
None if self.conn_id[0:3] == u'DB:' else self.conn_id[5:]
|
||||
None if self.conn_id[0:3] == 'DB:' else self.conn_id[5:]
|
||||
)
|
||||
cur = getattr(g, "{0}#{1}".format(
|
||||
self.manager.sid,
|
||||
@@ -547,7 +547,7 @@ WHERE
|
||||
raise ConnectionLost(
|
||||
self.manager.sid,
|
||||
self.db,
|
||||
None if self.conn_id[0:3] == u'DB:' else self.conn_id[5:]
|
||||
None if self.conn_id[0:3] == 'DB:' else self.conn_id[5:]
|
||||
)
|
||||
|
||||
try:
|
||||
@@ -588,7 +588,7 @@ WHERE
|
||||
raise ConnectionLost(
|
||||
self.manager.sid,
|
||||
self.db,
|
||||
None if self.conn_id[0:3] == u'DB:'
|
||||
None if self.conn_id[0:3] == 'DB:'
|
||||
else self.conn_id[5:]
|
||||
)
|
||||
|
||||
@@ -608,7 +608,7 @@ WHERE
|
||||
if self.conn and \
|
||||
self.conn.encoding in ('SQL_ASCII', 'SQLASCII',
|
||||
'MULE_INTERNAL', 'MULEINTERNAL')\
|
||||
and params is not None and type(params) == dict:
|
||||
and params is not None and isinstance(params, dict):
|
||||
for key, val in params.items():
|
||||
modified_val = val
|
||||
# "unicode_escape" will convert single backslash to double
|
||||
@@ -667,8 +667,8 @@ WHERE
|
||||
|
||||
current_app.logger.log(
|
||||
25,
|
||||
u"Execute (with server cursor) for server #{server_id} - "
|
||||
u"{conn_id} (Query-id: {query_id}):\n{query}".format(
|
||||
"Execute (with server cursor) for server #{server_id} - "
|
||||
"{conn_id} (Query-id: {query_id}):\n{query}".format(
|
||||
server_id=self.manager.sid,
|
||||
conn_id=self.conn_id,
|
||||
query=query,
|
||||
@@ -683,10 +683,10 @@ WHERE
|
||||
cur.close()
|
||||
errmsg = self._formatted_exception_msg(pe, formatted_exception_msg)
|
||||
current_app.logger.error(
|
||||
u"failed to execute query ((with server cursor) "
|
||||
u"for the server #{server_id} - {conn_id} "
|
||||
u"(query-id: {query_id}):\n"
|
||||
u"error message:{errmsg}".format(
|
||||
"failed to execute query ((with server cursor) "
|
||||
"for the server #{server_id} - {conn_id} "
|
||||
"(query-id: {query_id}):\n"
|
||||
"error message:{errmsg}".format(
|
||||
server_id=self.manager.sid,
|
||||
conn_id=self.conn_id,
|
||||
errmsg=errmsg,
|
||||
@@ -805,8 +805,8 @@ WHERE
|
||||
|
||||
current_app.logger.log(
|
||||
25,
|
||||
u"Execute (scalar) for server #{server_id} - {conn_id} (Query-id: "
|
||||
u"{query_id}):\n{query}".format(
|
||||
"Execute (scalar) for server #{server_id} - {conn_id} (Query-id: "
|
||||
"{query_id}):\n{query}".format(
|
||||
server_id=self.manager.sid,
|
||||
conn_id=self.conn_id,
|
||||
query=query,
|
||||
@@ -826,13 +826,13 @@ WHERE
|
||||
raise ConnectionLost(
|
||||
self.manager.sid,
|
||||
self.db,
|
||||
None if self.conn_id[0:3] == u'DB:' else self.conn_id[5:]
|
||||
None if self.conn_id[0:3] == 'DB:' else self.conn_id[5:]
|
||||
)
|
||||
errmsg = self._formatted_exception_msg(pe, formatted_exception_msg)
|
||||
current_app.logger.error(
|
||||
u"Failed to execute query (execute_scalar) for the server "
|
||||
u"#{server_id} - {conn_id} (Query-id: {query_id}):\n"
|
||||
u"Error Message:{errmsg}".format(
|
||||
"Failed to execute query (execute_scalar) for the server "
|
||||
"#{server_id} - {conn_id} (Query-id: {query_id}):\n"
|
||||
"Error Message:{errmsg}".format(
|
||||
server_id=self.manager.sid,
|
||||
conn_id=self.conn_id,
|
||||
errmsg=errmsg,
|
||||
@@ -878,9 +878,9 @@ WHERE
|
||||
dsn = self.conn.get_dsn_parameters()
|
||||
current_app.logger.log(
|
||||
25,
|
||||
u"Execute (async) by {pga_user} on {db_user}@{db_host}/{db_name} "
|
||||
u"#{server_id} - {conn_id} (Query-id: "
|
||||
u"{query_id}):\n{query}".format(
|
||||
"Execute (async) by {pga_user} on {db_user}@{db_host}/{db_name} "
|
||||
"#{server_id} - {conn_id} (Query-id: "
|
||||
"{query_id}):\n{query}".format(
|
||||
pga_user=current_user.username,
|
||||
db_user=dsn['user'],
|
||||
db_host=dsn['host'],
|
||||
@@ -901,9 +901,9 @@ WHERE
|
||||
except psycopg2.Error as pe:
|
||||
errmsg = self._formatted_exception_msg(pe, formatted_exception_msg)
|
||||
current_app.logger.error(
|
||||
u"Failed to execute query (execute_async) for the server "
|
||||
u"#{server_id} - {conn_id}(Query-id: {query_id}):\n"
|
||||
u"Error Message:{errmsg}".format(
|
||||
"Failed to execute query (execute_async) for the server "
|
||||
"#{server_id} - {conn_id}(Query-id: {query_id}):\n"
|
||||
"Error Message:{errmsg}".format(
|
||||
server_id=self.manager.sid,
|
||||
conn_id=self.conn_id,
|
||||
errmsg=errmsg,
|
||||
@@ -918,7 +918,7 @@ WHERE
|
||||
raise ConnectionLost(
|
||||
self.manager.sid,
|
||||
self.db,
|
||||
None if self.conn_id[0:3] == u'DB:' else self.conn_id[5:]
|
||||
None if self.conn_id[0:3] == 'DB:' else self.conn_id[5:]
|
||||
)
|
||||
return False, errmsg
|
||||
|
||||
@@ -946,8 +946,8 @@ WHERE
|
||||
|
||||
current_app.logger.log(
|
||||
25,
|
||||
u"Execute (void) for server #{server_id} - {conn_id} (Query-id: "
|
||||
u"{query_id}):\n{query}".format(
|
||||
"Execute (void) for server #{server_id} - {conn_id} (Query-id: "
|
||||
"{query_id}):\n{query}".format(
|
||||
server_id=self.manager.sid,
|
||||
conn_id=self.conn_id,
|
||||
query=query,
|
||||
@@ -968,13 +968,13 @@ WHERE
|
||||
raise ConnectionLost(
|
||||
self.manager.sid,
|
||||
self.db,
|
||||
None if self.conn_id[0:3] == u'DB:' else self.conn_id[5:]
|
||||
None if self.conn_id[0:3] == 'DB:' else self.conn_id[5:]
|
||||
)
|
||||
errmsg = self._formatted_exception_msg(pe, formatted_exception_msg)
|
||||
current_app.logger.error(
|
||||
u"Failed to execute query (execute_void) for the server "
|
||||
u"#{server_id} - {conn_id}(Query-id: {query_id}):\n"
|
||||
u"Error Message:{errmsg}".format(
|
||||
"Failed to execute query (execute_void) for the server "
|
||||
"#{server_id} - {conn_id}(Query-id: {query_id}):\n"
|
||||
"Error Message:{errmsg}".format(
|
||||
server_id=self.manager.sid,
|
||||
conn_id=self.conn_id,
|
||||
errmsg=errmsg,
|
||||
@@ -1015,7 +1015,7 @@ WHERE
|
||||
raise ConnectionLost(
|
||||
self.manager.sid,
|
||||
self.db,
|
||||
None if self.conn_id[0:3] == u'DB:' else self.conn_id[5:]
|
||||
None if self.conn_id[0:3] == 'DB:' else self.conn_id[5:]
|
||||
)
|
||||
|
||||
def execute_2darray(self, query, params=None,
|
||||
@@ -1029,8 +1029,8 @@ WHERE
|
||||
query_id = random.randint(1, 9999999)
|
||||
current_app.logger.log(
|
||||
25,
|
||||
u"Execute (2darray) for server #{server_id} - {conn_id} "
|
||||
u"(Query-id: {query_id}):\n{query}".format(
|
||||
"Execute (2darray) for server #{server_id} - {conn_id} "
|
||||
"(Query-id: {query_id}):\n{query}".format(
|
||||
server_id=self.manager.sid,
|
||||
conn_id=self.conn_id,
|
||||
query=query,
|
||||
@@ -1049,9 +1049,9 @@ WHERE
|
||||
)
|
||||
errmsg = self._formatted_exception_msg(pe, formatted_exception_msg)
|
||||
current_app.logger.error(
|
||||
u"Failed to execute query (execute_2darray) for the server "
|
||||
u"#{server_id} - {conn_id} (Query-id: {query_id}):\n"
|
||||
u"Error Message:{errmsg}".format(
|
||||
"Failed to execute query (execute_2darray) for the server "
|
||||
"#{server_id} - {conn_id} (Query-id: {query_id}):\n"
|
||||
"Error Message:{errmsg}".format(
|
||||
server_id=self.manager.sid,
|
||||
conn_id=self.conn_id,
|
||||
errmsg=errmsg,
|
||||
@@ -1082,8 +1082,8 @@ WHERE
|
||||
query_id = random.randint(1, 9999999)
|
||||
current_app.logger.log(
|
||||
25,
|
||||
u"Execute (dict) for server #{server_id} - {conn_id} (Query-id: "
|
||||
u"{query_id}):\n{query}".format(
|
||||
"Execute (dict) for server #{server_id} - {conn_id} (Query-id: "
|
||||
"{query_id}):\n{query}".format(
|
||||
server_id=self.manager.sid,
|
||||
conn_id=self.conn_id,
|
||||
query=query,
|
||||
@@ -1103,13 +1103,13 @@ WHERE
|
||||
raise ConnectionLost(
|
||||
self.manager.sid,
|
||||
self.db,
|
||||
None if self.conn_id[0:3] == u'DB:' else self.conn_id[5:]
|
||||
None if self.conn_id[0:3] == 'DB:' else self.conn_id[5:]
|
||||
)
|
||||
errmsg = self._formatted_exception_msg(pe, formatted_exception_msg)
|
||||
current_app.logger.error(
|
||||
u"Failed to execute query (execute_dict) for the server "
|
||||
u"#{server_id}- {conn_id} (Query-id: {query_id}):\n"
|
||||
u"Error Message:{errmsg}".format(
|
||||
"Failed to execute query (execute_dict) for the server "
|
||||
"#{server_id}- {conn_id} (Query-id: {query_id}):\n"
|
||||
"Error Message:{errmsg}".format(
|
||||
server_id=self.manager.sid,
|
||||
conn_id=self.conn_id,
|
||||
query_id=query_id,
|
||||
@@ -1283,7 +1283,7 @@ Failed to reset the connection to the server due to following error:
|
||||
conn: connection object
|
||||
"""
|
||||
|
||||
while 1:
|
||||
while True:
|
||||
state = conn.poll()
|
||||
if state == psycopg2.extensions.POLL_OK:
|
||||
break
|
||||
@@ -1309,7 +1309,7 @@ Failed to reset the connection to the server due to following error:
|
||||
time: wait time
|
||||
"""
|
||||
|
||||
while 1:
|
||||
while True:
|
||||
state = conn.poll()
|
||||
|
||||
if state == psycopg2.extensions.POLL_OK:
|
||||
@@ -1626,12 +1626,12 @@ Failed to reset the connection to the server due to following error:
|
||||
|
||||
# Do not append if error starts with `ERROR:` as most pg related
|
||||
# error starts with `ERROR:`
|
||||
if not errmsg.startswith(u'ERROR:'):
|
||||
errmsg = gettext(u'ERROR: ') + errmsg + u'\n\n'
|
||||
if not errmsg.startswith('ERROR:'):
|
||||
errmsg = gettext('ERROR: ') + errmsg + '\n\n'
|
||||
|
||||
if exception_obj.diag.severity is not None \
|
||||
and exception_obj.diag.message_primary is not None:
|
||||
ex_diag_message = u"{0}: {1}".format(
|
||||
ex_diag_message = "{0}: {1}".format(
|
||||
exception_obj.diag.severity,
|
||||
exception_obj.diag.message_primary
|
||||
)
|
||||
@@ -1796,16 +1796,16 @@ Failed to reset the connection to the server due to following error:
|
||||
)
|
||||
elif psycopg2.__libpq_version__ < 100000:
|
||||
current_app.logger.warning(
|
||||
u"To encrypt passwords the required libpq version is "
|
||||
u"greater than or equal to 100000. Current libpq version "
|
||||
u"is {curr_ver}".format(
|
||||
"To encrypt passwords the required libpq version is "
|
||||
"greater than or equal to 100000. Current libpq version "
|
||||
"is {curr_ver}".format(
|
||||
curr_ver=psycopg2.__libpq_version__
|
||||
)
|
||||
)
|
||||
elif not hasattr(psycopg2.extensions, 'encrypt_password'):
|
||||
current_app.logger.warning(
|
||||
u"The psycopg2.extensions module does not have the"
|
||||
u"'encrypt_password' method."
|
||||
"The psycopg2.extensions module does not have the"
|
||||
"'encrypt_password' method."
|
||||
)
|
||||
|
||||
return enc_password
|
||||
|
@@ -232,7 +232,7 @@ class DictCursor(_cursor):
|
||||
it = _cursor.__iter__(self)
|
||||
try:
|
||||
yield self._dict_tuple(next(it))
|
||||
while 1:
|
||||
while True:
|
||||
yield self._dict_tuple(next(it))
|
||||
except StopIteration:
|
||||
pass
|
||||
|
@@ -41,8 +41,8 @@ if __name__ == '__main__':
|
||||
|
||||
pattern = re.compile(r'"([^"]+)",\s*[^,]*\s*,\s*(.*)$')
|
||||
keyword_types = [
|
||||
u'UNRESERVED_KEYWORD', u'COL_NAME_KEYWORD',
|
||||
u'TYPE_FUNC_NAME_KEYWORD', u'RESERVED_KEYWORD'
|
||||
'UNRESERVED_KEYWORD', 'COL_NAME_KEYWORD',
|
||||
'TYPE_FUNC_NAME_KEYWORD', 'RESERVED_KEYWORD'
|
||||
]
|
||||
|
||||
for line in ins:
|
||||
@@ -54,7 +54,7 @@ if __name__ == '__main__':
|
||||
else:
|
||||
keywords_file.write(" ")
|
||||
keywords_file.write(
|
||||
'"' + match.group(1) + u'": ' +
|
||||
'"' + match.group(1) + '": ' +
|
||||
str(keyword_types.index(match.group(2)))
|
||||
)
|
||||
idx += 1
|
||||
|
@@ -185,7 +185,7 @@ class ServerManager(object):
|
||||
elif did in self.db_info:
|
||||
database = self.db_info[did]['datname']
|
||||
else:
|
||||
maintenance_db_id = u'DB:{0}'.format(self.db)
|
||||
maintenance_db_id = 'DB:{0}'.format(self.db)
|
||||
if maintenance_db_id in self.connections:
|
||||
conn = self.connections[maintenance_db_id]
|
||||
# try to connect maintenance db if not connected
|
||||
@@ -193,7 +193,7 @@ class ServerManager(object):
|
||||
conn.connect()
|
||||
|
||||
if conn.connected():
|
||||
status, res = conn.execute_dict(u"""
|
||||
status, res = conn.execute_dict("""
|
||||
SELECT
|
||||
db.oid as did, db.datname, db.datallowconn,
|
||||
pg_encoding_to_char(db.encoding) AS serverencoding,
|
||||
@@ -223,8 +223,8 @@ WHERE db.oid = {0}""".format(did))
|
||||
else:
|
||||
raise ConnectionLost(self.sid, None, None)
|
||||
|
||||
my_id = (u'CONN:{0}'.format(conn_id)) if conn_id is not None else \
|
||||
(u'DB:{0}'.format(database))
|
||||
my_id = ('CONN:{0}'.format(conn_id)) if conn_id is not None else \
|
||||
('DB:{0}'.format(database))
|
||||
|
||||
self.pinged = datetime.datetime.now()
|
||||
|
||||
@@ -373,9 +373,9 @@ WHERE db.oid = {0}""".format(did))
|
||||
|
||||
my_id = None
|
||||
if conn_id is not None:
|
||||
my_id = u'CONN:{0}'.format(conn_id)
|
||||
my_id = 'CONN:{0}'.format(conn_id)
|
||||
elif database is not None:
|
||||
my_id = u'DB:{0}'.format(database)
|
||||
my_id = 'DB:{0}'.format(database)
|
||||
|
||||
if my_id is not None:
|
||||
if my_id in self.connections:
|
||||
|
Reference in New Issue
Block a user