New submission from Ben Darnell <ben.darn...@gmail.com>:

I have a script which attempts to re-invoke itself using sys.argv, but it fails 
when run with "python -m package.module".  The problem is that the handling of 
-m (via the runpy module) rewrites sys.argv as if it were run as "python 
package/module.py", but the two command lines are not equivalent:  With -m the 
current directory is inserted at the head of sys.path, but without -m it's the 
directory containing module.py.  The net effect is that the initial run of 
"python -m package.module" works as expected, but when it re-runs itself as 
"python package/module.py" the imports from module.py are effectively relative 
instead of absolute.

One possible solution would be to provide an immutable sys.__argv__ (by analogy 
with sys.__stdout__ and friends).

----------
messages: 155002
nosy: Ben.Darnell
priority: normal
severity: normal
status: open
title: No way to recover original argv with python -m
type: enhancement

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue14208>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to