-
Notifications
You must be signed in to change notification settings - Fork 432
Open
Description
Expected Behavior
liberty tests pass
Actual Behavior
liberty tests fail with the following error:
**********************************************************************
File "$SRC_DIR/skywater-pdk/scripts/python-skywater-pdk/skywater_pdk/liberty.py", line 68, in __main__.TimingType
Failed example:
(TimingType.leakage | TimingType.ccsnoise).names()
Expected:
'basic, ccsnoise, leakage'
Got:
'basic, leakage'
**********************************************************************
File "$SRC_DIR/skywater-pdk/scripts/python-skywater-pdk/skywater_pdk/liberty.py", line 71, in __main__.TimingType
Failed example:
TimingType.ccsnoise.names()
Expected:
'basic, ccsnoise'
Got:
'basic'
**********************************************************************
1 items had failures:
2 of 10 in __main__.TimingType
***Test Failed*** 2 failures.
Steps to Reproduce the Problem
- python3.11 -m skywater_pdk.liberty -v
Specifications
- Version: HEAD
- Platform: python 3.11
This is due as a behavioral change in python 3.11 for Flag/IntFlag iteration, see python/cpython#99304.
Now Python 3.11 only returns canonical flags during iteration as documented here:
https://docs.python.org/3/howto/enum.html#flag-and-intflag-minutia:~:text=only%20canonical%20flags%20are%20returned%20during%20iteration%3A
__members__ needs to be used to also get aliases.
Metadata
Metadata
Assignees
Labels
No labels