dirkf 
							
						 
					 
					
						
						
							
						
						46fde7caee 
					 
					
						
						
							
							[core] Update redirect handling from yt-dlp  
						
						... 
						
						
						
						* Thx coletdjnz: https://github.com/yt-dlp/yt-dlp/pull/7094 
* add test that redirected `POST` loses its `Content-Type` 
						
						
					 
					
						2023-07-18 10:50:46 +01:00 
						 
				 
			
				
					
						
							
							
								dirkf 
							
						 
					 
					
						
						
							
						
						f47fdb9564 
					 
					
						
						
							
							[utils] Add {expected_type} and Iterable support to traverse_obj()  
						
						
						
						
					 
					
						2023-07-18 10:50:46 +01:00 
						 
				 
			
				
					
						
							
							
								dirkf 
							
						 
					 
					
						
						
							
						
						f24bc9272e 
					 
					
						
						
							
							[Misc] Fixes for 2.6 compatibility  
						
						
						
						
					 
					
						2023-07-05 22:58:54 +01:00 
						 
				 
			
				
					
						
							
							
								dirkf 
							
						 
					 
					
						
						
							
						
						11cc3f3ad0 
					 
					
						
						
							
							[utils] Fix compiled_regex_type in  249f2b6 
						
						
						
						
					 
					
						2023-05-11 20:53:07 +01:00 
						 
				 
			
				
					
						
							
							
								dirkf 
							
						 
					 
					
						
						
							
						
						64d6dd64c8 
					 
					
						
						
							
							[YouTube] Support Releases tab  
						
						
						
						
					 
					
						2023-04-23 22:58:35 +01:00 
						 
				 
			
				
					
						
							
							
								dirkf 
							
						 
					 
					
						
						
							
						
						25124bd640 
					 
					
						
						
							
							[devscripts] Improve hack to convert command-line options to API options  
						
						... 
						
						
						
						* define equality for DateRange
* don't show default DateRange 
						
						
					 
					
						2023-04-05 19:05:16 +01:00 
						 
				 
			
				
					
						
							
							
								dirkf 
							
						 
					 
					
						
						
							
						
						f35b757c82 
					 
					
						
						
							
							[utils] Ensure allow_types for variadic() is a tuple  
						
						
						
						
					 
					
						2023-03-19 02:29:00 +00:00 
						 
				 
			
				
					
						
							
							
								pukkandan 
							
						 
					 
					
						
						
							
						
						1d3751c3fe 
					 
					
						
						
							
							Escape URLs in sanitized_Request, not sanitize_url d2558234cf5dd12d6896eed5427b7dcdb3ab7b5a added escaping of URLs while sanitizing. However, sanitize_url may not always receive an actual URL. Eg: When using youtube-dl "search query" --default-search ytsearch, search query gets escaped to search%20query before being prefixed with ytsearch: which is not the intended behavior. So the escaping is moved to sanitized_Request instead.  
						
						
						
						
					 
					
						2023-02-20 20:27:25 +00:00 
						 
				 
			
				
					
						
							
							
								dirkf 
							
						 
					 
					
						
						
							
						
						90c9f789d9 
					 
					
						
						
							
							[utils] Add parse_qs, update_url  
						
						... 
						
						
						
						[skip ci] 
						
						
					 
					
						2023-02-13 03:54:51 +00:00 
						 
				 
			
				
					
						
							
							
								dirkf 
							
						 
					 
					
						
						
							
						
						58988c1421 
					 
					
						
						
							
							[YouTube] Bypass age-gating for certain restricted videos  
						
						... 
						
						
						
						* Use TVHTML5_SIMPLY_EMBEDDED_PLAYER client
