aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-09-29[workflows/ci] Update to windows-2022 runnerdirkf
FFS
2025-09-29[core] Support explicit `--no-list-formats` optiondirkf
2025-09-29[YouTube] Support `LOCKUP_CONTENT_TYPE_VIDEO` in subscriptions feed extractiondirkf
From yt-dlp/yt-dlp#13665), thx bashonly
2025-09-29[YouTube] Extract fallback title and description from initial datadirkf
Based on yt-dlp/yt-dlp#14078, thx bashonly
2025-09-29[YouTube] Extract srt subtitlesdirkf
From yt-dlp/yt-dlp#13411, thx gamer191
2025-09-29[YouTube] Fix subtitles extractiondirkf
From yt-dlp/yt-dlp#13659, thx bashonly
2025-09-29[YouTube] Handle required preroll waiting perioddirkf
* Based on yt-dlp/yt-dlp#14081, thx bashonly * Uses internal `youtube_preroll_sleep` param, default 6s
2025-09-29[downloader] Delay download according to `available_at` format keydirkf
2025-09-29[YouTube] Implement player JS override for player `0004de42`dirkf
* based on yt-dlp/yt-dlp#14398, thx seproDev * adds --youtube-player-js-variant option * adds --youtube-player-js-version option * sets defaults to main variant of player `0004de42` * fixes #33187, for now
2025-09-29[YouTube] Force `WEB` user agent for video page downloaddirkf
Fixes #33142, until default UAs work.
2025-09-29[YouTube] Handle Web Safari formatsdirkf
From yt-dlp/yt-dlp#14168, thx bashonly.
2025-09-29[YouTube] Update player client detailsdirkf
2025-09-29[YouTube] Miscellaneous clean-upsdirkf
2025-05-04[YouTube] Fix 680069a, excess `min_ver`dirkf
Resolves #33125.
2025-05-03[workflows/ci.yml] Move pinned Ubuntu runner images from withdrawn 20.4 to 22.04dirkf
* fix consequent missing `python-is-python2` package
2025-05-03[YouTube] Improve n-sig function extraction for player `aa3fc80b`dirkf
Resolves #33123
2025-05-03[YouTube] Delete cached problem nsig cache data on descrambling errordirkf
* inspired by yt-dlp/yt-dlp#12750
2025-05-03[YouTube] Cache signature timestamp from player JSdirkf
* if the YT webpage can't be loaded, getting the `sts` requires loading the player JS: this caches it * based on yt-dlp/yt-dlp#13047, thx bashonly
2025-05-03[Cache] Add `clear` functiondirkf
2025-04-08[JSInterp] Add tests and relevant functionality from yt-dlpdirkf
* thx seproDev, bashonly: yt-dlp/yt-dlp#12760, yt-dlp/yt-dlp#12761: - Improve nested attribute support - Pass global stack when extracting objects - interpret_statement: Match attribute before indexing - Fix assignment to array elements with nested brackets - Add new signature tests - Invalidate JS function cache - Avoid testdata dupes now that we cache by URL * rework nsig function name search * fully fixes #33102 * update cache required versions * update program version
2025-04-08[JSInterp] Improve unary operators; add `!`dirkf
2025-04-08[JSInterp] Add `_separate_at_op()`dirkf
2025-04-08[JSInterp] Improve JS classes, etcdirkf
2025-04-08[JSInterp] Reorganise some declarations to align better with yt-dlpdirkf
2025-04-08[InfoExtractor] Fix merging subtitles to empty targetdirkf
2025-04-08[InfoExtractor] Use local variants for remaining parent method callsdirkf
* ... where defined
2025-04-08[YouTube] Remove remaining hard-coded API keysdirkf
* no longer required for these cases
2025-04-08[YouTube] Fix playlist continuation extractiondirkf
* thx coletdjnz, bashonly: yt-dlp/yt-dlp#12777
2025-04-08[YouTube] Support shorts playlistdirkf
* only 1..100: yt-dlp/yt-dlp#11130
2025-04-08[cache] Use `esc_rfc3986` to encode cache keydirkf
2025-04-08[utils] Support optional `safe` argument for `escape_rfc3986()`dirkf
2025-04-08[compat] Improve Py2 compatibility for URL Quotingdirkf
2025-04-08[cache] Align further with yt-dlpdirkf
* use compat_os_makedirs * support non-ASCII characters in cache key * improve logging
2025-04-08[compat] Add compat_os_makedirsdirkf
* support exists_ok parameter in Py < 3.2
2025-04-08[core] Refactor message routines to align better with yt-dlpdirkf
* in particular, support `only_once` in the same methods
2025-03-31[JSInterp] Temporary fix for #33102dirkf
2025-03-26[Misc] Correct [_]IE_DESC/NAME in a few IEsdirkf
* thx seproDev, yt-dlp/yt-dlp/pull/12694/commits/ae69e3c * also add documenting comment in `InfoExtractor`
2025-03-26[ITV] Mark ITVX not workingdirkf
* update old shim * correct [_]IE_DESC
2025-03-26[YouTube] Support player `4fcd6e4a`dirkf
thx seproDev, bashonly: yt-dlp/yt-dlp#12748
2025-03-25[JSInterp] Use `,` for join() with null/undefined argumentdirkf
Eg: [1,2,3].join(null) -> '1,2,3'
2025-03-25[YouTube] Align signature tests with yt-dlpdirkf
thx bashonly, yt-dlp/yt-dlp#12725
2025-03-25[YouTube] Update signature extraction for players `643afba4`, `363db69b`dirkf
2025-03-25[YouTube] Support new player URL patternsdirkf
2025-03-25[JSInterp] Improve indexingdirkf
* catch invalid list index with `ValueError` (eg [1, 2]['ab'] -> undefined) * allow assignment outside existing list (eg var l = [1,2]; l[9] = 0;)
2025-03-25[YouTube] Make `_extract_player_info()` use `_search_regex()`dirkf
2025-03-25[YouTube] Also get original of translated automatic captionsdirkf
2025-03-25[YouTube] Get subtitles/automatic captions from both web and API responsesdirkf
2025-03-21[YouTube] Improve support for tce-style player JSdirkf
* improve extraction of global "useful data" Array from player JS * also handle tv-player and add tests: thx seproDev (yt-dlp/yt-dlp#12684) Co-Authored-By: sepro <sepro@sepr0.com>
2025-03-21[YouTube] Update player client datadirkf
thx seproDev (yt-dlp/yt-dlp#12603) Co-authored-by: sepro <sepro@sepr0.com>
2025-03-11[JSInterp] Improve testsdirkf
* from yt-dlp/yt-dlp#12313 * also fix d7c2708