[Python-Dev] PyPy, Jython, & IronPython: Enum convenience function and pickleablity

Antoine Pitrou solipsis at pitrou.net
Thu May 2 22:10:03 CEST 2013

On Thu, 2 May 2013 15:48:14 -0400
Benjamin Peterson <benjamin at python.org> wrote:
> 2013/5/2 Ethan Furman <ethan at stoneleaf.us>:
> > In order for the Enum convenience function to be pickleable, we have this
> > line of code in the metaclass:
> >
> >     enum_class.__module__ = sys._getframe(1).f_globals['__name__']
> >
> > This works fine for Cpython, but what about the others?
> Regardless of that, perhaps we should come up with better ways to do this.

Two things that were suggested in private:

1) ask users to pass the module name to the convenience function
explicitly (i.e. pass "seasonmodule.Season" instead of "Season" as the
class "name"). Guido doesn't like it :-)

2) dicth the "convenience function" and replace it with a regular
class-based syntax. Ethan doesn't like it :-)



More information about the Python-Dev mailing list