commit f897981
hovercats
·
2024-10-26 18:22:41 +0000 UTC
parent cdc056a
yt-dlp: 2024.10.22
5 files changed,
+30,
-20
1@@ -1,18 +1,18 @@
2-From 85781c9dc7a882b8638dcfdd60da14261178f437 Mon Sep 17 00:00:00 2001
3+From ea17e99abef87281349a284e0de199fe9a68e3a9 Mon Sep 17 00:00:00 2001
4 From: Michael Forney <mforney@mforney.org>
5 Date: Mon, 4 Jul 2016 16:14:18 -0700
6 Subject: [PATCH] Disable use of ctypes and dynamic loading
7
8 ---
9- yt_dlp/cookies.py | 100 -----------------------------------------
10- yt_dlp/utils/_utils.py | 85 +----------------------------------
11- 2 files changed, 2 insertions(+), 183 deletions(-)
12+ yt_dlp/cookies.py | 102 -----------------------------------------
13+ yt_dlp/utils/_utils.py | 85 +---------------------------------
14+ 2 files changed, 2 insertions(+), 185 deletions(-)
15
16 diff --git a/yt_dlp/cookies.py b/yt_dlp/cookies.py
17-index 070d2fcb9..e527fdec4 100644
18+index 4a69c57..66b07f3 100644
19 --- a/yt_dlp/cookies.py
20 +++ b/yt_dlp/cookies.py
21-@@ -400,8 +400,6 @@ def decrypt(self, encrypted_value):
22+@@ -408,8 +408,6 @@ class ChromeCookieDecryptor:
23 def get_cookie_decryptor(browser_root, browser_keyring_name, logger, *, keyring=None):
24 if sys.platform == 'darwin':
25 return MacChromeCookieDecryptor(browser_keyring_name, logger)
26@@ -21,7 +21,7 @@ index 070d2fcb9..e527fdec4 100644
27 return LinuxChromeCookieDecryptor(browser_keyring_name, logger, keyring=keyring)
28
29
30-@@ -488,43 +486,6 @@ def decrypt(self, encrypted_value):
31+@@ -496,43 +494,6 @@ class MacChromeCookieDecryptor(ChromeCookieDecryptor):
32 return encrypted_value
33
34
35@@ -65,7 +65,7 @@ index 070d2fcb9..e527fdec4 100644
36 def _extract_safari_cookies(profile, logger):
37 if sys.platform != 'darwin':
38 raise ValueError(f'unsupported platform: {sys.platform}')
39-@@ -971,33 +932,6 @@ def _get_mac_keyring_password(browser_keyring_name, logger):
40+@@ -979,33 +940,6 @@ def _get_mac_keyring_password(browser_keyring_name, logger):
41 return None
42
43
44@@ -99,10 +99,11 @@ index 070d2fcb9..e527fdec4 100644
45 def pbkdf2_sha1(password, salt, iterations, key_length):
46 return hashlib.pbkdf2_hmac('sha1', password, salt, iterations, key_length)
47
48-@@ -1027,40 +961,6 @@ def _decrypt_aes_gcm(ciphertext, key, nonce, authentication_tag, logger):
49+@@ -1034,42 +968,6 @@ def _decrypt_aes_gcm(ciphertext, key, nonce, authentication_tag, logger):
50+ logger.warning('failed to decrypt cookie (AES-GCM) because UTF-8 decoding failed. Possibly the key is wrong?', only_once=True)
51 return None
52
53-
54+-
55 -def _decrypt_windows_dpapi(ciphertext, logger):
56 - """
57 - References:
58@@ -129,8 +130,9 @@ index 070d2fcb9..e527fdec4 100644
59 - ctypes.byref(blob_out), # pDataOut
60 - )
61 - if not ret:
62-- logger.warning('failed to decrypt with DPAPI', only_once=True)
63-- return None
64+- message = 'Failed to decrypt with DPAPI. See https://github.com/yt-dlp/yt-dlp/issues/10927 for more info'
65+- logger.error(message)
66+- raise DownloadError(message) # force exit
67 -
68 - result = ctypes.string_at(blob_out.pbData, blob_out.cbData)
69 - ctypes.windll.kernel32.LocalFree(blob_out.pbData)
70@@ -141,10 +143,10 @@ index 070d2fcb9..e527fdec4 100644
71 return os.environ.get('XDG_CONFIG_HOME', os.path.expanduser('~/.config'))
72
73 diff --git a/yt_dlp/utils/_utils.py b/yt_dlp/utils/_utils.py
74-index 0d3e707c5..357f145d7 100644
75+index ea74889..bce349e 100644
76 --- a/yt_dlp/utils/_utils.py
77 +++ b/yt_dlp/utils/_utils.py
78-@@ -1482,64 +1482,7 @@ def __init__(self):
79+@@ -1506,64 +1506,7 @@ class LockingUnsupportedError(OSError):
80 super().__init__(self.msg)
81
82
83@@ -210,7 +212,7 @@ index 0d3e707c5..357f145d7 100644
84 try:
85 import fcntl
86
87-@@ -1888,31 +1831,7 @@ def fix_xml_ampersands(xml_str):
88+@@ -1912,31 +1855,7 @@ def fix_xml_ampersands(xml_str):
89
90
91 def setproctitle(title):
92@@ -244,5 +246,5 @@ index 0d3e707c5..357f145d7 100644
93
94 def remove_start(s, start):
95 --
96-2.44.0
97+2.45.1
98
+9,
-1
1@@ -107,6 +107,7 @@ yt_dlp/extractor/bandaichannel.py
2 yt_dlp/extractor/bandcamp.py
3 yt_dlp/extractor/bannedvideo.py
4 yt_dlp/extractor/bbc.py
5+yt_dlp/extractor/beacon.py
6 yt_dlp/extractor/beatbump.py
7 yt_dlp/extractor/beatport.py
8 yt_dlp/extractor/beeg.py
9@@ -333,6 +334,7 @@ yt_dlp/extractor/gedidigital.py
10 yt_dlp/extractor/generic.py
11 yt_dlp/extractor/genericembeds.py
12 yt_dlp/extractor/genius.py
13+yt_dlp/extractor/germanupa.py
14 yt_dlp/extractor/getcourseru.py
15 yt_dlp/extractor/gettr.py
16 yt_dlp/extractor/giantbomb.py
17@@ -433,6 +435,7 @@ yt_dlp/extractor/khanacademy.py
18 yt_dlp/extractor/kick.py
19 yt_dlp/extractor/kicker.py
20 yt_dlp/extractor/kickstarter.py
21+yt_dlp/extractor/kika.py
22 yt_dlp/extractor/kinja.py
23 yt_dlp/extractor/kinopoisk.py
24 yt_dlp/extractor/kommunetv.py
25@@ -471,7 +474,7 @@ yt_dlp/extractor/litv.py
26 yt_dlp/extractor/livejournal.py
27 yt_dlp/extractor/livestream.py
28 yt_dlp/extractor/livestreamfails.py
29-yt_dlp/extractor/lnkgo.py
30+yt_dlp/extractor/lnk.py
31 yt_dlp/extractor/loom.py
32 yt_dlp/extractor/lovehomeporn.py
33 yt_dlp/extractor/lrt.py
34@@ -522,6 +525,7 @@ yt_dlp/extractor/mixcloud.py
35 yt_dlp/extractor/mlb.py
36 yt_dlp/extractor/mlssoccer.py
37 yt_dlp/extractor/mocha.py
38+yt_dlp/extractor/mojevideo.py
39 yt_dlp/extractor/mojvideo.py
40 yt_dlp/extractor/monstercat.py
41 yt_dlp/extractor/motherless.py
42@@ -751,10 +755,12 @@ yt_dlp/extractor/screen9.py
43 yt_dlp/extractor/screencast.py
44 yt_dlp/extractor/screencastify.py
45 yt_dlp/extractor/screencastomatic.py
46+yt_dlp/extractor/screenrec.py
47 yt_dlp/extractor/scrippsnetworks.py
48 yt_dlp/extractor/scrolller.py
49 yt_dlp/extractor/scte.py
50 yt_dlp/extractor/sejmpl.py
51+yt_dlp/extractor/sen.py
52 yt_dlp/extractor/senalcolombia.py
53 yt_dlp/extractor/senategov.py
54 yt_dlp/extractor/sendtonews.py
55@@ -781,6 +787,7 @@ yt_dlp/extractor/slideshare.py
56 yt_dlp/extractor/slideslive.py
57 yt_dlp/extractor/slutload.py
58 yt_dlp/extractor/smotrim.py
59+yt_dlp/extractor/snapchat.py
60 yt_dlp/extractor/snotr.py
61 yt_dlp/extractor/sohu.py
62 yt_dlp/extractor/sonyliv.py
63@@ -951,6 +958,7 @@ yt_dlp/extractor/videofyme.py
64 yt_dlp/extractor/videoken.py
65 yt_dlp/extractor/videomore.py
66 yt_dlp/extractor/videopress.py
67+yt_dlp/extractor/vidflex.py
68 yt_dlp/extractor/vidio.py
69 yt_dlp/extractor/vidlii.py
70 yt_dlp/extractor/vidly.py
+1,
-1
1@@ -1 +1 @@
2-e08331fb9a36eba56b4efd074b5b25fbf08413e9cb47009a28ecbffe47150310 yt-dlp.tar.gz
3+54444a758dae04ce01dad914bc36e9354f2e7b8098da9729ae1f18d56b4e604c yt-dlp.tar.gz
+1,
-1
1@@ -1 +1 @@
2-url = "https://github.com/yt-dlp/yt-dlp/releases/download/2024.08.06/yt-dlp.tar.gz"
3+url = "https://github.com/yt-dlp/yt-dlp/releases/download/2024.10.22/yt-dlp.tar.gz"
+1,
-1
1@@ -1 +1 @@
2-2024.08.06 r0
3+2024.10.22 r0