MisterSynergy created this task.
MisterSynergy added a project: Pywikibot.
Restricted Application added subscribers: pywikibot-bugs-list, Aklapper.

TASK DESCRIPTION
  **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 wikipedia
  
  **What 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.):

TASK DETAIL
  https://phabricator.wikimedia.org/T345036

EMAIL PREFERENCES
  https://phabricator.wikimedia.org/settings/panel/emailpreferences/

To: MisterSynergy
Cc: Aklapper, pywikibot-bugs-list, MisterSynergy, PotsdamLamb, Jyoo1011, 
JohnsonLee01, SHEKH, Dijkstra, Khutuck, Zkhalido, Viztor, Wenyi, Tbscho, MayS, 
Mdupont, JJMC89, Dvorapa, Altostratus, Avicennasis, mys_721tx, Xqt, jayvdb, 
Masti, Alchimista
_______________________________________________
pywikibot-bugs mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to