Package: src:python-webob Version: 1:1.8.9-1 Severity: serious Tags: ftbfs forky sid
Dear maintainer: During a rebuild of all packages in unstable, this package failed to build. Below you will find the last part of the build log (probably the most relevant part, but not necessarily). If required, the full build log is available here: https://people.debian.org/~sanvila/build-logs/202512/ About the archive rebuild: The build was made on virtual machines from AWS, using sbuild and a reduced chroot with only build-essential packages. If you cannot reproduce the bug please contact me privately, as I am willing to provide ssh access to a virtual machine where the bug is fully reproducible. If this is really a bug in one of the build-depends, please use reassign and add an affects on src:python-webob, so that this is still visible in the BTS web page for this package. Thanks. -------------------------------------------------------------------------------- [...] debian/rules clean dh clean --buildsystem=pybuild dh_auto_clean -O--buildsystem=pybuild I: pybuild base:317: python3.14 setup.py clean /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: MIT License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running clean removing '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build' (and everything under it) 'build/bdist.linux-x86_64' does not exist -- can't clean it 'build/scripts-3.14' does not exist -- can't clean it I: pybuild base:317: python3.13 setup.py clean /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: MIT License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running clean removing '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build' (and everything under it) 'build/bdist.linux-x86_64' does not exist -- can't clean it 'build/scripts-3.13' does not exist -- can't clean it dh_autoreconf_clean -O--buildsystem=pybuild dh_clean -O--buildsystem=pybuild debian/rules binary dh binary --buildsystem=pybuild dh_update_autotools_config -O--buildsystem=pybuild dh_autoreconf -O--buildsystem=pybuild dh_auto_configure -O--buildsystem=pybuild I: pybuild base:317: python3.14 setup.py config /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: MIT License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running config I: pybuild base:317: python3.13 setup.py config /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: MIT License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running config dh_auto_build -O--buildsystem=pybuild I: pybuild base:317: /usr/bin/python3.14 setup.py build /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: MIT License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running build running build_py creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/cookies.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/static.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/dec.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/response.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/byterange.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/util.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/etag.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/exc.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/client.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/descriptors.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/multidict.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/headers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/compat.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/cachecontrol.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/request.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/datetime_utils.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/acceptparse.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob copying src/webob/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_webob/build/webob I: pybuild base:317: /usr/bin/python3 setup.py build /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: MIT License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running build running build_py creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/cookies.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/static.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/dec.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/response.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/byterange.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/util.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/etag.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/exc.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/client.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/descriptors.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/multidict.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/headers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/compat.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/cachecontrol.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/request.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/datetime_utils.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/acceptparse.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob copying src/webob/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_webob/build/webob debian/rules override_dh_auto_test make[1]: Entering directory '/<<PKGBUILDDIR>>' # enable network, tests.test_in_wsgiref.test_request_reading needs it set -e ; for vers in `py3versions -vr` ; do \ http_proxy='' PYTHONPATH=.:/<<PKGBUILDDIR>>/src python$vers -m pytest tests ; \ done py3versions: no X-Python3-Version in control file, using supported versions ============================= test session starts ============================== platform linux -- Python 3.14.2, pytest-9.0.2, pluggy-1.6.0 rootdir: /<<PKGBUILDDIR>> configfile: setup.cfg plugins: typeguard-4.4.4 collected 2390 items tests/test_acceptparse.py .............................................. [ 1%] ........................................................................ [ 4%] ........................................................................ [ 7%] ........................................................................ [ 10%] ........................................................................ [ 13%] ........................................................................ [ 16%] ........................................................................ [ 20%] ........................................................................ [ 23%] ........................................................................ [ 26%] ........................................................................ [ 29%] ........................................................................ [ 32%] ........................................................................ [ 35%] ........................................................................ [ 38%] ........................................................................ [ 41%] ........................................................................ [ 44%] ........................................................................ [ 47%] ........................................................................ [ 50%] ........................................................ [ 52%] tests/test_byterange.py ............... [ 53%] tests/test_cachecontrol.py ............................... [ 54%] tests/test_client.py ............. [ 54%] tests/test_client_functional.py .... [ 55%] tests/test_compat.py ........... [ 55%] tests/test_cookies.py .............................................s.s.s [ 57%] ................................................ [ 59%] tests/test_cookies_bw.py . [ 59%] tests/test_datetime_utils.py ...... [ 59%] tests/test_dec.py ......................... [ 61%] tests/test_descriptors.py .............................................. [ 62%] ........................................................................ [ 65%] ......... [ 66%] tests/test_etag.py .......................... [ 67%] tests/test_etag_nose.py ....... [ 67%] tests/test_exc.py ........................................ [ 69%] tests/test_headers.py ................. [ 70%] tests/test_in_wsgiref.py .F [ 70%] tests/test_misc.py ...s.........s. [ 70%] tests/test_multidict.py ................................................ [ 72%] ........................................................................ [ 75%] [ 75%] tests/test_request.py .................................................. [ 77%] ........................................................................ [ 80%] ........................................................................ [ 83%] ...................................................................s.s.s [ 86%] ..............................s......................................... [ 89%] ............................................... [ 91%] tests/test_response.py ................................................. [ 93%] .........x.............................................................. [ 96%] ....................................... [ 98%] tests/test_static.py .................... [ 99%] tests/test_transcode.py ...... [ 99%] tests/test_util.py ....... [100%] =================================== FAILURES =================================== ___________________________ test_interrupted_request ___________________________ req = <Request at 0x7f2eddc8ae40 POST http://localhost:62496/readline> def _req_int_readline(req): try: > assert req.body_file.readline() == b'a=b\n' ^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_in_wsgiref.py:91: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <LimitedLengthFile(<_io.BufferedReader name=-1>, maxlen=100000)> buff = <memory at 0x7f2edea44a00> def readinto(self, buff): if not self.remaining: return 0 sz0 = min(len(buff), self.remaining) data = self.file.read(sz0) sz = len(data) self.remaining -= sz if sz < sz0 and self.remaining: > raise DisconnectionError( "The client disconnected while sending the body " "(%d more bytes were expected)" % (self.remaining,) ) E webob.request.DisconnectionError: The client disconnected while sending the body (89994 more bytes were expected) src/webob/request.py:1542: DisconnectionError During handling of the above exception, another exception occurred: serve = <function serve.<locals>._serve at 0x7f2eddc9dd20> @pytest.mark.usefixtures("serve") def test_interrupted_request(serve): with serve(_test_app_req_interrupt) as server: for path in _test_ops_req_interrupt: _send_interrupted_req(server, path) try: res = _global_res.get(timeout=1) except Empty: raise AssertionError("Error during test %s", path) if res is not None: print("Error during test:", path) > reraise(res) tests/test_in_wsgiref.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ src/webob/compat.py:78: in reraise raise exc tests/test_in_wsgiref.py:74: in _test_app_req_interrupt op(req) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ req = <Request at 0x7f2eddc8ae40 POST http://localhost:62496/readline> def _req_int_readline(req): try: assert req.body_file.readline() == b'a=b\n' except IOError: # too early to detect disconnect > raise AssertionError("False disconnect alert") E AssertionError: False disconnect alert tests/test_in_wsgiref.py:94: AssertionError ----------------------------- Captured stdout call ----------------------------- Error during test: /readline =============================== warnings summary =============================== tests/test_client_functional.py::test_client tests/test_client_functional.py::test_no_content_length tests/test_client_functional.py::test_client_cookies tests/test_client_functional.py::test_client_slow tests/test_in_wsgiref.py::test_request_reading tests/test_in_wsgiref.py::test_interrupted_request /<<PKGBUILDDIR>>/tests/conftest.py:53: DeprecationWarning: setDaemon() is deprecated, set the daemon attribute instead worker.setDaemon(True) tests/test_cookies.py: 6 warnings tests/test_response.py: 5 warnings /<<PKGBUILDDIR>>/src/webob/cookies.py:238: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). v = datetime.utcnow() + v tests/test_request.py::TestRequest_functional::test_request_put /<<PKGBUILDDIR>>/src/webob/acceptparse.py:1262: DeprecationWarning: The behavior of .__contains__ for the Accept classes is currently being maintained for backward compatibility, but it will change in the future to better conform to the RFC. warnings.warn( tests/test_request.py::TestRequest_functional::test_request_put /<<PKGBUILDDIR>>/src/webob/acceptparse.py:645: DeprecationWarning: The behavior of AcceptValidHeader.__contains__ is currently being maintained for backward compatibility, but it will change in the future to better conform to the RFC. warnings.warn( tests/test_response.py::test_set_cookie_expires_is_datetime_and_max_age_is_None /<<PKGBUILDDIR>>/tests/test_response.py:867: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). then = datetime.datetime.utcnow() + datetime.timedelta(days=1) tests/test_response.py::test_set_cookie_expires_is_datetime_and_max_age_is_None tests/test_response.py::test_set_cookie_expires_is_timedelta_and_max_age_is_None tests/test_response.py::test_set_cookie_expires_is_datetime_tz_and_max_age_is_None /<<PKGBUILDDIR>>/src/webob/response.py:1037: DeprecationWarning: Argument "expires" will be removed in a future version of WebOb, please use "max_age". warn_deprecation('Argument "expires" will be removed in a future ' tests/test_response.py::test_set_cookie_expires_is_datetime_and_max_age_is_None tests/test_response.py::test_set_cookie_expires_is_datetime_tz_and_max_age_is_None /<<PKGBUILDDIR>>/src/webob/response.py:1054: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). max_age = expires - datetime.utcnow() tests/test_response.py::test_cache_expires_set tests/test_response.py::test_cache_expires_set_zero tests/test_response.py::test_cache_expires_set_zero_then_nonzero /<<PKGBUILDDIR>>/src/webob/response.py:1199: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). self.expires = datetime.utcnow() tests/test_response.py::test_cache_expires_set tests/test_response.py::test_cache_expires_set_zero tests/test_response.py::test_cache_expires_set_zero_then_nonzero /<<PKGBUILDDIR>>/src/webob/response.py:1201: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). self.last_modified = datetime.utcnow() tests/test_response.py::test_cache_expires_set_timedelta tests/test_response.py::test_cache_expires_set_int tests/test_response.py::test_cache_expires_set_zero_then_nonzero /<<PKGBUILDDIR>>/src/webob/response.py:1206: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). self.expires = datetime.utcnow() + timedelta(seconds=seconds) -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED tests/test_in_wsgiref.py::test_interrupted_request - AssertionError: F... ====== 1 failed, 2379 passed, 9 skipped, 1 xfailed, 34 warnings in 5.04s ======= make[1]: *** [debian/rules:12: override_dh_auto_test] Error 1 make[1]: Leaving directory '/<<PKGBUILDDIR>>' make: *** [debian/rules:8: binary] Error 2 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 --------------------------------------------------------------------------------

