jenkins-bot merged this change.
[bugfix] Add closed_wikis to Family.langs property
Wikibase items may contain links to closed sites and newly implemented
badges for sitelinks may fail due to closed wikis. Therefore append
closed_wikis to the Family.langs property
Also remove 'beta' appended to languages_by_size. languages_by_size is used
to calculate family.codes; beta is included in test_codes list. Appending it
to languages_by_size duplicates 'beta' in family.codes.
Note: Creating a site for a closed wiki will return a RemovedSite object.
Bug: T225413
Change-Id: Id9f3ca35d6ba634f151543afe749e7521cf163ec
---
M pywikibot/families/wikisource_family.py
M pywikibot/family.py
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/pywikibot/families/wikisource_family.py b/pywikibot/families/wikisource_family.py
index 39d0eb2..9c09d71 100644
--- a/pywikibot/families/wikisource_family.py
+++ b/pywikibot/families/wikisource_family.py
@@ -64,7 +64,7 @@
cls.domains.append(cls.langs['beta'])
return cls.domains
- languages_by_size += ['mul', 'beta']
+ languages_by_size.append('mul')
# Global bot allowed languages on
# https://meta.wikimedia.org/wiki/BPI#Current_implementation
diff --git a/pywikibot/family.py b/pywikibot/family.py
index 1437dd1..1ef3d45 100644
--- a/pywikibot/family.py
+++ b/pywikibot/family.py
@@ -1569,8 +1569,11 @@
def langs(cls):
"""Property listing family languages."""
codes = cls.codes
+
if hasattr(cls, 'test_codes'):
- codes = codes + cls.test_codes
+ codes += cls.test_codes
+ if hasattr(cls, 'closed_wikis'):
+ codes += cls.closed_wikis
# shortcut this classproperty
cls.langs = {code: '{0}.{1}'.format(code, cls.domain)
To view, visit change 516185. To unsubscribe, or for help writing mail filters, visit settings.