| Age | Commit message (Collapse) | Author |
|
|
|
* handle comma-separated long-form durations
* support : as millisecond separator.
|
|
Thx: yt-dlp/yt-dlp#10653, etc
|
|
Thx: yt-dlp/yt-dlp#10653 (etc)
|
|
Thx: yt-dlp/yt-dlp#10653
|
|
Thx: yt-dlp/yt-dlp#10653
|
|
Thx yt-dlp/yt-dlp#10653
|
|
Matches yt-dlp/yt-dlp#9426
|
|
Thx: yt-dlp/yt-dlp#13471
|
|
|
|
Resolves #33123
|
|
|
|
* 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
|
|
|
|
|
|
|
|
* use compat_os_makedirs
* support non-ASCII characters in cache key
* improve logging
|
|
thx seproDev, bashonly: yt-dlp/yt-dlp#12748
|
|
thx bashonly, yt-dlp/yt-dlp#12725
|
|
|
|
|
|
* 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>
|
|
* from yt-dlp/yt-dlp#12313
* also fix d7c2708
|
|
* resolves #33079
|
|
* 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.
|
|
|
|
* `_` was omitted from patterns
* thx yt-dlp/yt-dlp#11801
Co-authored-by: bashonly
|
|
|
|
|
|
* fix signature code extraction
* raise if n function returns input value
* add new tests from yt-dlp
Co-authored-by: bashonly
|
|
* NB: _separate() is looking creaky
|
|
* push, unshift return new length
* impove edge cases for push/pop, shift/unshift, forEach, indexOf, charCodeAt
* increase test coverage
|
|
* improve split/join edge cases
* correctly implement regex split (not like re.split)
|
|
* 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
|
|
* 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}
|
|
* reimplement loose equality according to MDN (eg, 1 == "1")
* improve strict equality (eg, "abc" === "abc" but 'abc' is not 'abc')
* add tests for above
|
|
|
|
Partly taken from yt-dlp/yt-dlp#10664, thx seproDev
Fixes #32896
|
|
* 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>
|
|
Fixes #32877
|
|
* 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)
|
|
* support `prototype` for call() and apply() (yt-dlp/yt-dlp#10392, thx Grub4k)
* map JS `Array` to `list`
|
|
Thx: various yt-dlp authors
|
|
* from https://github.com/yt-dlp/yt-dlp/security/advisories/GHSA-79w7-vh3h-8g4, thx grub4k
|
|
* https://github.com/yt-dlp/yt-dlp/commit/8f53dc4
* thx pukkandan
|
|
* skip reason can't be unicode in Py2
* remove duplicate assert...Equal functions
|
|
* add _yes_playlist() method
* avoid crash using _NETRC_MACHINE
* use _search_json() in _search_nextjs_data()
* _search_nextjs_data() default is JSON, not text
* test for above
|
|
|
|
* remove `is_user_input` option per https://github.com/yt-dlp/yt-dlp/pull/8673
* support traversal of compat_xml_etree_ElementTree_Element per https://github.com/yt-dlp/yt-dlp/pull/8911
* allow un/branching using all and any per https://github.com/yt-dlp/yt-dlp/pull/9571
* support traversal of compat_cookies.Morsel and multiple types in `set()` keys per https://github.com/yt-dlp/yt-dlp/pull/9577
thx Grub4k for these
* also, move traversal tests to a separate class
* allow for unordered dicts in tests for Py<3.7
|
|
* parallel to `playlist_mincount'
* specify both for a range of playlist lengths
* if max < min the test will always fail!
|