Skip to content

v2.0.0

Compare
Choose a tag to compare
@yilei yilei released this 19 Sep 17:29
· 12 commits to main since this release

New

  • Support Python 3.12.

Changed

  • absl-py no longer supports Python 3.6. It has reached end-of-life for more
    than a year now.
  • (logging) logging.exception can now take exc_info as argument, with
    default value True. Prior to this change setting exc_info would raise
    KeyError, this change fixes this behaviour.
  • (testing) For Python 3.11+, the calls to absltest.TestCase.enter_context
    are forwarded to unittest.TestCase.enterContext (when called via instance)
    or unittest.TestCase.enterClassContext (when called via class) now. As a
    result, on Python 3.11+, the private _cls_exit_stack attribute is not
    defined on absltest.TestCase and _exit_stack attribute is not defined on
    its instances.
  • (testing) absltest.TestCase.assertSameStructure() now uses the test case's
    equality functions (registered with TestCase.addTypeEqualityFunc()) for
    comparing leaves of the structure.
  • (testing) abslTest.TestCase.fail() now names its arguments
    (self, msg=None, user_msg=None), and not (self, msg=None, prefix=None),
    better reflecting the behavior and usage of the two message arguments.
  • DEFINE_enum, DEFINE_multi_enum, and EnumParser now raise errors when
    enum_values is provided as a single string value. Additionally,
    EnumParser.enum_values is now stored as a list copy of the provided
    enum_values parameter.
  • (testing) Updated paramaterized.CoopTestCase() to use Python 3 metaclass
    idioms. Most uses of this function continued working during the Python 3
    migration still worked because a Python 2 compatibility __metaclass__
    variables also existed. Now pure Python 3 base classes without backwards
    compatibility will work as intended.
  • (testing) absltest.TestCase.assertSequenceStartsWith now explicitly fail
    when passed a Mapping or Set object as the whole argument.