Message185852
| Author |
brett.cannon |
| Recipients |
brett.cannon |
| Date |
2013年04月02日.18:00:47 |
| SpamBayes Score |
-1.0 |
| Marked as misclassified |
Yes |
| Message-id |
<1364925647.64.0.233663837419.issue17621@psf.upfronthosting.co.za> |
| In-reply-to |
| Content |
People keep asking and I keep promising to get a lazy loader into Python 3.4. This issue is for me to track what I have done towards meeting that promise.
To start, I have something working at https://code.google.com/p/importers/, but I need to make sure that the code copies any newly assigned objects post-import but before completing an attribute read::
import lazy_mod
lazy_mod.attr = True # Does not have to trigger import, although there is nothing wrong if it did.
lazy_mod.func() # Since it might depend on 'attr', don't return attr until after import and 'attr' with a value of True has been set.
Also need to see if anything can be done about isinstance/issubclass checks as super() is used for assigning to __loader__ and thus might break checks for ABCs. Maybe create a class from scratch w/o the mixin somehow (which I don't see from looking at http://docs.python.org/3.4/library/types.html#module-types w/o re-initializing everything)? Somehow get __subclasscheck__() on the super() class? Some other crazy solution that avoids having to call __init__() a second time? |
|
History
|
|---|
| Date |
User |
Action |
Args |
| 2013年04月02日 18:00:47 | brett.cannon | set | recipients:
+ brett.cannon |
| 2013年04月02日 18:00:47 | brett.cannon | set | messageid: <1364925647.64.0.233663837419.issue17621@psf.upfronthosting.co.za> |
| 2013年04月02日 18:00:47 | brett.cannon | link | issue17621 messages |
| 2013年04月02日 18:00:47 | brett.cannon | create |
|