Source: streamlink Version: 8.4.0-2 Severity: serious X-Debbugs-CC: [email protected] Tags: sid forky User: [email protected] Usertags: needs-update Control: affects -1 src:requests
Dear maintainer(s),With a recent upload of requests the autopkgtest of streamlink fails in testing when that autopkgtest is run with the binary packages of requests from unstable. It passes when run with only packages from testing. In tabular form:
pass fail
requests from testing 2.34.2-1
streamlink from testing 8.4.0-2
all others from testing from testing
I copied some of the output at the bottom of this report.
Currently this regression is blocking the migration of requests to
testing [1]. Of course, requests shouldn't just break your autopkgtest
(or even worse, your package), but it seems to me that the change in
requests was intended and your package needs to update to the new situation.
If this is a real problem in your package (and not only in your autopkgtest), the right binary package(s) from requests should really add a versioned Breaks on the unfixed version of (one of your) package(s). Note: the Breaks is nice even if the issue is only in the autopkgtest as it helps the migration software to figure out the right versions to combine in the tests.
More information about this bug and the reason for filing it can be found on https://wiki.debian.org/ContinuousIntegration/RegressionEmailInformation Paul [1] https://qa.debian.org/excuses.php?package=requests https://ci.debian.net/data/autopkgtest/testing/amd64/s/streamlink/73952325/log.gz=================================== FAILURES =================================== 89s ______________________ TestHTTPSession.test_read_timeout _______________________ 89s 89s self = <tests.session.test_http.TestHTTPSession object at 0x7fd1d18287d0> 89s monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fd1d184d080>
89s 89s def test_read_timeout(self, monkeypatch: pytest.MonkeyPatch): 89s mock_sleep = Mock() 89s mock_request = Mock(side_effect=requests.Timeout)89s monkeypatch.setattr("streamlink.session.http.time.sleep", mock_sleep) 89s monkeypatch.setattr("streamlink.session.http.Session.request", mock_request)
89s 89s session = HTTPSession()89s with pytest.raises(PluginError, match=r"^Unable to open URL: http://localhost/"): 89s session.get("http://localhost/", timeout=123, retries=3, retry_backoff=2, retry_max_backoff=5)
89s 89s > assert mock_request.call_args_list == [89s call("GET", "http://localhost/", headers={}, params={}, timeout=123, proxies={}, allow_redirects=True), 89s call("GET", "http://localhost/", headers={}, params={}, timeout=123, proxies={}, allow_redirects=True), 89s call("GET", "http://localhost/", headers={}, params={}, timeout=123, proxies={}, allow_redirects=True), 89s call("GET", "http://localhost/", headers={}, params={}, timeout=123, proxies={}, allow_redirects=True),
89s ]89s E AssertionError: assert [call('GET', ...directs=True)] == [call('GET', ...directs=True)] 89s E 89s E At index 0 diff: call('GET', 'http://localhost/', headers={}, params=None, timeout=123, proxies={}, allow_redirects=True) != call('GET', 'http://localhost/', headers={}, params={}, timeout=123, proxies={}, allow_redirects=True)
89s E Use -v to get more diff 89s 89s tests/session/test_http.py:167: AssertionError89s =============================== warnings summary ===============================
89s tests/session/test_http.py: 1 warning 89s tests/test_validate.py: 8 warnings 89s tests/test_plugins.py: 662 warnings 89s tests/plugins/test_rtpplay.py: 1 warning 89s tests/cli/console/test_progress.py: 1 warning89s /usr/lib/python3/dist-packages/_pytest/fixtures.py:1313: PytestRemovedIn10Warning: Class-scoped fixture defined as instance method is deprecated. 89s Instance attributes set in this fixture will NOT be visible to test methods, 89s as each test gets a new instance while the fixture runs only once per class.
89s Use @classmethod decorator and set attributes on cls instead.89s See https://docs.pytest.org/en/stable/deprecations.html#class-scoped-fixture-as-instance-method
89s fixturefunc = resolve_fixture_function(fixturedef, request)89s 89s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 89s =========================== short test summary info ============================ 89s FAILED tests/session/test_http.py::TestHTTPSession::test_read_timeout - Asser... 89s ========== 1 failed, 7104 passed, 36 skipped, 673 warnings in 15.14s ===========
91s autopkgtest [14:23:03]: test command1
OpenPGP_signature.asc
Description: OpenPGP digital signature

