Tres Seaver
2017-12-20 a83610e170325e157726a4649923dff8ae303d12
commit | author | age
fdbab9 1 ##############################################################################
CM 2 #
6e136f 3 # Copyright (c) 2007-2009 Agendaless Consulting and Contributors.
fdbab9 4 # All Rights Reserved.
CM 5 #
6 # This software is subject to the provisions of the BSD-like license at
7 # http://www.repoze.org/LICENSE.txt.  A copy of the license should accompany
8 # this distribution.  THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL
9 # EXPRESS OR IMPLIED WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO,
10 # THE IMPLIED WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND
11 # FITNESS FOR A PARTICULAR PURPOSE
12 #
13 ##############################################################################
14
15 import os
16
17 from setuptools import setup, find_packages
18
19 here = os.path.abspath(os.path.dirname(__file__))
8345b4 20 def _read_file(filename):
TS 21     try:
22         with open(os.path.join(here, filename)) as f:
23             return f.read()
24     except IOError:  # Travis???
25         return ''
26
27 README = _read_file('README.rst')
28 CHANGES = _read_file('CHANGES.rst')
10fb6b 29 tests_require = ['WebOb', 'zope.interface']
TS 30 testing_extras = tests_require + ['nose', 'coverage']
cb756a 31 docs_extras = tests_require + ['Sphinx', 'repoze.sphinx.autointerface']
fdbab9 32
cb5426 33 setup(name='repoze.who',
d39627 34       version='2.3.1.dev0',
cb5426 35       description=('repoze.who is an identification and authentication '
CM 36                    'framework for WSGI.'),
aa8755 37       long_description='\n\n'.join([README, CHANGES]),
fdbab9 38       classifiers=[
7b0a91 39         "Development Status :: 5 - Production/Stable",
fdbab9 40         "Intended Audience :: Developers",
a4b584 41         "Programming Language :: Python :: 2",
d52555 42         "Programming Language :: Python :: 2.7",
a4b584 43         "Programming Language :: Python :: 3",
TS 44         "Programming Language :: Python :: 3.3",
7b0a91 45         "Programming Language :: Python :: 3.4",
90fd1c 46         "Programming Language :: Python :: 3.5",
a4b584 47         "Programming Language :: Python :: Implementation :: CPython",
TS 48         "Programming Language :: Python :: Implementation :: PyPy",
fdbab9 49         "Topic :: Internet :: WWW/HTTP",
CM 50         "Topic :: Internet :: WWW/HTTP :: Dynamic Content",
51         "Topic :: Internet :: WWW/HTTP :: WSGI",
52         "Topic :: Internet :: WWW/HTTP :: WSGI :: Application",
53         ],
54       keywords='web application server wsgi zope',
55       author="Agendaless Consulting",
56       author_email="repoze-dev@lists.repoze.org",
57       url="http://www.repoze.org",
58       license="BSD-derived (http://www.repoze.org/LICENSE.txt)",
59       packages=find_packages(),
60       include_package_data=True,
37de44 61       namespace_packages=['repoze', 'repoze.who', 'repoze.who.plugins'],
fdbab9 62       zip_safe=False,
10fb6b 63       tests_require = tests_require,
1edb2d 64       install_requires=['WebOb', 'zope.interface', 'setuptools'],
9242ca 65       test_suite="repoze.who",
fdbab9 66       entry_points = """\
CM 67       [paste.filter_app_factory]
cb5426 68       test = repoze.who.middleware:make_test_middleware
fd214a 69       config = repoze.who.config:make_middleware_with_config
cad90d 70       predicate = repoze.who.restrict:make_predicate_restriction
TS 71       authenticated = repoze.who.restrict:make_authenticated_restriction
10fb6b 72       """,
TS 73       extras_require = {
74         'testing': testing_extras,
cb756a 75         'docs': docs_extras,
10fb6b 76       },
e25b84 77 )