64 lines
1.8 KiB
Python
Executable File
64 lines
1.8 KiB
Python
Executable File
from __future__ import absolute_import
|
|
from setuptools import setup, find_packages
|
|
from setuptools.command.install import install
|
|
|
|
|
|
class InstallCommand(install):
|
|
user_options = install.user_options + [
|
|
('no-ml', None, "Don't install without Machine Learning modules."),
|
|
]
|
|
|
|
boolean_options = install.boolean_options + ['no-ml']
|
|
|
|
def initialize_options(self):
|
|
install.initialize_options(self)
|
|
self.no_ml = None
|
|
|
|
def finalize_options(self):
|
|
install.finalize_options(self)
|
|
if self.no_ml:
|
|
dist = self.distribution
|
|
dist.packages=find_packages(exclude=[
|
|
'tests',
|
|
'tests.*',
|
|
'talon.signature',
|
|
'talon.signature.*',
|
|
])
|
|
for not_required in ['numpy', 'scipy', 'scikit-learn==0.16.1']:
|
|
dist.install_requires.remove(not_required)
|
|
|
|
|
|
setup(name='talon',
|
|
version='1.4.7',
|
|
description=("Mailgun library "
|
|
"to extract message quotations and signatures."),
|
|
long_description=open("README.rst").read(),
|
|
author='Mailgun Inc.',
|
|
author_email='admin@mailgunhq.com',
|
|
url='https://github.com/mailgun/talon',
|
|
license='APACHE2',
|
|
cmdclass={
|
|
'install': InstallCommand,
|
|
},
|
|
packages=find_packages(exclude=['tests', 'tests.*']),
|
|
include_package_data=True,
|
|
zip_safe=True,
|
|
install_requires=[
|
|
"lxml>=2.3.3",
|
|
"regex>=1",
|
|
"numpy",
|
|
"scipy",
|
|
"scikit-learn>=0.16.1", # pickled versions of classifier, else rebuild
|
|
'chardet>=1.0.1',
|
|
'cchardet>=0.3.5',
|
|
'cssselect',
|
|
'six>=1.10.0',
|
|
'html5lib'
|
|
],
|
|
tests_require=[
|
|
"mock",
|
|
"nose>=1.2.1",
|
|
"coverage"
|
|
]
|
|
)
|