Skip to content

Commit 9fc1377

Browse files
authored
[yt-dlp] Update to 2025.11.12 (#15025)
1 parent d5c02b1 commit 9fc1377

File tree

5 files changed

+55
-2
lines changed

5 files changed

+55
-2
lines changed

stubs/yt-dlp/@tests/stubtest_allowlist.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,5 @@ yt_dlp.utils.(_utils.)?prepend_extension
2626
yt_dlp.utils.(_utils.)?replace_extension
2727
# Unsure why this is here.
2828
yt_dlp.utils.jslib.devalue.TYPE_CHECKING
29+
# internal API:
30+
yt_dlp.utils._jsruntime.runtime_version_tuple

stubs/yt-dlp/METADATA.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
version = "2025.10.22"
1+
version = "2025.11.12"
22
upstream_repository = "https://github.com/yt-dlp/yt-dlp"
33
requires = ["websockets"]

stubs/yt-dlp/yt_dlp/__init__.pyi

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,8 @@ class _Params(TypedDict, total=False):
189189
default_search: str | None
190190
dynamic_mpd: bool | None
191191
extractor_args: Mapping[str, Mapping[str, Any]] | None
192+
js_runtimes: dict[str, dict[str, str] | None]
193+
remote_components: set[Literal["ejs:npm", "ejs:github"]]
192194
encoding: str | None
193195
extract_flat: bool | Literal["in_playlist", "discard", "discard_in_playlist"] | None
194196
live_from_start: bool | None

stubs/yt-dlp/yt_dlp/globals.pyi

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,14 @@
11
from collections import defaultdict
2-
from typing import Any, Generic, Literal, TypeVar
2+
from typing import Any, Generic, Literal, TypedDict, TypeVar, type_check_only
3+
4+
from yt_dlp.utils._jsruntime import BunJsRuntime, DenoJsRuntime, NodeJsRuntime, QuickJsRuntime
5+
6+
@type_check_only
7+
class _SupportedJSRuntimes(TypedDict):
8+
deno: type[DenoJsRuntime]
9+
node: type[NodeJsRuntime]
10+
bun: type[BunJsRuntime]
11+
quickjs: type[QuickJsRuntime]
312

413
_T = TypeVar("_T")
514

@@ -18,3 +27,5 @@ plugin_ies_overrides: Indirect[defaultdict[str, Any]]
1827
IN_CLI: Indirect[bool]
1928
LAZY_EXTRACTORS: Indirect[bool | None]
2029
WINDOWS_VT_MODE: Indirect[Literal[False] | None] # Code takes into account that only False here
30+
supported_js_runtimes: Indirect[_SupportedJSRuntimes]
31+
supported_remote_components: Indirect[list[Literal["ejs:github", "ejs:npm"]]]
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
import abc
2+
from dataclasses import dataclass
3+
from functools import cached_property
4+
from typing import Final
5+
6+
@dataclass(frozen=True)
7+
class JsRuntimeInfo:
8+
name: str
9+
path: str
10+
version: str
11+
version_tuple: tuple[int, ...]
12+
supported: bool = True
13+
14+
class JsRuntime(abc.ABC):
15+
def __init__(self, path: str | None = None) -> None: ...
16+
@cached_property
17+
@abc.abstractmethod
18+
def info(self) -> JsRuntimeInfo | None: ...
19+
20+
class DenoJsRuntime(JsRuntime):
21+
MIN_SUPPORTED_VERSION: Final[tuple[int, int, int]]
22+
@cached_property
23+
def info(self) -> JsRuntimeInfo | None: ...
24+
25+
class BunJsRuntime(JsRuntime):
26+
MIN_SUPPORTED_VERSION: Final[tuple[int, int, int]]
27+
@cached_property
28+
def info(self) -> JsRuntimeInfo | None: ...
29+
30+
class NodeJsRuntime(JsRuntime):
31+
MIN_SUPPORTED_VERSION: Final[tuple[int, int, int]]
32+
@cached_property
33+
def info(self) -> JsRuntimeInfo | None: ...
34+
35+
class QuickJsRuntime(JsRuntime):
36+
MIN_SUPPORTED_VERSION: Final[tuple[int, int, int]]
37+
@cached_property
38+
def info(self) -> JsRuntimeInfo | None: ...

0 commit comments

Comments
 (0)