117 lines
3.7 KiB
Python
117 lines
3.7 KiB
Python
##############################################################################
|
|
#
|
|
# Copyright (c) 2008 Zope Foundation and Contributors.
|
|
# All Rights Reserved.
|
|
#
|
|
# This software is subject to the provisions of the Zope Public License,
|
|
# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
|
|
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
|
|
# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
|
|
# FOR A PARTICULAR PURPOSE.
|
|
#
|
|
##############################################################################
|
|
"""A backend for ZODB that stores pickles in a relational database."""
|
|
|
|
VERSION = "1.7.0a1.dev0"
|
|
|
|
# The choices for the Trove Development Status line:
|
|
# Development Status :: 5 - Production/Stable
|
|
# Development Status :: 4 - Beta
|
|
# Development Status :: 3 - Alpha
|
|
|
|
classifiers = """\
|
|
Intended Audience :: Developers
|
|
License :: OSI Approved :: Zope Public License
|
|
Programming Language :: Python
|
|
Programming Language :: Python :: Implementation :: CPython
|
|
Programming Language :: Python :: Implementation :: PyPy
|
|
Topic :: Database
|
|
Topic :: Software Development :: Libraries :: Python Modules
|
|
Operating System :: Microsoft :: Windows
|
|
Operating System :: Unix
|
|
"""
|
|
|
|
import os
|
|
from setuptools import setup
|
|
|
|
doclines = __doc__.split("\n")
|
|
|
|
|
|
def read_file(*path):
|
|
base_dir = os.path.dirname(__file__)
|
|
file_path = (base_dir, ) + tuple(path)
|
|
with open(os.path.join(*file_path)) as f:
|
|
result = f.read()
|
|
return result
|
|
|
|
tests_require = ['mock', 'zope.testing', 'ZODB [test]']
|
|
|
|
setup(
|
|
name="RelStorage",
|
|
version=VERSION,
|
|
author="Zope Foundation and Contributors",
|
|
maintainer="Shane Hathaway",
|
|
maintainer_email="shane@hathawaymix.org",
|
|
url="http://pypi.python.org/pypi/RelStorage",
|
|
packages=[
|
|
'relstorage',
|
|
'relstorage.adapters',
|
|
'relstorage.adapters.tests',
|
|
'relstorage.tests',
|
|
'relstorage.tests.blob',
|
|
],
|
|
package_data={
|
|
'relstorage': ['component.xml'],
|
|
},
|
|
license="ZPL 2.1",
|
|
platforms=["any"],
|
|
description=doclines[0],
|
|
classifiers=filter(None, classifiers.split("\n")),
|
|
long_description=(
|
|
read_file("README.txt") + "\n\n" +
|
|
"Change History\n" +
|
|
"==============\n\n" +
|
|
read_file("CHANGES.txt")),
|
|
zip_safe=False, # otherwise ZConfig can't see component.xml
|
|
install_requires=[
|
|
'perfmetrics',
|
|
'ZODB >= 4.3.0, <5.0',
|
|
# ZEO is needed for blob layout
|
|
'ZEO >= 4.2.0b1, <5.0',
|
|
'zope.interface',
|
|
'zc.lockfile',
|
|
],
|
|
tests_require = tests_require,
|
|
extras_require={
|
|
'mysql:platform_python_implementation=="CPython"': [
|
|
'MySQL-python>=1.2.2',
|
|
],
|
|
'mysql:platform_python_implementation=="PyPy"' : [
|
|
'PyMySQL>=0.6.6',
|
|
],
|
|
'postgresql: platform_python_implementation == "CPython"': [
|
|
'psycopg2>=2.0',
|
|
],
|
|
'postgresql: platform_python_implementation == "PyPy"': [
|
|
'psycopg2cffi>=2.7.0',
|
|
],
|
|
'oracle': [
|
|
'cx_Oracle>=4.3.1'
|
|
],
|
|
'test': tests_require,
|
|
},
|
|
entry_points = {
|
|
'console_scripts': [
|
|
'zodbconvert = relstorage.zodbconvert:main',
|
|
'zodbpack = relstorage.zodbpack:main',
|
|
],
|
|
'zodburi.resolvers': [
|
|
('postgres = '
|
|
'relstorage.zodburi_resolver:postgresql_resolver [postgresql]'),
|
|
'mysql = relstorage.zodburi_resolver:mysql_resolver [mysql]',
|
|
'oracle = relstorage.zodburi_resolver:oracle_resolver [oracle]'
|
|
]},
|
|
test_suite='relstorage.tests.alltests.make_suite',
|
|
)
|