Vadiraja.k has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/258684

Change subject: Add async parameter to ItemPage.editEntity
......................................................................

Add async parameter to ItemPage.editEntity

'async' parameter enables ItemPage.editEntity to edit an entity asynchronously,
which can be used in Wikidata bots.

Bug: T86074
Change-Id: I1ffa92b8710e91b7095b24808c151ff9d0a592cf
---
M pywikibot/page.py
1 file changed, 10 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/pywikibot/core 
refs/changes/84/258684/1

diff --git a/pywikibot/page.py b/pywikibot/page.py
index dc34774..a9b0915 100644
--- a/pywikibot/page.py
+++ b/pywikibot/page.py
@@ -3541,7 +3541,7 @@
             return site.dbName()
         return site
 
-    def editEntity(self, data=None, **kwargs):
+    def editEntity(self, data=None, async=False, **kwargs):
         """
         Edit an entity using Wikibase wbeditentity API.
 
@@ -3553,6 +3553,7 @@
 
         @param data: Data to be saved
         @type data: dict, or None to save the current content of the entity.
+        @param async: if True, launch a separate thread to edit asynchronously
         """
         if hasattr(self, '_revid'):
             baserevid = self.latest_revision_id
@@ -3564,8 +3565,14 @@
         else:
             data = WikibasePage._normalizeData(data)
 
-        updates = self.repo.editEntity(self._defined_by(singular=True), data,
-                                       baserevid=baserevid, **kwargs)
+        if async:
+            updates = pywikibot.async_request(self.repo.editEntity,
+                                              self._defined_by(singular=True),
+                                              data, baserevid=baserevid, 
**kwargs)
+        else:
+            updates = self.repo.editEntity(self._defined_by(singular=True), 
data,
+                                           baserevid=baserevid, **kwargs)
+
         self.latest_revision_id = updates['entity']['lastrevid']
 
         lazy_loading_id = not hasattr(self, 'id') and hasattr(self, '_site')

-- 
To view, visit https://gerrit.wikimedia.org/r/258684
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1ffa92b8710e91b7095b24808c151ff9d0a592cf
Gerrit-PatchSet: 1
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Owner: Vadiraja.k <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to