diff options
| author | Ralf Grubenmann <ralf.grubenmann@sdsc.ethz.ch> | 2021-10-18 09:23:59 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-10-18 09:23:59 +0200 |
| commit | 8e435a0b966a9c3a549eeb905f080264dc09228f (patch) | |
| tree | 23601a2bdf3e023d44c2e697963ea5f7ad330f22 | |
| parent | 360199ac13cf3a819659aa5a533fa88b0039a515 (diff) | |
| parent | 603bb1a4d599f5643798a7ef66743f30cda719e1 (diff) | |
| download | rdflib-8e435a0b966a9c3a549eeb905f080264dc09228f.tar.gz | |
Merge pull request #1 from iafork/iwana-20211017T1227-fix_typing
Use version conditional imports to accomodate mypy
| -rw-r--r-- | rdflib/plugin.py | 9 | ||||
| -rw-r--r-- | rdflib/plugins/sparql/__init__.py | 7 |
2 files changed, 9 insertions, 7 deletions
diff --git a/rdflib/plugin.py b/rdflib/plugin.py index 8769059c..1f7b9bc2 100644 --- a/rdflib/plugin.py +++ b/rdflib/plugin.py @@ -37,6 +37,7 @@ from rdflib.query import ( ) from rdflib.exceptions import Error from typing import Type, TypeVar +import sys __all__ = ["register", "get", "plugins", "PluginException", "Plugin", "PKGPlugin"] @@ -110,10 +111,10 @@ def get(name: str, kind: Type[PluginT]) -> Type[PluginT]: return p.getClass() -try: - from importlib.metadata import entry_points -except ImportError: +if sys.version_info < (3, 8): from importlib_metadata import entry_points +else: + from importlib.metadata import entry_points all_entry_points = entry_points() if hasattr(all_entry_points, "select"): @@ -123,7 +124,7 @@ if hasattr(all_entry_points, "select"): else: # Prior to Python 3.10, this returns a dict instead of the selection interface, which is slightly slower for entry_point, kind in rdflib_entry_points.items(): - for ep in all_entry_points.get(entry_point, []): + for ep in all_entry_points.get(entry_point, []): # type: ignore[union-attr] _plugins[(ep.name, kind)] = PKGPlugin(ep.name, kind, ep) diff --git a/rdflib/plugins/sparql/__init__.py b/rdflib/plugins/sparql/__init__.py index 4c8b1c16..eb9230bf 100644 --- a/rdflib/plugins/sparql/__init__.py +++ b/rdflib/plugins/sparql/__init__.py @@ -30,6 +30,7 @@ NotImplementedError if they cannot handle a certain part PLUGIN_ENTRY_POINT = "rdf.plugins.sparqleval" +import sys from . import parser from . import operators from . import parserutils @@ -40,10 +41,10 @@ assert parser assert operators assert parserutils -try: - from importlib.metadata import entry_points -except ImportError: +if sys.version_info < (3, 8): from importlib_metadata import entry_points +else: + from importlib.metadata import entry_points all_entry_points = entry_points() if isinstance(all_entry_points, dict): |
