/usr/lib/python2.7/dist-packages/_paver_ext/python_requirements.py is in python-parse-type 0.3.4-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 | # ============================================================================
# PAVER EXTENSION/UTILITY: Read PIP requirements files
# ============================================================================
# REQUIRES: paver >= 1.0
# REQUIRES: pkg_resources, fulfilled when setuptools or distribute is installed
# DESCRIPTION:
# Provides some utility functions for paver.
#
# SEE ALSO:
# * http://pypi.python.org/pypi/Paver/
# * http://www.blueskyonmars.com/projects/paver/
# ============================================================================
# from paver.easy import error
import os.path
import pkg_resources
import sys
def error(text):
sys.stderr.write("ERROR: %s\n" % text)
sys.stderr.flush()
# ----------------------------------------------------------------------------
# UTILS:
# ----------------------------------------------------------------------------
def read_requirements(*filenames):
"""
Read PIP "requirements*.txt" files.
These files contains python package requirements.
:param filenames: List of requirement files to read.
:returns: List of packages/package requirements (list-of-strings).
"""
package_requirements = []
for filename in filenames:
if not os.path.exists(filename):
error("REQUIREMENT-FILE %s not found" % filename)
continue
# XXX-INSTALL-REQUIRES problem w/ setup()
# # -- NORMAL CASE:
# with open(filename, "r") as f:
# requirements = pkg_resources.parse_requirements(f.read())
# package_requirements.extend(requirements)
# -- NORMAL CASE:
requirements_file = open(filename, "r")
for line in requirements_file.readlines():
line = line.strip()
if not line or line.startswith("#"):
continue #< SKIP: EMPTY-LINE or COMMENT-LINE
package_requirements.append(line)
requirements_file.close()
return package_requirements
|