jenkins-bot has submitted this change. ( 
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/978143 )

Change subject: proofreadpage: sort page names before loading pages
......................................................................

proofreadpage: sort page names before loading pages

Sort the list of pages before converting to a preload generator.

Otherwise the sorted() operation will tranform everything to a list,
loading all pages, defeating the purpose of having a generator.

Change-Id: Ie8ca5d7dd37b7dd9fadca42ed5dcf339164fc427
---
M pywikibot/proofreadpage.py
1 file changed, 22 insertions(+), 6 deletions(-)

Approvals:
  Xqt: Looks good to me, approved
  jenkins-bot: Verified




diff --git a/pywikibot/proofreadpage.py b/pywikibot/proofreadpage.py
index e72b676..a4ae60f 100644
--- a/pywikibot/proofreadpage.py
+++ b/pywikibot/proofreadpage.py
@@ -1313,7 +1313,14 @@
             filter_ql = list(self.site.proofread_levels)
             filter_ql.remove(ProofreadPage.WITHOUT_TEXT)

-        gen = (self.get_page(i) for i in range(start, end + 1))
+        gen = [self.get_page(i) for i in range(start, end + 1)]
+
+        # Decorate and sort by page number because preloadpages does not
+        # guarantee order.
+        # TODO: remove if preloadpages will guarantee order.
+        gen = [(self.get_number(p), p) for p in gen]
+        gen = [p for n, p in sorted(gen)]
+
         if content:
             gen = self.site.preloadpages(gen)
         # Filter by QL.
@@ -1321,11 +1328,6 @@
         # Yield only existing.
         if only_existing:
             gen = (p for p in gen if p.exists())
-        # Decorate and sort by page number because preloadpages does not
-        # guarantee order.
-        # TODO: remove if preloadpages will guarantee order.
-        gen = ((self.get_number(p), p) for p in gen)
-        gen = (p for n, p in sorted(gen))

         return gen


--
To view, visit https://gerrit.wikimedia.org/r/c/pywikibot/core/+/978143
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: Ie8ca5d7dd37b7dd9fadca42ed5dcf339164fc427
Gerrit-Change-Number: 978143
Gerrit-PatchSet: 1
Gerrit-Owner: Mpaa <[email protected]>
Gerrit-Reviewer: Mpaa <[email protected]>
Gerrit-Reviewer: Xqt <[email protected]>
Gerrit-Reviewer: jenkins-bot
Gerrit-MessageType: merged
_______________________________________________
Pywikibot-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to