##// END OF EJS Templates
bump sqlalchemy version
marcink -
r3429:fba8b977 beta
parent child Browse files
Show More
@@ -1,171 +1,171 b''
1 import os
1 import os
2 import sys
2 import sys
3 import platform
3 import platform
4
4
5 if sys.version_info < (2, 5):
5 if sys.version_info < (2, 5):
6 raise Exception('RhodeCode requires python 2.5 or later')
6 raise Exception('RhodeCode requires python 2.5 or later')
7
7
8
8
9 here = os.path.abspath(os.path.dirname(__file__))
9 here = os.path.abspath(os.path.dirname(__file__))
10
10
11
11
12 def _get_meta_var(name, data, callback_handler=None):
12 def _get_meta_var(name, data, callback_handler=None):
13 import re
13 import re
14 matches = re.compile(r'(?:%s)\s*=\s*(.*)' % name).search(data)
14 matches = re.compile(r'(?:%s)\s*=\s*(.*)' % name).search(data)
15 if matches:
15 if matches:
16 if not callable(callback_handler):
16 if not callable(callback_handler):
17 callback_handler = lambda v: v
17 callback_handler = lambda v: v
18
18
19 return callback_handler(eval(matches.groups()[0]))
19 return callback_handler(eval(matches.groups()[0]))
20
20
21 _meta = open(os.path.join(here, 'rhodecode', '__init__.py'), 'rb')
21 _meta = open(os.path.join(here, 'rhodecode', '__init__.py'), 'rb')
22 _metadata = _meta.read()
22 _metadata = _meta.read()
23 _meta.close()
23 _meta.close()
24
24
25 callback = lambda V: ('.'.join(map(str, V[:3])) + '.'.join(V[3:]))
25 callback = lambda V: ('.'.join(map(str, V[:3])) + '.'.join(V[3:]))
26 __version__ = _get_meta_var('VERSION', _metadata, callback)
26 __version__ = _get_meta_var('VERSION', _metadata, callback)
27 __license__ = _get_meta_var('__license__', _metadata)
27 __license__ = _get_meta_var('__license__', _metadata)
28 __author__ = _get_meta_var('__author__', _metadata)
28 __author__ = _get_meta_var('__author__', _metadata)
29 __url__ = _get_meta_var('__url__', _metadata)
29 __url__ = _get_meta_var('__url__', _metadata)
30 # defines current platform
30 # defines current platform
31 __platform__ = platform.system()
31 __platform__ = platform.system()
32
32
33 is_windows = __platform__ in _get_meta_var('PLATFORM_WIN', _metadata)
33 is_windows = __platform__ in _get_meta_var('PLATFORM_WIN', _metadata)
34
34
35 requirements = [
35 requirements = [
36 "waitress==0.8.2",
36 "waitress==0.8.2",
37 "webob==1.0.8",
37 "webob==1.0.8",
38 "webtest==1.4.3",
38 "webtest==1.4.3",
39 "Pylons==1.0.0",
39 "Pylons==1.0.0",
40 "Beaker==1.6.4",
40 "Beaker==1.6.4",
41 "WebHelpers==1.3",
41 "WebHelpers==1.3",
42 "formencode==1.2.4",
42 "formencode==1.2.4",
43 "SQLAlchemy==0.7.9",
43 "SQLAlchemy==0.7.10",
44 "Mako==0.7.3",
44 "Mako==0.7.3",
45 "pygments>=1.5",
45 "pygments>=1.5",
46 "whoosh>=2.4.0,<2.5",
46 "whoosh>=2.4.0,<2.5",
47 "celery>=2.2.5,<2.3",
47 "celery>=2.2.5,<2.3",
48 "babel",
48 "babel",
49 "python-dateutil>=1.5.0,<2.0.0",
49 "python-dateutil>=1.5.0,<2.0.0",
50 "dulwich>=0.8.7,<0.9.0",
50 "dulwich>=0.8.7,<0.9.0",
51 "markdown==2.2.1",
51 "markdown==2.2.1",
52 "docutils==0.8.1",
52 "docutils==0.8.1",
53 "simplejson==2.5.2",
53 "simplejson==2.5.2",
54 "mock",
54 "mock",
55 ]
55 ]
56
56
57 if sys.version_info < (2, 6):
57 if sys.version_info < (2, 6):
58 requirements.append("pysqlite")
58 requirements.append("pysqlite")
59
59
60 if sys.version_info < (2, 7):
60 if sys.version_info < (2, 7):
61 requirements.append("unittest2")
61 requirements.append("unittest2")
62 requirements.append("argparse")
62 requirements.append("argparse")
63
63
64 if is_windows:
64 if is_windows:
65 requirements.append("mercurial==2.5.1")
65 requirements.append("mercurial==2.5.1")
66 else:
66 else:
67 requirements.append("py-bcrypt")
67 requirements.append("py-bcrypt")
68 requirements.append("mercurial==2.5.1")
68 requirements.append("mercurial==2.5.1")
69
69
70
70
71 dependency_links = [
71 dependency_links = [
72 ]
72 ]
73
73
74 classifiers = [
74 classifiers = [
75 'Development Status :: 4 - Beta',
75 'Development Status :: 4 - Beta',
76 'Environment :: Web Environment',
76 'Environment :: Web Environment',
77 'Framework :: Pylons',
77 'Framework :: Pylons',
78 'Intended Audience :: Developers',
78 'Intended Audience :: Developers',
79 'License :: OSI Approved :: GNU General Public License (GPL)',
79 'License :: OSI Approved :: GNU General Public License (GPL)',
80 'Operating System :: OS Independent',
80 'Operating System :: OS Independent',
81 'Programming Language :: Python',
81 'Programming Language :: Python',
82 'Programming Language :: Python :: 2.5',
82 'Programming Language :: Python :: 2.5',
83 'Programming Language :: Python :: 2.6',
83 'Programming Language :: Python :: 2.6',
84 'Programming Language :: Python :: 2.7',
84 'Programming Language :: Python :: 2.7',
85 ]
85 ]
86
86
87
87
88 # additional files from project that goes somewhere in the filesystem
88 # additional files from project that goes somewhere in the filesystem
89 # relative to sys.prefix
89 # relative to sys.prefix
90 data_files = []
90 data_files = []
91
91
92 # additional files that goes into package itself
92 # additional files that goes into package itself
93 package_data = {'rhodecode': ['i18n/*/LC_MESSAGES/*.mo', ], }
93 package_data = {'rhodecode': ['i18n/*/LC_MESSAGES/*.mo', ], }
94
94
95 description = ('RhodeCode is a fast and powerful management tool '
95 description = ('RhodeCode is a fast and powerful management tool '
96 'for Mercurial and GIT with a built in push/pull server, '
96 'for Mercurial and GIT with a built in push/pull server, '
97 'full text search and code-review.')
97 'full text search and code-review.')
98 keywords = ' '.join(['rhodecode', 'rhodiumcode', 'mercurial', 'git',
98 keywords = ' '.join(['rhodecode', 'rhodiumcode', 'mercurial', 'git',
99 'code review', 'repo groups', 'ldap'
99 'code review', 'repo groups', 'ldap'
100 'repository management', 'hgweb replacement'
100 'repository management', 'hgweb replacement'
101 'hgwebdir', 'gitweb replacement', 'serving hgweb', ])
101 'hgwebdir', 'gitweb replacement', 'serving hgweb', ])
102 # long description
102 # long description
103 try:
103 try:
104 readme_file = 'README.rst'
104 readme_file = 'README.rst'
105 changelog_file = 'docs/changelog.rst'
105 changelog_file = 'docs/changelog.rst'
106 long_description = open(readme_file).read() + '\n\n' + \
106 long_description = open(readme_file).read() + '\n\n' + \
107 open(changelog_file).read()
107 open(changelog_file).read()
108
108
109 except IOError, err:
109 except IOError, err:
110 sys.stderr.write("[WARNING] Cannot find file specified as "
110 sys.stderr.write("[WARNING] Cannot find file specified as "
111 "long_description (%s)\n or changelog (%s) skipping that file" \
111 "long_description (%s)\n or changelog (%s) skipping that file" \
112 % (readme_file, changelog_file))
112 % (readme_file, changelog_file))
113 long_description = description
113 long_description = description
114
114
115
115
116 try:
116 try:
117 from setuptools import setup, find_packages
117 from setuptools import setup, find_packages
118 except ImportError:
118 except ImportError:
119 from ez_setup import use_setuptools
119 from ez_setup import use_setuptools
120 use_setuptools()
120 use_setuptools()
121 from setuptools import setup, find_packages
121 from setuptools import setup, find_packages
122 # packages
122 # packages
123 packages = find_packages(exclude=['ez_setup'])
123 packages = find_packages(exclude=['ez_setup'])
124
124
125 setup(
125 setup(
126 name='RhodeCode',
126 name='RhodeCode',
127 version=__version__,
127 version=__version__,
128 description=description,
128 description=description,
129 long_description=long_description,
129 long_description=long_description,
130 keywords=keywords,
130 keywords=keywords,
131 license=__license__,
131 license=__license__,
132 author=__author__,
132 author=__author__,
133 author_email='marcin@python-works.com',
133 author_email='marcin@python-works.com',
134 dependency_links=dependency_links,
134 dependency_links=dependency_links,
135 url=__url__,
135 url=__url__,
136 install_requires=requirements,
136 install_requires=requirements,
137 classifiers=classifiers,
137 classifiers=classifiers,
138 setup_requires=["PasteScript>=1.6.3"],
138 setup_requires=["PasteScript>=1.6.3"],
139 data_files=data_files,
139 data_files=data_files,
140 packages=packages,
140 packages=packages,
141 include_package_data=True,
141 include_package_data=True,
142 test_suite='nose.collector',
142 test_suite='nose.collector',
143 package_data=package_data,
143 package_data=package_data,
144 message_extractors={'rhodecode': [
144 message_extractors={'rhodecode': [
145 ('**.py', 'python', None),
145 ('**.py', 'python', None),
146 ('templates/**.mako', 'mako', {'input_encoding': 'utf-8'}),
146 ('templates/**.mako', 'mako', {'input_encoding': 'utf-8'}),
147 ('templates/**.html', 'mako', {'input_encoding': 'utf-8'}),
147 ('templates/**.html', 'mako', {'input_encoding': 'utf-8'}),
148 ('public/**', 'ignore', None)]},
148 ('public/**', 'ignore', None)]},
149 zip_safe=False,
149 zip_safe=False,
150 paster_plugins=['PasteScript', 'Pylons'],
150 paster_plugins=['PasteScript', 'Pylons'],
151 entry_points="""
151 entry_points="""
152 [console_scripts]
152 [console_scripts]
153 rhodecode-api = rhodecode.bin.rhodecode_api:main
153 rhodecode-api = rhodecode.bin.rhodecode_api:main
154
154
155 [paste.app_factory]
155 [paste.app_factory]
156 main = rhodecode.config.middleware:make_app
156 main = rhodecode.config.middleware:make_app
157
157
158 [paste.app_install]
158 [paste.app_install]
159 main = pylons.util:PylonsInstaller
159 main = pylons.util:PylonsInstaller
160
160
161 [paste.global_paster_command]
161 [paste.global_paster_command]
162 setup-rhodecode=rhodecode.lib.paster_commands.setup_rhodecode:Command
162 setup-rhodecode=rhodecode.lib.paster_commands.setup_rhodecode:Command
163 cleanup-repos=rhodecode.lib.paster_commands.cleanup:Command
163 cleanup-repos=rhodecode.lib.paster_commands.cleanup:Command
164 update-repoinfo=rhodecode.lib.paster_commands.update_repoinfo:Command
164 update-repoinfo=rhodecode.lib.paster_commands.update_repoinfo:Command
165 make-rcext=rhodecode.lib.paster_commands.make_rcextensions:Command
165 make-rcext=rhodecode.lib.paster_commands.make_rcextensions:Command
166 repo-scan=rhodecode.lib.paster_commands.repo_scan:Command
166 repo-scan=rhodecode.lib.paster_commands.repo_scan:Command
167 make-index=rhodecode.lib.indexers:MakeIndex
167 make-index=rhodecode.lib.indexers:MakeIndex
168 upgrade-db=rhodecode.lib.dbmigrate:UpgradeDb
168 upgrade-db=rhodecode.lib.dbmigrate:UpgradeDb
169 celeryd=rhodecode.lib.celerypylons.commands:CeleryDaemonCommand
169 celeryd=rhodecode.lib.celerypylons.commands:CeleryDaemonCommand
170 """,
170 """,
171 )
171 )
General Comments 0
You need to be logged in to leave comments. Login now