Subject: CVS commit: pkgsrc/multimedia/streamlink
From: Manuel Bouyer
Date: 2022-05-11 20:07:29
Message id: 20220511180729.19DB6FA94@cvs.NetBSD.org

Log Message:
Update streamlink to 4.0.1. Changes since 2.3.0:

    BREAKING: dropped support for Python 3.6 (#4442)
    BREAKING/API: removed streamlink.plugin.api.utils module (#4467)
    BREAKING/setup: switched to PEP 518 build system declaration and replaced \ 
versioneer in favor of versioningit (#4440)
    BREAKING/packaging: replaced Windows installers with new ones built at \ 
streamlink/windows-installer (#4405)
        Added: new embedded Python builds for 3.8 and 3.10, both x86 and x86_64
        Updated: embedded FFmpeg to 5.0

    Added: support for --record=-, for writing data to stdout while watching at \ 
the same time (#4462)
    Added: plugin variable for --title, --output, --record and --record-and-pipe \ 
(#4437)
    Added: missing CLI protocol parameter support for DASH streams (#4434)
    Updated: CLI and API documentation (#4415, #4424, #4430)
    Updated: plugin description documentation (#4391)
    Fixed: nicolive email logins (#4380)
    Fixed: various other plugin issues (see the changelog down below)
    New plugins: cmmedia (#4416), htv (#4431), mdstrm (#4395), trovo (#4471)
    Removed plugins: abweb (#4270), garena (#4460), senategov (#4458), \ 
teamliquid (#4393), tlctr (#4432), vrtbe (#4459)

    Added: log message for the resolved path when writing output to file (#4336)
    Added: new plugins for rtpa.es (#4344) and lnk.lt (#4364)
    Changed: metadata requirements for built-in plugins (#4374)
    Improved: plugins documentation (#4374)
    Fixed: filmon plugin, requires at least OpenSSL 1.1.0 (#4335, #4345)
    Fixed: mildom plugin (#4375)
    Fixed: nicolive email logins with confirmation codes (#4380)
    Fixed: various other plugin issues, see the changelog down below
    Upgraded: Windows installer's Python and dependency versions (#4330, #4347)

    Changed: file overwrite prompt to wait for user input before opening streams \ 
(#4252)
    Fixed: log messages appearing in --json output (#4258)
    Fixed: keep-alive TCP connections when filtering out HLS segments (#4229)
    Fixed: sort order of DASH streams with the same video resolution (#4220)
    Fixed: HLS segment byterange offsets (#4301, #4302)
    Fixed: YouTube /live URLs (#4222)
    Fixed: UStream websocket address (#4238)
    Fixed: Pluto desync issues by filtering out bumper segments (#4255)
    Fixed: various plugin issues - please see the changelog down below
    Removed plugins: abweb (#4270), latina (#4269), live_russia_tv (#4263), \ 
liveme (#4264)

    Added: support for the id plugin metadata property (#4203)
    Updated: Twitch access token request parameter regarding embedded ads (#4194)
    Fixed: early SIGINT/SIGTERM signal handling (#4190)
    Fixed: broken character set decoding when parsing HTML documents (#4201)
    Fixed: missing home directory expansion (tilde character) in file output \ 
paths (#4204)
    New plugin: tviplayer (#4199)

    BREAKING: dropped support for RTMP, HDS and AkamaiHD streams (#4169, #4168)
        removed the rtmp://, hds:// and akamaihd:// protocol plugins
        removed all Flash related code
        upgraded all plugins using these old streaming protocols
        dropped RTMPDump dependency
    BREAKING: removed the following CLI arguments (and respective session \ 
options): (#4169, #4168)
        --rtmp-rtmpdump, --rtmpdump, --rtmp-proxy, --rtmp-timeout
        Users of Streamlink's Windows installer will need to update their config \ 
file.
        --subprocess-cmdline, --subprocess-errorlog, --subprocess-errorlog-path
        --hds-live-edge, --hds-segment-attempts, --hds-segment-threads, \ 
--hds-segment-timeout, --hds-timeout
    BREAKING: switched from HTTP to HTTPS for all kinds of scheme-less input \ 
URLs. If a site or http-proxy doesn't support HTTPS, then HTTP needs to be set \ 
explicitly. (#4068, #4053)
    BREAKING/API: changed Session.resolve_url() and \ 
Session.resolve_url_no_redirect() to return a tuple of a plugin class and the \ 
resolved URL instead of an initialized plugin class instance. This fixes the \ 
availability of plugin options in a plugin's constructor. (#4163)
    BREAKING/requirements: dropped alternative dependency pycrypto and removed \ 
the STREAMLINK_USE_PYCRYPTO env var switch (#4174)
    BREAKING/requirements: switched from iso-639+iso3166 to pycountry and \ 
removed the STREAMLINK_USE_PYCOUNTRY env var switch (#4175)
    BREAKING/setup: disabled unsupported Python versions, disabled the \ 
deprecated test setuptools command, removed the NO_DEPS env var, and switched to \ 
declarative package data via setup.cfg (#4079, #4107, #4115, #4113)

    Deprecated: --https-proxy in favor of a single --http-proxy CLI argument \ 
(and respective session option). Both now set the same proxy for all HTTPS/HTTP \ 
requests and websocket connections. --https-proxy will be removed in a future \ 
release. (#4120)
    Added: official support for Python 3.10 (#4144)
    Added: --twitch-api-header for only setting Twitch.tv API requests headers \ 
(for authentication, etc.) as an alternative to --http-header (#4156)
    Added: BASH and ZSH completions to sdist tarball and wheels. (#4048, #4178)
    Added: support for creating parent directories via metadata variables in \ 
file output paths (#4085)
    Added: new WebsocketClient implementation (#4153)
    Updated: plugins using websocket connections - nicolive, ustreamtv, \ 
twitcasting (#4155, #4164, #4154)
    Updated: circumvention for YouTube's age verification (#4058)
    Updated: and fixed lots of other plugins, see the detailed changelog below
    Reverted: HLS segment downloads always being streamed, and added back \ 
--hls-segment-stream-data to prevent connection issues (#4159)
    Fixed: URL percent-encoding for sites which require the lowercase format (#4003)
    Fixed: XML parsing issues (#4075)
    Fixed: broken method parameter when using the httpstream:// protocol plugin \ 
(#4171)
    Fixed: test failures when the brotli package is installed (#4022)
    Requirements: bumped lxml to >4.6.4,<5.0 and websocket-client to \ 
>=1.2.1,<2.0 (#4143, #4153)
    Windows installer: upgraded Python to 3.9.8 and FFmpeg to n4.4.1 (#4176, #4124)
    Documentation: upgraded to first stable version of the Furo theme (#4000)
    New plugins: pandalive (#4064)
    Removed plugins: tga (#4129), viasat (#4087), viutv (#4018), \ 
webcast_india_gov (#4024)

Deprecated: stream-type specific stream transport options in favor of generic \ 
options (#3893)

    use --stream-segment-attempts instead of --{dash,hds,hls}-segment-attempts
    use --stream-segment-threads instead of --{dash,hds,hls}-segment-threads
    use --stream-segment-timeout instead of --{dash,hds,hls}-segment-timeout
    use --stream-timeout instead of --{dash,hds,hls,rtmp,http-stream}-timeout

See the documentation's deprecations page for more information.

Deprecated: --hls-segment-stream-data option and made it always stream segment \ 
data (#3894)

Updated: Python version of the Windows installer from 3.8 to 3.9 and dropped \ 
support for Windows 7 due to Python incompatibilities (#3918)
See the documentation's install page for alternative installation methods on \ 
Windows 7.

Updated: FFmpeg in the Windows Installer from 4.2 (Zeranoe) to 4.4 \ 
(streamlink/FFmpeg-Builds) (#3981)

Added: {author}, {category}/{game}, {title} and {url} variables to --output, \ 
--record and --record-and-play (#3962)

Added: {time}/{time:custom-format} variable to --title, --output, --record and \ 
--record-and-play (#3993)

Added: --fs-safe-rules for changing character replacement rules in file outputs \ 
(#3962)

Added: plugin metadata to --json stream data output (#3987)

Fixed: named pipes not being cleaned up by FFMPEGMuxer (#3992)

Fixed: KeyError on invalid variables in --player-args (#3988)

Fixed: tests failing in certain cases when run in different order (#3920)

Fixed: initial HLS playlist parsing issues (#3903, #3910)

Fixed: various plugin issues. Please see the changelog down below.

Dependencies: added lxml>=4.6.3 (#3952)

Dependencies: switched back to requests>=2.26.0 on Windows (#3930)

Removed plugins: animeworld (#3951), gardenersworld (#3966), huomao (#3932)

Files:
RevisionActionfile
1.31modifypkgsrc/multimedia/streamlink/Makefile
1.16modifypkgsrc/multimedia/streamlink/PLIST
1.21modifypkgsrc/multimedia/streamlink/distinfo