__init__.py 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. __all__ = [
  2. "BaseExceptionGroup",
  3. "ExceptionGroup",
  4. "catch",
  5. "format_exception",
  6. "format_exception_only",
  7. "print_exception",
  8. "print_exc",
  9. "suppress",
  10. ]
  11. import os
  12. import sys
  13. from ._catch import catch
  14. from ._version import version as __version__ # noqa: F401
  15. if sys.version_info < (3, 11):
  16. from ._exceptions import BaseExceptionGroup, ExceptionGroup
  17. from ._formatting import (
  18. format_exception,
  19. format_exception_only,
  20. print_exc,
  21. print_exception,
  22. )
  23. if os.getenv("EXCEPTIONGROUP_NO_PATCH") != "1":
  24. from . import _formatting # noqa: F401
  25. BaseExceptionGroup.__module__ = __name__
  26. ExceptionGroup.__module__ = __name__
  27. else:
  28. from traceback import (
  29. format_exception,
  30. format_exception_only,
  31. print_exc,
  32. print_exception,
  33. )
  34. BaseExceptionGroup = BaseExceptionGroup
  35. ExceptionGroup = ExceptionGroup
  36. if sys.version_info < (3, 12, 1):
  37. from ._suppress import suppress
  38. else:
  39. from contextlib import suppress