aboutsummaryrefslogtreecommitdiff
path: root/devscripts/make_lazy_extractors.py
AgeCommit message (Collapse)Author
2025-02-23[core] Load plugins on demand (#11305)coletdjnz
- Adds `--no-plugin-dirs` to disable plugin loading - `--plugin-dirs` now supports post-processors Authored by: coletdjnz, Grub4K, pukkandan
2024-10-13[build] `make_lazy_extractors`: Force running without plugins (#11205)Simon Sawicki
Authored by: Grub4K
2023-01-01Improve plugin architecture (#5553)Matthew
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>
2022-11-16[cleanup] Miscpukkandan
Closes #5541
2022-09-22[docs] Misc improvementspukkandan
Closes #4987, Closes #4906, Closes #4919, Closes #4977, Closes #4979
2022-09-18[devscripts] make_lazy_extractors: Fix for Docker (#4958)josanabr
Authored by: josanabr
2022-08-24Fix lazy extractor bug in fe7866d0ed6bfa3904ce12b049a3424fdc0ea1fapukkandan
and add test Fixes https://github.com/yt-dlp/yt-dlp/pull/3234#issuecomment-1225347071
2022-08-09[devscripts] Create `utils` and refactorpukkandan
2022-08-02[extractor] Framework for embed detection (#4307)pukkandan
2022-06-29[build] Consistent order for lazy extractors (#4220)Chris Lamb
Authored by: lamby
2022-06-25[cleanup] Consistent style for file headspukkandan
2022-06-16[extractor] Import `_ALL_CLASSES` lazilypukkandan
This significantly speeds up `import yt_dlp` in the absence of `lazy_extractors`
2022-05-18[cleanup] Minor fixespukkandan
2022-05-17[cleanup] Misc cleanuppukkandan
2022-05-13[extractor] Use classmethod/property where possiblepukkandan
and refactor lazy extractors accordingly. This reduces the need to create extractor instances
2022-04-27[cleanup,build] Cleanup some build-related codepukkandan
Fixes an issue in 7ab56be2c7309a2d11d4ee28c71f8fb29da21ef7
2022-04-12[cleanup] Misc cleanup (#2173)pukkandan
Authored by: fstirlitz, pukkandan
2022-04-12[cleanup] Sort importspukkandan
Using https://github.com/PyCQA/isort isort -m VERTICAL_HANGING_INDENT --py 36 -l 80 --rr -n --tc .
2022-04-12[cleanup] Upgrade syntaxpukkandan
Using https://github.com/asottile/pyupgrade 1. `__future__` imports and `coding: utf-8` were removed 2. Files were rewritten with `pyupgrade --py36-plus --keep-percent-format` 3. f-strings were cherry-picked from `pyupgrade --py36-plus` Extractors are left untouched (except removing header) to avoid unnecessary merge conflicts
2021-12-01[lazy_extractors] Fix for search IEspukkandan
Closes #1851
2021-10-23[cleanup] miscpukkandan
2021-09-30[docs,cleanup] Some minor refactoring and improve docspukkandan
2021-08-23Fix `add_info_extractor` when used via APIpukkandan
Bug from: 251ae04e6a057167e4eafaf8b7b565a984b48405
2021-08-23[lazy_extractor] Create instance only after pre-checking archivepukkandan
2021-08-23[lazy_extractors] Fix `suitable` and add flake8 testpukkandan
2021-08-23[extractor] Common function `_match_valid_url`pukkandan
2021-08-13[lazy_extractor] Bugfix for when plugin directory doesn't exist (#691)Kid
Bug introduced by: 0b2e9d2c3051f2e1d79449adde3afbba3b5ec94f Authored by: kidonng
2021-06-06[cleanup] Point all shebang to `python3` (#372)felix
Authored by: fstirlitz
2021-04-22[lazy_extractor] Do not load pluginspukkandan
2021-02-25Completely change project name to yt-dlp (#85)Pccode66
* All modules and binary names are changed * All documentation references changed * yt-dlp no longer loads youtube-dlc config files * All URLs changed to point to organization account Co-authored-by: Pccode66 Co-authored-by: pukkandan
2020-11-20Merge 'ytdl-org/youtube-dl/master' release 2020.11.19pukkandan
Old Extractors left behind: VLivePlaylistIE YoutubeSearchURLIE YoutubeShowIE YoutubeFavouritesIE If removing old extractors, make corresponding changes in docs/supportedsites.md youtube_dlc/extractor/extractors.py Not merged: .github/ISSUE_TEMPLATE/1_broken_site.md .github/ISSUE_TEMPLATE/2_site_support_request.md .github/ISSUE_TEMPLATE/3_site_feature_request.md .github/ISSUE_TEMPLATE/4_bug_report.md .github/ISSUE_TEMPLATE/5_feature_request.md test/test_all_urls.py youtube_dlc/version.py Changelog
2020-09-02[skip travis] renamingUnknown
to avoid using same folder when using pip install for example
2017-02-24[devscripts/make_lazy_extractors] Fix making lazy extractors on python 3 ↵Sergey M․
under Windows
2016-11-17Update coding style after pycodestyle 2.1.0Yen Chi Hsuan
In pycodestyle 2.1.0, E305 was introduced, which requires two blank lines after top level declarations, too. See https://github.com/PyCQA/pycodestyle/issues/400 See also #10689; thanks @stepshal for first mentioning this issue and initial patches
2016-06-22lazy-extractors: Fix after commit 6e6b9f600f2f447604f6108fb6486b73cc25def1Jaime Marquínez Ferrándiz
The problem was in the following code: class ArteTVPlus7IE(ArteTVBaseIE): ... @classmethod def suitable(cls, url): return False if ArteTVPlaylistIE.suitable(url) else super(ArteTVPlus7IE, cls).suitable(url) And its sublcasses like ArteTVCinemaIE. Since in the lazy_extractors.py file ArteTVCinemaIE was not a subclass of ArteTVPlus7IE, super(ArteTVPlus7IE, cls) failed. To fix it we have to make it a subclass. Since the order of _ALL_CLASSES is arbitrary we must sort them so that the base classes are defined first. We also must add base classes like YoutubeBaseInfoExtractor.
2016-04-08lazy extractors: Style fixesJaime Marquínez Ferrándiz
* Sort extractors alphabetically * Add newlines when needed (youtube_dl/extractors/lazy_extractors.py pass the flake8 test now)
2016-04-08lazy extractors: Fix building with python2.6Jaime Marquínez Ferrándiz
2016-04-08Add experimental support for lazy loading the info extractorsJaime Marquínez Ferrándiz
'make lazy-extractors' creates the youtube_dl/extractor/lazy_extractors.py (imported by youtube_dl/extractor/__init__.py), which contains simplified classes that only have the 'suitable' class method and that load the appropiate class with the '__new__' method when a instance is created.