Skip to content

Commit f37b86b

Browse files
authored
Merge pull request #86 from has2k1/tagged-releases
Use setuptools_scm for tagged versioning
2 parents 1addc8c + f993e52 commit f37b86b

7 files changed

Lines changed: 31 additions & 26 deletions

File tree

MANIFEST.in

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +0,0 @@
1-
include vetiver/data/*.csv

docs/source/conf.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import os
22
import sys
3-
from vetiver import __version__
3+
import re
4+
from vetiver import __version__ as version
45

56
sys.path.insert(0, os.path.abspath("."))
67

@@ -12,8 +13,14 @@
1213
author = "Isabel Zimmerman"
1314

1415
# The full version, including alpha/beta/rc tags
15-
release = __version__
16-
16+
# Do not use the 0.0 version created by setuptools_scm when the package
17+
# is cloned too shallow to pickup
18+
p = re.compile(r"^0\.0\.post\d+\+g")
19+
if p.match(version):
20+
commit = p.sub("", version)
21+
version = f"Commit: {commit}"
22+
23+
release = version
1724

1825
# -- General configuration ---------------------------------------------------
1926

pyproject.toml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
[build-system]
2-
requires = ["setuptools>=45", "wheel"]
2+
requires = [
3+
"setuptools>=59",
4+
"setuptools_scm[toml]>=6.4",
5+
"wheel"
6+
]
37
build-backend = "setuptools.build_meta"
48

59
[tool.pytest.ini_options]
@@ -9,3 +13,7 @@ doctest_optionflags = "NORMALIZE_WHITESPACE"
913
markers = [
1014
"rsc_test: tests for rstudio connect",
1115
]
16+
17+
[tool.setuptools_scm]
18+
fallback_version = "999"
19+
version_scheme = 'post-release'

setup.cfg

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ install_requires =
3535
pins
3636
rsconnect-python
3737
plotly
38+
importlib-metadata>=4.4 # NOTE: Remove when python_requires>=3.8
3839

3940
[options.extras_require]
4041
dev =

setup.py

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,4 @@
1-
import io
2-
import os
3-
import re
4-
5-
from setuptools import find_packages
61
from setuptools import setup
72

83

9-
def read(filename):
10-
filename = os.path.join(os.path.dirname(__file__), filename)
11-
text_type = type("")
12-
with io.open(filename, mode="r", encoding="utf-8") as fd:
13-
return re.sub(text_type(r":[a-z]+:`~?(.*?)`"), text_type(r"``\1``"), fd.read())
14-
15-
16-
if __name__ == "__main__":
17-
setup()
4+
setup()

vetiver/__init__.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
11
"""vetiver - Python parallel to R vetiver package"""
2+
# Change to import.metadata when minimum python>=3.8
3+
from importlib_metadata import version as _version
24

3-
__version__ = "0.1.5"
4-
__author__ = "Isabel Zimmerman <isabel.zimmerman@rstudio.com>"
5-
__all__ = []
6-
7-
import importlib # noqa
85
from .ptype import * # noqa
96
from .vetiver_model import VetiverModel # noqa
107
from .server import VetiverAPI, vetiver_endpoint, predict # noqa
@@ -20,3 +17,8 @@
2017
from .handlers.torch import TorchHandler # noqa
2118
from .rsconnect import deploy_rsconnect # noqa
2219
from .monitor import compute_metrics, pin_metrics, plot_metrics, _rolling_df # noqa
20+
21+
__author__ = "Isabel Zimmerman <isabel.zimmerman@rstudio.com>"
22+
__all__ = []
23+
__version__ = _version("vetiver")
24+
del _version

vetiver/server.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
import pandas as pd
99
from typing import Callable, Union, List
1010

11-
from . import __version__
1211
from .vetiver_model import VetiverModel
1312
from .utils import _jupyter_nb
1413

@@ -180,11 +179,13 @@ def run(self, port: int = 8000, host: str = "127.0.0.1", **kw):
180179
uvicorn.run(self.app, port=port, host=host, **kw)
181180

182181
def _custom_openapi(self):
182+
import vetiver
183+
183184
if self.app.openapi_schema:
184185
return self.app.openapi_schema
185186
openapi_schema = get_openapi(
186187
title=self.model.model_name + " model API",
187-
version=__version__,
188+
version=vetiver.__version__,
188189
description=self.model.description,
189190
routes=self.app.routes,
190191
servers=self.app.servers,

0 commit comments

Comments
 (0)