jenkins-bot has submitted this change. (
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/623226 )
Change subject: [IMPR] Allow querying deleted revs without the deletedhistory
right
......................................................................
[IMPR] Allow querying deleted revs without the deletedhistory right
API restiction revised in MW 1.34
I84dc138aa310b601423161d1140891d47f8c64d8
Login not required after T71283
Change-Id: Ie2e8258e9e00170821f9fe817093e03d69a6c706
---
M pywikibot/site/__init__.py
1 file changed, 14 insertions(+), 15 deletions(-)
Approvals:
Xqt: Looks good to me, approved
jenkins-bot: Verified
diff --git a/pywikibot/site/__init__.py b/pywikibot/site/__init__.py
index 8a4200e..64789b5 100644
--- a/pywikibot/site/__init__.py
+++ b/pywikibot/site/__init__.py
@@ -4771,19 +4771,25 @@
old_props.append('token')
return old_props
+ # set default properties
+ prop = kwargs.pop('prop',
+ ['ids', 'user', 'comment', 'flags', 'timestamp'])
+ if content:
+ prop.append('content')
+
if start and end:
self.assert_valid_iter_params('deletedrevs', start, end, reverse)
- if not self.logged_in():
- self.login()
-
err = ('deletedrevs: User:{} not authorized to '
.format(self.user()))
if not self.has_right('deletedhistory'):
- raise Error(err + 'access deleted revisions.')
- if content:
- if not self.has_right('undelete'):
- raise Error(err + 'view deleted content.')
+ if self.mw_version < '1.34':
+ raise Error(err + 'access deleted revisions.')
+ if 'comment' in prop or 'parsedcomment' in prop:
+ raise Error(err + 'access comments of deleted revisions.')
+ if ('content' in prop and not (self.has_right('deletedtext')
+ or self.has_right('undelete'))):
+ raise Error(err + 'view deleted content.')
revids = kwargs.pop('revids', None)
if not (bool(titles) ^ (revids is not None)):
@@ -4809,14 +4815,7 @@
gen.request[pre + 'start'] = start
gen.request[pre + 'end'] = end
-
- # handle properties
- prop = kwargs.pop('prop',
- ['ids', 'user', 'comment', 'flags', 'timestamp'])
- if content:
- prop.append('content')
- prop = handle_props(prop)
- gen.request[pre + 'prop'] = prop
+ gen.request[pre + 'prop'] = handle_props(prop)
# handle other parameters like user
for k, v in kwargs.items():
--
To view, visit https://gerrit.wikimedia.org/r/c/pywikibot/core/+/623226
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: Ie2e8258e9e00170821f9fe817093e03d69a6c706
Gerrit-Change-Number: 623226
Gerrit-PatchSet: 9
Gerrit-Owner: JJMC89 <[email protected]>
Gerrit-Reviewer: Matěj Suchánek <[email protected]>
Gerrit-Reviewer: Xqt <[email protected]>
Gerrit-Reviewer: jenkins-bot
Gerrit-MessageType: merged
_______________________________________________
Pywikibot-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/pywikibot-commits