aboutsummaryrefslogtreecommitdiff
path: root/devscripts/make_lazy_extractors.py
AgeCommit message (Collapse)Author
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.