This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author Ben.Darnell
Recipients Ben.Darnell
Date 2012-03-06.06:53:22
SpamBayes Score 2.6532192e-05
Marked as misclassified No
Message-id <>
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/", 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  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/" the imports from are effectively relative instead of absolute.

One possible solution would be to provide an immutable sys.__argv__ (by analogy with sys.__stdout__ and friends).
Date User Action Args
2012-03-06 06:53:23Ben.Darnellsetrecipients: + Ben.Darnell
2012-03-06 06:53:23Ben.Darnellsetmessageid: <>
2012-03-06 06:53:22Ben.Darnelllinkissue14208 messages
2012-03-06 06:53:22Ben.Darnellcreate