Xqt has submitted this change. (
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1288242?usp=email )
Change subject: pagegenerators: Add until and reverse options to
AllpagesPageGenerator
......................................................................
pagegenerators: Add until and reverse options to AllpagesPageGenerator
Bug: T426542
Bug: T66531
Change-Id: Ia498e56ff960974fb5002904e242ea4764659fba
---
M pywikibot/pagegenerators/_generators.py
M pywikibot/site/_generators.py
2 files changed, 17 insertions(+), 3 deletions(-)
Approvals:
Xqt: Verified; Looks good to me, approved
diff --git a/pywikibot/pagegenerators/_generators.py
b/pywikibot/pagegenerators/_generators.py
index 33ec6eb..8c25b58 100644
--- a/pywikibot/pagegenerators/_generators.py
+++ b/pywikibot/pagegenerators/_generators.py
@@ -48,12 +48,17 @@
total: int | None = None,
content: bool = False,
*,
+ until: str = '',
filterredir: bool | None = None,
+ reverse: bool = False
) -> Iterable[pywikibot.page.Page]:
"""Iterate Page objects for all titles in a single namespace.
.. version-deprecated:: 10.0
The *includeredirects* parameter; use *filterredir* instead.
+ .. version-changed:: 11.4
+ The *until* and *reverse* parameters were added.
+
.. seealso:: :meth:`APISite.allpages()
<pywikibot.site._generators.GeneratorsMixin.allpages>`
@@ -68,8 +73,14 @@
:param total: Maximum number of pages to retrieve in total
:param content: If True, load current version of each page (default
False)
+ :param until: Optional page title to stop enumerating at; only
+ meaningful when used together with *start*. The given argument
+ must be lexically higher than the *start* argument if *reverse*
+ is False; otherwise it must be lower.
:param filterredir: If True, only yield redirects; if False (and
not None), only yield non-redirects (default: yield both).
+ :param reverse: If True, iterate in reverse Unicode lexicographic
+ order (default: iterate in forward order).
:return: A generator that yields Page objects
:raises ValueError: *filterredir* as well as *includeredirects*
parameters were given. Use *filterredir* only.
@@ -96,8 +107,9 @@
since='10.0.0'
)
- return site.allpages(start=start, namespace=namespace,
- filterredir=filterredir, total=total, content=content)
+ return site.allpages(start=start, until=until, namespace=namespace,
+ reverse=reverse, filterredir=filterredir, total=total,
+ content=content)
def PrefixingPageGenerator(
diff --git a/pywikibot/site/_generators.py b/pywikibot/site/_generators.py
index a44c8d0..62be750 100644
--- a/pywikibot/site/_generators.py
+++ b/pywikibot/site/_generators.py
@@ -952,7 +952,9 @@
) -> Iterable[pywikibot.Page]:
"""Iterate pages in a single namespace.
- .. seealso:: :api:`Allpages`
+ .. seealso::
+ - :api:`Allpages`
+ - :func:`pagegenerators.AllpagesPageGenerator`
.. version-changed:: 10.4
All parameters except of *start* are keyword-only. Enable
--
To view, visit
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1288242?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.wikimedia.org/r/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: Ia498e56ff960974fb5002904e242ea4764659fba
Gerrit-Change-Number: 1288242
Gerrit-PatchSet: 3
Gerrit-Owner: Xqt <[email protected]>
Gerrit-Reviewer: Xqt <[email protected]>
Gerrit-Reviewer: jenkins-bot
_______________________________________________
Pywikibot-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]