On Sat, Feb 21, 2015 at 1:28 PM, Serhiy Storchaka <storch...@gmail.com> wrote: > /* Namespaces are one honking great idea -- let's do more of those! */ > > There are two ways to avoid name conflicts: prefixes and namespaces. > Programming languages that lacks namespaces (such as C) need to use > prefixes. For example: PROTOCOL_SSLv2, PROTOCOL_SSLv3, PROTOCOL_SSLv23. > Python used the same prefixed names when reflect C constants to module level > Python globals. But when convert integer constants to IntEnum, is it needed > to preserve common prefix? Or may be we can drop it, because enum class name > plays its role? > > class Protocol(IntEnum): > PROTOCOL_SSLv2 = ... > PROTOCOL_SSLv3 = ... > PROTOCOL_SSLv23 = ... > > or > > class Protocol(IntEnum): > SSLv2 = ... > SSLv3 = ... > SSLv23 = ... > > ? Protocol.PROTOCOL_SSLv2 or Protocol.SSLv2?
So I like the latter (Protocol.SSLv2) but would qualify that with the request that ssl.PROTOCOL_SSLv2 continue to work until Python 2 is dead and libraries like requests, urllib3, httplib2, etc. no longer need to support those versions. _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com