Author: Brian Kearns <[email protected]>
Branch: 
Changeset: r61051:a4cde53c1b7e
Date: 2013-02-10 16:54 -0500
http://bitbucket.org/pypy/pypy/changeset/a4cde53c1b7e/

Log:    app_main support a few more args/env vars

diff --git a/pypy/interpreter/app_main.py b/pypy/interpreter/app_main.py
--- a/pypy/interpreter/app_main.py
+++ b/pypy/interpreter/app_main.py
@@ -355,6 +355,7 @@
     '3': (simple_option, 'py3k_warning'),
     # more complex options
     'c':         (c_option,        Ellipsis),
+    '?':         (print_help,      None),
     'h':         (print_help,      None),
     '--help':    (print_help,      None),
     'm':         (m_option,        Ellipsis),
@@ -426,12 +427,16 @@
     sys.argv[:] = argv
 
     if not options["ignore_environment"]:
+        if os.getenv('PYTHONDEBUG'):
+            options["debug"] = 1
+        if os.getenv('PYTHONDONTWRITEBYTECODE'):
+            options["dont_write_bytecode"] = 1
+        if os.getenv('PYTHONNOUSERSITE'):
+            options["no_user_site"] = 1
         if os.getenv('PYTHONUNBUFFERED'):
             options["unbuffered"] = 1
-        if os.getenv('PYTHONNOUSERSITE'):
-            options["no_user_site"] = 1
-        if os.getenv('PYTHONDONTWRITEBYTECODE'):
-            options["dont_write_bytecode"] = 1
+        if os.getenv('PYTHONVERBOSE'):
+            options["verbose"] = 1
 
     if (options["interactive"] or
         (not options["ignore_environment"] and os.getenv('PYTHONINSPECT'))):
diff --git a/pypy/interpreter/test2/test_app_main.py 
b/pypy/interpreter/test2/test_app_main.py
--- a/pypy/interpreter/test2/test_app_main.py
+++ b/pypy/interpreter/test2/test_app_main.py
@@ -124,6 +124,7 @@
                    no_site=1, optimize=1, division_new=1)
         self.check(['-i'], {}, sys_argv=[''], run_stdin=True,
                    interactive=1, inspect=1)
+        self.check(['-?'], {}, output_contains='usage:')
         self.check(['-h'], {}, output_contains='usage:')
         self.check(['-S', '-tO', '-h'], {}, output_contains='usage:')
         self.check(['-S', '-thO'], {}, output_contains='usage:')
@@ -160,9 +161,11 @@
         self.check(['-W', 'ab', '-SWc'], {}, sys_argv=[''], warnoptions=['ab', 
'c'],
                    run_stdin=True, no_site=1)
 
+        self.check([], {'PYTHONDEBUG': '1'}, sys_argv=[''], run_stdin=True, 
debug=1)
+        self.check([], {'PYTHONDONTWRITEBYTECODE': '1'}, sys_argv=[''], 
run_stdin=True, dont_write_bytecode=1)
+        self.check([], {'PYTHONNOUSERSITE': '1'}, sys_argv=[''], 
run_stdin=True, no_user_site=1)
         self.check([], {'PYTHONUNBUFFERED': '1'}, sys_argv=[''], 
run_stdin=True, unbuffered=1)
-        self.check([], {'PYTHONNOUSERSITE': '1'}, sys_argv=[''], 
run_stdin=True, no_user_site=1)
-        self.check([], {'PYTHONDONTWRITEBYTECODE': '1'}, sys_argv=[''], 
run_stdin=True, dont_write_bytecode=1)
+        self.check([], {'PYTHONVERBOSE': '1'}, sys_argv=[''], run_stdin=True, 
verbose=1)
 
     def test_sysflags(self):
         flags = (
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to