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]

Reply via email to