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

TASK DESCRIPTION
  **Sample code** (simplified):
  
    user.mylang = 'ro'
    user.family = 'wikipedia'
    site = pywikibot.Site()
    page = pywikibot.Page(site, result['page_title'])
    pywikibot.output(page.title())
    if page.exists() and page.isRedirectPage():
        page = page.getRedirectTarget()
    elif not page.exists():
        pass # DO stuff
  
  **Expected outcome:** get the redirect target or handle non-existent pages
  
  **Actual outcome:**
  
    Traceback (most recent call last):
      File "pwb.py", line 420, in <module>
        if not main():
      File "pwb.py", line 415, in main
        module)
      File "pwb.py", line 113, in run_python_file
        main_mod.__dict__)
      File "./wikiro/robots/python/pywikipedia/localitati/create_shortcuts.py", 
line 80, in <module>
        main()
      File "./wikiro/robots/python/pywikipedia/localitati/create_shortcuts.py", 
line 64, in main
        if page.exists() and page.isRedirectPage():
      File "/home/andrei/pywikibot-core/pywikibot/page/__init__.py", line 717, 
in exists
        raise InvalidPageError(self)
  
  Trying to debug, we add a print:
  
    $ git diff pywikibot/page/__init__.py
    diff --git a/pywikibot/page/__init__.py b/pywikibot/page/__init__.py
    index ee06a0203..fa52faec5 100644
    --- a/pywikibot/page/__init__.py
    +++ b/pywikibot/page/__init__.py
    @@ -714,6 +714,7 @@ class BasePage(ComparableMixin):
             """
             with suppress(AttributeError):
                 return self.pageid > 0
    +        print(self.pageid)
             raise InvalidPageError(self)
    
         @property
  
  Sure enough, we had an AttributeError:
  
    Traceback (most recent call last):
      File "pwb.py", line 420, in <module>
        if not main():
      File "pwb.py", line 415, in main
        module)
      File "pwb.py", line 113, in run_python_file
        main_mod.__dict__)
      File "./wikiro/robots/python/pywikipedia/localitati/create_shortcuts.py", 
line 80, in <module>
        main()
      File "./wikiro/robots/python/pywikipedia/localitati/create_shortcuts.py", 
line 64, in main
        if source_page.exists():
      File "/home/andrei/pywikibot-core/pywikibot/page/__init__.py", line 717, 
in exists
        print(self.pageid)
      File "/home/andrei/pywikibot-core/pywikibot/page/__init__.py", line 261, 
in pageid
        self.site.loadpageinfo(self)
      File "/home/andrei/pywikibot-core/pywikibot/site/_apisite.py", line 1107, 
in loadpageinfo
        self._update_page(page, query)
      File "/home/andrei/pywikibot-core/pywikibot/site/_apisite.py", line 1081, 
in _update_page
        for pageitem in query:
      File "/home/andrei/pywikibot-core/pywikibot/data/api.py", line 2740, in 
__iter__
        yield from super().__iter__()
      File "/home/andrei/pywikibot-core/pywikibot/data/api.py", line 2582, in 
__iter__
        prev_limit, new_limit, previous_result_had_data)
      File "/home/andrei/pywikibot-core/pywikibot/data/api.py", line 2507, in 
_handle_query_limit
        self.request[self.prefix + 'limit'] = str(new_limit)
    AttributeError: 'PropertyGenerator' object has no attribute 'prefix'
    CRITICAL: Exiting due to uncaught exception <class 'AttributeError'>
  
  **Pywikibot version**:
  
    === Pywikibot framework v7.0.0.dev0 -- Logging header ===                   
                                                                  [80/1812]
    COMMAND: ['pwb.py', '-v']
    DATE: 2021-11-02 13:35:29.761891 UTC
    VERSION: [https] r-pywikibot-core (28e31f9, g15398, 2021/09/21, 11:52:45, 
n/a)
    SYSTEM: <anonymized>

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

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

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

Reply via email to