On 19/03/2008, Phillip J. Eby <[EMAIL PROTECTED]> wrote:
> So that future PEP 302 importers can define support for these
>  features, please use
>  pkgutil.simplegeneric to implement these, following the pattern set
>  out by other pkgutil functions.  E.g.:
>
>      def resource_listdir(package, resource_name):
>          return loader_listdir(get_loader(package), package, resource_name)
>
>  Where 'loader_listdir' is a simplegeneric with default handlers
>  registered for the built-in/stdlib loader types (zipimporter, None,
>  and ImpLoader).
>
>  If you do this, then new importer/loader types can use
>  loader_listdir.register() to support the functionality, without
>  monkeypatching or other hacks.

If I did this, I'd certainly make sure it was possible for other
loaders to add their own implementations. But I'm not sure I want to
get involved in the generic-function politics involved in using
pkgutil.simplegeneric - particularly as it's undocumented. I may just
go for a simple registry of implementation classes. Sorry, but if you
couldn't get sufficient agreement to simplegeneric to get it in a
"proper" location, I doubt I'd fare better, (Of course, if Guido pipes
up with support for using simplegeneric, I'll go with that - and
document it, and propose that it gets moved to a sensible location.
But I don't want to be the one to try to persuade Guido...)

Paul
_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to