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 flying sheep
Recipients flying sheep
Date 2016-02-03.12:25:04
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1454502304.42.0.453397075525.issue26277@psf.upfronthosting.co.za>
In-reply-to
Content
currently, zipapp’s notion of __main__.py is very different from the usual.

the root directory of a zipapp is not a module, therefore __init__.py isn’t used and relative imports from __main__.py don’t work.

i propose that the zipapp functionality is amended/changed to

1. allow more than one target directory (bundle multiple modules)
2. allow creation of a __main__.py that contains a runpy-powered module runner

so maybe we could specify the module itself as entry point to get this behavior

zipapp -m my_module dependency.py my_module

should create

my_module.pyz
├ __main__.py  →  ...runpy.run_module('my_module')
├ dependency.py
└ my_module
  ├ __init__.py
  └ __main__.py  →  from . import ...

or there would be another option to specify it.
History
Date User Action Args
2016-02-03 12:25:04flying sheepsetrecipients: + flying sheep
2016-02-03 12:25:04flying sheepsetmessageid: <1454502304.42.0.453397075525.issue26277@psf.upfronthosting.co.za>
2016-02-03 12:25:04flying sheeplinkissue26277 messages
2016-02-03 12:25:04flying sheepcreate