Ethan Onstott
d9a43e20fa
bpo-40025: Require _generate_next_value_ to be defined before members (GH-19098)
require `_generate_next_value_` to be defined before members
6 years ago
HongWeipeng
0b41a922f9
bpo-38045: Improve the performance of _decompose() in enum.py (GH-16483)
* Improve the performance of _decompose() in enum.py
Co-Authored-By: Brandt Bucher <brandtbucher@gmail.com>
7 years ago
Pablo Galindo
293dd23477
Remove binding of captured exceptions when not used to reduce the chances of creating cycles (GH-17246)
Capturing exceptions into names can lead to reference cycles though the __traceback__ attribute of the exceptions in some obscure cases that have been reported previously and fixed individually. As these variables are not used anyway, we can remove the binding to reduce the chances of creating reference cycles.
See for example GH-13135
7 years ago
HongWeipeng
bb16fb2cb8
Doc: Fix spelling errors of 'initial' in enum.py (GH-16314)
7 years ago
Walter Dörwald
323842c279
bpo-34443: Use __qualname__ instead of __name__ in enum exception messages. (GH-14809)
* Use __qualname__ instead of __name__ in enum exception messages.
7 years ago
thatneat
2f19e82fbe
bpo-37479: on Enum subclasses with mixins, __format__ uses overridden __str__ (GH-14545)
* bpo-37479: on Enum subclasses with mixins, __format__ uses overridden __str__
7 years ago
Zachary Ware
19a1e1eb86
bpo-34282: Remove deprecated enum _convert method (GH-13823)
7 years ago
Brennan D Baraban
8b914d2767
bpo-35899: Fix Enum handling of empty and weird strings (GH-11891)
Co-authored-by: Maxwell <maxwellpxt@gmail.com>
Co-authored-by: Stéphane Wirtel <stephane@wirtel.be>
https://bugs.python.org/issue35899
7 years ago
Rémi Lapeyre
1fd06f1eca
bpo-35717: Fix KeyError exception raised when using enums and compile (GH-11523)
https://bugs.python.org/issue17467
7 years ago
Andrew Svetlov
34ae04f74d
Speed-up building enums by value, e.g. http.HTTPStatus(200) ( #11318 )
bpo-35585: Speed up enum by-value lookup
8 years ago
Ethan Furman
cd45385ffa
bpo-34909: keep searching mixins until base class is found (GH-9737)
8 years ago
Ethan Furman
5bdab641da
bpo-29577: Enum: mixin classes don't mix well with already mixed Enums (GH-9328)
* bpo-29577: allow multiple mixin classes
8 years ago
Ethan Furman
019f0a0cb8
bpo-34536: raise error for invalid _missing_ results (GH-9147)
* raise exception if _missing_ returns None or invalid type
8 years ago
orlnub123
0fb9fadd3b
bpo-34282: Fix Enum._convert shadowing members named _convert (GH-8568)
* Fix enum members getting shadowed by parent attributes
* Move Enum._convert to EnumMeta._convert_
* Deprecate _convert
8 years ago
Rahul Jha
9430652535
bpo-33217: Raise TypeError for non-Enum lookups in Enums (GH-6651)
* bpo-33217: Raise TypeError for non-Enum lookups in Enums
8 years ago
INADA Naoki
e57f91a0f0
bpo-33866: enum: Stop using OrderedDict (GH-7698)
8 years ago
anentropic
b8e21f1289
bpo-31947: remove None default for names param in Enum._create_ (GH-4288)
8 years ago
Ethan Furman
a4b1bb4801
bpo-31801: Enum: add _ignore_ as class option ( #5237 )
* bpo-31801: Enum: add _ignore_ as class option
_ignore_ is a list, or white-space seperated str, of names that will not
be candidates for members; these names, and _ignore_ itself, are removed
from the final class.
* bpo-31801: Enum: add documentation for _ignore_
* bpo-31801: Enum: remove trailing whitespace
* bpo-31801: Enum: fix bulleted list format
* bpo-31801: add version added for _ignore_
8 years ago
Serhiy Storchaka
81108375d9
bpo-30152: Reduce the number of imports for argparse. ( #1269 )
9 years ago
Ville Skyttä
49b2734bf1
Spelling fixes ( #2902 )
9 years ago
Dong-hee Na
dcc8ce44c7
bpo-30616: Functional API of enum allows to create empty enums. ( #2304 )
* bpo-30616: Functional API of enum allows to create empty enums.
* Update NEWS
move addition to avoid conflict
9 years ago
Ethan Furman
28cf663ff0
closes issue29167: fix race condition in (Int)Flag
9 years ago
Raymond Hettinger
381dc6c22f
Issue #29103 : Remove unused import. Noticed by Jean-Sebastien Bevilacqua.
10 years ago
Ethan Furman
23bb6f48ea
close issue28172: Change all example enum member names to uppercase, per Guido; patch by Chris Angelico.
10 years ago
Ethan Furman
3515dcce80
issue23591: fix flag decomposition and repr
10 years ago
Ethan Furman
06339e7493
Enum._convert: sort by value, then by name
10 years ago
Ethan Furman
c16595e567
issue23591: add auto() for auto-generating Enum member values
10 years ago
Ethan Furman
27682d2698
issue23591: more docs; slight change to repr
10 years ago
Ethan Furman
25d94bbf05
issue23591: bool(empty_flags) == False; more docs & tests
10 years ago
Ethan Furman
0443953067
issue23591: optimize _high_bit()
10 years ago
Ethan Furman
65a5a47d79
issue23591: add docs; code cleanup; more tests
10 years ago
Ethan Furman
ee47e5cf8a
issue23591: add Flags, IntFlags, and tests
10 years ago
Ethan Furman
e8e61277ff
issue26981: add _order_ compatibility shim to enum.Enum
10 years ago
Ethan Furman
332dbc7325
Issue26988: remove AutoEnum
10 years ago
Ethan Furman
73fc586d9f
Add AutoEnum: automatically provides next value if missing. Issue 26988.
10 years ago
Gregory P. Smith ext:(%20%5BGoogle%20Inc.%5D)
6f20bd6063
signal, socket, and ssl module IntEnum constant name lookups now return a
consistent name for values having multiple names. Ex: signal.Signals(6)
now refers to itself as signal.SIGALRM rather than flipping between that
and signal.SIGIOT based on the interpreter's hash randomization seed.
This helps finish issue27167.
10 years ago
Ethan Furman
3803ad47bb
issue26893: use mro() to examine class heirarchy
10 years ago
Ethan Furman
5de67b106a
Issue26748: Enum classes should evaluate as True
10 years ago
Ethan Furman
60255b67b9
revert change 87a9dff5106c: pure Enum members again evaluate to True;
update Finer Points section of docs to cover boolean evaluation;
add more tests for pure and mixed boolean evaluation
11 years ago
Martin Panter
19e69c5a20
Issue #23883 : Add missing APIs to __all__; patch by Jacek Kołodziej
11 years ago
Ethan Furman
c791507e1f
Issue 25147: add reason for using _collections
11 years ago
Ethan Furman
e5754ab0c4
Close issue25147: use C implementation of OrderedDict
11 years ago
Ethan Furman
6db1fd5fb8
Close issue24840: Enum._value_ is queried for bool(); original patch by Mike Lundy
11 years ago
Ethan Furman
48a724fa33
Close issue23900: add default __doc__ to new enumerations that do not specify one.
11 years ago
Ethan Furman
482fe0477e
issue23673
add private method to enum to support replacing global constants with Enum members:
- search for candidate constants via supplied filter
- create new enum class and members
- insert enum class and replace constants with members via supplied module name
- replace __reduce_ex__ with function that returns member name, so previous Python versions can unpickle
modify IntEnum classes to use new method
11 years ago
Ethan Furman
24e837f231
issue23673
add private method to enum to support replacing global constants with Enum members:
- search for candidate constants via supplied filter
- create new enum class and members
- insert enum class and replace constants with members via supplied module name
- replace __reduce_ex__ with function that returns member name, so previous Python versions can unpickle
modify IntEnum classes to use new method
11 years ago
Ethan Furman
354ecf1ef2
Close issue23486: performance boost for enum member lookup
11 years ago
Ethan Furman
ec5f8eb85f
Issue22506: remove name & value from __dir__ as they now show up automatically
12 years ago
Ethan Furman
0ae550bdde
Issue22506: added methods on base Enum class now show up in dir of Enum subclass (3.4)
12 years ago
Ethan Furman
d9925a18ec
Close issue21706: add 'start' parameter to functional API
12 years ago