jenkins-bot has submitted this change. (
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/816290 )
Change subject: [IMPR] Make PetScanPageGenerator an abc.Generator
......................................................................
[IMPR] Make PetScanPageGenerator an abc.Generator
- Derive PetScanPageGenerator from tools.collections.GeneratorWrapper
- rename the __iter__ method to the generator property to be reused by
the Wrapper class
Bug: T313683
Change-Id: I18c27764e90e91bc4f4d2452593f4058479bb1aa
---
M pywikibot/pagegenerators/_generators.py
1 file changed, 10 insertions(+), 2 deletions(-)
Approvals:
Matěj Suchánek: Looks good to me, approved
jenkins-bot: Verified
diff --git a/pywikibot/pagegenerators/_generators.py
b/pywikibot/pagegenerators/_generators.py
index c9f208e..c290531 100644
--- a/pywikibot/pagegenerators/_generators.py
+++ b/pywikibot/pagegenerators/_generators.py
@@ -1100,11 +1100,13 @@
return (pywikibot.ItemPage(repo, item['id']) for item in data)
-class PetScanPageGenerator:
+class PetScanPageGenerator(GeneratorWrapper):
"""Queries PetScan to generate pages.
.. seealso::
https://petscan.wmflabs.org/
.. versionadded:: 3.0
+ .. versionchanged:: 7.6
+ subclassed from :class:`pywikibot.tools.collections.GeneratorWrapper`
"""
def __init__(self, categories: Sequence[str],
@@ -1194,7 +1196,13 @@
raw_pages = data['*'][0]['a']['*']
yield from raw_pages
- def __iter__(self) -> Iterator['pywikibot.page.Page']:
+ @property
+ def generator(self) -> Iterator['pywikibot.page.Page']:
+ """Yield results from :meth:`query`.
+
+ .. versionchanged:: 7.6
+ changed from iterator method to generator property
+ """
for raw_page in self.query():
page = pywikibot.Page(self.site, raw_page['title'],
int(raw_page['namespace']))
--
To view, visit
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/816290
To unsubscribe, or for help writing mail filters, visit
https://gerrit.wikimedia.org/r/settings
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: I18c27764e90e91bc4f4d2452593f4058479bb1aa
Gerrit-Change-Number: 816290
Gerrit-PatchSet: 1
Gerrit-Owner: Xqt <info(a)gno.de>
Gerrit-Reviewer: Matěj Suchánek <matejsuchanek97(a)gmail.com>
Gerrit-Reviewer: jenkins-bot
Gerrit-MessageType: merged