aboutsummaryrefslogtreecommitdiff
path: root/setup.py
diff options
context:
space:
mode:
authorMarcin Kuzminski <marcin@python-works.com>2012-07-06 18:28:13 +0200
committerMarcin Kuzminski <marcin@python-works.com>2012-07-06 18:28:13 +0200
commit015dfc9567bb4ca1b12470817a19aee11b531969 (patch)
tree742b7ddc12d697a730d565432979bb787386bf36 /setup.py
parent557c3de35cd9294f7187206ca26f830d0d8f6a86 (diff)
removed import rhodecode from setup.py
--HG-- branch : beta
Diffstat (limited to 'setup.py')
-rw-r--r--setup.py74
1 files changed, 66 insertions, 8 deletions
diff --git a/setup.py b/setup.py
index 3a5ab868..c35c5735 100644
--- a/setup.py
+++ b/setup.py
@@ -1,12 +1,70 @@
+import os
import sys
-from rhodecode import get_version
-from rhodecode import __license__
-from rhodecode import __py_version__
-from rhodecode import requirements
+import platform
-if __py_version__ < (2, 5):
+if sys.version_info < (2, 5):
raise Exception('RhodeCode requires python 2.5 or later')
+
+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, 'rhodecode', '__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 _get_meta_var('PLATFORM_WIN', _metadata)
+
+requirements = [
+ "Pylons==1.0.0",
+ "Beaker==1.6.3",
+ "WebHelpers==1.3",
+ "formencode==1.2.4",
+ "SQLAlchemy==0.7.8",
+ "Mako==0.7.0",
+ "pygments>=1.4",
+ "whoosh>=2.4.0,<2.5",
+ "celery>=2.2.5,<2.3",
+ "babel",
+ "python-dateutil>=1.5.0,<2.0.0",
+ "dulwich>=0.8.5,<0.9.0",
+ "webob==1.0.8",
+ "markdown==2.1.1",
+ "docutils==0.8.1",
+ "simplejson==2.5.2",
+ "mock"
+]
+
+if sys.version_info < (2, 6):
+ requirements.append("pysqlite")
+
+if sys.version_info <= (2, 6):
+ requirements.append("unittest2")
+
+if is_windows:
+ requirements.append("mercurial>=2.2.3,<2.3")
+else:
+ requirements.append("py-bcrypt")
+ requirements.append("mercurial>=2.2.3,<2.3")
+
+
dependency_links = [
]
@@ -62,15 +120,15 @@ packages = find_packages(exclude=['ez_setup'])
setup(
name='RhodeCode',
- version=get_version(),
+ version=__version__,
description=description,
long_description=long_description,
keywords=keywords,
license=__license__,
- author='Marcin Kuzminski',
+ author=__author__,
author_email='marcin@python-works.com',
dependency_links=dependency_links,
- url='http://rhodecode.org',
+ url=__url__,
install_requires=requirements,
classifiers=classifiers,
setup_requires=["PasteScript>=1.6.3"],