RPI2026F1 created this task.
RPI2026F1 added projects: Pywikibot, Pywikibot-Wikidata.
Restricted Application added subscribers: pywikibot-bugs-list, Aklapper.
TASK DESCRIPTION
**Steps to replicate the issue** (include links if applicable):
site = pywikibot.Site("wikidata", "wikidata")
item = pywikibot.ItemPage(site, "Q4115189")
claim = pywikibot.Claim(site, "P580")
claim.setTarget(pywikibot.WbTime(year=2022, hour=5, precision=11))
item.addClaim(claim)
**What happens?**:
WARNING: API error modification-failed: Malformed input:
+2022-01-01T05:00:00Z
---------------------------------------------------------------------------
APIError Traceback (most recent call last)
File /srv/paws/pwb/pywikibot/page/_decorators.py:34, in
_allow_asynchronous.<locals>.handle(func, self, *args, **kwargs)
33 try:
---> 34 func(self, *args, **kwargs)
35 # TODO: other "expected" error types to catch?
File /srv/paws/pwb/pywikibot/page/_wikibase.py:740, in
WikibasePage.addClaim(self, claim, bot, **kwargs)
738 raise ValueError(
739 'The provided Claim instance is already used in an entity')
--> 740 self.repo.addClaim(self, claim, bot=bot, **kwargs)
741 claim.on_item = self
File /srv/paws/pwb/pywikibot/site/_decorators.py:92, in
need_right.<locals>.decorator.<locals>.callee(self, *args, **kwargs)
89 raise UserRightsError('User "{}" does not have required '
90 'user right "{}"'
91 .format(self.user(), right))
---> 92 return fn(self, *args, **kwargs)
File /srv/paws/pwb/pywikibot/site/_datasite.py:324, in
DataSite.addClaim(self, entity, claim, bot, summary)
323 req = self.simple_request(**params)
--> 324 data = req.submit()
325 # Update the item
File /srv/paws/pwb/pywikibot/data/api/_requests.py:1108, in
Request.submit(self)
1106 pywikibot.log(' response=\n{}'.format(result))
-> 1108 raise pywikibot.exceptions.APIError(**error)
1109 except TypeError:
APIError: modification-failed: Malformed input: +2022-01-01T05:00:00Z
[messages: [{'name': 'wikibase-validator-malformed-value', 'parameters':
['+2022-01-01T05:00:00Z'], 'html': {'*': 'Malformed input:
+2022-01-01T05:00:00Z'}}];
servedby: mw1402;
help: See https://www.wikidata.org/w/api.php for API usage. Subscribe to
the mediawiki-api-announce mailing list at
<https://lists.wikimedia.org/postorius/lists/mediawiki-api-announce.lists.wikimedia.org/>
for notice of API deprecations and breaking changes.]
During handling of the above exception, another exception occurred:
OtherPageSaveError Traceback (most recent call last)
Cell In[24], line 1
----> 1 item.addClaim(claim)
File /srv/paws/pwb/pywikibot/page/_decorators.py:55, in
_allow_asynchronous.<locals>.wrapper(self, *args, **kwargs)
53 pywikibot.async_request(handle, func, self, *args, **kwargs)
54 else:
---> 55 handle(func, self, *args, **kwargs)
File /srv/paws/pwb/pywikibot/page/_decorators.py:47, in
_allow_asynchronous.<locals>.handle(func, self, *args, **kwargs)
45 if isinstance(err, PageSaveRelatedError):
46 raise err
---> 47 raise OtherPageSaveError(self, err)
48 if callback:
49 callback(self, err)
OtherPageSaveError: Edit to page [[wikidata:Q4115189]] failed:
modification-failed: Malformed input: +2022-01-01T05:00:00Z
[messages: [{'name': 'wikibase-validator-malformed-value', 'parameters':
['+2022-01-01T05:00:00Z'], 'html': {'*': 'Malformed input:
+2022-01-01T05:00:00Z'}}];
servedby: mw1402;
help: See https://www.wikidata.org/w/api.php for API usage. Subscribe to
the mediawiki-api-announce mailing list at
<https://lists.wikimedia.org/postorius/lists/mediawiki-api-announce.lists.wikimedia.org/>
for notice of API deprecations and breaking changes.]
**What should have happened instead?**: The time should be accepted.
**Software version** (skip for WMF-hosted wikis like Wikipedia):
**Other information** (browser name/version, screenshots, etc.): This makes
making a WbTime via `fromTimestamp()` impossible because it copies everything
including hours, minutes and seconds even when a precision of day or lower is
given.
TASK DETAIL
https://phabricator.wikimedia.org/T325860
EMAIL PREFERENCES
https://phabricator.wikimedia.org/settings/panel/emailpreferences/
To: RPI2026F1
Cc: Aklapper, RPI2026F1, pywikibot-bugs-list, PotsdamLamb, Jyoo1011,
JohnsonLee01, SHEKH, Dijkstra, Khutuck, Zkhalido, Viztor, dom_walden, Wenyi,
Tbscho, MayS, Mdupont, JJMC89, Dvorapa, Altostratus, Avicennasis, mys_721tx,
Xqt, jayvdb, Ricordisamoa, Masti, Alchimista
_______________________________________________
pywikibot-bugs mailing list -- [email protected]
To unsubscribe send an email to [email protected]