[Bug 1841072] Re: test_reflection.CallbackEqualityTest.test_different_instance_callbacks fails on Python 3.8

Launchpad Bug Tracker 1841072 at bugs.launchpad.net
Tue Dec 31 18:09:57 UTC 2019

This bug was fixed in the package python-oslo.utils - 3.41.1-0ubuntu2

python-oslo.utils (3.41.1-0ubuntu2) focal; urgency=medium

  * Non-strict relfection comparison is not possible in py3.8+. LP: #1841072
  * Use python3 when detecting module name from setup.py in autopkgtest.

 -- Dimitri John Ledkov <xnox at ubuntu.com>  Mon, 18 Nov 2019 11:23:18

** Changed in: python-oslo.utils (Ubuntu)
       Status: New => Fix Released

You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to python-oslo.utils in Ubuntu.

  fails on Python 3.8

Status in oslo.utils:
Status in python-oslo.utils package in Ubuntu:
  Fix Released
Status in python3-defaults package in Ubuntu:

Bug description:
  When running the unit test on Python 3.8, it fails with the following


  Captured traceback:
      b'Traceback (most recent call last):'
      b'  File "/tmp/oslo.utils/oslo_utils/tests/test_reflection.py", line 156, in test_different_instance_callbacks'
      b'    self.assertTrue(reflection.is_same_callback(b.b, c.b, strict=False))'
      b'  File "/tmp/oslo.utils/.tox/py38/lib/python3.8/site-packages/unittest2/case.py", line 702, in assertTrue'
      b'    raise self.failureException(msg)'
      b'AssertionError: False is not true'

  This is apparently caused by a behavior change in Python 3.8 due to
  [1]. I have confirmed the different behavior by running tests manually
  on 3.6, 3.7 (both return True) and 3.8.

  According to [2], only taskflow seems to be using that method now, and
  it is not changing the default value for the "strict" parameter.

  [1] - https://bugs.python.org/issue1617161
  [2] - http://codesearch.openstack.org/?q=is_same_callback&i=nope&files=&repos=

To manage notifications about this bug go to:

More information about the Ubuntu-openstack-bugs mailing list