yt-dlp/yt_dlp
Matthew 8e40b9d1ec
Improve plugin architecture (#5553)
to make plugins easier to develop and use:
* Plugins are now loaded as namespace packages.
* Plugins can be loaded in any distribution of yt-dlp (binary, pip, source, etc.).
* Plugin packages can be installed and managed via pip, or dropped into any of the documented locations.
* Users do not need to edit any code files to install plugins.
* Backwards-compatible with previous plugin architecture.

As a side-effect, yt-dlp will now search in a few more locations for config files.

Closes https://github.com/yt-dlp/yt-dlp/issues/1389

Authored by: flashdagger, coletdjnz, pukkandan, Grub4K
Co-authored-by: Marcel <flashdagger@googlemail.com>
Co-authored-by: pukkandan <pukkandan.ytdlp@gmail.com>
Co-authored-by: Simon Sawicki <accounts@grub4k.xyz>
2023-01-01 04:29:22 +00:00
..
compat [compat] Fix `shutils.move` in restricted ACL mode on BSD (#5309) 2022-11-07 20:54:30 +05:30
downloader [downloader/ffmpeg] Fix headers for video+audio formats (#5659) 2022-12-09 23:36:38 +00:00
extractor Improve plugin architecture (#5553) 2023-01-01 04:29:22 +00:00
postprocessor Improve plugin architecture (#5553) 2023-01-01 04:29:22 +00:00
YoutubeDL.py Improve plugin architecture (#5553) 2023-01-01 04:29:22 +00:00
__init__.py Let `--parse/replace-in-metadata` run at any post-processing stage 2022-12-30 11:19:39 +05:30
__main__.py [cleanup] Misc 2022-11-11 15:48:29 +05:30
aes.py Update to ytdl-commit-de39d128 2022-11-07 02:18:30 +05:30
cache.py [extractor/cda] Support premium and misc improvements (#5529) 2022-12-28 01:27:26 +05:30
cookies.py [cookies] Improve `LenientSimpleCookie` (#5195) 2022-10-11 09:09:12 +05:30
dependencies.py [cleanup] Misc 2022-07-31 03:35:16 +05:30
jsinterp.py [jsinterp] Escape regex that looks like nested set 2022-12-08 22:43:38 +05:30
minicurses.py [docs] Consistent use of `e.g.` (#4643) 2022-08-14 17:34:13 +05:30
options.py Improve plugin architecture (#5553) 2023-01-01 04:29:22 +00:00
plugins.py Improve plugin architecture (#5553) 2023-01-01 04:29:22 +00:00
socks.py [compat] Remove more functions 2022-06-25 00:08:55 +05:30
update.py [update] Workaround #5632 2022-12-31 11:04:02 +05:30
utils.py Improve plugin architecture (#5553) 2023-01-01 04:29:22 +00:00
version.py [version] update 2022-11-11 10:37:46 +00:00
webvtt.py [webvtt] Handle premature EOF 2022-11-20 14:14:42 +05:30