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

Reply via email to