pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/multimedia/streamlink
Module Name: pkgsrc
Committed By: yhardy
Date: Mon Mar 2 20:31:12 UTC 2026
Modified Files:
pkgsrc/multimedia/streamlink: Makefile PLIST distinfo
Added Files:
pkgsrc/multimedia/streamlink/patches: patch-build__backend_onbuild.py
patch-setup.py
Log Message:
multimedia/streamlink: update to streamlink-8.1.2
Changelog:
== streamlink 8.1.2 (2026-01-18)
- Fixed: warnings when parsing HLS playlists with private-use language
subtags (#6780)
- Updated plugins:
- youtube: fixed live streams (#6777)
== streamlink 8.1.1 (2026-01-17)
- Fixed: `--stream-segmented-queue-deadline` not being applied
correctly to the Streamlink session options (#6758)
- Changed: `--hls-segment-ignore-names` to not hardcode `.ts` HLS
segment file name extensions (#6747)
- Updated plugins:
- dailymotion: fixed 403 HLS playlist responses (#6773)
- pluto: fixed url matchers and ad detection (#6767)
- soop: fixed CDN mapping for `ld_cdn` based regions (#6749)
- Build: removed unneeded `wheel` dependency from
`build-system.requires` and the `build` dependency
group (#6754)
== streamlink 8.1.0 (2025-12-14)
- Deprecated: `--hls-segment-queue-threshold` in favor of
`--stream-segmented-queue-deadline` (#6734)
- Improved: debug logging of segmented streams (#6730)
- Updated plugins:
- twitch: fixed clips GQL API query (#6744)
- Tests: removed accidental `pytest_cov` dependency when running
tests (#6727)
== streamlink 8.0.0 (2025-11-11)
- BREAKING: dropped support for [EOL Python 3.9]
- BREAKING/API: removed deprecated `url_master` from
`HLSStream`/`MuxedHLSStream`
- BREAKING/dependencies: bumped version requirement of
`urllib3` to `>=2.0.0`
- Added: `--stream-segmented-duration` in favor of `--hls-duration`
(now deprecated), which affects HLS, DASH and other
segmented stream types
- Added: `duration` parameter to `dash://` streams (`DASHStream`)
- Added: `--ffmpeg-validation-timeout` for being able to increase
the time for validating the FFmpeg executable
(`--ffmpeg-ffmpeg`)
- Added: Flatpak player detection for VLC and mpv
- Refactored: parts of the internal `SegmentedStream`, `HLSStream` and
`DASHStream` implementations (WIP)
- Updated plugins:
- aloula: fixed livestream schema
- btv: rewritten and fixed plugin
- chzzk: added support for in-progress VODs via live-rewind streams
- dlive: fixed streams expiring after 5 minutes
- goodgame: updated matches, switched API endpoints
- nhkworld: removed plugin
- rtve: fixed validation schema
- twitch: fixed access token acquirement and various persisted
GraphQL query IDs
- twitch: added `--twitch-supported-codecs` for access to higher
quality streams
- Dependencies: dropped optional `zstandard` dependency on
Python 3.14 and above
- Tests: bumped version requirement of `pytest` to `>=8.4.0`
- Docs: refactored docs config and custom Sphinx extensions, added
`make` options for disabling various components for offline
building
- Docs: fixed compatibility with `docutils==0.22.2`
== streamlink 7.6.0 (2025-09-08)
- Added: official support for Python 3.14
- Added: `--skip` for stopping on existing file outputs without user
prompts
- Added: `CDPClientSession.{apply,retrieve}_cookies()` for copying
cookies between Streamlink's HTTP session and the web browser
- Updated plugins:
- chzzk: added support for live streams with a wider content
availability window
- indihometv: removed plugin
- kick: added `--kick-low-latency`
- lrt: fixed plugin
- mediaklikk: fixed plugin
- vkvideo: renamed to vkvideolive, added VOD support
- Docs: fixed compatibility with `docutils>=0.22` (transitive
dependency)
== streamlink 7.5.0 (2025-07-08)
- Added: `--no-plugin-sideloading` for disabling plugin sideloading
from the default location
- Added: `--no-plugin-cache` for disabling cache file I/O of the
plugin key-value store
- Improved: cache file I/O of the plugin key-value store
- Changed: default log format on the `trace`/`all` log level, with
included thread name
- Fixed: missing thread names for various segmented and muxed streams
- Fixed: pipe write error log messages when muxing streams
- Updated plugins:
- aloula: updated plugin matchers to support new URLs
- goodgame: fixed HLS stream URLs
- mitele: removed plugin
- nowtvtr: restored plugin
- twitcasting: updated plugin to filter out preroll ads
- twitch: changed plugin to always filter out ads,
deprecated `--twitch-disable-ads`
- twitch: forced default User-Agent on access token API request
- twitch: fixed clips validation schema
- Docs: rearranged CLI arguments that are related to the plugin system
- Build: removed `{dev,docs}-requirements.txt` in favor of PEP 735
- Build: bumped `lxml` requirement to `>=4.6.4,<7` (`lxml>=6` now
supports free-threaded mode)
- Tests: fixed test failures on Python 3.14.0b3
- Tests: fixed test failures in free-threaded mode
== streamlink 7.4.0 (2025-06-08)
- Added: `encoding` keyword to all HTTP request methods to override
the response content encoding
- Added: debug log message for the available DASH periods (id or
index)
- Fixed: `LookupError` when selecting an invalid DASH period
- Updated plugins:
- blasttv: new plugin
- kick: fixed 403 API responses by solving the JS challenge using
the webbrowser API
- nicolive: fixed plugin metadata by forcing UTF-8 encoding
- picarto: fixed validation schema and fixed multi-stream selection
- tvp: rewritten and fixed plugin
- twitcasting: fixed plugin by switching to new websocket+HLS streams
- vtvgo: removed plugin
- Tests: fixed py314 test failures
- Tests: fixed some HLS tests failing in rare cases
== streamlink 7.3.0 (2025-04-26)
- Changed: download progress to use the console output stream rather
than always `stderr`, which previously caused log and
progress messages to be interweaved
- Changed: download progress output to be a status message line at
the bottom of the console output, unless `--progress=force`
is set in non-interactive or unsupported environments,
in which case less frequent regular progress messages
are written
- Fixed: potential division by zero error when formatting progress
output
- Build: bumped `setuptools` requirement from `>=65.6` to `>=77`
and switched to PEP 639 project license metadata format
== streamlink 7.2.0 (2025-04-04)
- Added: `decompress` extras marker to Streamlink's optional
dependencies for installing `brotli` and `zstandard`,
which were previously implied optional dependencies
via the transitive dependency `urllib3`
- Changed: `--retry-streams` to allow a value of `0`, so it can
be unset again if set previously
- Changed: `--quiet` to suppress all text output including errors,
not just log output
- Fixed: `--logfile` affecting the console output stream
- Fixed: broken user input prompt behavior on missing or
non-interactive I/O streams
- Fixed: `Plugin` classes not requiring a matching matcher
- Fixed: `--hls-audio-select` not being case-insensitive and only
comparing input values rather than resolved language codes
- Updated: Chrome Devtool Protocol interfaces, to match recent
Chromium versions
- Updated plugins:
- euronews: rewritten and fixed plugin
- kick: refactored plugin, fixed clip matcher and 403 API responses
- nicolive: fixed plugin not loading cookies from WebSocket messages
- nicolive: made the plugin always filter out blank HLS segments
- nowtvtr: removed plugin
- okru: canonicalize mobile URLs
- tf1: fixed stream matcher
== streamlink 7.1.3 (2025-02-14)
- Fixed: `validate.contains()` to allow all kinds of `Container` object inputs
- Updated plugins:
- ceskatelevize: rewritten and fixed plugin
- nos: fixed validation schema, updated matcher
- pandalive: fixed user_id retieval, updated matcher
- pluzz: fixed video ID schemas
- streamable: removed plugin
- tv4play: removed plugin
- twitch: refactored TwitchAPI class and access token retrieval
- wwenetwork: rewritten and fixed plugin
- Docs: replaced Windows and Linux AppImage nightly builds with
preview builds triggered on each commit to `master`
- Docs: added optional/secondary Linux AppImage builds with FFmpeg
being bundled
- Tests: bumped `freezegun` requirement to `>=1.5.0`
== streamlink 7.1.2 (2025-01-08)
- Updated plugins:
- various: fixed access of URL matcher regex capture groups, affecting
abematv, ard_mediathek, bbiplayer, dailymotion, picarto, streann
- chzzk: added support for clips
- dailymotion: added support for lequipe.fr
- kick: fixed 403 HTTP errors, fixed VOD URL matcher
- nicolive: fixed authentication
- tiktok: rewritten plugin, fixed live streams, added VODs
== streamlink 7.1.1 (2024-12-28)
- Fixed: `--show-matchers=pluginname` not working when plugins are
loaded lazily
== streamlink 7.1.0 (2024-12-28)
- Added: `--show-matchers=pluginname` CLI argument
- Updated: `Streamlink` and `Plugin` constructors to allow both
`Mapping` and `Options` as `options` types
- Fixed: uncaught DASH errors if FFmpeg is unavailable
As a side effect, if FFmpeg is unavailable, DASH streams will only
return one sub-stream of the video and/or audio streams that would
be muxed otherwise.
- Fixed: incorrect DASH segment duration in timeline manifests
- Fixed: dynamic DASH streams incorrectly requiring the `publishTime`
and `availabilityStartTime` attributes
- Fixed: incorrect DASH segment and manifest base-URL joining
- Fixed: `matchers` and `arguments` objects being shared in inherited
`Plugin` classes
- Updated plugins:
- various: replaced verbose URL matcher regexes of most plugins with
multiple simple ones
- bilibili: updated schema to include MPEG-TS HLS streams
- bilibili: added back high-res `HTTPStream` streams from the v1 API
with higher priority
- mangomolo: replaced media.gov.kw with 51.com.kw
- soop: rewritten authentication
- vkplay: renamed to vkvideo and updated matcher
- welt: fixed schema
- Build: removed `typing-extensions` from runtime dependencies
== streamlink 7.0.0 (2024-11-04)
- BREAKING: dropped support for EOL Python 3.8 (Win 7/8 are now
unsupported)
- BREAKING/CLI: removed deprecated config file and plugin config
file paths
- BREAKING/CLI: removed deprecated plugin sideloading paths
- BREAKING/CLI: removed deprecated `--force-progress` CLI argument
- BREAKING/CLI: removed deprecated stream-type related CLI arguments
- `--hls-segment-attempts`
- `--hls-segment-threads`
- `--hls-segment-timeout`
- `--hls-timeout`
- `--http-stream-timeout`
- BREAKING/API: removed deprecated stream-type related session options
- `hls-segment-attempts`
- `hls-segment-threads`
- `hls-segment-timeout`
- `hls-timeout`
- `dash-segment-attempts`
- `dash-segment-threads`
- `dash-segment-timeout`
- `dash-timeout`
- `http-stream-timeout`
- BREAKING/API: removed deprecated import paths for `HTTPSession` and
`HTTPAdapter`s
- BREAKING/API: removed deprecated import paths for `NoPluginError`,
`NoStreamsError`, `PluginError` and `Plugin`
- BREAKING/packaging: dropped "32 bit" Windows x86 and Linux AppImage
i686 builds
- Removed: flawed implementation of VLC-specific player variables
- Deprecated: `--verbose-player` CLI argument in favor of
`--player-verbose`
- Deprecated: `--fifo` CLI argument in favor of `--player-fifo`
- Added: warning messages for deprecated/suppressed plugin arguments
- Fixed: errors on missing `stdin` file descriptor
- Fixed: `--interface` not having an effect on custom `HTTPAdapter`s
- Updated plugins:
- afreeca: renamed to soop, overhauled plugin and deprecated old
plugin CLI arguments
- ruv: rewritten and fixed plugin
- tv3cat: updated plugin matchers
- Docs: updated documentation of various CLI arguments
- Chore: updated typing annotations (PEP 563, PEP 585, PEP 604,
PEP 613)
- Chore: reformatted the whole code base using ruff
- Build: bumped `trio` dependency to `>=0.25.0,<1` on Python >= 3.13
== streamlink 6.11.0 (2024-10-01)
- Deprecated:
`--record-and-pipe=...` in favor of `--stdout --record=...`
(and explicitly disallowed `--stdout --output=...`)
- Fixed: error when setting both `--http-no-ssl-verify`
and `--http-disable-dh`
- Fixed: `--player-passthrough` without a resolved default `--player`
- Fixed: error when stdout/stderr file descriptors are missing
- Updated: webbrowser API's Chrome devtools protocol to latest version
- Updated plugins:
- crunchyroll: removed plugin
- dlive: fixed missing stream URL signature
- facebook: removed plugin
- mildom: removed plugin
- tvrby: removed plugin
- tvrplus: removed plugin
- twitch: fixed client-integrity token acquirement
- vk: fixed API params and validation schema
- webtv: removed plugin
- zengatv: removed plugin
- zhanqi: removed plugin
- Tests: removed `pytest-asyncio` dependency
== streamlink 6.10.0 (2024-09-06)
- Added: official support for Python 3.13
- Added: `--logformat` and `--logdateformat`
- Added: `--ffmpeg-loglevel`
- Fixed: continuous logging errors when stdout stream was closed on
the reading end
- Fixed: HTTP proxy config being used when getting webbrowser API's
websocket IPC address
- Updated plugins:
- booyah: removed plugin
- douyin: fixed validation schema
- galatasaraytv: removed plugin
- idf1: removed plugin
- linelive: removed plugin
- pandalive: fixed missing HTTP headers
- tiktok: fixed schema of inaccessible streams
- youtube: disabled VODs, as they are currently non-functional
- Docs: bumped `sphinx-design >=0.5.0,<=0.6.1`, enabling `sphinx >=8.0.0`
- Tests: fixed `pytest-asyncio` warnings
== streamlink 6.9.0 (2024-08-12)
- Added: `streamlink.plugin.api.webbrowser` subpackage with the
`aws_waf` module
- Added: `max_buffer_size` kwarg to `CDPClient.session()`
- Added: webbrowser `User-Agent` header override in headless mode
- Changed: default value of `--webbrowser-headless` from `True`
to `False`
- Changed: unicode characters to be unescaped in JSON output,
if possible
- Fixed: potential character encoding issues in Streamlink's logger
- Updated plugins:
- nicolive: updated plugin matcher
- okru: fixed validation schema
- radionet: removed plugin
- sportschau: fixed plugin
- tiktok: fixed room ID validation schema
- tvp: added support for sport.tvp.pl
- twitch: added `--twitch-force-client-integrity`
- twitch: fixed broken client-integrity token decoding+parsing
- twitch: removed the `headless=False` override
- vimeo: removed error messages for unsupported DASH streams
- vk: fixed validation schema
- vtvgo: resolved AWS Web Application Firewall bot detection
- yupptv: fixed plugin, added ad filtering
- Docs: added webbrowser API metadata to plugin descriptions
- Docs: updated build-dependencies and the furo theme
== streamlink 6.8.3 (2024-07-11)
Patch release:
- Updated plugins:
- tiktok: new plugin
- twitch: fixed channel names with uppercase characters
== streamlink 6.8.2 (2024-07-04)
Patch release:
- Updated plugins:
- douyin: new plugin
- huya: fixed stream URLs
- pluzz: fixed API URL, stream tokens and validation schemas
- twitch: added info log messages about ad break durations
- twitch: fixed clip URLs
- twitch: fixed discontinuity warning spam in certain circumstances
- vidio: fixed stream tokens, added metadata
== streamlink 6.8.1 (2024-06-18)
Patch release:
- Fixed: failed HTTPAdapter tests on some OpenSSL configurations
== streamlink 6.8.0 (2024-06-17)
Release highlights:
- Added: sha256 checksum to log message when side-loading plugins
- Added: `SSLContextAdapter` to `streamlink.session.http`
- Deprecated: [old re-exports in `streamlink.plugins` package]
- Updated plugins:
- bilibili: fixed validation schema for offline channels
- chzzk: fixed channels without content
- cnbce: new plugin
- kick: new plugin
- tf1: added authentication via `--tf1-email` and `--tf1-password`
- tvp: fixed live streams
- welt: fixed live streams
== streamlink 6.7.4 (2024-05-12)
Patch release:
- Refactored: CLI errors
- Updated plugins:
- afreeca: updated stream qualities
- afreeca: added `--afreeca-stream-password`
- chzzk: new plugin
- nownews: removed plugin
- turkuvaz: fixed HLS streams
- Docs: clarified plugin request rules
- Build: fixed build issues on Windows
- Build: removed `exceptiongroup` dependency on Python >= 3.11
== streamlink 6.7.3 (2024-04-14)
Patch release:
- Fixed: file output paths being able to exceed max file/directory
name length
- Fixed: propagation of `KeyboardInterrupt`/`SystemExit` in
`streamlink.webbrowser`
- Fixed: compatibility with `exceptiongroup<=1.1.1`
- Fixed: `plugin.api.validate.parse_qsd` input type validation
- Updated plugins:
- mangomolo: fixed missing referer header and updated URL matcher
- pluto: rewritten plugin
- showroom: fixed geo-block check preventing stream access
- vkplay: updated URL matcher
- Tests: fixed test failure when running tests from the `bdist`
build directory
== streamlink 6.7.2 (2024-03-23)
Patch release:
- Build: reverted `trio` version requirement bump
- Build: fixed incorrect `pytest` version requirement
== streamlink 6.7.1 (2024-03-19)
Patch release:
- Fixed: CLI download progress missing the last data chunk
- Fixed: compatibility with `trio>=0.25`
- Updated plugins:
- tv3cat: fixed plugin and added VODs
- vimeo: fixed event streams and embedded player URLs
- Build: bumped `trio` dependency version requirement to `>=0.25,<1`
- Build: added `exceptiongroup` dependency
- Tests: fixed root logger level not being reset
== streamlink 6.7.0 (2024-03-09)
Release highlights:
- Added: repeatable `--plugin-dir` CLI argument
- Deprecated: `--plugin-dirs` CLI argument with comma separated paths
- Fixed: independent encryption status of HLS initialization sections
- Fixed: objects of default session options being shared
between sessions
- Updated plugins:
- bloomberg: fixed data regex
- ltv_lsm_lv: fixed player ID retrieval, removed custom
HLS implementation
- mangomolo: new plugin
- ustvnow: updated matcher
- vimeo: fixed optional DASH streams of live events
== streamlink 6.6.2 (2024-02-20)
Patch release:
- Fixed: missing plugin override log message in non-editable installs
- Fixed: incorrect `setuptools` min. version in build requirements
- Updated plugins:
- afreeca: fixed broadcast number regex
- afreeca: added support for stream metadata
- hiplayer: removed media.gov.kw matcher
== streamlink 6.6.1 (2024-02-17)
Patch release:
- Fixed: plugin arguments in `--help` output
- Docs: removed empty plugin sections in docs and man page
== streamlink 6.6.0 (2024-02-16)
Release highlights:
- Implemented: lazy plugins loading
Streamlink's built-in plugins will now be loaded on demand when
resolving input URLs. This improves initial loading times and
reduces total memory consumption.
- Refactored: Streamlink session module (and related)
- Moved: `streamlink.session` into a sub-package
- Moved: `streamlink.plugin.api.http_session`
to `streamlink.session.http`
- Refactored: `Streamlink` class internals
- Deprecated: `Streamlink.{get,load}_plugins()` methods
- Deprecated: direct imports of `HTTPSession` and imports
from `streamlink.plugin.api.http_session`
- Refactored: `streamlink.utils.args` module
- Updated plugins:
- aloula: fixed missing HTTP headers
- foxtr: removed plugin
- huya: fixed stream URLs
- nowtvtr: new plugin
- qq: removed plugin
- rtbf: removed plugin
- Tests: improved overall test execution time
== streamlink 6.5.1 (2024-01-16)
Patch release:
- Fixed: file output path log message on py38/py39
- Improved: warning message when using quoted player paths
(in config files)
- Updated plugins:
- artetv: updated API response validation schema
- atresplayer: updated API response validation schema
- bigo: reimplemented plugin
- bilibili: fixed stream resolving issues on channels with
custom layouts
- huya: added stream CDN availability check
- twitch: disabled Chromium headless mode on client-integrity
token acquirement
- vidio: fixed missing API request cookies
- zattoo: fixed audio/video sync issues
== streamlink 6.5.0 (2023-12-16)
Release highlights:
- Fixed: `UserWarning` being emitted by recent `pycountry` releases when
parsing certain language codes
- Fixed: trace logging setup in `WebsocketClient` implementation
- Updated plugins:
- btv: switched to HLS multivariant playlists
- gulli: rewritten plugin
- twitch: removed/disabled `--twitch-disable-reruns`
- twitch: enabled `check_streams` HLS option, to ensure early stream
availability without querying the delayed Twitch API
- twitch: removed unnecessary Twitch API error messages for offline channels
- wasd: removed plugin
- Build: added support for `versioningit >=3.0.0`, with backward compatibility
= streamlink 6.4.1 (2023-11-22)
Patch release:
- Fixed: libxml2 2.12.0 compatibility
= streamlink 6.4.0 (2023-11-21)
Release highlights:
- Added: missing support for dynamic DASH manifests with
`SegmentList`s
- Added: warning log message when skipping DASH segments
between manifest reloads
- Added plugins: nasaplus
- Updated plugins:
- raiplay: added VOD support with authentication
`--raiplay-email` / `--raiplay-password`
/ `--raiplay-purge-credentials`
- telemadrid: fixed XPath query
- tvp: fixed tvp.info
- youtube: fixed video ID retrieval
- Docs: added validation schema API docs and API guide
= streamlink 6.3.1 (2023-10-26)
Patch release:
- Fixed plugins:
- welt: rewritten plugin
- Build: fixed tests when running from sdist
= streamlink 6.3.0 (2023-10-25)
Release highlights:
- Added: warning log message when skipping HLS segments between
playlist reloads
- Refactored: internals of segmented stream implementations (base
classes, HLS, DASH)
- Added: base `Segment` dataclass and made segmented streams
inherit from it
- Moved: modules into sub-packages (import paths of public APIs
remain the same)
- Renamed: various non-public HLS class methods/attributes and
functions
- Removed: `Sequence` segment wrapper from HLS implementation
- Fixed: DASH manifest not respecting the `minBufferTime`
- Fixed: URL matchers of HLS/DASH protocol plugins
- Fixed: bandwidth parsing issue in HLS multivariant playlists
- Fixed plugins:
- dlive: fixed live streams and fixed VODs
- goodgame: rewritten plugin using goodgame API v4
- mitele: updated gbx API calls from v2 to v3
- twitch: fixed error handling of geo-restricted or inaccessible
streams
- Removed plugins:
- ntv: static stream URLs
- vlive: offline
- Build: dropped `versioningit` build-requirement when building from
sdist tarball (version string has always been built-in while
`versioningit` performed a no-op)
- Packaging: added missing shell completions build-script to sdist
- Docs: clarified section about building from source (sdist/git vs.
GitHub tarballs)
= streamlink 6.2.1 (2023-10-03)
Patch release:
- Added: official support for Python 3.12
- Fixed plugins: goodgame, nos, pandalive, wwenetwork
- Build: added custom setuptools build-backend override which fixes
issues with building Windows-specific wheels
= streamlink 6.2.0 (2023-09-14)
Release highlights:
- Added: `--player-env` CLI argument
- Added: OpenSSL version to debug log output
- Updated: segmented stream internals and typing
- Updated: internal HLS tag parsing setup and parser state
- Fixed: HLS streams not ending on playlist reload with endlist tag
and no new segments
- Fixed: missing file encoding when writing a log file
- Added plugins: piaulizaportal
- Fixed plugins: hiplayer, nicolive, pluto
- Docs: added list of supported metadata variables for each plugin
= streamlink 6.1.0 (2023-08-16)
Release highlights:
- Added: `--hls-segment-queue-threshold` for being able to configure
when to stop HLS streams early on missing segments
- Fixed: config file parsing issues and made parsing argument values
more strict
- Fixed: race condition when reading and validating the FFmpeg
version string
- Fixed plugins: atresplayer
- Docs: added code examples for the removal of
`Streamlink.{g,s}et_plugin_option`
- Build: fixed entry-points config issues with setuptools `68.1.0`
= streamlink 6.0.1 (2023-08-02)
Patch release:
- Added: missing `options` argument to `Streamlink.streams()`
- Fixed: migration docs and the `6.0.0` changelog of the
`Streamlink.{g,s}et_plugin_option()` removal
- Fixed plugins: huya
- Docs: updated build-dependencies and the furo theme
= streamlink 6.0.0 (2023-07-20)
Breaking changes:
- BREAKING: dropped support for Python 3.7
- BREAKING: turned `--player` CLI argument into a player-path-only
argument
Its value won't be interpreted as a command line string anymore,
so paths with whitespace don't require additional quotation.
Custom player arguments now always need to be set via `--player-args`.
- BREAKING: removed deprecated `{filename}` variable from `--player-args`
- BREAKING/API: removed support for the deprecated
`Plugin.can_handle_url()` / `Plugin.priority()` classmethods
- BREAKING/API: removed deprecated compatibility wrapper for the `Plugin`
constructor
- BREAKING/API: removed `Streamlink.{g,s}et_plugin_option()`
- BREAKING/API: removed deprecated global plugin arguments
- BREAKING/API: removed deprecated `streamlink.plugin.api.validate.text`
- BREAKING/API: fixed/changed signatures of `HTTPStream`, `HLSStream` and
`HLSStream.parse_variant_playlist()`
- BREAKING/packaging: new signing key `44448A298D5C3618`
Release highlights:
- Added: experimental `streamlink.webbrowser` API for extracting data
from websites using the system's Chromium-based web browser
See the `--webbrowser`, `--webbrowser-executable` and related CLI
arguments for more
- Added: client-integrity token support to Twitch plugin using the
`streamlink.webbrowser` API (currently only used as a fallback
when acquiring the access token fails)
- Added: `{playertitleargs}` variable to `--player-args`
- Added: `with_{video,audio}_only` parameters to
`DASHStream.parse_manifest()`
- Changed: HLS streams to stop early on missing `EXT-X-ENDLIST` tag
when polling the playlist doesn't yield new segments for twice
its targetduration value
- Fixed: regex of optional protocol plugin parameters
- Fixed plugins: lrt, mediavitrina, mitele, NRK, pluzz, rtvs,
showroom, turkuvaz, vimeo, youtube
- Docs: added migrations page for further guidance on resolving
breaking changes
- Docs: split up, updated and improved API docs
- Build: moved project metadata to pyproject.toml (PEP621)
- Dependencies: added `trio`, `trio-websocket` and
`typing-extensions`, and removed `importlib_metadata`
To generate a diff of this commit:
cvs rdiff -u -r1.45 -r1.46 pkgsrc/multimedia/streamlink/Makefile
cvs rdiff -u -r1.22 -r1.23 pkgsrc/multimedia/streamlink/PLIST
cvs rdiff -u -r1.25 -r1.26 pkgsrc/multimedia/streamlink/distinfo
cvs rdiff -u -r0 -r1.1 \
pkgsrc/multimedia/streamlink/patches/patch-build__backend_onbuild.py
cvs rdiff -u -r0 -r1.3 pkgsrc/multimedia/streamlink/patches/patch-setup.py
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/multimedia/streamlink/Makefile
diff -u pkgsrc/multimedia/streamlink/Makefile:1.45 pkgsrc/multimedia/streamlink/Makefile:1.46
--- pkgsrc/multimedia/streamlink/Makefile:1.45 Fri Apr 25 11:32:23 2025
+++ pkgsrc/multimedia/streamlink/Makefile Mon Mar 2 20:31:12 2026
@@ -1,30 +1,36 @@
-# $NetBSD: Makefile,v 1.45 2025/04/25 11:32:23 wiz Exp $
+# $NetBSD: Makefile,v 1.46 2026/03/02 20:31:12 yhardy Exp $
-DISTNAME= streamlink-5.5.1
-PKGREVISION= 3
+DISTNAME= streamlink-8.1.2
CATEGORIES= multimedia
MASTER_SITES= ${MASTER_SITE_GITHUB:=streamlink/}
-GITHUB_TAG= ${PKGVERSION_NOREV}
+GITHUB_RELEASE= ${PKGVERSION_NOREV}
MAINTAINER= pkgsrc-users%NetBSD.org@localhost
HOMEPAGE= https://streamlink.github.io/
COMMENT= Tool that pipes video streams into a video player
LICENSE= 2-clause-bsd
-TOOL_DEPENDS+= ${PYPKGPREFIX}-versioningit>=1.1.1:../../devel/py-versioningit
-TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools>=78:../../devel/py-setuptools
+PYTHON_VERSIONS_INCOMPATIBLE= 27
+
+DEPENDS+= ${PYPKGPREFIX}-certifi-[0-9]*:../../security/py-certifi
DEPENDS+= ${PYPKGPREFIX}-country-[0-9]*:../../geography/py-country
DEPENDS+= ${PYPKGPREFIX}-cryptodome>=3.4.3:../../security/py-cryptodome
+DEPENDS+= ${PYPKGPREFIX}-exceptiongroup-[0-9]*:../../devel/py-exceptiongroup
DEPENDS+= ${PYPKGPREFIX}-isodate-[0-9]*:../../time/py-isodate
DEPENDS+= ${PYPKGPREFIX}-lxml-[0-9]*:../../textproc/py-lxml
DEPENDS+= ${PYPKGPREFIX}-Socks>=1.5.6:../../net/py-Socks
DEPENDS+= ${PYPKGPREFIX}-requests>=2.26.0:../../devel/py-requests
+DEPENDS+= ${PYPKGPREFIX}-trio-[0-9]*:../../devel/py-trio
+DEPENDS+= ${PYPKGPREFIX}-trio-websocket-[0-9]*:../../www/py-trio-websocket
DEPENDS+= ${PYPKGPREFIX}-websocket-client>=1.2.1:../../www/py-websocket-client
+TOOL_DEPENDS+= ${PYPKGPREFIX}-versioningit>=1.1.1:../../devel/py-versioningit
+TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools>=78:../../devel/py-setuptools
+TOOL_DEPENDS+= ${PYPKGPREFIX}-wheel-[0-9]*:../../devel/py-wheel
TEST_DEPENDS+= ${PYPKGPREFIX}-flake8-[0-9]*:../../devel/py-flake8
TEST_DEPENDS+= ${PYPKGPREFIX}-flake8-import-order-[0-9]*:../../devel/py-flake8-import-order
TEST_DEPENDS+= ${PYPKGPREFIX}-freezegun>=1.0.0:../../devel/py-freezegun
TEST_DEPENDS+= ${PYPKGPREFIX}-requests-mock-[0-9]*:../../devel/py-requests-mock
-TEST_DEPENDS+= ${PYPKGPREFIX}-test-asyncio-[0-9]*:../../devel/py-test-asyncio
+TEST_DEPENDS+= ${PYPKGPREFIX}-test-[0-9]*:../../devel/py-test
TEST_DEPENDS+= ${PYPKGPREFIX}-test-cov-[0-9]*:../../devel/py-test-cov
REPLACE_PYTHON+= src/streamlink/packages/flashmedia/flv.py
Index: pkgsrc/multimedia/streamlink/PLIST
diff -u pkgsrc/multimedia/streamlink/PLIST:1.22 pkgsrc/multimedia/streamlink/PLIST:1.23
--- pkgsrc/multimedia/streamlink/PLIST:1.22 Fri Apr 25 11:32:23 2025
+++ pkgsrc/multimedia/streamlink/PLIST Mon Mar 2 20:31:12 2026
@@ -1,11 +1,11 @@
-@comment $NetBSD: PLIST,v 1.22 2025/04/25 11:32:23 wiz Exp $
+@comment $NetBSD: PLIST,v 1.23 2026/03/02 20:31:12 yhardy Exp $
bin/streamlink
-${PYSITELIB}/streamlink-0.0.0+unknown.dist-info/METADATA
-${PYSITELIB}/streamlink-0.0.0+unknown.dist-info/RECORD
-${PYSITELIB}/streamlink-0.0.0+unknown.dist-info/WHEEL
-${PYSITELIB}/streamlink-0.0.0+unknown.dist-info/entry_points.txt
-${PYSITELIB}/streamlink-0.0.0+unknown.dist-info/licenses/LICENSE
-${PYSITELIB}/streamlink-0.0.0+unknown.dist-info/top_level.txt
+${PYSITELIB}/${WHEEL_INFODIR}/METADATA
+${PYSITELIB}/${WHEEL_INFODIR}/RECORD
+${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
+${PYSITELIB}/${WHEEL_INFODIR}/entry_points.txt
+${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE
+${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt
${PYSITELIB}/streamlink/__init__.py
${PYSITELIB}/streamlink/__init__.pyc
${PYSITELIB}/streamlink/__init__.pyo
@@ -48,28 +48,18 @@ ${PYSITELIB}/streamlink/plugin/__init__.
${PYSITELIB}/streamlink/plugin/api/__init__.py
${PYSITELIB}/streamlink/plugin/api/__init__.pyc
${PYSITELIB}/streamlink/plugin/api/__init__.pyo
-${PYSITELIB}/streamlink/plugin/api/http_session.py
-${PYSITELIB}/streamlink/plugin/api/http_session.pyc
-${PYSITELIB}/streamlink/plugin/api/http_session.pyi
-${PYSITELIB}/streamlink/plugin/api/http_session.pyo
${PYSITELIB}/streamlink/plugin/api/useragents.py
${PYSITELIB}/streamlink/plugin/api/useragents.pyc
${PYSITELIB}/streamlink/plugin/api/useragents.pyo
-${PYSITELIB}/streamlink/plugin/api/validate/__init__.py
-${PYSITELIB}/streamlink/plugin/api/validate/__init__.pyc
-${PYSITELIB}/streamlink/plugin/api/validate/__init__.pyo
-${PYSITELIB}/streamlink/plugin/api/validate/_exception.py
-${PYSITELIB}/streamlink/plugin/api/validate/_exception.pyc
-${PYSITELIB}/streamlink/plugin/api/validate/_exception.pyo
-${PYSITELIB}/streamlink/plugin/api/validate/_schemas.py
-${PYSITELIB}/streamlink/plugin/api/validate/_schemas.pyc
-${PYSITELIB}/streamlink/plugin/api/validate/_schemas.pyo
-${PYSITELIB}/streamlink/plugin/api/validate/_validate.py
-${PYSITELIB}/streamlink/plugin/api/validate/_validate.pyc
-${PYSITELIB}/streamlink/plugin/api/validate/_validate.pyo
-${PYSITELIB}/streamlink/plugin/api/validate/_validators.py
-${PYSITELIB}/streamlink/plugin/api/validate/_validators.pyc
-${PYSITELIB}/streamlink/plugin/api/validate/_validators.pyo
+${PYSITELIB}/streamlink/plugin/api/validate.py
+${PYSITELIB}/streamlink/plugin/api/validate.pyc
+${PYSITELIB}/streamlink/plugin/api/validate.pyo
+${PYSITELIB}/streamlink/plugin/api/webbrowser/__init__.py
+${PYSITELIB}/streamlink/plugin/api/webbrowser/__init__.pyc
+${PYSITELIB}/streamlink/plugin/api/webbrowser/__init__.pyo
+${PYSITELIB}/streamlink/plugin/api/webbrowser/aws_waf.py
+${PYSITELIB}/streamlink/plugin/api/webbrowser/aws_waf.pyc
+${PYSITELIB}/streamlink/plugin/api/webbrowser/aws_waf.pyo
${PYSITELIB}/streamlink/plugin/api/websocket.py
${PYSITELIB}/streamlink/plugin/api/websocket.pyc
${PYSITELIB}/streamlink/plugin/api/websocket.pyo
@@ -79,15 +69,13 @@ ${PYSITELIB}/streamlink/plugin/plugin.py
${PYSITELIB}/streamlink/plugins/__init__.py
${PYSITELIB}/streamlink/plugins/__init__.pyc
${PYSITELIB}/streamlink/plugins/__init__.pyo
+${PYSITELIB}/streamlink/plugins/_plugins.json
${PYSITELIB}/streamlink/plugins/abematv.py
${PYSITELIB}/streamlink/plugins/abematv.pyc
${PYSITELIB}/streamlink/plugins/abematv.pyo
${PYSITELIB}/streamlink/plugins/adultswim.py
${PYSITELIB}/streamlink/plugins/adultswim.pyc
${PYSITELIB}/streamlink/plugins/adultswim.pyo
-${PYSITELIB}/streamlink/plugins/afreeca.py
-${PYSITELIB}/streamlink/plugins/afreeca.pyc
-${PYSITELIB}/streamlink/plugins/afreeca.pyo
${PYSITELIB}/streamlink/plugins/albavision.py
${PYSITELIB}/streamlink/plugins/albavision.pyc
${PYSITELIB}/streamlink/plugins/albavision.pyo
@@ -124,15 +112,15 @@ ${PYSITELIB}/streamlink/plugins/bigo.pyo
${PYSITELIB}/streamlink/plugins/bilibili.py
${PYSITELIB}/streamlink/plugins/bilibili.pyc
${PYSITELIB}/streamlink/plugins/bilibili.pyo
+${PYSITELIB}/streamlink/plugins/blasttv.py
+${PYSITELIB}/streamlink/plugins/blasttv.pyc
+${PYSITELIB}/streamlink/plugins/blasttv.pyo
${PYSITELIB}/streamlink/plugins/blazetv.py
${PYSITELIB}/streamlink/plugins/blazetv.pyc
${PYSITELIB}/streamlink/plugins/blazetv.pyo
${PYSITELIB}/streamlink/plugins/bloomberg.py
${PYSITELIB}/streamlink/plugins/bloomberg.pyc
${PYSITELIB}/streamlink/plugins/bloomberg.pyo
-${PYSITELIB}/streamlink/plugins/booyah.py
-${PYSITELIB}/streamlink/plugins/booyah.pyc
-${PYSITELIB}/streamlink/plugins/booyah.pyo
${PYSITELIB}/streamlink/plugins/brightcove.py
${PYSITELIB}/streamlink/plugins/brightcove.pyc
${PYSITELIB}/streamlink/plugins/brightcove.pyo
@@ -148,6 +136,9 @@ ${PYSITELIB}/streamlink/plugins/cdnbg.py
${PYSITELIB}/streamlink/plugins/ceskatelevize.py
${PYSITELIB}/streamlink/plugins/ceskatelevize.pyc
${PYSITELIB}/streamlink/plugins/ceskatelevize.pyo
+${PYSITELIB}/streamlink/plugins/chzzk.py
+${PYSITELIB}/streamlink/plugins/chzzk.pyc
+${PYSITELIB}/streamlink/plugins/chzzk.pyo
${PYSITELIB}/streamlink/plugins/cinergroup.py
${PYSITELIB}/streamlink/plugins/cinergroup.pyc
${PYSITELIB}/streamlink/plugins/cinergroup.pyo
@@ -157,12 +148,12 @@ ${PYSITELIB}/streamlink/plugins/clubbing
${PYSITELIB}/streamlink/plugins/cmmedia.py
${PYSITELIB}/streamlink/plugins/cmmedia.pyc
${PYSITELIB}/streamlink/plugins/cmmedia.pyo
+${PYSITELIB}/streamlink/plugins/cnbce.py
+${PYSITELIB}/streamlink/plugins/cnbce.pyc
+${PYSITELIB}/streamlink/plugins/cnbce.pyo
${PYSITELIB}/streamlink/plugins/cnews.py
${PYSITELIB}/streamlink/plugins/cnews.pyc
${PYSITELIB}/streamlink/plugins/cnews.pyo
-${PYSITELIB}/streamlink/plugins/crunchyroll.py
-${PYSITELIB}/streamlink/plugins/crunchyroll.pyc
-${PYSITELIB}/streamlink/plugins/crunchyroll.pyo
${PYSITELIB}/streamlink/plugins/dailymotion.py
${PYSITELIB}/streamlink/plugins/dailymotion.pyc
${PYSITELIB}/streamlink/plugins/dailymotion.pyo
@@ -184,6 +175,9 @@ ${PYSITELIB}/streamlink/plugins/dogan.py
${PYSITELIB}/streamlink/plugins/dogus.py
${PYSITELIB}/streamlink/plugins/dogus.pyc
${PYSITELIB}/streamlink/plugins/dogus.pyo
+${PYSITELIB}/streamlink/plugins/douyin.py
+${PYSITELIB}/streamlink/plugins/douyin.pyc
+${PYSITELIB}/streamlink/plugins/douyin.pyo
${PYSITELIB}/streamlink/plugins/drdk.py
${PYSITELIB}/streamlink/plugins/drdk.pyc
${PYSITELIB}/streamlink/plugins/drdk.pyo
@@ -193,18 +187,9 @@ ${PYSITELIB}/streamlink/plugins/earthcam
${PYSITELIB}/streamlink/plugins/euronews.py
${PYSITELIB}/streamlink/plugins/euronews.pyc
${PYSITELIB}/streamlink/plugins/euronews.pyo
-${PYSITELIB}/streamlink/plugins/facebook.py
-${PYSITELIB}/streamlink/plugins/facebook.pyc
-${PYSITELIB}/streamlink/plugins/facebook.pyo
${PYSITELIB}/streamlink/plugins/filmon.py
${PYSITELIB}/streamlink/plugins/filmon.pyc
${PYSITELIB}/streamlink/plugins/filmon.pyo
-${PYSITELIB}/streamlink/plugins/foxtr.py
-${PYSITELIB}/streamlink/plugins/foxtr.pyc
-${PYSITELIB}/streamlink/plugins/foxtr.pyo
-${PYSITELIB}/streamlink/plugins/galatasaraytv.py
-${PYSITELIB}/streamlink/plugins/galatasaraytv.pyc
-${PYSITELIB}/streamlink/plugins/galatasaraytv.pyo
${PYSITELIB}/streamlink/plugins/goltelevision.py
${PYSITELIB}/streamlink/plugins/goltelevision.pyc
${PYSITELIB}/streamlink/plugins/goltelevision.pyo
@@ -235,21 +220,15 @@ ${PYSITELIB}/streamlink/plugins/huajiao.
${PYSITELIB}/streamlink/plugins/huya.py
${PYSITELIB}/streamlink/plugins/huya.pyc
${PYSITELIB}/streamlink/plugins/huya.pyo
-${PYSITELIB}/streamlink/plugins/idf1.py
-${PYSITELIB}/streamlink/plugins/idf1.pyc
-${PYSITELIB}/streamlink/plugins/idf1.pyo
-${PYSITELIB}/streamlink/plugins/indihometv.py
-${PYSITELIB}/streamlink/plugins/indihometv.pyc
-${PYSITELIB}/streamlink/plugins/indihometv.pyo
${PYSITELIB}/streamlink/plugins/invintus.py
${PYSITELIB}/streamlink/plugins/invintus.pyc
${PYSITELIB}/streamlink/plugins/invintus.pyo
+${PYSITELIB}/streamlink/plugins/kick.py
+${PYSITELIB}/streamlink/plugins/kick.pyc
+${PYSITELIB}/streamlink/plugins/kick.pyo
${PYSITELIB}/streamlink/plugins/kugou.py
${PYSITELIB}/streamlink/plugins/kugou.pyc
${PYSITELIB}/streamlink/plugins/kugou.pyo
-${PYSITELIB}/streamlink/plugins/linelive.py
-${PYSITELIB}/streamlink/plugins/linelive.pyc
-${PYSITELIB}/streamlink/plugins/linelive.pyo
${PYSITELIB}/streamlink/plugins/livestream.py
${PYSITELIB}/streamlink/plugins/livestream.pyc
${PYSITELIB}/streamlink/plugins/livestream.pyo
@@ -262,6 +241,9 @@ ${PYSITELIB}/streamlink/plugins/lrt.pyo
${PYSITELIB}/streamlink/plugins/ltv_lsm_lv.py
${PYSITELIB}/streamlink/plugins/ltv_lsm_lv.pyc
${PYSITELIB}/streamlink/plugins/ltv_lsm_lv.pyo
+${PYSITELIB}/streamlink/plugins/mangomolo.py
+${PYSITELIB}/streamlink/plugins/mangomolo.pyc
+${PYSITELIB}/streamlink/plugins/mangomolo.pyo
${PYSITELIB}/streamlink/plugins/mdstrm.py
${PYSITELIB}/streamlink/plugins/mdstrm.pyc
${PYSITELIB}/streamlink/plugins/mdstrm.pyo
@@ -271,12 +253,6 @@ ${PYSITELIB}/streamlink/plugins/mediakli
${PYSITELIB}/streamlink/plugins/mediavitrina.py
${PYSITELIB}/streamlink/plugins/mediavitrina.pyc
${PYSITELIB}/streamlink/plugins/mediavitrina.pyo
-${PYSITELIB}/streamlink/plugins/mildom.py
-${PYSITELIB}/streamlink/plugins/mildom.pyc
-${PYSITELIB}/streamlink/plugins/mildom.pyo
-${PYSITELIB}/streamlink/plugins/mitele.py
-${PYSITELIB}/streamlink/plugins/mitele.pyc
-${PYSITELIB}/streamlink/plugins/mitele.pyo
${PYSITELIB}/streamlink/plugins/mixcloud.py
${PYSITELIB}/streamlink/plugins/mixcloud.pyc
${PYSITELIB}/streamlink/plugins/mixcloud.pyo
@@ -289,9 +265,9 @@ ${PYSITELIB}/streamlink/plugins/mrtmk.py
${PYSITELIB}/streamlink/plugins/n13tv.py
${PYSITELIB}/streamlink/plugins/n13tv.pyc
${PYSITELIB}/streamlink/plugins/n13tv.pyo
-${PYSITELIB}/streamlink/plugins/nhkworld.py
-${PYSITELIB}/streamlink/plugins/nhkworld.pyc
-${PYSITELIB}/streamlink/plugins/nhkworld.pyo
+${PYSITELIB}/streamlink/plugins/nasaplus.py
+${PYSITELIB}/streamlink/plugins/nasaplus.pyc
+${PYSITELIB}/streamlink/plugins/nasaplus.pyo
${PYSITELIB}/streamlink/plugins/nicolive.py
${PYSITELIB}/streamlink/plugins/nicolive.pyc
${PYSITELIB}/streamlink/plugins/nicolive.pyo
@@ -301,15 +277,12 @@ ${PYSITELIB}/streamlink/plugins/nimotv.p
${PYSITELIB}/streamlink/plugins/nos.py
${PYSITELIB}/streamlink/plugins/nos.pyc
${PYSITELIB}/streamlink/plugins/nos.pyo
-${PYSITELIB}/streamlink/plugins/nownews.py
-${PYSITELIB}/streamlink/plugins/nownews.pyc
-${PYSITELIB}/streamlink/plugins/nownews.pyo
+${PYSITELIB}/streamlink/plugins/nowtvtr.py
+${PYSITELIB}/streamlink/plugins/nowtvtr.pyc
+${PYSITELIB}/streamlink/plugins/nowtvtr.pyo
${PYSITELIB}/streamlink/plugins/nrk.py
${PYSITELIB}/streamlink/plugins/nrk.pyc
${PYSITELIB}/streamlink/plugins/nrk.pyo
-${PYSITELIB}/streamlink/plugins/ntv.py
-${PYSITELIB}/streamlink/plugins/ntv.pyc
-${PYSITELIB}/streamlink/plugins/ntv.pyo
${PYSITELIB}/streamlink/plugins/okru.py
${PYSITELIB}/streamlink/plugins/okru.pyc
${PYSITELIB}/streamlink/plugins/okru.pyo
@@ -328,6 +301,9 @@ ${PYSITELIB}/streamlink/plugins/openrect
${PYSITELIB}/streamlink/plugins/pandalive.py
${PYSITELIB}/streamlink/plugins/pandalive.pyc
${PYSITELIB}/streamlink/plugins/pandalive.pyo
+${PYSITELIB}/streamlink/plugins/piaulizaportal.py
+${PYSITELIB}/streamlink/plugins/piaulizaportal.pyc
+${PYSITELIB}/streamlink/plugins/piaulizaportal.pyo
${PYSITELIB}/streamlink/plugins/picarto.py
${PYSITELIB}/streamlink/plugins/picarto.pyc
${PYSITELIB}/streamlink/plugins/picarto.pyo
@@ -343,24 +319,15 @@ ${PYSITELIB}/streamlink/plugins/pluto.py
${PYSITELIB}/streamlink/plugins/pluzz.py
${PYSITELIB}/streamlink/plugins/pluzz.pyc
${PYSITELIB}/streamlink/plugins/pluzz.pyo
-${PYSITELIB}/streamlink/plugins/qq.py
-${PYSITELIB}/streamlink/plugins/qq.pyc
-${PYSITELIB}/streamlink/plugins/qq.pyo
${PYSITELIB}/streamlink/plugins/radiko.py
${PYSITELIB}/streamlink/plugins/radiko.pyc
${PYSITELIB}/streamlink/plugins/radiko.pyo
-${PYSITELIB}/streamlink/plugins/radionet.py
-${PYSITELIB}/streamlink/plugins/radionet.pyc
-${PYSITELIB}/streamlink/plugins/radionet.pyo
${PYSITELIB}/streamlink/plugins/raiplay.py
${PYSITELIB}/streamlink/plugins/raiplay.pyc
${PYSITELIB}/streamlink/plugins/raiplay.pyo
${PYSITELIB}/streamlink/plugins/reuters.py
${PYSITELIB}/streamlink/plugins/reuters.pyc
${PYSITELIB}/streamlink/plugins/reuters.pyo
-${PYSITELIB}/streamlink/plugins/rtbf.py
-${PYSITELIB}/streamlink/plugins/rtbf.pyc
-${PYSITELIB}/streamlink/plugins/rtbf.pyo
${PYSITELIB}/streamlink/plugins/rtpa.py
${PYSITELIB}/streamlink/plugins/rtpa.pyc
${PYSITELIB}/streamlink/plugins/rtpa.pyo
@@ -382,6 +349,9 @@ ${PYSITELIB}/streamlink/plugins/sbscokr.
${PYSITELIB}/streamlink/plugins/showroom.py
${PYSITELIB}/streamlink/plugins/showroom.pyc
${PYSITELIB}/streamlink/plugins/showroom.pyo
+${PYSITELIB}/streamlink/plugins/soop.py
+${PYSITELIB}/streamlink/plugins/soop.pyc
+${PYSITELIB}/streamlink/plugins/soop.pyo
${PYSITELIB}/streamlink/plugins/sportal.py
${PYSITELIB}/streamlink/plugins/sportal.pyc
${PYSITELIB}/streamlink/plugins/sportal.pyo
@@ -397,9 +367,6 @@ ${PYSITELIB}/streamlink/plugins/stadium.
${PYSITELIB}/streamlink/plugins/steam.py
${PYSITELIB}/streamlink/plugins/steam.pyc
${PYSITELIB}/streamlink/plugins/steam.pyo
-${PYSITELIB}/streamlink/plugins/streamable.py
-${PYSITELIB}/streamlink/plugins/streamable.pyc
-${PYSITELIB}/streamlink/plugins/streamable.pyo
${PYSITELIB}/streamlink/plugins/streann.py
${PYSITELIB}/streamlink/plugins/streann.pyc
${PYSITELIB}/streamlink/plugins/streann.pyo
@@ -421,6 +388,9 @@ ${PYSITELIB}/streamlink/plugins/telemadr
${PYSITELIB}/streamlink/plugins/tf1.py
${PYSITELIB}/streamlink/plugins/tf1.pyc
${PYSITELIB}/streamlink/plugins/tf1.pyo
+${PYSITELIB}/streamlink/plugins/tiktok.py
+${PYSITELIB}/streamlink/plugins/tiktok.pyc
+${PYSITELIB}/streamlink/plugins/tiktok.pyo
${PYSITELIB}/streamlink/plugins/trovo.py
${PYSITELIB}/streamlink/plugins/trovo.pyc
${PYSITELIB}/streamlink/plugins/trovo.pyo
@@ -433,9 +403,6 @@ ${PYSITELIB}/streamlink/plugins/tv360.py
${PYSITELIB}/streamlink/plugins/tv3cat.py
${PYSITELIB}/streamlink/plugins/tv3cat.pyc
${PYSITELIB}/streamlink/plugins/tv3cat.pyo
-${PYSITELIB}/streamlink/plugins/tv4play.py
-${PYSITELIB}/streamlink/plugins/tv4play.pyc
-${PYSITELIB}/streamlink/plugins/tv4play.pyo
${PYSITELIB}/streamlink/plugins/tv5monde.py
${PYSITELIB}/streamlink/plugins/tv5monde.pyc
${PYSITELIB}/streamlink/plugins/tv5monde.pyo
@@ -454,12 +421,6 @@ ${PYSITELIB}/streamlink/plugins/tviplaye
${PYSITELIB}/streamlink/plugins/tvp.py
${PYSITELIB}/streamlink/plugins/tvp.pyc
${PYSITELIB}/streamlink/plugins/tvp.pyo
-${PYSITELIB}/streamlink/plugins/tvrby.py
-${PYSITELIB}/streamlink/plugins/tvrby.pyc
-${PYSITELIB}/streamlink/plugins/tvrby.pyo
-${PYSITELIB}/streamlink/plugins/tvrplus.py
-${PYSITELIB}/streamlink/plugins/tvrplus.pyc
-${PYSITELIB}/streamlink/plugins/tvrplus.pyo
${PYSITELIB}/streamlink/plugins/tvtoya.py
${PYSITELIB}/streamlink/plugins/tvtoya.pyc
${PYSITELIB}/streamlink/plugins/tvtoya.pyo
@@ -487,21 +448,9 @@ ${PYSITELIB}/streamlink/plugins/vinhlong
${PYSITELIB}/streamlink/plugins/vk.py
${PYSITELIB}/streamlink/plugins/vk.pyc
${PYSITELIB}/streamlink/plugins/vk.pyo
-${PYSITELIB}/streamlink/plugins/vkplay.py
-${PYSITELIB}/streamlink/plugins/vkplay.pyc
-${PYSITELIB}/streamlink/plugins/vkplay.pyo
-${PYSITELIB}/streamlink/plugins/vlive.py
-${PYSITELIB}/streamlink/plugins/vlive.pyc
-${PYSITELIB}/streamlink/plugins/vlive.pyo
-${PYSITELIB}/streamlink/plugins/vtvgo.py
-${PYSITELIB}/streamlink/plugins/vtvgo.pyc
-${PYSITELIB}/streamlink/plugins/vtvgo.pyo
-${PYSITELIB}/streamlink/plugins/wasd.py
-${PYSITELIB}/streamlink/plugins/wasd.pyc
-${PYSITELIB}/streamlink/plugins/wasd.pyo
-${PYSITELIB}/streamlink/plugins/webtv.py
-${PYSITELIB}/streamlink/plugins/webtv.pyc
-${PYSITELIB}/streamlink/plugins/webtv.pyo
+${PYSITELIB}/streamlink/plugins/vkvideolive.py
+${PYSITELIB}/streamlink/plugins/vkvideolive.pyc
+${PYSITELIB}/streamlink/plugins/vkvideolive.pyo
${PYSITELIB}/streamlink/plugins/welt.py
${PYSITELIB}/streamlink/plugins/welt.pyc
${PYSITELIB}/streamlink/plugins/welt.pyo
@@ -523,25 +472,41 @@ ${PYSITELIB}/streamlink/plugins/zdf_medi
${PYSITELIB}/streamlink/plugins/zeenews.py
${PYSITELIB}/streamlink/plugins/zeenews.pyc
${PYSITELIB}/streamlink/plugins/zeenews.pyo
-${PYSITELIB}/streamlink/plugins/zengatv.py
-${PYSITELIB}/streamlink/plugins/zengatv.pyc
-${PYSITELIB}/streamlink/plugins/zengatv.pyo
-${PYSITELIB}/streamlink/plugins/zhanqi.py
-${PYSITELIB}/streamlink/plugins/zhanqi.pyc
-${PYSITELIB}/streamlink/plugins/zhanqi.pyo
${PYSITELIB}/streamlink/py.typed
-${PYSITELIB}/streamlink/session.py
-${PYSITELIB}/streamlink/session.pyc
-${PYSITELIB}/streamlink/session.pyo
+${PYSITELIB}/streamlink/session/__init__.py
+${PYSITELIB}/streamlink/session/__init__.pyc
+${PYSITELIB}/streamlink/session/__init__.pyo
+${PYSITELIB}/streamlink/session/http.py
+${PYSITELIB}/streamlink/session/http.pyc
+${PYSITELIB}/streamlink/session/http.pyi
+${PYSITELIB}/streamlink/session/http.pyo
+${PYSITELIB}/streamlink/session/http_useragents.py
+${PYSITELIB}/streamlink/session/http_useragents.pyc
+${PYSITELIB}/streamlink/session/http_useragents.pyo
+${PYSITELIB}/streamlink/session/options.py
+${PYSITELIB}/streamlink/session/options.pyc
+${PYSITELIB}/streamlink/session/options.pyo
+${PYSITELIB}/streamlink/session/plugins.py
+${PYSITELIB}/streamlink/session/plugins.pyc
+${PYSITELIB}/streamlink/session/plugins.pyo
+${PYSITELIB}/streamlink/session/session.py
+${PYSITELIB}/streamlink/session/session.pyc
+${PYSITELIB}/streamlink/session/session.pyo
${PYSITELIB}/streamlink/stream/__init__.py
${PYSITELIB}/streamlink/stream/__init__.pyc
${PYSITELIB}/streamlink/stream/__init__.pyo
-${PYSITELIB}/streamlink/stream/dash.py
-${PYSITELIB}/streamlink/stream/dash.pyc
-${PYSITELIB}/streamlink/stream/dash.pyo
-${PYSITELIB}/streamlink/stream/dash_manifest.py
-${PYSITELIB}/streamlink/stream/dash_manifest.pyc
-${PYSITELIB}/streamlink/stream/dash_manifest.pyo
+${PYSITELIB}/streamlink/stream/dash/__init__.py
+${PYSITELIB}/streamlink/stream/dash/__init__.pyc
+${PYSITELIB}/streamlink/stream/dash/__init__.pyo
+${PYSITELIB}/streamlink/stream/dash/dash.py
+${PYSITELIB}/streamlink/stream/dash/dash.pyc
+${PYSITELIB}/streamlink/stream/dash/dash.pyo
+${PYSITELIB}/streamlink/stream/dash/manifest.py
+${PYSITELIB}/streamlink/stream/dash/manifest.pyc
+${PYSITELIB}/streamlink/stream/dash/manifest.pyo
+${PYSITELIB}/streamlink/stream/dash/segment.py
+${PYSITELIB}/streamlink/stream/dash/segment.pyc
+${PYSITELIB}/streamlink/stream/dash/segment.pyo
${PYSITELIB}/streamlink/stream/ffmpegmux.py
${PYSITELIB}/streamlink/stream/ffmpegmux.pyc
${PYSITELIB}/streamlink/stream/ffmpegmux.pyo
@@ -551,18 +516,30 @@ ${PYSITELIB}/streamlink/stream/file.pyo
${PYSITELIB}/streamlink/stream/filtered.py
${PYSITELIB}/streamlink/stream/filtered.pyc
${PYSITELIB}/streamlink/stream/filtered.pyo
-${PYSITELIB}/streamlink/stream/hls.py
-${PYSITELIB}/streamlink/stream/hls.pyc
-${PYSITELIB}/streamlink/stream/hls.pyo
-${PYSITELIB}/streamlink/stream/hls_playlist.py
-${PYSITELIB}/streamlink/stream/hls_playlist.pyc
-${PYSITELIB}/streamlink/stream/hls_playlist.pyo
+${PYSITELIB}/streamlink/stream/hls/__init__.py
+${PYSITELIB}/streamlink/stream/hls/__init__.pyc
+${PYSITELIB}/streamlink/stream/hls/__init__.pyo
+${PYSITELIB}/streamlink/stream/hls/hls.py
+${PYSITELIB}/streamlink/stream/hls/hls.pyc
+${PYSITELIB}/streamlink/stream/hls/hls.pyo
+${PYSITELIB}/streamlink/stream/hls/m3u8.py
+${PYSITELIB}/streamlink/stream/hls/m3u8.pyc
+${PYSITELIB}/streamlink/stream/hls/m3u8.pyo
+${PYSITELIB}/streamlink/stream/hls/segment.py
+${PYSITELIB}/streamlink/stream/hls/segment.pyc
+${PYSITELIB}/streamlink/stream/hls/segment.pyo
${PYSITELIB}/streamlink/stream/http.py
${PYSITELIB}/streamlink/stream/http.pyc
${PYSITELIB}/streamlink/stream/http.pyo
-${PYSITELIB}/streamlink/stream/segmented.py
-${PYSITELIB}/streamlink/stream/segmented.pyc
-${PYSITELIB}/streamlink/stream/segmented.pyo
+${PYSITELIB}/streamlink/stream/segmented/__init__.py
+${PYSITELIB}/streamlink/stream/segmented/__init__.pyc
+${PYSITELIB}/streamlink/stream/segmented/__init__.pyo
+${PYSITELIB}/streamlink/stream/segmented/segment.py
+${PYSITELIB}/streamlink/stream/segmented/segment.pyc
+${PYSITELIB}/streamlink/stream/segmented/segment.pyo
+${PYSITELIB}/streamlink/stream/segmented/segmented.py
+${PYSITELIB}/streamlink/stream/segmented/segmented.pyc
+${PYSITELIB}/streamlink/stream/segmented/segmented.pyo
${PYSITELIB}/streamlink/stream/stream.py
${PYSITELIB}/streamlink/stream/stream.pyc
${PYSITELIB}/streamlink/stream/stream.pyo
@@ -587,6 +564,9 @@ ${PYSITELIB}/streamlink/utils/crypto.pyo
${PYSITELIB}/streamlink/utils/data.py
${PYSITELIB}/streamlink/utils/data.pyc
${PYSITELIB}/streamlink/utils/data.pyo
+${PYSITELIB}/streamlink/utils/dataclass.py
+${PYSITELIB}/streamlink/utils/dataclass.pyc
+${PYSITELIB}/streamlink/utils/dataclass.pyo
${PYSITELIB}/streamlink/utils/formatter.py
${PYSITELIB}/streamlink/utils/formatter.pyc
${PYSITELIB}/streamlink/utils/formatter.pyo
@@ -602,33 +582,157 @@ ${PYSITELIB}/streamlink/utils/named_pipe
${PYSITELIB}/streamlink/utils/parse.py
${PYSITELIB}/streamlink/utils/parse.pyc
${PYSITELIB}/streamlink/utils/parse.pyo
+${PYSITELIB}/streamlink/utils/path.py
+${PYSITELIB}/streamlink/utils/path.pyc
+${PYSITELIB}/streamlink/utils/path.pyo
${PYSITELIB}/streamlink/utils/processoutput.py
${PYSITELIB}/streamlink/utils/processoutput.pyc
${PYSITELIB}/streamlink/utils/processoutput.pyo
+${PYSITELIB}/streamlink/utils/random.py
+${PYSITELIB}/streamlink/utils/random.pyc
+${PYSITELIB}/streamlink/utils/random.pyo
+${PYSITELIB}/streamlink/utils/socket.py
+${PYSITELIB}/streamlink/utils/socket.pyc
+${PYSITELIB}/streamlink/utils/socket.pyo
+${PYSITELIB}/streamlink/utils/thread.py
+${PYSITELIB}/streamlink/utils/thread.pyc
+${PYSITELIB}/streamlink/utils/thread.pyo
${PYSITELIB}/streamlink/utils/times.py
${PYSITELIB}/streamlink/utils/times.pyc
${PYSITELIB}/streamlink/utils/times.pyo
${PYSITELIB}/streamlink/utils/url.py
${PYSITELIB}/streamlink/utils/url.pyc
${PYSITELIB}/streamlink/utils/url.pyo
+${PYSITELIB}/streamlink/validate/__init__.py
+${PYSITELIB}/streamlink/validate/__init__.pyc
+${PYSITELIB}/streamlink/validate/__init__.pyo
+${PYSITELIB}/streamlink/validate/_exception.py
+${PYSITELIB}/streamlink/validate/_exception.pyc
+${PYSITELIB}/streamlink/validate/_exception.pyo
+${PYSITELIB}/streamlink/validate/_schemas.py
+${PYSITELIB}/streamlink/validate/_schemas.pyc
+${PYSITELIB}/streamlink/validate/_schemas.pyo
+${PYSITELIB}/streamlink/validate/_validate.py
+${PYSITELIB}/streamlink/validate/_validate.pyc
+${PYSITELIB}/streamlink/validate/_validate.pyo
+${PYSITELIB}/streamlink/validate/_validators.py
+${PYSITELIB}/streamlink/validate/_validators.pyc
+${PYSITELIB}/streamlink/validate/_validators.pyo
+${PYSITELIB}/streamlink/webbrowser/__init__.py
+${PYSITELIB}/streamlink/webbrowser/__init__.pyc
+${PYSITELIB}/streamlink/webbrowser/__init__.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/__init__.py
+${PYSITELIB}/streamlink/webbrowser/cdp/__init__.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/__init__.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/client.py
+${PYSITELIB}/streamlink/webbrowser/cdp/client.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/client.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/connection.py
+${PYSITELIB}/streamlink/webbrowser/cdp/connection.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/connection.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/__init__.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/__init__.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/__init__.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/browser.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/browser.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/browser.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/debugger.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/debugger.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/debugger.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/dom.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/dom.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/dom.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/emulation.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/emulation.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/emulation.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/fetch.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/fetch.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/fetch.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/input_.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/input_.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/input_.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/inspector.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/inspector.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/inspector.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/io.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/io.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/io.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/network.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/network.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/network.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/page.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/page.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/page.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/runtime.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/runtime.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/runtime.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/security.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/security.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/security.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/target.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/target.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/target.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/util.py
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/util.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/devtools/util.pyo
+${PYSITELIB}/streamlink/webbrowser/cdp/exceptions.py
+${PYSITELIB}/streamlink/webbrowser/cdp/exceptions.pyc
+${PYSITELIB}/streamlink/webbrowser/cdp/exceptions.pyo
+${PYSITELIB}/streamlink/webbrowser/chromium.py
+${PYSITELIB}/streamlink/webbrowser/chromium.pyc
+${PYSITELIB}/streamlink/webbrowser/chromium.pyo
+${PYSITELIB}/streamlink/webbrowser/exceptions.py
+${PYSITELIB}/streamlink/webbrowser/exceptions.pyc
+${PYSITELIB}/streamlink/webbrowser/exceptions.pyo
+${PYSITELIB}/streamlink/webbrowser/webbrowser.py
+${PYSITELIB}/streamlink/webbrowser/webbrowser.pyc
+${PYSITELIB}/streamlink/webbrowser/webbrowser.pyo
${PYSITELIB}/streamlink_cli/__init__.py
${PYSITELIB}/streamlink_cli/__init__.pyc
${PYSITELIB}/streamlink_cli/__init__.pyo
${PYSITELIB}/streamlink_cli/__main__.py
${PYSITELIB}/streamlink_cli/__main__.pyc
${PYSITELIB}/streamlink_cli/__main__.pyo
+${PYSITELIB}/streamlink_cli/_parser.py
+${PYSITELIB}/streamlink_cli/_parser.pyc
+${PYSITELIB}/streamlink_cli/_parser.pyo
${PYSITELIB}/streamlink_cli/argparser.py
${PYSITELIB}/streamlink_cli/argparser.pyc
${PYSITELIB}/streamlink_cli/argparser.pyo
${PYSITELIB}/streamlink_cli/compat.py
${PYSITELIB}/streamlink_cli/compat.pyc
${PYSITELIB}/streamlink_cli/compat.pyo
-${PYSITELIB}/streamlink_cli/console.py
-${PYSITELIB}/streamlink_cli/console.pyc
-${PYSITELIB}/streamlink_cli/console.pyo
+${PYSITELIB}/streamlink_cli/console/__init__.py
+${PYSITELIB}/streamlink_cli/console/__init__.pyc
+${PYSITELIB}/streamlink_cli/console/__init__.pyo
+${PYSITELIB}/streamlink_cli/console/console.py
+${PYSITELIB}/streamlink_cli/console/console.pyc
+${PYSITELIB}/streamlink_cli/console/console.pyo
+${PYSITELIB}/streamlink_cli/console/progress.py
+${PYSITELIB}/streamlink_cli/console/progress.pyc
+${PYSITELIB}/streamlink_cli/console/progress.pyo
+${PYSITELIB}/streamlink_cli/console/stream.py
+${PYSITELIB}/streamlink_cli/console/stream.pyc
+${PYSITELIB}/streamlink_cli/console/stream.pyo
+${PYSITELIB}/streamlink_cli/console/stream_wrapper.py
+${PYSITELIB}/streamlink_cli/console/stream_wrapper.pyc
+${PYSITELIB}/streamlink_cli/console/stream_wrapper.pyi
+${PYSITELIB}/streamlink_cli/console/stream_wrapper.pyo
+${PYSITELIB}/streamlink_cli/console/terminal.py
+${PYSITELIB}/streamlink_cli/console/terminal.pyc
+${PYSITELIB}/streamlink_cli/console/terminal.pyo
+${PYSITELIB}/streamlink_cli/console/user_input.py
+${PYSITELIB}/streamlink_cli/console/user_input.pyc
+${PYSITELIB}/streamlink_cli/console/user_input.pyo
+${PYSITELIB}/streamlink_cli/console/windows.py
+${PYSITELIB}/streamlink_cli/console/windows.pyc
+${PYSITELIB}/streamlink_cli/console/windows.pyo
${PYSITELIB}/streamlink_cli/constants.py
${PYSITELIB}/streamlink_cli/constants.pyc
${PYSITELIB}/streamlink_cli/constants.pyo
+${PYSITELIB}/streamlink_cli/exceptions.py
+${PYSITELIB}/streamlink_cli/exceptions.pyc
+${PYSITELIB}/streamlink_cli/exceptions.pyo
${PYSITELIB}/streamlink_cli/main.py
${PYSITELIB}/streamlink_cli/main.pyc
${PYSITELIB}/streamlink_cli/main.pyo
@@ -648,6 +752,9 @@ ${PYSITELIB}/streamlink_cli/output/playe
${PYSITELIB}/streamlink_cli/output/player.pyc
${PYSITELIB}/streamlink_cli/output/player.pyo
${PYSITELIB}/streamlink_cli/py.typed
+${PYSITELIB}/streamlink_cli/show_matchers.py
+${PYSITELIB}/streamlink_cli/show_matchers.pyc
+${PYSITELIB}/streamlink_cli/show_matchers.pyo
${PYSITELIB}/streamlink_cli/streamrunner.py
${PYSITELIB}/streamlink_cli/streamrunner.pyc
${PYSITELIB}/streamlink_cli/streamrunner.pyo
@@ -663,9 +770,9 @@ ${PYSITELIB}/streamlink_cli/utils/path.p
${PYSITELIB}/streamlink_cli/utils/player.py
${PYSITELIB}/streamlink_cli/utils/player.pyc
${PYSITELIB}/streamlink_cli/utils/player.pyo
-${PYSITELIB}/streamlink_cli/utils/progress.py
-${PYSITELIB}/streamlink_cli/utils/progress.pyc
-${PYSITELIB}/streamlink_cli/utils/progress.pyo
${PYSITELIB}/streamlink_cli/utils/versioncheck.py
${PYSITELIB}/streamlink_cli/utils/versioncheck.pyc
${PYSITELIB}/streamlink_cli/utils/versioncheck.pyo
+man/man1/streamlink.1
+share/bash-completion/completions/streamlink
+share/zsh/site-functions/_streamlink
Index: pkgsrc/multimedia/streamlink/distinfo
diff -u pkgsrc/multimedia/streamlink/distinfo:1.25 pkgsrc/multimedia/streamlink/distinfo:1.26
--- pkgsrc/multimedia/streamlink/distinfo:1.25 Mon May 8 19:24:46 2023
+++ pkgsrc/multimedia/streamlink/distinfo Mon Mar 2 20:31:12 2026
@@ -1,5 +1,7 @@
-$NetBSD: distinfo,v 1.25 2023/05/08 19:24:46 yhardy Exp $
+$NetBSD: distinfo,v 1.26 2026/03/02 20:31:12 yhardy Exp $
-BLAKE2s (streamlink-5.5.1.tar.gz) = b9fab7efbaf5c2c88521aefe9a01b7fd1f1ec82212ea0348b6183c10980d27ee
-SHA512 (streamlink-5.5.1.tar.gz) = 492e7cce3cb3917b0652206088f0fbffdfcd47ba9517402e1d22fbb2fb9627b3d1b8da0f31d9f2b799ff7236e42a8473d447e6922e2485f8ce8332b4c52db0db
-Size (streamlink-5.5.1.tar.gz) = 496887 bytes
+BLAKE2s (streamlink-8.1.2.tar.gz) = 1bfc36d19ddbb18760b0f16a80ac32f3281e1c9aecc217eacc8f482e390fc9c8
+SHA512 (streamlink-8.1.2.tar.gz) = ce57617ba1de2fbb62e67abb406ae2550f9fd92ed20422480d8b0f8deb8fc7a9af1498de03d299259b983d4467fb323c4a600e16aed9d44b7b81581d9c3f3b55
+Size (streamlink-8.1.2.tar.gz) = 823590 bytes
+SHA1 (patch-build__backend_onbuild.py) = c73f4a88f76e5ae6db0b0b993206d270f36115ec
+SHA1 (patch-setup.py) = 629d625e1566e3deff082806d25d4cdcdf9459e6
Added files:
Index: pkgsrc/multimedia/streamlink/patches/patch-build__backend_onbuild.py
diff -u /dev/null pkgsrc/multimedia/streamlink/patches/patch-build__backend_onbuild.py:1.1
--- /dev/null Mon Mar 2 20:31:12 2026
+++ pkgsrc/multimedia/streamlink/patches/patch-build__backend_onbuild.py Mon Mar 2 20:31:12 2026
@@ -0,0 +1,31 @@
+$NetBSD: patch-build__backend_onbuild.py,v 1.1 2026/03/02 20:31:12 yhardy Exp $
+
+Match the call parameters with how it is used by our py-versioningit package.
+
+--- build_backend/onbuild.py.orig 2024-11-04 16:33:10.000000000 +0000
++++ build_backend/onbuild.py
+@@ -22,11 +22,12 @@ except ImportError: # pragma: no cover
+ def onbuild(
+ *,
+ is_source: bool,
+- template_fields: dict[str, Any],
+- params: dict[str, Any],
++ template_fields: Optional[dict[str, Any]] = {},
++ params: Optional[dict[str, Any]] = {},
+ # backward compatibility for `versioningit <3.0.0`
+ build_dir: str | Path | None = None,
+ file_provider: SetuptoolsFileProvider | None = None,
++ version: Optional[str] = None
+ ):
+ """
+ Remove the ``versioningit`` build-requirement from Streamlink's source distribution.
+@@ -49,7 +50,8 @@ def onbuild(
+ raise RuntimeError("Missing file_provider or build_dir")
+
+ pkg_dir: Path = base_dir / "src" if is_source else base_dir
+- version: str = template_fields["version"]
++ if version == None:
++ version = template_fields["version"]
+ cmproxy: Proxy[str]
+
+ # Remove versioningit from ``build-system.requires`` in ``pyproject.toml``
Index: pkgsrc/multimedia/streamlink/patches/patch-setup.py
diff -u /dev/null pkgsrc/multimedia/streamlink/patches/patch-setup.py:1.3
--- /dev/null Mon Mar 2 20:31:12 2026
+++ pkgsrc/multimedia/streamlink/patches/patch-setup.py Mon Mar 2 20:31:12 2026
@@ -0,0 +1,21 @@
+$NetBSD: patch-setup.py,v 1.3 2026/03/02 20:31:12 yhardy Exp $
+
+Install manpages in ${PKGMANDIR}.
+
+--- setup.py.orig 2025-11-11 16:12:14.488784600 +0000
++++ setup.py
+@@ -1,4 +1,5 @@
+ import sys
++from os import getenv, path
+ from textwrap import dedent
+
+
+@@ -59,7 +60,7 @@ data_files = [
+ # man page:
+ # requires the pre-built man page file via sphinx ("docs" dependency group)
+ # `make --directory=docs clean man`
+- ("share/man/man1", ["docs/_build/man/streamlink.1"]),
++ (getenv("PKGMANDIR") + "/man1", ["docs/_build/man/streamlink.1"]),
+ ]
+ data_files = [
+ (destdir, [file for file in srcfiles if Path(file).exists()])
Home |
Main Index |
Thread Index |
Old Index