Page MenuHomePhabricator

Resolve conflict between code and docs in BasePage.getDeletedRevision
Open, LowPublicBUG REPORT

Description

Steps to replicate the issue (needs admin rights, try on a wiki where you are admin):

import pywikibot
site = pywikibot.Site('wikipedia:hu')
page = pywikibot.Page(site, '2023')
print(type(page.getDeletedRevision('2023-01-30T19:11:36Z', content=True)))
print(page.getDeletedRevision('2023-01-30T19:11:36Z', content=True).keys())

What happens?:

<class 'dict'>
dict_keys(['revid', 'user', 'timestamp', 'slots', 'comment'])

What should have happened instead?:
https://doc.wikimedia.org/pywikibot/master/_modules/pywikibot/page/_basepage.html#BasePage.getDeletedRevision says:
return: a list of [date, editor, comment, text, restoration marker]. text will be None, unless content is True (or has been retrieved earlier).

This is a dictionary, no text (although available from slots), no marker, instead slots. Documentation and working code should be in accordance.

Software version (skip for WMF-hosted wikis like Wikipedia): 8.0.0