* Also add and fix tests
* Introduce and use new utility function `update_url()` 
						
						
					 
					
						2023-02-13 03:54:51 +00:00 
						 
				 
			
				
					
						
							
							
								Andrei Lebedev 
							
						 
					 
					
						
						
							
						
						27ed77aabb 
					 
					
						
						
							
							[utils] Backport traverse_obj (etc) from yt-dlp ( #31156 )  
						
						... 
						
						
						
						* Backport traverse_obj and closely related function from yt-dlp (code by pukkandan)
* Backport LazyList, variadic(), try_call (code by pukkandan)
* Recast using yt-dlp's newer traverse_obj() implementation and tests (code by grub4k)
* Add tests for Unicode case folding support matching Py3.5+ (requires f102e3dfieldhouse@gmx.net > 
						
						
					 
					
						2022-11-03 10:09:37 +00:00 
						 
				 
			
				
					
						
							
							
								dirkf 
							
						 
					 
					
						
						
							
						
						c94a459a24 
					 
					
						
						
							
							[utils] Sanitize look-alike Unicode glyphs in non-ID filename fields when --restrict-filenames  
						
						... 
						
						
						
						Implements https://github.com/ytdl-org/youtube-dl/issues/31216#issuecomment-1236102822 , which has a test. 
						
						
					 
					
						2022-10-11 12:18:12 +00:00 
						 
				 
			
				
					
						
							
							
								dirkf 
							
						 
					 
					
						
						
							
						
						556862bc91 
					 
					
						
						
							
							[utils] Ensure RFC3986 encoding result is unicode  
						
						
						
						
					 
					
						2022-08-21 00:45:06 +01:00 
						 
				 
			
				
					
						
							
							
								dirkf 
							
						 
					 
					
						
						
							
						
						d231b56717 
					 
					
						
						
							
							[jsinterp] Overhaul JSInterp to handle new YT players 4c3f79c5, 324f67b9 ( #31170 )  
						
						... 
						
						
						
						* back-port from yt-dlp 8f53dc44a0cc1c2d98c35740b9293462c080f5d0, thanks pukkandan
* also support void, improve <</>> precedence, improve expressions in comma-list
* add more tests 
						
						
					 
					
						2022-08-14 18:45:45 +01:00 
						 
				 
			
				
					
						
							
							
								pukkandan 
							
						 
					 
					
						
						
							
						
						0700fde640 
					 
					
						
						
							
							[utils, etc] Kill child processes when yt-dl is killed  
						
						... 
						
						
						
						* derived from PR #26592 , closes  #26592 
Authored by: Unrud 
						
						
					 
					
						2022-06-10 19:57:46 +01:00 
						 
				 
			
				
					
						
							
							
								pukkandan 
							
						 
					 
					
						
						
							
						
						1baa0f5f66 
					 
					
						
						
							
							[utils] Escape URL while sanitizing  
						
						... 
						
						
						
						Closes  #31008 , #yt-dlp/263
While this fixes the issue in question, it does not try to address the root-cause of the problem
Refer: 915f911e365736227e134ad654601443dbfd7ccb, f5fa042c82300218a2d07b95dd6b9c0756745db3 
					
						2022-06-06 16:03:04 +01:00 
						 
				 
			
				
					
						
							
							
								dirkf 
							
						 
					 
					
						
						
							
						
						52c3751df7 
					 
					
						
						
							
							[utils] Enable ALPN in HTTPS to satisfy broken servers  
						
						... 
						
						
						
						See https://github.com/yt-dlp/yt-dlp/issues/3878  
						
						
					 
					
						2022-05-28 13:52:51 +01:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						cfee2dfe83 
					 
					
						
						
							
							[utils] PEP 8  
						
						
						
						
					 
					
						2021-04-17 03:32:04 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						a00a7e0cad 
					 
					
						
						
							
							[utils] Add support for support for experimental HTTP response status code 308 Permanent Redirect (refs  #27877 , refs  #28768 )  
						
						
						
						
					 
					
						2021-04-17 03:22:13 +07:00 
						 
				 
			
				
					
						
							
							
								Remita Amine 
							
						 
					 
					
						
						
							
						
						e88c9ef62a 
					 
					
						
						
							
							[utils] add a function to clean podcast URLs  
						
						
						
						
					 
					
						2021-01-04 01:14:25 +01:00 
						 
				 
			
				
					
						
							
							
								Remita Amine 
							
						 
					 
					
						
						
							
						
						9dd674e1d2 
					 
					
						
						
							
							[utils] accept only supported protocols in url_or_none  
						
						
						
						
					 
					
						2020-12-30 09:22:30 +01:00 
						 
				 
			
				
					
						
							
							
								Josh Soref 
							
						 
					 
					
						
						
							
						
						71ddc222ad 
					 
					
						
						
							
							Fix typos ( #27084 )  
						
						... 
						
						
						
						* spelling: authorization
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: brightcove
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: creation
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: exceeded
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: exception
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: extension
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: extracting
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: extraction
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: frontline
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: improve
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: length
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: listsubtitles
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: multimedia
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: obfuscated
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: partitioning
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: playlist
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: playlists
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: restriction
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: services
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: split
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: srmediathek
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: support
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: thumbnail
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: verification
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >
* spelling: whitespaces
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com > 
						
						
					 
					
						2020-11-21 22:00:05 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						fe07e788bf 
					 
					
						
						
							
							[utils] Skip ! prefixed code in js_to_json  
						
						
						
						
					 
					
						2020-11-17 01:30:43 +07:00 
						 
				 
			
				
					
						
							
							
								Kevin O'Connor 
							
						 
					 
					
						
						
							
						
						4eda10499e 
					 
					
						
						
							
							[utils] Don't attempt to coerce JS strings to numbers in js_to_json ( #26851 )  
						
						... 
						
						
						
						The current logic in `js_to_json` tries to rewrite octal/hex numbers to
decimal. However, when the logic actually happens the `"` or `'` have
already been trimmed off. This causes what were originally strings, that
happen to look like octal/hex numbers, to get rewritten to decimal and
returned as a number rather than a string.
In practive something like:
```js
{
  "0x40": "foo",
  "040": "bar",
}
```
would get rewritten as:
```json
{
  64: "foo",
  32: "bar
}
```
This is problematic since this isn't valid JSON as you cannot have
non-string keys. 
						
						
					 
					
						2020-10-18 00:10:41 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						1d9bf655e6 
					 
					
						
						
							
							[utils] Recognize wav mimetype ( closes   #26463 )  
						
						
						
						
					 
					
						2020-09-06 11:19:53 +07:00 
						 
				 
			
				
					
						
							
							
								Rob 
							
						 
					 
					
						
						
							
						
						9cd5f54e31 
					 
					
						
						
							
							[utils] Fix file permissions in write_json_file ( closes   #12471 ) ( #25122 )  
						
						
						
						
					 
					
						2020-05-20 03:21:52 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						c380cc28c4 
					 
					
						
						
							
							[utils] Improve cookie files support  
						
						... 
						
						
						
						+ Add support for UTF-8 in cookie files
* Skip malformed cookie file entries instead of crashing (invalid entry len, invalid expires at) 
						
						
					 
					
						2020-05-05 04:21:25 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						f1a8511f7b 
					 
					
						
						
							
							[utils] Add reference to cookie file format  
						
						
						
						
					 
					
						2020-03-10 04:59:02 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						042b664933 
					 
					
						
						
							
							Revert "[utils] Add support for cookies with spaces used instead of tabs"  
						
						... 
						
						
						
						According to [1] TABs must be used as separators between fields.
Files produces by some tools with spaces as separators are considered
malformed.
1. https://curl.haxx.se/docs/http-cookies.html 
This reverts commit cff99c91d1 
						
						
					 
					
						2020-03-10 04:53:51 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						cff99c91d1 
					 
					
						
						
							
							[utils] Add support for cookies with spaces used instead of tabs  
						
						
						
						
					 
					
						2020-03-08 18:01:32 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						fca6dba8b8 
					 
					
						
						
							
							[YoutubeDL] Force redirect URL to unicode on python 2  
						
						
						
						
					 
					
						2020-02-29 19:08:44 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						42db58ec73 
					 
					
						
						
							
							[utils] Improve str_to_int  
						
						
						
						
					 
					
						2019-12-15 23:15:24 +07:00 
						 
				 
			
				
					
						
							
							
								Remita Amine 
							
						 
					 
					
						
						
							
						
						348c6bf1c1 
					 
					
						
						
							
							[utils] handle int values passed to str_to_int  
						
						
						
						
					 
					
						2019-11-29 17:39:18 +01:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						1ced222120 
					 
					
						
						
							
							[utils] Add generic caesar cipher and rot47  
						
						
						
						
					 
					
						2019-11-27 02:26:42 +07:00 
						 
				 
			
				
					
						
							
							
								InfernalUnderling 
							
						 
					 
					
						
						
							
						
						9d30c2132a 
					 
					
						
						
							
							[utils] Handle rd-suffixed day parts in unified_strdate ( #23199 )  
						
						
						
						
					 
					
						2019-11-27 00:08:37 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						53896ca5be 
					 
					
						
						
							
							[utils] Actualize major IPv4 address blocks per country  
						
						
						
						
					 
					
						2019-10-29 06:10:20 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						824fa51165 
					 
					
						
						
							
							[utils] Improve subtitles_filename ( closes   #22753 )  
						
						
						
						
					 
					
						2019-10-18 04:03:53 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						f7a147e3b6 
					 
					
						
						
							
							[utils] Introduce random_user_agent and use as default User-Agent ( closes   #21546 )  
						
						
						
						
					 
					
						2019-06-29 00:32:43 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						28cc2241e4 
					 
					
						
						
							
							[utils] Restrict parse_codecs and add theora as known vcodec ( #21381 )  
						
						
						
						
					 
					
						2019-06-14 01:56:17 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						53cd37bac5 
					 
					
						
						
							
							[utils] Improve strip_or_none  
						
						
						
						
					 
					
						2019-05-24 00:03:01 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						3089bc748c 
					 
					
						
						
							
							Fix W504 and disable W503 ( closes   #20863 )  
						
						
						
						
					 
					
						2019-05-11 03:57:40 +07:00 
						 
				 
			
				
					
						
							
							
								Jakub Wilk 
							
						 
					 
					
						
						
							
						
						fd35d8cdfd 
					 
					
						
						
							
							[utils] Transliterate "þ" as "th" ( #20897 )  
						
						... 
						
						
						
						Despite visual similarity "þ" is unrelated to "p".
It is normally transliterated as "th":
    $ echo þ-Þ | iconv -t ASCII//TRANSLIT
    th-TH 
						
						
					 
					
						2019-05-11 01:42:31 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						5e1271c56d 
					 
					
						
						
							
							[utils] Improve int_or_none and float_or_none ( #20403 )  
						
						
						
						
					 
					
						2019-03-23 01:08:54 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						0dc41787af 
					 
					
						
						
							
							[utils] Introduce parse_bitrate  
						
						
						
						
					 
					
						2019-03-17 09:07:47 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						067aa17edf 
					 
					
						
						
							
							Start moving to ytdl-org  
						
						
						
						
					 
					
						2019-03-11 04:00:54 +07:00 
						 
				 
			
				
					
						
							
							
								remitamine 
							
						 
					 
					
						
						
							
						
						e7e62441cd 
					 
					
						
						
							
							[utils] strip #HttpOnly_ prefix from cookies files ( #20219 )  
						
						
						
						
					 
					
						2019-03-03 19:23:59 +07:00 
						 
				 
			
				
					
						
							
							
								Ales Jirasek 
							
						 
					 
					
						
						
							
						
						22f5f5c6fc 
					 
					
						
						
							
							[malltv] Add extractor ( closes   #18058 )  
						
						
						
						
					 
					
						2019-02-08 00:43:26 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						fad4ceb534 
					 
					
						
						
							
							[utils] Fix urljoin for paths with non-http(s) schemes  
						
						
						
						
					 
					
						2019-01-20 20:22:19 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						e9a50fba86 
					 
					
						
						
							
							[utils] Fix typo  
						
						
						
						
					 
					
						2019-01-07 01:02:34 +07:00 
						 
				 
			
				
					
						
							
							
								Sergey M․ 
							
						 
					 
					
						
						
							
						
						b7acc83550 
					 
					
						
						
							
							[utils] Add language codes replaced in 1989 revision of ISO 639 to ISO639Utils ( closes   #18765 )  
						
						
						
						
					 
					
						2019-01-07 00:57:48 +07:00