Bug#854539: python-irc: Non-determistically FTBFS due to unreliable timing in tests

Chris Lamb lamby at debian.org
Wed Feb 8 06:23:07 UTC 2017


Source: python-irc
Version: 8.5.3+dfsg-3
Severity: serious
Justification: fails to build from source
User: reproducible-builds at lists.alioth.debian.org
Usertags: ftbfs
X-Debbugs-Cc: reproducible-bugs at lists.alioth.debian.org

Dear Maintainer,

python-irc's testsuite appears to use method timing/benchmarking in
such a way that it will non-deterministically FTBFS:

  […]

     dh_auto_test -O--buildsystem=pybuild
  I: pybuild base:184: cd /build/python-irc-8.5.3+dfsg/2nd/.pybuild/pythonX.Y_2.7/build; python2.7 -m pytest -k "not test_version"
  ============================= test session starts ==============================
  platform linux2 -- Python 2.7.13, pytest-3.0.5, py-1.4.32, pluggy-0.4.0
  rootdir: /build/python-irc-8.5.3+dfsg/2nd, inifile: setup.cfg
  collected 38 items
  
  irc/bot.py .
  irc/buffer.py ..
  irc/client.py ...
  irc/dict.py .
  irc/features.py ...
  irc/functools.py .
  irc/modes.py ...
  irc/strings.py ..
  irc/util.py ..
  irc/tests/test_bot.py .........
  irc/tests/test_client.py ...F.
  irc/tests/test_schedule.py .....
  
  =================================== FAILURES ===================================
  ____________________ TestThrottler.test_function_throttled _____________________
  
  self = <irc.tests.test_client.TestThrottler object at 0xb663cb0c>
  
      def test_function_throttled(self):
              """
      		Ensure the throttler actually throttles calls.
      		"""
              # set up a function to be called
              counter = itertools.count()
              # set up a version of `next` that is only called 30 times per second
              limited_next = irc.client.Throttler(next, 30)
              # for one second, call next as fast as possible
              deadline = time.time() + 1
              while time.time() < deadline:
                      limited_next(counter)
              # ensure the counter was advanced about 30 times
  >           assert 29 <= next(counter) <= 32
  E           assert 29 <= 26
  E            +  where 26 = next(count(27))
  
  irc/tests/test_client.py:61: AssertionError
  ============================ pytest-warning summary ============================
  WC1 None [pytest] section in setup.cfg files is deprecated, use [tool:pytest] instead.
  ============================== 1 tests deselected ==============================
  ===== 1 failed, 36 passed, 1 deselected, 1 pytest-warnings in 6.44 seconds =====
  E: pybuild pybuild:276: test: plugin distutils failed with: exit code=1: cd /build/python-irc-8.5.3+dfsg/2nd/.pybuild/pythonX.Y_2.7/build; python2.7 -m pytest -k "not test_version"
  dh_auto_test: pybuild --test --test-pytest -i python{version} -p 2.7 returned exit code 13
  debian/rules:21: recipe for target 'build' failed
  make: *** [build] Error 25
  dpkg-buildpackage: error: debian/rules build gave error exit status 2
  I: copying local configuration
  E: Failed autobuilding of package

  […]

The full build log is attached or can be viewed here:

    https://tests.reproducible-builds.org/debian/logs/unstable/i386/python-irc_8.5.3+dfsg-3.build2.log.gz


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      lamby at debian.org / chris-lamb.co.uk
       `-
-------------- next part --------------
A non-text attachment was scrubbed...
Name: python-irc.8.5.3+dfsg-3.logs.unstable.log.txt.gz
Type: application/octet-stream
Size: 7138 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/reproducible-bugs/attachments/20170208/5661c808/attachment.obj>


More information about the Reproducible-bugs mailing list