jenkins-bot has submitted this change and it was merged. Change subject: Revert "Make obsolete site object can be created" ......................................................................
Revert "Make obsolete site object can be created" Breaks tests: https://travis-ci.org/wikimedia/pywikibot-core/builds/20728728 This reverts commit 70d384f3b526123909868d86828c31712500edd1. Change-Id: I9e72cd6cf77065c0264ec6753d6c1ee9db1eec92 --- M pywikibot/page.py M pywikibot/site.py 2 files changed, 15 insertions(+), 39 deletions(-) Approvals: Merlijn van Deen: Looks good to me, approved jenkins-bot: Verified diff --git a/pywikibot/page.py b/pywikibot/page.py index 5c292f3..b75bbc3 100644 --- a/pywikibot/page.py +++ b/pywikibot/page.py @@ -991,40 +991,31 @@ # ignore any links with invalid contents continue - def langlinks(self, include_obsolete=False): + def langlinks(self): """Return a list of all interlanguage Links on this page. - - @param include_obsolete: if true, return even Link objects whose site - is obsolete """ # Data might have been preloaded if not hasattr(self, '_langlinks'): - self._langlinks = list(self.iterlanglinks(include_obsolete=True)) + self._langlinks = list(self.iterlanglinks()) - if include_obsolete: - return self._langlinks - else: - return filter(lambda i: not i.site.obsolete, self._langlinks) + return self._langlinks - def iterlanglinks(self, step=None, total=None, include_obsolete=False): + def iterlanglinks(self, step=None, total=None): """Iterate all interlanguage links on this page. @param step: limit each API call to this number of pages @param total: iterate no more than this number of pages in total - @param include_obsolete: if true, yield even Link object whose site - is obsolete @return: a generator that yields Link objects. """ if hasattr(self, '_langlinks'): - return iter(self.langlinks(include_obsolete=include_obsolete)) + return iter(self._langlinks) # XXX We might want to fill _langlinks when the Site # method is called. If we do this, we'll have to think # about what will happen if the generator is not completely # iterated upon. - return self.site.pagelanglinks(self, step=step, total=total, - include_obsolete=include_obsolete) + return self.site.pagelanglinks(self, step=step, total=total) def data_item(self): """ diff --git a/pywikibot/site.py b/pywikibot/site.py index 381d392..3d85c6b 100644 --- a/pywikibot/site.py +++ b/pywikibot/site.py @@ -129,15 +129,15 @@ else: self.__family = fam - self.obsolete = False # if we got an outdated language code, use the new one instead. if self.__code in self.__family.obsolete: if self.__family.obsolete[self.__code] is not None: self.__code = self.__family.obsolete[self.__code] else: # no such language anymore - self.obsolete = True - elif self.__code not in self.languages(): + raise NoSuchSite("Language %s in family %s is obsolete" + % (self.__code, self.__family.name)) + if self.__code not in self.languages(): if self.__family.name in list(self.__family.langs.keys()) and \ len(self.__family.langs) == 1: oldcode = self.__code @@ -707,15 +707,10 @@ @param right: the rights the logged in user should have not supported yet and thus ignored. @returns: a decorator to make sure the requirement is statisfied when - the decorated function is called. The function can be called - with as_group='sysop' to override the group set in the - decorator. + the decorated function is called. """ def decorator(fn): def callee(self, *args, **kwargs): - if self.obsolete: - raise NoSuchSite("Language %s in family %s is obsolete" - % (self.code, self.family.name)) grp = kwargs.pop('as_group', group) if grp == 'user': self.login(False) @@ -1964,14 +1959,8 @@ # No such function in the API (this method isn't called anywhere) raise NotImplementedError - def pagelanglinks(self, page, step=None, total=None, - include_obsolete=False): - """Iterate all interlanguage links on page, yielding Link objects. - - @param include_obsolete: if true, yield even Link objects whose - site is obsolete - - """ + def pagelanglinks(self, page, step=None, total=None): + """Iterate all interlanguage links on page, yielding Link objects.""" lltitle = page.title(withSection=False) llquery = self._generator(api.PropertyGenerator, type_arg="langlinks", @@ -1985,13 +1974,9 @@ if 'langlinks' not in pageitem: continue for linkdata in pageitem['langlinks']: - link = pywikibot.Link.langlinkUnsafe(linkdata['lang'], - linkdata['*'], - source=self) - if link.site.obsolete and not include_obsolete: - continue - else: - yield link + yield pywikibot.Link.langlinkUnsafe(linkdata['lang'], + linkdata['*'], + source=self) def page_extlinks(self, page, step=None, total=None): """Iterate all external links on page, yielding URL strings.""" -- To view, visit https://gerrit.wikimedia.org/r/119277 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I9e72cd6cf77065c0264ec6753d6c1ee9db1eec92 Gerrit-PatchSet: 1 Gerrit-Project: pywikibot/core Gerrit-Branch: master Gerrit-Owner: Merlijn van Deen <[email protected]> Gerrit-Reviewer: Merlijn van Deen <[email protected]> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ Pywikibot-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/pywikibot-commits
