aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nmigen_boards/__init__.py14
-rw-r--r--setup.py1
2 files changed, 11 insertions, 4 deletions
diff --git a/nmigen_boards/__init__.py b/nmigen_boards/__init__.py
index 3d136b5..6eb2e59 100644
--- a/nmigen_boards/__init__.py
+++ b/nmigen_boards/__init__.py
@@ -1,5 +1,11 @@
-import pkg_resources
try:
- __version__ = pkg_resources.get_distribution(__name__).version
-except pkg_resources.DistributionNotFound:
- pass
+ try:
+ from importlib import metadata as importlib_metadata # py3.8+ stdlib
+ except ImportError:
+ import importlib_metadata # py3.7- shim
+ __version__ = importlib_metadata.version(__package__)
+except ImportError:
+ # No importlib_metadata. This shouldn't normally happen, but some people prefer not installing
+ # packages via pip at all, instead using PYTHONPATH directly or copying the package files into
+ # `lib/pythonX.Y/site-packages`. Although not a recommended way, we still try to support it.
+ __version__ = "unknown" # :nocov:
diff --git a/setup.py b/setup.py
index 00ae4a7..7aa6ef3 100644
--- a/setup.py
+++ b/setup.py
@@ -22,6 +22,7 @@ setup(
setup_requires=["wheel", "setuptools", "setuptools_scm"],
install_requires=[
"nmigen>=0.2,<0.4",
+ "importlib_metadata; python_version<'3.8'",
],
packages=find_packages(),
project_urls={