X-Git-Url: https://git.phdru.name/?p=m_librarian.git;a=blobdiff_plain;f=setup.py;h=cfe8db3186a5da97164cca822a6915da072f6952;hp=29a8ec4e516a6b93076faade5471aad4b42919d8;hb=HEAD;hpb=78f96521980392c4df5d605ebe182a8cbc6cba60 diff --git a/setup.py b/setup.py index 29a8ec4..8670397 100755 --- a/setup.py +++ b/setup.py @@ -1,65 +1,84 @@ #!/usr/bin/env python -from imp import load_source from os.path import abspath, dirname, join from setuptools import setup +import sys versionpath = join(abspath(dirname(__file__)), 'm_librarian', '__version__.py') -m_librarian_version = load_source('m_librarian_version', versionpath) +m_librarian_version = {} -setup(name='m_librarian', - version=m_librarian_version.__version__, - description='m_Librarian for LibRusEc/Flibusta libraries', - long_description=open('README.txt', 'rtU').read(), - long_description_content_type="text/plain", - author='Oleg Broytman', - author_email='phd@phdru.name', - url='http://phdru.name/Software/Python/m_librarian/', - project_urls={ - 'Homepage': 'http://phdru.name/Software/Python/m_librarian/', - 'Download': - 'http://phdru.name/Software/Python/m_librarian/' - 'm_librarian-%s.tar.bz2' % m_librarian_version.__version__, - 'Documentation': - 'http://phdru.name/Software/Python/m_librarian/docs/', - 'Russian docs': - 'http://phdru.name/Software/Python/m_librarian/docs/ru/', - 'Git repo': 'http://git.phdru.name/m_librarian.git/', - }, - license='GPL', - keywords=['books', 'library', 'Flibusta', 'LibRusEc', 'lib.rus.ec'], - platforms="Any", - classifiers=[ - 'Development Status :: 2 - Pre-Alpha', - 'Environment :: Console', - 'Intended Audience :: End Users/Desktop', - 'License :: OSI Approved :: GNU General Public License (GPL)', - 'Natural Language :: English', - 'Natural Language :: Russian', - 'Operating System :: POSIX', - 'Programming Language :: Python :: 2', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', - ], - packages=['m_librarian'], - package_data={'m_librarian': [ - 'glst/*.txt', 'glst/genres_*.glst', - 'translations/*.mo' - ] - }, - scripts=['scripts/ml-import.py', 'scripts/ml-initdb.py', - 'scripts/ml-search.py'], - python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*', - install_requires=[ - 'SQLObject>=2.2.1; python_version=="2.7"', - 'SQLObject>=3.0.0; python_version>="3.4"', - 'm_lib.defenc>=1.0', - ], - extras_require={ - 'm_lib': ['m_lib>=3.1'], - 'pbar': ['m_lib>=3.1'], - }, - ) +if sys.version_info[:2] == (2, 7): + execfile(versionpath, m_librarian_version) # noqa: F821 'execfile' Py3 + +elif sys.version_info >= (3, 4): + exec(open(versionpath, 'r').read(), m_librarian_version) + +else: + raise ImportError("m_librarian requires Python 2.7 or 3.4+") + +setup( + name='m_librarian', + version=m_librarian_version['__version__'], + description='m_Librarian for LibRusEc/Flibusta libraries', + long_description=open('README.rst', 'r').read(), + long_description_content_type="text/x-rst", + author='Oleg Broytman', + author_email='phd@phdru.name', + url='https://phdru.name/Software/Python/m_librarian/', + project_urls={ + 'Homepage': 'https://phdru.name/Software/Python/m_librarian/', + 'Download': 'https://pypi.org/project/m_librarian/%s/' + % m_librarian_version['__version__'], + 'Documentation': + 'https://phdru.name/Software/Python/m_librarian/docs/', + 'Russian docs': + 'https://phdru.name/Software/Python/m_librarian/docs/ru/', + 'Git repo': 'https://git.phdru.name/m_librarian.git/', + 'Github repo': 'https://github.com/phdru/m_librarian', + 'Issue tracker': 'https://github.com/phdru/m_librarian/issues', + }, + license='GPL', + keywords=['books', 'library', 'Flibusta', 'LibRusEc', 'lib.rus.ec'], + platforms="Any", + classifiers=[ + 'Development Status :: 2 - Pre-Alpha', + 'Environment :: Console', + 'Intended Audience :: End Users/Desktop', + 'License :: OSI Approved :: GNU General Public License (GPL)', + 'Natural Language :: English', + 'Natural Language :: Russian', + 'Operating System :: POSIX', + 'Programming Language :: Python :: 2', + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.4', + 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + 'Programming Language :: Python :: 3.8', + 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', + 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12', + ], + packages=['m_librarian', 'm_librarian.web'], + package_data={'m_librarian': [ + 'glst/*.txt', 'glst/genres_*.glst', + 'translations_dir/*.mo', 'translations_dir/*.po', + 'web/static/style.css', 'web/views/*.py', 'web/views/*.tmpl', + ] + }, + scripts=['scripts/ml-import.py', 'scripts/ml-initdb.py', + 'scripts/ml-search.py', 'scripts/ml-web.py'], + python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*', + install_requires=[ + 'SQLObject>=2.2.1; python_version=="2.7"', + 'SQLObject>=3.0.0; python_version>="3.4"', + 'm_lib.defenc>=1.0', + ], + extras_require={ + 'pbar': ['m_lib>=3.1'], + 'web': ['bottle', 'CT3'], + 'wx': ['wxPython'], + }, +)