aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-03-11[YouTube] Initially support tce-style player JSdirkf
* resolves #33079
2025-03-11[YouTube] Temporarily redirect from tce-style player JSdirkf
2025-03-11[JSInterp] Make indexing error handling more conformantdirkf
* by default TypeError -> undefined, else raise * set allow_undefined=True/False to override
2025-03-11[JSInterp] Handle undefined, etc, passed to JS_RegExp and Exceptiondirkf
2025-03-11[JSInterp] Improve Date processingdirkf
* add JS_Date class implementing JS Date * support constructor args other than date string * support static methods of Date * Date objects are still automatically coerced to timestamp before using in JS.
2025-03-11[compat] Fix inheriting from compat_collections_chain_mapdirkf
* see ytdl-org/youtube-dl#33079#issuecomment-2704038049
2025-03-11[compat] Support zstd Content-Encodingdirkf
* see RFC 8878 7.2
2025-03-11[compat] Clean-updirkf
* make workaround_optparse_bug9161 private * add comments * avoid leaving test objects behind
2025-02-28[YouTube] Fix 91b1569dirkf
2025-02-28[YouTube] Fix channel playlist extraction (#33074)dirkf
* [YouTube] Extract playlist items from LOCKUP_VIEW_MODEL_... * resolves #33073 * thx seproDev (yt-dlp/yt-dlp#11615) Co-authored-by: sepro <sepro@sepr0.com>
2025-02-07[JSInterp] Fix bit-shift coercion for player 9c6dfc4adirkf
2025-02-07[compat] Make casefold privatedirkf
* if required, not supported: `from youtube_dl.casefold import _casefold as casefold`
2025-01-22[YouTube] Use X-Goog-Visitor-Iddirkf
* required with tv player client * resolves #33030
2025-01-20[YouTube] Retain .videoDetails members from all player responsesdirkf
2025-01-19[YouTube] Also use ios client when is_livedirkf
2025-01-15[YouTube] Support `... /feeds/videos.xml?playlist_id={pl_id}`dirkf
2025-01-15[YouTube] Switch to TV API clientdirkf
* thx yt-dlp/yt-dlp#12059
2025-01-06[YouTube] Endure subtitle URLs are completedirkf
* WEB URLs are, MWEB not * resolves #33017
2025-01-06[YouTube] Refactor subtitle processingdirkf
* move to internal function * use `traverse-obj()`
2025-01-06[YouTube] Apply code style changes, trailing commas, etcdirkf
2024-12-31[YouTube] Avoid early crash if webpage can't be readdirkf
* see issue #33013
2024-12-16[YouTube] Always extract using MWEB API clientdirkf
* temporary fix-up for 403 on download * MWEB parameters from yt-dlp 2024-12-06
2024-12-16[YouTube] Fix signature function extraction for `2f1832d2`dirkf
* `_` was omitted from patterns * thx yt-dlp/yt-dlp#11801 Co-authored-by: bashonly
2024-12-16[YouTube] Simplify pattern for nsig function name extractiondirkf
2024-12-16[YouTube] Pass nsig value as return hook, fixes player `3bb1f723`dirkf
2024-12-16[YouTube] Handle player `3bb1f723`dirkf
* fix signature code extraction * raise if n function returns input value * add new tests from yt-dlp Co-authored-by: bashonly
2024-12-16[jsinterp] Add return hook for player `3bb1f723`dirkf
* set var `_ytdl_do_not_return` to a specific value in the scope of a function * if an expression to be returned has that value, `return` becomes `void`
2024-12-16[jsinterp] Strip /* comments */ when parsingdirkf
* NB: _separate() is looking creaky
2024-12-16[jsinterp] Fix and improve "methods"dirkf
* push, unshift return new length * impove edge cases for push/pop, shift/unshift, forEach, indexOf, charCodeAt * increase test coverage
2024-12-16[jsinterp] Fix and improve split/joindirkf
* improve split/join edge cases * correctly implement regex split (not like re.split)
2024-12-16[jsinterp] Fix and improve arithmetic operationsdirkf
* addition becomes concat with a string operand * improve handling of edgier cases * arithmetic in float like JS (more places need cast to int?) * increase test coverage
2024-12-16[jsinterp] Support multiple indexing (eg a[1][2])dirkf
* extend single indexing with improved RE (should probably use/have used _separate_at_paren()) * fix some cases that should have given undefined, not throwing * standardise RE group names * support length of objects, like {1: 2, 3: 4, length: 42}
2024-12-16[jsinterp] Fix and improve loose and strict equality operationsdirkf
* reimplement loose equality according to MDN (eg, 1 == "1") * improve strict equality (eg, "abc" === "abc" but 'abc' is not 'abc') * add tests for above
2024-12-16[jsinterp] Implement `typeof` operatordirkf
2024-12-16[InfoExtractor] Use kwarg maxsplit for re.splitdirkf
* May become kw-only in future Pythons
2024-08-06[Youtube] Rework n function extraction patterndirkf
Now also succeeds with player b12cc44b
2024-08-06[jsinterp] Improve slice implementation for player b12cc44bdirkf
Partly taken from yt-dlp/yt-dlp#10664, thx seproDev Fixes #32896
2024-08-01[Youtube] Fix nsig extraction for player 20dfca59 (#32891)Aiur Adept
* dirkf's patch for nsig extraction * add generic search per yt-dlp/yt-dlp/pull/10611 - thx bashonly --------- Co-authored-by: dirkf <fieldhouse@gmx.net>
2024-07-25[Youtube] Find `n` function name in player `3400486c`dirkf
Fixes #32877
2024-07-24[Youtube] Make n-sig throttling diagnostic up-to-datedirkf
2024-07-11[YouTube] Fix nsig processing for player `b22ef6e7`2024.07.11-nightlydirkf
* improve extraction of function name (like yt-dlp/yt-dlp#10390) * always use JSInterp to extract function code (yt-dlp/yt-dlp#10396, thx seproDev, pukkandan)
2024-07-11[jsinterp] Support functionality for player `b22ef6e7`dirkf
* support `prototype` for call() and apply() (yt-dlp/yt-dlp#10392, thx Grub4k) * map JS `Array` to `list`
2024-07-11[jsinterp] Further improve expression parsing (fix fd8242e)dirkf
Passes tests from yt-dlp
2024-07-11[jsinterp] Re-align JSInterp and tests (esp.) with yt-dlpdirkf
Thx: various yt-dlp authors
2024-07-11[core] Address gaps in allowed extensionsbashonly
Adds some extensions missing in 46521096433aceaa41b4caa845bed22ca6f377ce (from yt-dlp/yt-dlp#10362) Authored by: bashonly Co-authored by: dirkf
2024-07-07[core] Fix PR #32830 for fixed extensionless output templatedirkf
2024-07-07[YandexMusic] Save track version in the title fieldunkernet
PR #32837 * Add track version to track title
2024-07-06[YandexMusic] Download music in High Quality (320 Kbit/s)Sergey Musatov
PR #31159
2024-07-02[core,utils] Support unpublicised `--no-check-extensions`dirkf
2024-07-02[core,utils] Implement unsafe file extension mitigationdirkf
* from https://github.com/yt-dlp/yt-dlp/security/advisories/GHSA-79w7-vh3h-8g4, thx grub4k