jenkins-bot submitted this change.

View Change

Approvals: Xqt: Looks good to me, approved jenkins-bot: Verified
[IMPR] decrease nested flow in CategoryPreprocess.determine_type_target

Change-Id: If1f62727b6a40aea83d820a9efcf6e3d38e3239c
---
M scripts/category.py
1 file changed, 27 insertions(+), 25 deletions(-)

diff --git a/scripts/category.py b/scripts/category.py
index cb04077..7c8cfc7 100755
--- a/scripts/category.py
+++ b/scripts/category.py
@@ -199,46 +199,48 @@
self.edit_redirects = edit_redirects
self.create = create

- def determine_type_target(self, page) -> Optional[pywikibot.Page]:
+ def determine_type_target(
+ self,
+ page: pywikibot.Page
+ ) -> Optional[pywikibot.Page]:
"""
Return page to be categorized by type.

:param page: Existing, missing or redirect page to be processed.
- :type page: pywikibot.Page
:return: Page to be categorized.
"""
if page.exists():
- if page.isRedirectPage():
- # if it is a redirect, use the redirect target instead
- redir_target = page.getRedirectTarget()
- if self.follow_redirects:
- if redir_target.exists():
- return redir_target
+ if not page.isRedirectPage():
+ return page

- if self.create:
- redir_target.text = ''
- pywikibot.output('Redirect target {} does not exist '
- 'yet; creating.'.format(
- redir_target.title(as_link=True)))
- return redir_target
+ # if it is a redirect, use the redirect target instead
+ redir_target = page.getRedirectTarget()
+ if self.follow_redirects:
+ if redir_target.exists():
+ return redir_target

- if self.edit_redirects:
- return page
-
- pywikibot.warning(
- 'Redirect target {} cannot be modified; skipping.'
- .format(redir_target))
- return None
+ if self.create:
+ redir_target.text = ''
+ pywikibot.output('Redirect target {} does not exist yet; '
+ 'creating.'.format(
+ redir_target.title(as_link=True)))
+ return redir_target

if self.edit_redirects:
return page

- pywikibot.warning('Page {} is a redirect to {}; skipping.'
- .format(page.title(as_link=True),
- redir_target.title(as_link=True)))
+ pywikibot.warning(
+ 'Redirect target {} cannot be modified; skipping.'
+ .format(redir_target))
return None

- return page
+ if self.edit_redirects:
+ return page
+
+ pywikibot.warning('Page {} is a redirect to {}; skipping.'
+ .format(page.title(as_link=True),
+ redir_target.title(as_link=True)))
+ return None

if self.create:
page.text = ''

To view, visit change 833998. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: If1f62727b6a40aea83d820a9efcf6e3d38e3239c
Gerrit-Change-Number: 833998
Gerrit-PatchSet: 3
Gerrit-Owner: Xqt <info@gno.de>
Gerrit-Reviewer: D3r1ck01 <xsavitar.wiki@aol.com>
Gerrit-Reviewer: Xqt <info@gno.de>
Gerrit-Reviewer: jenkins-bot
Gerrit-MessageType: merged