Steps to replicate the issue (include links if applicable):
- Try to instantiate a Site object via pywikibot.APISite.fromDBName for dbname "roa_rupwiki":
import pywikibot
site = pywikibot.APISite.fromDBName('roa_rupwiki')What happens?:
- An "UnknownSiteError" exception is raised. Full message:
---------------------------------------------------------------------------
UnknownSiteError Traceback (most recent call last)
Cell In[8], line 3
1 import pywikibot
----> 3 site = pywikibot.APISite.fromDBName('roa_rupwiki')
File /srv/paws/lib/python3.10/site-packages/pywikibot/site/_apisite.py:215, in APISite.fromDBName(cls, dbname, site)
213 if m_site['code'] == 'wiki':
214 m_site['code'] = 'wikipedia'
--> 215 return pywikibot.Site(lang, m_site['code'])
216 else: # key == 'specials'
217 for m_site in val:
File /srv/paws/lib/python3.10/site-packages/pywikibot/__init__.py:253, in Site(code, fam, user, interface, url)
251 key = f'{interface.__name__}:{fam}:{code}:{user}'
252 if key not in _sites or not isinstance(_sites[key], interface):
--> 253 _sites[key] = interface(code=code, fam=fam, user=user)
254 debug(f"Instantiated {interface.__name__} object '{_sites[key]}'")
256 if _sites[key].code != code:
File /srv/paws/lib/python3.10/site-packages/pywikibot/site/_apisite.py:118, in APISite.__init__(self, code, fam, user)
111 def __init__(
112 self,
113 code: str,
114 fam: Union[str, 'pywikibot.family.Family', None] = None,
115 user: Optional[str] = None
116 ) -> None:
117 """Initializer."""
--> 118 super().__init__(code, fam, user)
119 self._globaluserinfo: Dict[Union[int, str], Any] = {}
120 self._interwikimap = _InterwikiMap(self)
File /srv/paws/lib/python3.10/site-packages/pywikibot/site/_basesite.py:89, in BaseSite.__init__(self, code, fam, user)
86 else:
87 error_msg = ("Language '{}' does not exist in family {}"
88 .format(self.__code, self.__family.name))
---> 89 raise UnknownSiteError(error_msg)
91 self._username = normalize_username(user)
93 self.use_hard_category_redirects = (
94 self.code in self.family.use_hard_category_redirects)
UnknownSiteError: Language 'rup' does not exist in family wikipediaWhat should have happened instead?:
- The Site object should have been instantiated
Software version (skip for WMF-hosted wikis like Wikipedia):
- Problem started showing up in fairly recent (22-27 August 2023) versions of pywikibot on PAWS and Toolforge (shared pywikibot); it did work before, though
Other information (browser name/version, screenshots, etc.):