Files
@ r7614:ab30729c735c
Branch filter:
Location: public/kallithea/setup.py - annotation
r7614:ab30729c735c
4.7 KiB
text/x-python
setup: drop support for Python 2.6
It would be a a stepping stone for the migration to Python 3 to only support
Python 2.7. Even though we don't make any big changes now, it might allow us to
remove some workarounds or use some new forward-compatible features.
Mercurial dropped support for Python 2.6 2 years ago.
It would be a a stepping stone for the migration to Python 3 to only support
Python 2.7. Even though we don't make any big changes now, it might allow us to
remove some workarounds or use some new forward-compatible features.
Mercurial dropped support for Python 2.6 2 years ago.
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 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 | r4267:bf011c9f7f58 r4005:266a3cbc0302 r2563:9382e88eae22 r553:65c27fd21769 r2563:9382e88eae22 r2563:9382e88eae22 r5996:a922e91a4f02 r7614:ab30729c735c r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r4186:7e5f8c12a3fc r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r2563:9382e88eae22 r3892:3a1cf70e0f42 r1078:2d7a94f3eaae r2563:9382e88eae22 r7294:55fc0bcce916 r7269:9ec1d2ac4529 r7294:55fc0bcce916 r7294:55fc0bcce916 r7294:55fc0bcce916 r7534:953047e8c88a r7294:55fc0bcce916 r7269:9ec1d2ac4529 r7294:55fc0bcce916 r7294:55fc0bcce916 r7294:55fc0bcce916 r7294:55fc0bcce916 r7521:664262b31af3 r7294:55fc0bcce916 r7292:66bd06015fb1 r7521:664262b31af3 r7294:55fc0bcce916 r7294:55fc0bcce916 r7521:664262b31af3 r7294:55fc0bcce916 r7293:33bdabfa67b8 r7294:55fc0bcce916 r7508:44a15e2a04ff r7294:55fc0bcce916 r7418:e7d6373631c4 r7322:5746cc3b3fa5 r7326:e4b9a1d1fea1 r2563:9382e88eae22 r2563:9382e88eae22 r2772:d4f6dc38d625 r7269:9ec1d2ac4529 r3230:bda2bd2558b1 r2563:9382e88eae22 r4820:953ee49f3b30 r7294:55fc0bcce916 r1163:a1fba57f46fa r1456:880a39e5d8df r1456:880a39e5d8df r1456:880a39e5d8df r1966:fc6063e6630b r4246:cc48c1541c7e r1966:fc6063e6630b r1966:fc6063e6630b r1966:fc6063e6630b r1966:fc6063e6630b r1966:fc6063e6630b r1966:fc6063e6630b r1966:fc6063e6630b r4246:cc48c1541c7e r1966:fc6063e6630b r572:a60cd29ba7e2 r1118:b0e2c949c34b r1792:2afa6b8c2ade r1792:2afa6b8c2ade r553:65c27fd21769 r553:65c27fd21769 r4212:24c0d584ba86 r4937:326a9336fbe5 r3310:faad9dd06b58 r4005:266a3cbc0302 r4005:266a3cbc0302 r4186:7e5f8c12a3fc r4005:266a3cbc0302 r4005:266a3cbc0302 r4005:266a3cbc0302 r4005:266a3cbc0302 r1792:2afa6b8c2ade r4005:266a3cbc0302 r553:65c27fd21769 r6000:7c732f2047f8 r5374:d69aa464f373 r4005:266a3cbc0302 r6000:7c732f2047f8 r6000:7c732f2047f8 r4005:266a3cbc0302 r565:ad2e97c6f17f r552:2642f128ad46 r5996:a922e91a4f02 r5501:c79e4f89bfd3 r5501:c79e4f89bfd3 r5501:c79e4f89bfd3 r5501:c79e4f89bfd3 r5501:c79e4f89bfd3 r5501:c79e4f89bfd3 r5501:c79e4f89bfd3 r5501:c79e4f89bfd3 r5501:c79e4f89bfd3 r5501:c79e4f89bfd3 r5996:a922e91a4f02 r0:564e40829f80 r5996:a922e91a4f02 r4212:24c0d584ba86 r2563:9382e88eae22 r565:ad2e97c6f17f r552:2642f128ad46 r1078:2d7a94f3eaae r1205:f4807acf643d r2563:9382e88eae22 r4245:3315e9263a53 r1456:880a39e5d8df r2563:9382e88eae22 r552:2642f128ad46 r572:a60cd29ba7e2 r552:2642f128ad46 r553:65c27fd21769 r127:20dc7a5eb748 r4186:7e5f8c12a3fc r0:564e40829f80 r0:564e40829f80 r1143:0e6035a85980 r0:564e40829f80 r127:20dc7a5eb748 r127:20dc7a5eb748 r2379:7ac09514a178 r4189:9793473d74be r4189:9793473d74be r4189:9793473d74be r7326:e4b9a1d1fea1 r2379:7ac09514a178 r0:564e40829f80 r4186:7e5f8c12a3fc r0:564e40829f80 r0:564e40829f80 | #!/usr/bin/env python2
# -*- coding: utf-8 -*-
import os
import sys
import platform
if sys.version_info < (2, 6) or sys.version_info >= (3,):
raise Exception('Kallithea requires python 2.7')
here = os.path.abspath(os.path.dirname(__file__))
def _get_meta_var(name, data, callback_handler=None):
import re
matches = re.compile(r'(?:%s)\s*=\s*(.*)' % name).search(data)
if matches:
if not callable(callback_handler):
callback_handler = lambda v: v
return callback_handler(eval(matches.groups()[0]))
_meta = open(os.path.join(here, 'kallithea', '__init__.py'), 'rb')
_metadata = _meta.read()
_meta.close()
callback = lambda V: ('.'.join(map(str, V[:3])) + '.'.join(V[3:]))
__version__ = _get_meta_var('VERSION', _metadata, callback)
__license__ = _get_meta_var('__license__', _metadata)
__author__ = _get_meta_var('__author__', _metadata)
__url__ = _get_meta_var('__url__', _metadata)
# defines current platform
__platform__ = platform.system()
is_windows = __platform__ in ['Windows']
requirements = [
"alembic >= 0.8.0, < 1.1",
"gearbox < 1",
"waitress >= 0.8.8, < 1.2",
"WebOb >= 1.7, < 1.8", # turbogears2 2.3.12 requires WebOb<1.8.0
"backlash >= 0.1.2, < 1",
"TurboGears2 >= 2.3.10, < 2.4",
"tgext.routes >= 0.2.0, < 1",
"Beaker >= 1.7.0, < 2",
"WebHelpers >= 1.3, < 1.4",
"FormEncode >= 1.2.4, < 1.4",
"SQLAlchemy >= 1.1, < 1.3",
"Mako >= 0.9.0, < 1.1",
"Pygments >= 2.0, < 2.3",
"Whoosh >= 2.5.0, < 2.8",
"celery >= 3.1, < 4.0", # celery 4 doesn't work
"Babel >= 1.3, < 2.7",
"python-dateutil >= 1.5.0, < 2.8",
"Markdown >= 2.2.1, < 2.7",
"docutils >= 0.11, < 0.15",
"URLObject >= 2.3.4, < 2.5",
"Routes >= 1.13, < 2",
"dulwich >= 0.14.1, < 0.20",
"mercurial >= 4.1.1, < 4.10",
"decorator >= 3.3.2, < 4.4",
"Paste >= 2.0.3, < 3.1",
"bleach >= 3.0, < 3.1",
"Click >= 7.0, < 8",
]
if sys.version_info < (2, 7):
requirements.append("importlib == 1.0.1")
requirements.append("argparse")
if not is_windows:
requirements.append("bcrypt >= 3.1.0, < 3.2")
dependency_links = [
]
classifiers = [
'Development Status :: 4 - Beta',
'Environment :: Web Environment',
'Framework :: Pylons',
'Intended Audience :: Developers',
'License :: OSI Approved :: GNU General Public License (GPL)',
'Operating System :: OS Independent',
'Programming Language :: Python',
'Programming Language :: Python :: 2.7',
'Topic :: Software Development :: Version Control',
]
# additional files from project that goes somewhere in the filesystem
# relative to sys.prefix
data_files = []
description = ('Kallithea is a fast and powerful management tool '
'for Mercurial and Git with a built in push/pull server, '
'full text search and code-review.')
keywords = ' '.join([
'kallithea', 'mercurial', 'git', 'code review',
'repo groups', 'ldap', 'repository management', 'hgweb replacement',
'hgwebdir', 'gitweb replacement', 'serving hgweb',
])
# long description
README_FILE = 'README.rst'
try:
long_description = open(README_FILE).read()
except IOError as err:
sys.stderr.write(
"[WARNING] Cannot find file specified as long_description (%s)\n"
% README_FILE
)
long_description = description
import setuptools
# monkey patch setuptools to use distutils owner/group functionality
from setuptools.command import sdist
sdist_org = sdist.sdist
class sdist_new(sdist_org):
def initialize_options(self):
sdist_org.initialize_options(self)
self.owner = self.group = 'root'
sdist.sdist = sdist_new
packages = setuptools.find_packages(exclude=['ez_setup'])
setuptools.setup(
name='Kallithea',
version=__version__,
description=description,
long_description=long_description,
keywords=keywords,
license=__license__,
author=__author__,
author_email='kallithea@sfconservancy.org',
dependency_links=dependency_links,
url=__url__,
install_requires=requirements,
classifiers=classifiers,
data_files=data_files,
packages=packages,
include_package_data=True,
message_extractors={'kallithea': [
('**.py', 'python', None),
('templates/**.mako', 'mako', {'input_encoding': 'utf-8'}),
('templates/**.html', 'mako', {'input_encoding': 'utf-8'}),
('public/**', 'ignore', None)]},
zip_safe=False,
entry_points="""
[console_scripts]
kallithea-api = kallithea.bin.kallithea_api:main
kallithea-gist = kallithea.bin.kallithea_gist:main
kallithea-config = kallithea.bin.kallithea_config:main
kallithea-cli = kallithea.bin.kallithea_cli:cli
[paste.app_factory]
main = kallithea.config.middleware:make_app
""",
)
|