@matheusbsbs / matheus-bagliano / commits / 0ae08401be
Fork 0

Makefile: Remove usage of deprecated Python "has_key" method

"has_key" is a deprecated dictionary method in Python 2.6+. Simplify the sys.path manipulation for installed scripts by passing a default value to os.getenv() that takes a default value to be used when the environment variable is missing. SCRIPT_PYTHON is currently empty but this future-proofs us. It also fixes things for users who maintain local git forks with their own SCRIPT_PYTHON additions. Old code replaced the first element of sys.path[] which is typically '' (i.e. import library files relative to the script). It is safer to prepend the extra library path instead. Signed-off-by: David Aguilar <davvid@gmail.com> Acked-by: Johan Herland <johan@herland.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>

David Aguilar committed Mar 27, 2010 at 17:45 UTC 0ae08401beb0daef9946b6fe25224a4cf167c655
1 file changed +2 -3
Makefile
+2 -3
@@ -1557,9 +1557,8 @@ $(patsubst %.py,%,$(SCRIPT_PYTHON)): % : %.py
1557 -e '}' \
1558 -e 's|^import sys.*|&; \\\
1559 import os; \\\
1560 - sys.path[0] = os.environ.has_key("GITPYTHONLIB") and \\\
1561 - os.environ["GITPYTHONLIB"] or \\\
1562 - "@@INSTLIBDIR@@"|' \
1560 + sys.path.insert(0, os.getenv("GITPYTHONLIB",\
1561 + "@@INSTLIBDIR@@"));|' \
1562 -e 's|@@INSTLIBDIR@@|'"$$INSTLIBDIR"'|g' \
1563 $@.py >$@+ && \
1564 chmod +x $@+ && \