New submission from Miro Hrončok <m...@hroncok.cz>: With the change introduced in https://bugs.python.org/issue38250 https://github.com/python/cpython/commit/7aaeb2a3d682ecba125c33511e4b4796021d2f82 I observe a regression in behavior of enum.IntFlag with missing values.
Consider this code (from pyproj): from enum import IntFlag class GeodIntermediateFlag(IntFlag): DEFAULT = 0x0 NPTS_MASK = 0xF NPTS_ROUND = 0x0 NPTS_CEIL = 0x1 NPTS_TRUNC = 0x2 DEL_S_MASK = 0xF0 DEL_S_RECALC = 0x00 DEL_S_NO_RECALC = 0x10 AZIS_MASK = 0xF00 AZIS_DISCARD = 0x000 AZIS_KEEP = 0x100 This is a valid code in Python 3.9, however produces a TypeError in Python 3.10.0b1: Traceback (most recent call last): File "intflag.py", line 3, in <module> class GeodIntermediateFlag(IntFlag): File "/usr/lib64/python3.10/enum.py", line 544, in __new__ raise TypeError( TypeError: invalid Flag 'GeodIntermediateFlag' -- missing values: 4, 8, 32, 64, 128, 512, 1024, 2048 Since I don't see this behavior mentioned in https://docs.python.org/3.10/library/enum.html or https://docs.python.org/3.10/whatsnew/3.10.html or https://docs.python.org/3.10/whatsnew/changelog.html I believe this is a regression. ---------- components: Library (Lib) messages: 394457 nosy: John Belmonte, Manjusaka, ethan.furman, hauntsaninja, hroncok, jbelmonte, veky priority: normal severity: normal status: open title: enum.IntFlag regression: missing values cause TypeError type: behavior versions: Python 3.10 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue44242> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com