From: Brian Wellington Date: Thu, 2 Apr 2020 16:06:21 +0000 (-0700) Subject: Use importlib.import_module. X-Git-Tag: v2.0.0rc1~309^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=50f2965808e10d8b6f4eb8820ef428e66741c1ff;p=thirdparty%2Fdnspython.git Use importlib.import_module. Replace the open-coded import_module() with the one in importlib. --- diff --git a/dns/rdata.py b/dns/rdata.py index 136d92a9..9354418d 100644 --- a/dns/rdata.py +++ b/dns/rdata.py @@ -17,6 +17,7 @@ """DNS rdata.""" +from importlib import import_module from io import BytesIO import base64 import binascii @@ -28,11 +29,6 @@ import dns.rdatatype import dns.tokenizer import dns.wiredata -try: - import threading as _threading -except ImportError: - import dummy_threading as _threading - _hex_chunksize = 32 @@ -323,18 +319,8 @@ class GenericRdata(Rdata): _rdata_modules = {} _module_prefix = 'dns.rdtypes' -_import_lock = _threading.Lock() def get_rdata_class(rdclass, rdtype): - - def import_module(name): - with _import_lock: - mod = __import__(name) - components = name.split('.') - for comp in components[1:]: - mod = getattr(mod, comp) - return mod - mod = _rdata_modules.get((rdclass, rdtype)) rdclass_text = dns.rdataclass.to_text(rdclass) rdtype_text = dns.rdatatype.to_text(rdtype)