Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F34488423
T284577.patch
ChrisBlomTS
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Authored By
ChrisBlomTS
Jun 9 2021, 3:50 PM
2021-06-09 15:50:23 (UTC+0)
Size
2 KB
Referenced Files
None
Subscribers
None
T284577.patch
View Options
diff --git a/pywikibot/family.py b/pywikibot/family.py
index 6196f28ab..5de4fd3b7 100644
--- a/pywikibot/family.py
+++ b/pywikibot/family.py
@@ -730,6 +730,13 @@ class Family:
"""
return '/w'
+ def mediawiki_version(self):
+ """"The version of the mediawiki to connect to.
+ Returns a version string, or None
+ If None is returned, the version will be retrieved from mediawiki.
+ If a version is returned, pywikibot will assume that mediawiki has the returned version."""
+ return None
+
def ssl_pathprefix(self, code):
"""The path prefix for secure HTTP access."""
# Override this ONLY if the wiki family requires a path prefix
diff --git a/pywikibot/site/_apisite.py b/pywikibot/site/_apisite.py
index dbe665439..3089d4993 100644
--- a/pywikibot/site/_apisite.py
+++ b/pywikibot/site/_apisite.py
@@ -924,21 +924,26 @@ class APISite(
Use :py:obj:`pywikibot.site.mw_version` to compare MediaWiki versions.
"""
- try:
- version = self.siteinfo.get('generator', expiry=1).split(' ')[1]
- except APIError:
- msg = 'You have no API read permissions.'
- if not self.logged_in():
- msg += ' Seems you are not logged in.'
- pywikibot.error(msg)
- raise
- if MediaWikiVersion(version) < '1.23':
- raise RuntimeError(
- 'Pywikibot "{}" does not support MediaWiki "{}".\n'
- 'Use Pywikibot prior to "6.0" branch instead.'
- .format(pywikibot.__version__, version))
- return version
+ version_from_family = self.family.mediawiki_version()
+ if version_from_family:
+ return version_from_family
+ else:
+ try:
+ version = self.siteinfo.get('generator', expiry=1).split(' ')[1]
+ except APIError:
+ msg = 'You have no API read permissions.'
+ if not self.logged_in():
+ msg += ' Seems you are not logged in.'
+ pywikibot.error(msg)
+ raise
+
+ if MediaWikiVersion(version) < '1.23':
+ raise RuntimeError(
+ 'Pywikibot "{}" does not support MediaWiki "{}".\n'
+ 'Use Pywikibot prior to "6.0" branch instead.'
+ .format(pywikibot.__version__, version))
+ return version
@property
def mw_version(self):
File Metadata
Details
Attached
Mime Type
text/x-diff
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
9095029
Default Alt Text
T284577.patch (2 KB)
Attached To
Mode
T284577: Cannot login to private wiki using BotPassword
Attached
Detach File
Event Timeline
Log In to Comment