diff --git a/.gitignore b/.gitignore index 7f30727..df3ae40 100644 --- a/.gitignore +++ b/.gitignore @@ -38,3 +38,6 @@ htmlcov # setuptools noise .eggs *.egg-info + +# generated by setuptools-scm +/src/tablib/_version.py diff --git a/docs/conf.py b/docs/conf.py index 2294b30..eb706c9 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -9,7 +9,7 @@ # # All configuration values have a default; values that are commented out # serve to show the default. -from pkg_resources import get_distribution +import tablib # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the @@ -49,9 +49,9 @@ copyright = '2019 Jazzband' # built documents. # # The full version, including alpha/beta/rc tags. -release = get_distribution('tablib').version +release = tablib.__version__ # The short X.Y version. -version = '.'.join(release.split('.')[:2]) +version = '.'.join(tablib.__version__.split('.')[:2]) # for example take major/minor # The language for content autogenerated by Sphinx. Refer to documentation diff --git a/pyproject.toml b/pyproject.toml index c1442ed..f19f1d5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [tool.isort] force_grid_wrap = 0 include_trailing_comma = true -known_third_party = ["MarkupPy", "odf", "openpyxl", "pkg_resources", "setuptools", "tablib", "xlrd", "xlwt", "yaml"] +known_third_party = ["MarkupPy", "odf", "openpyxl", "setuptools", "tablib", "xlrd", "xlwt", "yaml"] line_length = 88 multi_line_output = 3 use_parentheses = true diff --git a/setup.py b/setup.py index 0985813..0f3da66 100755 --- a/setup.py +++ b/setup.py @@ -4,7 +4,9 @@ from setuptools import find_packages, setup setup( name='tablib', - use_scm_version=True, + use_scm_version={ + 'write_to': 'src/tablib/_version.py', + }, setup_requires=['setuptools_scm'], description='Format agnostic tabular data library (XLS, JSON, YAML, CSV)', long_description=( diff --git a/src/tablib/__init__.py b/src/tablib/__init__.py index 6e10d78..aecf3a4 100644 --- a/src/tablib/__init__.py +++ b/src/tablib/__init__.py @@ -1,5 +1,12 @@ """ Tablib. """ -from pkg_resources import DistributionNotFound, get_distribution +try: + # Generated by setuptools-scm. + from ._version import version as __version__ +except ImportError: + # Some broken installation. + __version__ = None + + from tablib.core import ( # noqa: F401 Databook, Dataset, @@ -10,9 +17,3 @@ from tablib.core import ( # noqa: F401 import_book, import_set, ) - -try: - __version__ = get_distribution(__name__).version -except DistributionNotFound: - # package is not installed - __version__ = None