jenkins-bot has submitted this change. (
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1330334?usp=email )
Change subject: site: Stop pre-encoding API titles
......................................................................
site: Stop pre-encoding API titles
Request normalizes byte parameters back to strings before serialization.
Pass title strings directly to avoid redundant encode/decode round trips.
Change-Id: Ibda97614d600be4de31d803b2c741616b3b65246
---
M pywikibot/proofreadpage.py
M pywikibot/site/_apisite.py
M pywikibot/site/_extensions.py
M pywikibot/site/_generators.py
4 files changed, 18 insertions(+), 19 deletions(-)
Approvals:
Xqt: Looks good to me, approved
jenkins-bot: Verified
diff --git a/pywikibot/proofreadpage.py b/pywikibot/proofreadpage.py
index c5c7b85..b9dc3f4 100644
--- a/pywikibot/proofreadpage.py
+++ b/pywikibot/proofreadpage.py
@@ -1111,7 +1111,7 @@
if hasattr(self, '_pageid'):
ppi_args['prppiipageid'] = str(self._pageid)
else:
- ppi_args['prppiititle'] = self.title().encode(site.encoding())
+ ppi_args['prppiititle'] = self.title()
ppi_gen = site._generator(ListGenerator, 'proofreadpagesinindex',
**ppi_args)
diff --git a/pywikibot/site/_apisite.py b/pywikibot/site/_apisite.py
index 6c3c24c..7f9a4f9 100644
--- a/pywikibot/site/_apisite.py
+++ b/pywikibot/site/_apisite.py
@@ -1499,7 +1499,7 @@
query = self._generator(api.PropertyGenerator,
type_arg='info',
- titles=title.encode(self.encoding()),
+ titles=title,
inprop=inprop)
self._update_page(page, query)
@@ -1508,7 +1508,7 @@
title = page.title(with_section=False)
query = self._generator(api.PropertyGenerator,
type_arg='pageprops',
- titles=title.encode(self.encoding()),
+ titles=title,
)
self._update_page(page, query)
@@ -1861,7 +1861,7 @@
cititle = category.title(with_section=False)
ciquery = self._generator(api.PropertyGenerator,
type_arg='categoryinfo',
- titles=cititle.encode(self.encoding()))
+ titles=cititle)
self._update_page(category, ciquery)
def categoryinfo(
diff --git a/pywikibot/site/_extensions.py b/pywikibot/site/_extensions.py
index 1a6cdaa..c7c9a95 100644
--- a/pywikibot/site/_extensions.py
+++ b/pywikibot/site/_extensions.py
@@ -195,7 +195,7 @@
query = self._generator(api.PropertyGenerator,
type_arg='imageforpage',
- titles=title.encode(self.encoding()),
+ titles=title,
prppifpprop=prppifpprop)
self._update_page(page, query)
@@ -210,7 +210,7 @@
title = page.title(with_section=False)
query = self._generator(api.PropertyGenerator,
type_arg='coordinates',
- titles=title.encode(self.encoding()),
+ titles=title,
coprop=['type', 'name', 'dim',
'country', 'region',
'globe'],
@@ -233,7 +233,7 @@
title = page.title(with_section=False)
query = self._generator(api.PropertyGenerator,
type_arg='pageimages',
- titles=title.encode(self.encoding()),
+ titles=title,
piprop=['name'])
self._update_page(page, query)
diff --git a/pywikibot/site/_generators.py b/pywikibot/site/_generators.py
index 8857675..3481db1 100644
--- a/pywikibot/site/_generators.py
+++ b/pywikibot/site/_generators.py
@@ -290,7 +290,7 @@
:raises TypeError: A namespace identifier has an inappropriate
type such as NoneType or bool
"""
- bltitle = page.title(with_section=False).encode(self.encoding())
+ bltitle = page.title(with_section=False)
blargs: dict[str, Any] = {'gbltitle': bltitle}
if filter_redirects is not None:
blargs['gblfilterredir'] = ('redirects' if filter_redirects
@@ -358,7 +358,7 @@
type such as NoneType or bool
"""
eiargs: dict[str, Any] = {
- 'geititle': page.title(with_section=False).encode(self.encoding()),
+ 'geititle': page.title(with_section=False),
}
if filter_redirects is not None:
eiargs['geifilterredir'] = ('redirects' if filter_redirects
@@ -391,7 +391,7 @@
:param content: Load the current content of each redirect
"""
rdargs: dict[str, Any] = {
- 'titles': page.title(with_section=False).encode(self.encoding()),
+ 'titles': page.title(with_section=False),
}
if filter_fragments is not None:
rdargs['grdshow'] = ('' if filter_fragments else '!') + 'fragment'
@@ -481,7 +481,7 @@
if hasattr(page, '_pageid'):
plargs['pageids'] = str(page._pageid)
else:
- pltitle = page.title(with_section=False).encode(self.encoding())
+ pltitle = page.title(with_section=False)
plargs['titles'] = pltitle
return self._generator(api.PageGenerator, type_arg='links',
namespaces=namespaces, total=total,
@@ -519,8 +519,7 @@
if hasattr(page, '_pageid'):
clargs['pageids'] = str(page._pageid)
else:
- clargs['titles'] = page.title(
- with_section=False).encode(self.encoding())
+ clargs['titles'] = page.title(with_section=False)
if with_sort_key:
page_dict = next(iter(self._generator(
@@ -558,7 +557,7 @@
(default False); note that this means the content of the image
description page, not the image itself
"""
- imtitle = page.title(with_section=False).encode(self.encoding())
+ imtitle = page.title(with_section=False)
return self._generator(api.PageGenerator, type_arg='images',
titles=imtitle, total=total,
g_content=content)
@@ -591,7 +590,7 @@
:raises UnsupportedPageError: A Page object is not supported due
to namespace restriction
"""
- tltitle = page.title(with_section=False).encode(self.encoding())
+ tltitle = page.title(with_section=False)
return self._generator(api.PageGenerator, type_arg='templates',
titles=tltitle, namespaces=namespaces,
total=total, g_content=content)
@@ -661,7 +660,7 @@
raise TypeError(
f'categorymembers: non-Category page {category!r} specified')
- cmtitle = category.title(with_section=False).encode(self.encoding())
+ cmtitle = category.title(with_section=False)
cmargs: dict[str, Any] = {
'type_arg': 'categorymembers',
'gcmtitle': cmtitle,
@@ -857,7 +856,7 @@
rvargs['rvsection'] = str(section)
if revids is None:
- rvtitle = page.title(with_section=False).encode(self.encoding())
+ rvtitle = page.title(with_section=False)
rvargs['titles'] = rvtitle
else:
if isinstance(revids, (int, str)):
@@ -926,7 +925,7 @@
lltitle = page.title(with_section=False)
llquery = self._generator(api.PropertyGenerator,
type_arg='langlinks',
- titles=lltitle.encode(self.encoding()),
+ titles=lltitle,
total=total)
for pageitem in llquery:
if not self.sametitle(pageitem['title'], lltitle):
@@ -955,7 +954,7 @@
"""
eltitle = page.title(with_section=False)
elquery = self._generator(api.PropertyGenerator, type_arg='extlinks',
- titles=eltitle.encode(self.encoding()),
+ titles=eltitle,
total=total)
for pageitem in elquery:
if not self.sametitle(pageitem['title'], eltitle):
--
To view, visit
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1330334?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.wikimedia.org/r/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: Ibda97614d600be4de31d803b2c741616b3b65246
Gerrit-Change-Number: 1330334
Gerrit-PatchSet: 2
Gerrit-Owner: Mahveotm <[email protected]>
Gerrit-Reviewer: Xqt <[email protected]>
Gerrit-Reviewer: jenkins-bot
_______________________________________________
Pywikibot-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]