-
Notifications
You must be signed in to change notification settings - Fork 40
/
setup.py
executable file
·67 lines (57 loc) · 1.67 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#!/usr/bin/env python
import ast
import re
import os
import sys
from setuptools import setup, find_packages
from setuptools.command.install import install
_version_re = re.compile(r'__version__\s+=\s+(.*)')
with open('pymarketstore/__init__.py', 'rb') as f:
version = str(ast.literal_eval(_version_re.search(
f.read().decode('utf-8')).group(1)))
with open('README.md') as readme_file:
README = readme_file.read()
class VerifyVersionCommand(install):
"""Custom command to verify that the git tag matches our version"""
description = 'verify that the git tag matches our version'
def run(self):
tag = os.getenv('CIRCLE_TAG')
if tag != version:
info = "Git tag: {0} does not match the version of this app: {1}".format(
tag, version
)
sys.exit(info)
setup(
name='pymarketstore',
version=version,
description='Marketstore python driver',
long_description=README,
long_description_content_type='text/markdown',
author='Alpaca',
author_email='oss@alpaca.markets',
url='https://github.com/alpacahq/pymarketstore',
keywords='database,pandas,financial,timeseries',
packages=find_packages(exclude=('tests', 'docs')),
install_requires=[
'msgpack',
'numpy',
'requests',
'pandas',
'six',
'urllib3',
'websocket-client',
'protobuf>=3.11.3',
'grpcio'
],
tests_require=[
'pytest',
'pytest-cov',
'coverage>=4.4.1',
'mock>=1.0.1',
'grpcio-tools'
],
setup_requires=['pytest-runner', 'flake8'],
cmdclass={
'verify': VerifyVersionCommand,
},
)