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 $@+ && \