From 2cc4a986ef036a5456db5ef06c29a609d8417050 Mon Sep 17 00:00:00 2001 From: Thomas Goirand Date: Tue, 23 Jul 2024 03:15:30 +0200 Subject: [PATCH] Fix deprecation warnings and tests Currently, q is using datetime.datetime.utcnow(). Unfortunately, this produces a big warning in Python 3.12, which makes q not really useable anymore. This warning also breaks all unit tests. This patch fixes this by using datetime.datetime.now() instead. --- bin/q.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/bin/q.py b/bin/q.py index 2a2f6771..68c3367a 100755 --- a/bin/q.py +++ b/bin/q.py @@ -70,10 +70,10 @@ if DEBUG: def xprint(*args,**kwargs): - print(datetime.datetime.utcnow().isoformat()," DEBUG ",*args,file=sys.stderr,**kwargs) + print(datetime.datetime.now(tz=datetime.timezone.utc).isoformat()," DEBUG ",*args,file=sys.stderr,**kwargs) def iprint(*args,**kwargs): - print(datetime.datetime.utcnow().isoformat()," INFO ",*args,file=sys.stderr,**kwargs) + print(datetime.datetime.now(tz=datetime.timezone.utc).isoformat()," INFO ",*args,file=sys.stderr,**kwargs) def sqlprint(*args,**kwargs): pass @@ -84,7 +84,7 @@ def sqlprint(*args,**kwargs): pass if SQL_DEBUG: def sqlprint(*args,**kwargs): - print(datetime.datetime.utcnow().isoformat(), " SQL ", *args, file=sys.stderr, **kwargs) + print(datetime.datetime.now(tz=datetime.timezone.utc).isoformat(), " SQL ", *args, file=sys.stderr, **kwargs) def get_stdout_encoding(encoding_override=None): @@ -1663,7 +1663,7 @@ def __analyze_delimited_file(self,database_info): xprint("after perform_analyze") self.content_signature = table_creator._generate_content_signature() - now = datetime.datetime.utcnow().isoformat() + now = datetime.datetime.now(tz=datetime.timezone.utc).isoformat() database_info.sqlite_db.add_to_qcatalog_table(target_sqlite_table_name, self.content_signature,