Your message dated Sun, 25 Sep 2016 17:06:39 +0000 with message-id <[email protected]> and subject line Bug#838828: fixed in pyeapi 0.7.0-1 has caused the Debian Bug report #838828, regarding pyeapi: FTBFS 286019 times out of 41990400 (approx 1 every 147 times) to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact [email protected] immediately.) -- 838828: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=838828 Debian Bug Tracking System Contact [email protected] with problems
--- Begin Message ---Package: src:pyeapi Version: 0.6.1-2 Severity: serious Dear maintainer: I tried to build this package in stretch with "dpkg-buildpackage -A" (which is what the "Arch: all" autobuilder would do to build it) but it failed: -------------------------------------------------------------------------------- [...] debian/rules build-indep dh build-indep --with python3,python2,sphinxdoc --buildsystem=pybuild dh_testdir -i -O--buildsystem=pybuild dh_update_autotools_config -i -O--buildsystem=pybuild dh_auto_configure -i -O--buildsystem=pybuild I: pybuild base:184: python2.7 setup.py config running config I: pybuild base:184: python3.5 setup.py config running config debian/rules override_dh_auto_build make[1]: Entering directory '/<<PKGBUILDDIR>>' dh_auto_build I: pybuild base:184: /usr/bin/python setup.py build [... snipped ...] test_make_connection_raises_typeerror (test_client.TestClient) ... ok test_missing_connection_raises_attribute_error (test_client.TestClient) ... ok test_node_hasattr_connection (test_client.TestClient) ... ok test_node_repr_returns (test_client.TestClient) ... ok test_node_returns_cached_startup_confgi (test_client.TestClient) ... ok test_node_returns_running_config (test_client.TestClient) ... ok test_node_returns_startup_config (test_client.TestClient) ... ok test_node_str_returns (test_client.TestClient) ... ok test_api_autoloader (test_client.TestNode) ... ok test_config_with_multiple_commands (test_client.TestNode) ... ok test_config_with_multiple_multilines (test_client.TestNode) ... ok test_config_with_single_command (test_client.TestNode) ... ok test_config_with_single_multiline (test_client.TestNode) ... ok test_enable_authentication (test_client.TestNode) ... ok test_enable_with_config_statement (test_client.TestNode) ... ok test_enable_with_multiple_commands (test_client.TestNode) ... ok test_enable_with_single_command (test_client.TestNode) ... ok test_get_config (test_client.TestNode) ... ok test_get_config_as_string (test_client.TestNode) ... ok test_get_config_raises_type_error (test_client.TestNode) ... ok test_collapse_mixed (test_utils.TestUtils) ... ok test_collapse_range (test_utils.TestUtils) ... ok test_collapse_singles (test_utils.TestUtils) ... ok test_debug (test_utils.TestUtils) ... ok test_expand_mixed (test_utils.TestUtils) ... ok test_expand_range (test_utils.TestUtils) ... ok test_expand_singles (test_utils.TestUtils) ... ok test_import_module (test_utils.TestUtils) ... ok test_import_module_raises_import_error (test_utils.TestUtils) ... ok test_load_module (test_utils.TestUtils) ... ok test_load_module_raises_import_error (test_utils.TestUtils) ... ok test_make_iterable_from_iterable (test_utils.TestUtils) ... ok test_make_iterable_from_string (test_utils.TestUtils) ... ok test_make_iterable_raises_type_error (test_utils.TestUtils) ... ok ====================================================================== FAIL: test_isvlan_with_string (test_api_vlans.TestApiVlans) ---------------------------------------------------------------------- Traceback (most recent call last): File "/<<PKGBUILDDIR>>/.pybuild/pythonX.Y_2.7/build/test/unit/test_api_vlans.py", line 52, in test_isvlan_with_string self.assertFalse(pyeapi.api.vlans.isvlan(random_string())) AssertionError: True is not false ---------------------------------------------------------------------- Ran 333 tests in 0.233s FAILED (failures=1) E: pybuild pybuild:276: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/pythonX.Y_2.7/build; python2.7 -m unittest discover -v test/unit dh_auto_test: pybuild --test -i python{version} -p 2.7 returned exit code 13 debian/rules:6: recipe for target 'build-indep' failed make: *** [build-indep] Error 25 dpkg-buildpackage: error: debian/rules build-indep gave error exit status 2 -------------------------------------------------------------------------------- The failing test creates a random string and then ensures that it's not a valid vlan value (a number between 1 and 4094). So this is what happens: 1 out of 50 times the string will have length 1. Of those, 9 out of 10+26 times the string will be a valid vlan. (from 1 to 9) 1 out of 50 times the string will have length 2. Of those, 90 out of (10+26)**2 times the string will be a valid vlan. (from 10 to 99) 1 out of 50 times the string will have length 3. Of those, 900 out of (10+26)**3 times the string will be a valid vlan. (from 100 to 999) 1 out of 50 times the string will have length 4. Of those, 3094 out of (10+26)**4 times the string will be a valid vlan. (from 1000 to 4094) So I estimate that the probability that this fails is: 1/50*(9/b+90/b**2+900/b**3+3094/b**4) = 286019/41990400, where b=10+26, i.e. approximately once every 147 times, which of course is > 0 and not good enough. To see how easy this is to happen, just try the program below. TLDR: Please disable such test, we want tests to always succeed, not just "most of the time". Thanks. #!/usr/bin/python import random import string def isvlan(value): try: value = int(value) return value in range(1, 4095) except ValueError: return False def random_string(minchar=1, maxchar=50): return ''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(random.randint(minchar, maxchar))) while True: r=random_string() if isvlan(r): print r
--- End Message ---
--- Begin Message ---Source: pyeapi Source-Version: 0.7.0-1 We believe that the bug you reported is fixed in the latest version of pyeapi, which is due to be installed in the Debian FTP archive. A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to [email protected], and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Vincent Bernat <[email protected]> (supplier of updated pyeapi package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing [email protected]) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Format: 1.8 Date: Sun, 25 Sep 2016 17:42:47 +0200 Source: pyeapi Binary: python-pyeapi python3-pyeapi python-pyeapi-doc Architecture: source all Version: 0.7.0-1 Distribution: unstable Urgency: medium Maintainer: Vincent Bernat <[email protected]> Changed-By: Vincent Bernat <[email protected]> Description: python-pyeapi - Python API to interact with EOS network devices - Python 2.x python-pyeapi-doc - Python API to interact with EOS network devices - docs python3-pyeapi - Python API to interact with EOS network devices - Python 3.x Closes: 838828 Changes: pyeapi (0.7.0-1) unstable; urgency=medium . * New upstream version. * d/patches: fix test case when random is a valid VLAN. Closes: #838828. Checksums-Sha1: 182406269a3e0e6b0be6787acc0fff7d0b6acf9f 2245 pyeapi_0.7.0-1.dsc 4024662ccd4f2915508a0e65698209967dd4ea5b 120412 pyeapi_0.7.0.orig.tar.gz 748d927e37e1beeee7b86ac6b5c73b19d86a92f5 3708 pyeapi_0.7.0-1.debian.tar.xz cb12e25f340e673ce9242f46287fcf1325792aad 39370 python-pyeapi-doc_0.7.0-1_all.deb 98c41cb4e72f95b114ff3f79f1c9a112ba125713 45770 python-pyeapi_0.7.0-1_all.deb dc36191a8a9f755f435bb4bff674c57947265188 45846 python3-pyeapi_0.7.0-1_all.deb Checksums-Sha256: c275000a882db0a2c9cc34adea02c41f369dc52c0525417c3f77bbcc554fec8e 2245 pyeapi_0.7.0-1.dsc 27dd247be90628ff578ad8b21a2815cf841048b8af1b01335adee2ac118579a9 120412 pyeapi_0.7.0.orig.tar.gz a4ecf0f5fbe9297f657c155a870cb88728eb70d3ac0bb11452def942efece54e 3708 pyeapi_0.7.0-1.debian.tar.xz 00fec096d9d475b32f5d85134f0ac3754a81e1569b2163ad6f8a3aa9bd6096fe 39370 python-pyeapi-doc_0.7.0-1_all.deb 12b766eb9e1a2a5b428ebe2b532063d92c33e9971306c5a4130890cb7b19b86d 45770 python-pyeapi_0.7.0-1_all.deb 63adf6fd64950d72e449fc4f85ff1e3c455fd3e932da3b4bc06f2cc551cb3b6d 45846 python3-pyeapi_0.7.0-1_all.deb Files: 77f372aa0342a0422f1911dc10f85e49 2245 python optional pyeapi_0.7.0-1.dsc 8fdfa80b73ce7a83f1e27476948ea680 120412 python optional pyeapi_0.7.0.orig.tar.gz 8c1b927fb8661e524c75533c26719b19 3708 python optional pyeapi_0.7.0-1.debian.tar.xz f22c22e5aec64a485cec07a45a13df61 39370 doc extra python-pyeapi-doc_0.7.0-1_all.deb c33faa776ab4711d1f241e1f7bbcdfc7 45770 python optional python-pyeapi_0.7.0-1_all.deb a7c7627d9c4b663edcf42ff0ef4775c4 45846 python optional python3-pyeapi_0.7.0-1_all.deb -----BEGIN PGP SIGNATURE----- iQIvBAEBCAAZBQJX5/EZEhxiZXJuYXRAZGViaWFuLm9yZwAKCRCVpC/oNTUl+QnO D/93da9kgXgcSLgvHQARdA/ZLh//+mJdFinAiTegUrQ8VHYgC21ULHUbOr8Pk1uR gOdrY2jkHQVs82lG92KHETurUU1sG9t2suUFzU9DckJdPQ6rvWKAO5ehp76fidP7 6mJIE7jqpDyThB2xz4ri7s6MdM24tU96JGgbQY2sNJshqMnZE60bA2yAPQuDsWi/ b2FtY2+dE+gpCXFv9vpsDhFznlL3agfFySrq9xBrwBvNZbRf3kJqqw/3R86rOCw4 vuM6uNbro7Qhk1JAKy73fr1aFxLQuuH9HBFNxbV0aZW+LkhLz/JCzAR+J6ORQ6mO 8F0ejHvBu11ED5LgA01WsmV7RghCgYch/xHAHQegqmmmvEX1GVPvcJ4H06+Asjy1 jJK2+9B3/Ez6VU/vMqFkk4/QkB2j04RbaPKVZw9A+Uvn333jvGhQuWojDd0uXLXm b1U7c6BBY+nTmMjgjlrIePtkjPFXzOVLV3twx1IwB5sY8znrTbj8GSpg82IxhPOq v0PJDv7RSwCp9uPX+lXorUvz8xvzjpeZa9g5BqfRfpoW+o86QUhwt/1hC307raA/ hzV5t8oPBUgvgJM6/g4/+jUZIhWR+7LWGJkBVeE9LdI8OEsJ4yxP3hifwsSIxVop Fsyw2EA/6W+/lhS84nZS3JRSKbYCMUJ3X3+LSzPMGruDnw== =0JqG -----END PGP SIGNATURE-----
--- End Message ---

