Closed
Description
Bug description:
import sys
class InvalidFruitException(Exception):
pass
def eat_fruit(fruit):
if fruit == "banana":
raise InvalidFruitException("no herbs please, only fruit")
if fruit == "rock":
raise InvalidFruitException("too tough")
def demo_continue_loop():
food = ["apple", "rock", "orange", "banana"]
exceptions = []
try:
for i, f in enumerate(food):
try:
eat_fruit(f)
except Exception as e:
e.add_note(f"failed on loop {i=} {f=}")
exceptions.append(e)
if exceptions:
raise ExceptionGroup("multiple errors eating food", exceptions)
finally:
del exceptions # no refcycles please!
def main():
demo_continue_loop()
return 0
if __name__ == "__main__":
sys.exit(main())
here's the output:
https://asciinema.org/a/681263
I'd expect the eat_fruit()
parts to be highlighted in red
CPython versions tested on:
3.13, 3.14
Operating systems tested on:
Linux, macOS
This was added in #112730 but it looks like ExceptionGroups were missed