The documentation for calendar.IllegalMonthError describes it only as "a subclass of ValueError", but the source code defines it as class IllegalMonthError(ValueError, IndexError):.
The IndexError base class is intentional for backwards compatibility (see the source comment in Lib/calendar.py), but this is not mentioned in the docs. Users catching IndexError for bad month numbers won't know their code still works after 3.13.
Linked PRs
The documentation for calendar.IllegalMonthError describes it only as "a subclass of ValueError", but the source code defines it as
class IllegalMonthError(ValueError, IndexError):.The
IndexErrorbase class is intentional for backwards compatibility (see the source comment inLib/calendar.py), but this is not mentioned in the docs. Users catchingIndexErrorfor bad month numbers won't know their code still works after 3.13.Linked PRs