[Python-Dev] Planning on removing cache invalidation for file finders
Erik Bray
erik.m.bray at gmail.com
Sun Mar 3 02:09:49 CET 2013
More information about the Python-Dev mailing list
Sun Mar 3 02:09:49 CET 2013
- Previous message: [Python-Dev] Planning on removing cache invalidation for file finders
- Next message: [Python-Dev] cffi in stdlib
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Sat, Mar 2, 2013 at 10:36 AM, Nick Coghlan <ncoghlan at gmail.com> wrote: > In addition, it may be appropriate for importlib to offer a > "write_module" method that accepts (module name, target path, > contents). This would: > > 1. Allow in-process caches to be invalidated implicitly and > selectively when new modules are created > 2. Allow importers to abstract write access in addition to read access > 3. Allow the import system to complain at time of writing if the > desired module name and target path don't actually match given the > current import system state. +1 to write_module(). This would be useful in general, I think. Though perhaps the best solution to the original problem is to more forcefully document: "If you're writing a module and expect to be able to import it immediately within the same process, it's necessary to manually invalidate the directory cache." I might go a little further and suggest adding a function to only invalidate the cache for the relevant directory (the proposed write_module() function could do this). This can already be done with something like: dirname = os.path.dirname(module_filename) sys.path_importer_cache[dirname].invalidate_caches() But that's a bit onerous considering that this wasn't even necessary before 3.3. There should be an easier way to do this, as there's no sense in invalidating all the directory caches if one is only writing new modules to a specific directory or directories. Erik
- Previous message: [Python-Dev] Planning on removing cache invalidation for file finders
- Next message: [Python-Dev] cffi in stdlib
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-Dev mailing list