Xqt created this task.
Xqt added projects: Pywikibot, Pywikibot-tests.
Restricted Application added subscribers: pywikibot-bugs-list, Aklapper.

TASK DESCRIPTION
  https://github.com/wikimedia/pywikibot/actions/runs/9477313658/job/26111625592
  
    _____________________ TestDeletionBotUser.test_delete_mark 
_____________________
    
    self = <tests.deletionbot_tests.TestDeletionBotUser 
testMethod=test_delete_mark>
    
        def test_delete_mark(self):
            """Test marking User:Unicodesnowman/DeleteMark for deletion."""
            delete.main('-page:User:Unicodesnowman/DeleteMark', '-always',
    >                   '-summary:pywikibot unit test. Do NOT actually delete.')
    
    tests/deletionbot_tests.py:84: 
    _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ 
    scripts/delete.py:292: in main
        bot.run()
    pywikibot/bot.py:1561: in run
        self.treat(page)
    pywikibot/bot.py:1814: in treat
        self.treat_page()
    scripts/delete.py:219: in treat_page
        automatic_quit=True)
    pywikibot/page/_basepage.py:1989: in delete
        self.site.delete(self, reason, deletetalk=deletetalk)
    pywikibot/site/_decorators.py:93: in callee
        return fn(self, *args, **kwargs)
    pywikibot/site/_apisite.py:2627: in delete
        req.submit()
    _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ 
    
    self = 
pywikibot.data.api._requests.Request<wikipedia:test->'/w/api.php?action=delete&reason=pywikibot+unit+test.+Do+NOT+actu...itle=User:Unicodesnowman/DeleteMark&assert=user&maxlag=5&format=json&token=874f9ff095c2c572cb0124db5651616c66693449+\'>
    
        def submit(self) -> dict:
            """Submit a query and parse the response.
        
            .. versionchanged:: 8.0.4
               in addition to *readapidenied* also try to login when API
               response is *notloggedin*.
            .. versionchanged:: 9.0
               Raise :exc:`exceptions.APIError` if the same error comes
               twice in a row within the loop.
        
            :return: a dict containing data retrieved from api.php
            """
            self._add_defaults()
            use_get = self._use_get()
            retries = 0
            self.last_error = dict.fromkeys(['code', 'info'])
            while True:
                paramstring = self._http_param_string()
        
                simulate = self._simulate(self.action)
                if simulate:
                    return simulate
        
                if self.throttle:
                    self.site.throttle(write=self.write)
                else:
                    pywikibot.log(
                        f"Submitting unthrottled action '{self.action}'.")
        
                use_get, uri, body, headers = self._get_request_params(use_get,
                                                                       
paramstring)
                response, use_get = self._http_request(use_get, uri, body, 
headers,
                                                       paramstring)
                if response is None:
                    continue
        
                result = self._json_loads(response)
                if result is None:
                    continue
        
                if self._userinfo_query(result):
                    continue
        
                if self._handle_warnings(result):
                    continue
        
                if 'error' not in result:
                    return result
        
                error = result['error']
                for key in result:
                    if key in ('error', 'warnings'):
                        continue
                    assert key not in error
                    error[key] = result[key]
        
                if '*' in error:
                    # help text returned
                    error['help'] = error.pop('*')
                code = error.setdefault('code', 'Unknown')
                info = error.setdefault('info', None)
        
                if (code == self.last_error['code']
                        and info == self.last_error['info']):
    >               raise pywikibot.exceptions.APIError(**self.last_error)
    E               pywikibot.exceptions.APIError: badtoken: Invalid CSRF token.
    E               [servedby: mw-api-ext.eqiad.main-778c97d8cb-99fgk;
    E                help: See https://test.wikipedia.org/w/api.php for API 
usage. Subscribe to the mediawiki-api-announce mailing list at 
&lt;https://lists.wikimedia.org/postorius/lists/mediawiki-api-announce.lists.wikimedia.org/&gt;
 for notice of API deprecations and breaking changes.]
    
    pywikibot/data/api/_requests.py:1026: APIError

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

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

To: Xqt
Cc: Aklapper, Xqt, pywikibot-bugs-list, mevo, PotsdamLamb, Jyoo1011, 
JohnsonLee01, SHEKH, Dijkstra, Khutuck, Zkhalido, Aram, Viztor, Wenyi, Tbscho, 
MayS, Mdupont, JJMC89, Dvorapa, Altostratus, binbot, Avicennasis, mys_721tx, 
jayvdb, Masti, Alchimista
_______________________________________________
pywikibot-bugs mailing list -- pywikibot-bugs@lists.wikimedia.org
To unsubscribe send an email to pywikibot-bugs-le...@lists.wikimedia.org

Reply via email to