jenkins-bot has submitted this change. (
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1286288?usp=email )
Change subject: famiilies: Move all wikinews site codes to closed_wikis
......................................................................
famiilies: Move all wikinews site codes to closed_wikis
All wikinews wikis are closed (T421796). Therefore
- move all wikinews site codes to closed_wikis
- remove wikinews L10N from scripts
- remove wikinews from supported maintenance scripts
- remove wikinews from DrySite handling
- remove wikinews from tests
- add test to TestObsoleteSite.test_locked_site
Bug: T426022
Change-Id: Ie71c3d04a3276d7426a60724d30d16a5e1b8a2f4
---
M pywikibot/families/wikinews_family.py
M scripts/clean_sandbox.py
M scripts/maintenance/addwikis.py
M scripts/maintenance/unidata.py
M scripts/speedy_delete.py
M scripts/welcome.py
M tests/basesite_tests.py
M tests/family_tests.py
M tests/interwikimap_tests.py
M tests/site_obsoletesites_tests.py
M tests/site_tests.py
M tests/utils.py
12 files changed, 52 insertions(+), 66 deletions(-)
Approvals:
jenkins-bot: Verified
Xqt: Looks good to me, approved
diff --git a/pywikibot/families/wikinews_family.py
b/pywikibot/families/wikinews_family.py
index 3e30903..c853157 100644
--- a/pywikibot/families/wikinews_family.py
+++ b/pywikibot/families/wikinews_family.py
@@ -3,7 +3,12 @@
#
# Distributed under the terms of the MIT license.
#
-"""Family module for Wikinews."""
+"""Family module for Wikinews.
+
+.. version-changed:: 11.3
+ All Wikinews sites were marked as closed and are listed in
+ :attr:`Family.closed_wikis`. Refer :phab:`T421796`.
+"""
from __future__ import annotations
from pywikibot import family
@@ -18,14 +23,13 @@
closed_wikis = [
#
https://noc.wikimedia.org/conf/highlight.php?file=dblists/closed.dblist
- 'bg', 'hu', 'ru', 'sd', 'th', 'tr',
+ 'ar', 'bs', 'bg', 'ca', 'cs', 'de', 'el', 'en', 'eo', 'es', 'fa', 'fi',
+ 'fr', 'guw', 'he', 'hu', 'it', 'ja', 'ko', 'li', 'nl', 'no', 'pl',
+ 'pt', 'ro', 'ru', 'sd', 'shn', 'sq', 'sr', 'sv', 'ta', 'th', 'tr',
+ 'uk', 'zh',
]
- codes = {
- 'ar', 'bs', 'ca', 'cs', 'de', 'el', 'en', 'eo', 'es', 'fa', 'fi', 'fr',
- 'guw', 'he', 'it', 'ja', 'ko', 'li', 'nl', 'no', 'pl', 'pt', 'ro',
- 'shn', 'sq', 'sr', 'sv', 'ta', 'uk', 'zh',
- }
+ codes = set()
category_redirect_templates = {
'_default': (),
@@ -49,7 +53,6 @@
]
# Subpages for documentation.
- # TODO: List is incomplete, to be completed for missing languages.
doc_subpages = {
'_default': (('/doc', ),
['en']
diff --git a/scripts/clean_sandbox.py b/scripts/clean_sandbox.py
index 175a7b5..835f178 100755
--- a/scripts/clean_sandbox.py
+++ b/scripts/clean_sandbox.py
@@ -76,9 +76,6 @@
'<!-- Не удаляйте, пожалуйста, эту строку, '
'тестируйте ниже -->',
},
- 'wikinews': {
- 'es': '{{ZDP}}\n== Haz tus pruebas bajo esta sección ==',
- },
'wikiquote': {
'es': '{{ZDP}}\n== Haz tus pruebas bajo esta sección ==',
},
diff --git a/scripts/maintenance/addwikis.py b/scripts/maintenance/addwikis.py
index c21f888..10bd7a7 100755
--- a/scripts/maintenance/addwikis.py
+++ b/scripts/maintenance/addwikis.py
@@ -27,6 +27,9 @@
.. version-changed:: 11.0
Multiple families can be given with one run. The difference is shown
instead of the new list.
+.. version-changed:: 11.3
+ wikinews is no longer supported by this script because all wikinews
+ sites are closed.
"""
from __future__ import annotations
@@ -44,7 +47,6 @@
# supported families by this script
families_list = [
'wikibooks',
- 'wikinews',
'wikipedia',
'wikiquote',
'wikisource',
diff --git a/scripts/maintenance/unidata.py b/scripts/maintenance/unidata.py
index 317cd1b..a832280 100755
--- a/scripts/maintenance/unidata.py
+++ b/scripts/maintenance/unidata.py
@@ -13,6 +13,9 @@
tested completely.
.. version-added:: 8.4
+.. version-changed:: 11.3
+ wikinews is no longer supported by this script because all wikinews
+ sites are closed.
"""
from __future__ import annotations
@@ -33,7 +36,6 @@
# supported families by this script
families_list = [
'wikibooks',
- 'wikinews',
'wikipedia',
'wikiquote',
'wikisource',
diff --git a/scripts/speedy_delete.py b/scripts/speedy_delete.py
index 8af4de8..02899bd 100755
--- a/scripts/speedy_delete.py
+++ b/scripts/speedy_delete.py
@@ -192,14 +192,6 @@
'roughtranslation': 'mactra',
},
},
- 'wikinews': {
- 'en': {
- '_default': '[[WN:CSD]]',
- },
- 'zh': {
- '_default': '[[WN:CSD]]',
- },
- },
}
#: Default reason for deleting a talk page.
@@ -218,10 +210,6 @@
'pt': 'Página de discussão órfã',
'zh': '[[WP:CSD#O1|CSD O1 O2 O6]] 沒有在使用的討論頁',
},
- 'wikinews': {
- 'en': 'Orphaned talk page',
- 'zh': '[[WN:CSD#O1|CSD O1 O2 O6]] 沒有在使用的討論頁',
- }
}
#: A list of often-used reasons for deletion. Shortcuts are keys, and
diff --git a/scripts/welcome.py b/scripts/welcome.py
index f91d892..ecf0c85 100755
--- a/scripts/welcome.py
+++ b/scripts/welcome.py
@@ -286,11 +286,6 @@
'es': '{{subst:bienivenido usuario}} %s',
'ml': '{{subst:സ്വാഗതം}}',
},
- 'wikinews': {
- 'fa': '{{خوشامد۲|%s}}',
- 'it': '{{subst:benvenuto}}',
- 'zh': '{{subst:welcome}} %s',
- },
'wikiquote': {
'ml': '{{subst:സ്വാഗതം}}',
},
@@ -514,18 +509,17 @@
f'{welcome}WELCOME dict.')
if globalvar.random_sign:
- if site.family.name != 'wikinews':
- if not sign:
- raise ValueError(
- 'sign parameter must be provided when random_sign is '
- 'enabled'
- )
- welcome_text = welcome_text % sign
+ if not sign:
+ raise ValueError(
+ 'sign parameter must be provided when random_sign is '
+ 'enabled'
+ )
+ welcome_text = welcome_text % sign
if site.sitename != 'wiktionary:it':
welcome_text += TIMESELECTED
- elif site.sitename != 'wikinews:it':
+ else:
welcome_text = welcome_text % globalvar.default_sign
final_text = i18n.translate(site, FINAL_NEW_TEXT_ADDITIONS)
diff --git a/tests/basesite_tests.py b/tests/basesite_tests.py
index da2c543..e414500 100755
--- a/tests/basesite_tests.py
+++ b/tests/basesite_tests.py
@@ -25,11 +25,6 @@
"""Test properties for BaseSite."""
sites = {
- 'enwikinews': {
- 'family': 'wikinews',
- 'code': 'en',
- 'result': ('/doc',),
- },
'enwikibooks': {
'family': 'wikibooks',
'code': 'en',
diff --git a/tests/family_tests.py b/tests/family_tests.py
index 78a4757..805932c 100755
--- a/tests/family_tests.py
+++ b/tests/family_tests.py
@@ -32,9 +32,18 @@
f = Family.load(name)
self.assertIsInstance(f.langs, dict)
self.assertTrue(f.langs)
- self.assertTrue(f.codes)
- self.assertTrue(iter(f.codes))
- self.assertIsInstance(next(iter(f.codes)), str)
+
+ if name == 'wikinews':
+ self.assertFalse(f.codes)
+ self.assertTrue(f.closed_wikis)
+ self.assertTrue(iter(f.closed_wikis))
+ self.assertIsInstance(next(iter(f.closed_wikis)), str)
+ self.assertIsInstance(f.closed_wikis, list)
+ else:
+ self.assertTrue(f.codes)
+ self.assertTrue(iter(f.codes))
+ self.assertIsInstance(next(iter(f.codes)), str)
+
self.assertTrue(f.domains)
self.assertTrue(iter(f.domains))
for domain in f.domains:
diff --git a/tests/interwikimap_tests.py b/tests/interwikimap_tests.py
index 535b4a3..ded9b37 100755
--- a/tests/interwikimap_tests.py
+++ b/tests/interwikimap_tests.py
@@ -21,10 +21,6 @@
"""Test interwiki map and methods."""
sites = {
- 'enwikinews': {
- 'family': 'wikinews',
- 'code': 'en',
- },
'enwikibooks': {
'family': 'wikibooks',
'code': 'en',
diff --git a/tests/site_obsoletesites_tests.py
b/tests/site_obsoletesites_tests.py
index 39cf564..d150973 100755
--- a/tests/site_obsoletesites_tests.py
+++ b/tests/site_obsoletesites_tests.py
@@ -24,18 +24,19 @@
def test_locked_site(self) -> None:
"""Test Wikimedia closed/locked site."""
- with suppress_warnings('Interwiki removal mh is in wikipedia codes'):
- site = pywikibot.Site('mh', 'wikipedia')
- self.assertIsInstance(site, pywikibot.site.ClosedSite)
- self.assertEqual(site.code, 'mh')
- self.assertIsInstance(site.obsolete, bool)
- self.assertTrue(site.obsolete)
- self.assertEqual(site.hostname(), 'mh.wikipedia.org')
- r = http.fetch('http://mh.wikipedia.org/w/api.php',
- default_error_handling=False)
- self.assertEqual(r.status_code, HTTPStatus.OK.value)
- self.assertEqual(site.siteinfo['lang'], 'mh')
- self.assertTrue(site.is_uploaddisabled())
+ for code, family in [('mh', 'wikipedia'), ('en', 'wikinews')]:
+ with self.subTest(site=f'{family}:{code}'):
+ site = pywikibot.Site(code, family)
+ self.assertIsInstance(site, pywikibot.site.ClosedSite)
+ self.assertEqual(site.code, code)
+ self.assertIsInstance(site.obsolete, bool)
+ self.assertTrue(site.obsolete)
+ self.assertEqual(site.hostname(), f'{code}.{family}.org')
+ r = http.fetch(f'http://{code}.{family}.org/w/api.php',
+ default_error_handling=False)
+ self.assertEqual(r.status_code, HTTPStatus.OK.value)
+ self.assertEqual(site.siteinfo['lang'], code)
+ self.assertTrue(site.is_uploaddisabled())
def test_removed_site(self) -> None:
"""Test Wikimedia offline site."""
diff --git a/tests/site_tests.py b/tests/site_tests.py
index 22952b4..6fffd12 100755
--- a/tests/site_tests.py
+++ b/tests/site_tests.py
@@ -63,7 +63,7 @@
test_dict = {
'alswiki': 'wikipedia:als', # see T345036
'commonswiki': 'commons:commons',
- 'dewikinews': 'wikinews:de',
+ 'dewikinews': 'wikinews:de', # note: this wiki is closed
'enwiki': 'wikipedia:en',
'eswikisource': 'wikisource:es',
'metawiki': 'meta:meta',
diff --git a/tests/utils.py b/tests/utils.py
index db4d7eb..63977c2 100644
--- a/tests/utils.py
+++ b/tests/utils.py
@@ -403,9 +403,8 @@
fam_name = self.family.name
# Only let through valid entries
- if fam_name not in ('commons', 'wikibooks', 'wikidata', 'wikinews',
- 'wikipedia', 'wikiquote', 'wikisource',
- 'wikivoyage'):
+ if fam_name not in ('commons', 'wikibooks', 'wikidata', 'wikipedia',
+ 'wikiquote', 'wikisource', 'wikivoyage'):
code, fam = None, None
if code or fam:
--
To view, visit
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1286288?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.wikimedia.org/r/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: Ie71c3d04a3276d7426a60724d30d16a5e1b8a2f4
Gerrit-Change-Number: 1286288
Gerrit-PatchSet: 5
Gerrit-Owner: Xqt <[email protected]>
Gerrit-Reviewer: Xqt <[email protected]>
Gerrit-Reviewer: jenkins-bot
_______________________________________________
Pywikibot-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]