diff --git a/scapy/config.py b/scapy/config.py index 6c10d791684..d302b257840 100755 --- a/scapy/config.py +++ b/scapy/config.py @@ -631,10 +631,18 @@ def load(self, extension: str): try: import importlib.metadata except ImportError: - raise ImportError("Cannot import importlib.metadata ! Upgrade Python.") + log_loading.warning( + "'%s' not loaded. " + "Scapy extensions require at least Python 3.8+ !" % extension + ) + return # Get extension distribution - distr = importlib.metadata.distribution(extension) + try: + distr = importlib.metadata.distribution(extension) + except importlib.metadata.PackageNotFoundError: + log_loading.warning("The extension '%s' was not found !" % extension) + return # Check the classifiers if distr.metadata.get('License-Expression', None) not in self.GPLV2_LICENCES: