cpython/Lib/importlib/NOTES

105 lines
1.9 KiB
Plaintext
Raw Normal View History

to do
/////
* Create sandbox directory for a distutils packaging of what is in Python 2.7.
* Use rpartition for getting the package of a module.
+ Make sure that an empty string is acceptable for __package__.
* Create meta_path importer for sys.path.
+ Document.
* Refactor __import__.
+ Create a greatest common denominator function for __import__/import_module
that takes in an absolute module name and performs the import.
- Needs of __import__
* Figure out caller's package.
* Import module.
* Set __package__.
* Figure out what module to return.
- Needs of import_module
* Resolve name/level.
* Import module.
+ Use GCD import for __import__.
+ Use GCD import for import_module.
2009-01-25 21:54:40 -04:00
* Implement PEP 302 protocol for loaders (should just be a matter of testing).
+ Built-in.
+ Frozen.
+ Extension.
+ Source/bytecode.
* Public API left to expose (w/ docs!)
+ abc
- Finder
* find_module
- Loader
* load_module
- (?) Importer(Finder, Loader)
- ResourceLoader(Loader)
* get_data
- InspectLoader(Loader)
* is_package
* get_code
* get_source
- (?) SourceLoader(ResourceLoader)
* source_path
* bytecode_path
* write_bytecode
+ util
- get_module decorator (new name)
- check_name decorator (new name)
2009-01-25 21:54:40 -04:00
- resolve_name
+ machinery
- (?) Chained path hook/finder
- (?) FileFinder
- Extensions importers
* ExtensionFinder
* (?) Loader
- Source/bytecode importers
* SourceFinder
* (?) Loader
2009-02-01 01:55:23 -04:00
* Write benchmark suite.
* OPTIMIZE!
+ Fast path absolute name.
+ Fast path pulling from sys.modules.
2009-02-01 01:55:23 -04:00
* Bootstrap importlib as implementation of builtins.__import__
* Replace standard library modules.
+ imp
+ py_compile
+ compileall