jenkins-bot has submitted this change and it was merged.
Change subject: use need_version decorator for hasExtension method ......................................................................
use need_version decorator for hasExtension method
Change-Id: I62d6a832c23d1cece6e16491fe44b613693ada76 --- M pywikibot/site.py 1 file changed, 8 insertions(+), 15 deletions(-)
Approvals: John Vandenberg: Looks good to me, approved jenkins-bot: Verified
diff --git a/pywikibot/site.py b/pywikibot/site.py index 5e0d28b..59a5ac4 100644 --- a/pywikibot/site.py +++ b/pywikibot/site.py @@ -1690,24 +1690,17 @@ if item['*'] not in self._namespaces[ns]: self._namespaces[ns].aliases.append(item['*'])
- def hasExtension(self, name, unknown=NotImplementedError): + @need_version("1.14") + @deprecate_arg("unknown", None) + def hasExtension(self, name): """ Determine whether extension `name` is loaded.
- @param name: The extension to check for - @param unknown: The value to return if the site does not list loaded - extensions. Valid values are an exception to raise, - True or False. Default: NotImplementedError - - @return: bool + @param name: The extension to check for, case insenstive + @type name: str + @return: If the extension is loaded + @rtype: bool """ - try: - extensions = self.siteinfo['extensions'] - except KeyError: - if isinstance(unknown, type) and issubclass(unknown, Exception): - raise unknown( - "Feature 'hasExtension' only available in MW 1.14+") - else: - return unknown + extensions = self.siteinfo['extensions'] for ext in extensions: if ext['name'].lower() == name.lower(): return True