Skip to content

build: add urllib3 directly and set it to >=1.26.0 #4950

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Nov 11, 2022

Conversation

bastimeyer
Copy link
Member

Streamlink currently sets the version range of its requests dependency to >=2.26.0,<3.0. requests however still defines its urllib3 dependency version range as >=1.21.1,<1.27 in its 2.26.0-2.28.1 releases, including its current state in git.

Recent fixes in Streamlink's HLS implementation unfortunately were made with methods which are only supported by urllib3 >=1.26.0. This obviously breaks installs with older versions of urllib3 installed which are still supported by the defined version range.

In order to avoid having to backport more urllib3 stuff, moving it from a transitive dependency and defining it as a direct dependency with a specific version range set to >=1.26.0 makes more sense when fixing the issue. This doesn't conflict with the version range defined by requests and forces a bump of old installs of urllib3.

urllib3==1.26.0 was released on 2020-11-10, whereas requests==2.26.0, was released on 2021-07-13, the lowest version of the version range defined by Streamlink.


In addition to defining the direct urllib3 dependency, also remove old compatibility workarounds/bugfixes from plugin.api.http_session.


Resolves #4938

Streamlink currently sets the version range of its `requests` dependency
to `>=2.26.0,<3.0`. `requests` however still defines its `urllib3`
dependency version range as `>=1.21.1,<1.27` in its `2.26.0`-`2.28.1`
releases, including its current state in git.

Recent fixes in Streamlink's HLS implementation unfortunately were made
with methods which are only supported by `urllib3 >=1.26.0`.
This obviously breaks installs with older versions of `urllib3`
installed which are still supported by the defined version range.

In order to avoid having to backport more `urllib3` stuff, moving it
from a transitive dependency and defining it as a direct dependency
with a specific version range set to `>=1.26.0` makes more sense when
fixing the issue. This doesn't conflict with the version range defined
by `requests` and forces a bump of old installs of `urllib3`.

`urllib3==1.26.0` was released on 2020-11-10, whereas
`requests==2.26.0`, was released on 2021-07-13, the lowest version
of the version range defined by Streamlink.

---

In addition to defining the direct `urllib3` dependency, also remove
old compatibility workarounds/bugfixes from `plugin.api.http_session`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

stream.hls: Exception in HLSStreamWriter
2 participants