[CalendarServer-changes] [13185] twext/trunk
source_changes at macosforge.org
source_changes at macosforge.org
Mon Apr 7 17:32:59 PDT 2014
Revision: 13185
http://trac.calendarserver.org//changeset/13185
Author: wsanchez at apple.com
Date: 2014-04-07 17:32:59 -0700 (Mon, 07 Apr 2014)
Log Message:
-----------
Stop parsing requirements in setup.py, because dstufft says so.
Modified Paths:
--------------
twext/trunk/bin/_build.sh
twext/trunk/setup.py
Added Paths:
-----------
twext/trunk/requirements.txt
Removed Paths:
-------------
twext/trunk/requirements/
Modified: twext/trunk/bin/_build.sh
===================================================================
--- twext/trunk/bin/_build.sh 2014-04-08 00:08:37 UTC (rev 13184)
+++ twext/trunk/bin/_build.sh 2014-04-08 00:32:59 UTC (rev 13185)
@@ -620,26 +620,21 @@
if [ -d "${wd}/requirements/cache" ]; then
pip_install="pip_install_from_cache";
else
- pip_install="pip_install";
+ pip_install="pip_download_and_install";
fi;
- for requirements in "${wd}/requirements/py_"*".txt"; do
+ local requirements="${wd}/requirements.txt";
- ruler "Preparing Python requirements: ${requirements}";
- echo "";
+ ruler "Preparing Python requirements";
+ echo "";
+ "${pip_install}" "--requirement=${requirements}";
- if ! "${pip_install}" "${requirements}"; then
- err=$?;
- echo "Unable to set up Python requirements: ${requirements}";
- if [ "${requirements#${wd}/requirements/py_opt_}" != "${requirements}" ]; then
- echo "Requirements ${requirements} are optional; continuing.";
- else
- echo "";
- echo "pip log: ${dev_home}/pip.log";
- return 1;
- fi;
+ for option in $("${python}" -c 'import setup; print "\n".join(setup.extras_requirements.keys())'); do
+ ruler "Preparing Python requirements for optional feature: ${option}";
+ echo "";
+ if ! "${pip_install}" "--editable=.[${option}]"; then
+ echo "Feature ${option} is optional; continuing.";
fi;
-
done;
echo "";
@@ -647,21 +642,21 @@
pip_install_from_cache () {
- local requirements="$1"; shift;
+ local require="$1"; shift;
"${python}" -m pip install \
- --requirement="${requirements}" \
- --find-links "${wd}/requirements/cache" \
+ "${require}" \
+ --find-links="${wd}/requirements/cache" \
--no-index \
--log="${dev_home}/pip.log";
}
-pip_install () {
- local requirements="$1"; shift;
+pip_download_and_install () {
+ local require="$1"; shift;
"${python}" -m pip install \
- --requirement="${requirements}" \
+ "${require}" \
--download-cache="${dev_home}/pip_cache" \
--log="${dev_home}/pip.log";
}
Added: twext/trunk/requirements.txt
===================================================================
--- twext/trunk/requirements.txt (rev 0)
+++ twext/trunk/requirements.txt 2014-04-08 00:32:59 UTC (rev 13185)
@@ -0,0 +1,7 @@
+# Get our own dependencies
+-e .
+
+# Additional dependencies for development
+pyflakes
+docutils>=0.11
+mockldap>=0.1.4
Property changes on: twext/trunk/requirements.txt
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: twext/trunk/setup.py
===================================================================
--- twext/trunk/setup.py 2014-04-08 00:08:37 UTC (rev 13184)
+++ twext/trunk/setup.py 2014-04-08 00:32:59 UTC (rev 13185)
@@ -20,12 +20,9 @@
import sys
import errno
-from os import listdir, environ as environment
from os.path import dirname, abspath, join as joinpath
-from itertools import chain
import subprocess
from setuptools import setup, find_packages as setuptools_find_packages
-from pip.req import parse_requirements
@@ -136,45 +133,32 @@
# Dependencies
#
-reqs_extension = ".txt"
-reqs_opt_prefix = "py_opt_"
+setup_requirements = []
+install_requirements = [
+ "cffi==0.6",
+ "twisted>=13.2.0",
+]
-requirements_dir = joinpath(dirname(__file__), "requirements")
+extras_requirements = {
+ # Database Abstraction Layer
+ "DAL": ["sqlparse==0.1.2"],
+ # LDAP
+ "LDAP": ["python-ldap>=2.4.13"],
-def read_requirements(reqs_filename):
- return [
- str(r.req) for r in
- parse_requirements(joinpath(requirements_dir, reqs_filename))
- ]
+ # OpenDirectory
+ "OpenDirectory": ["pyobjc-framework-OpenDirectory>=2.5.1"],
+ # Oracle
+ "Oracle": ["cx_Oracle==5.1.2"],
-setup_requirements = []
+ # Postgres
+ "Postgres": ["PyGreSQL==4.1.1"],
+}
-install_requirements = read_requirements("py_base.txt")
-extras_requirements = dict(
- (
- reqs_filename[len(reqs_opt_prefix):-len(reqs_extension)],
- read_requirements(reqs_filename)
- )
- for reqs_filename in listdir(requirements_dir)
- if (
- reqs_filename.startswith(reqs_opt_prefix) and
- reqs_filename.endswith(reqs_extension)
- )
-)
-# Requirements for development and testing
-develop_requirements = read_requirements("py_develop.txt")
-
-if environment.get("_DEVELOP_PROJECT_", None) == name:
- install_requirements.extend(develop_requirements)
- install_requirements.extend(chain(*extras_requirements.values()))
-
-
-
#
# Set up Extension modules that need to be built
#
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20140407/66763412/attachment-0001.html>
More information about the calendarserver-changes
mailing list