Revision: 6133
Author: russblau
Date: 2008-12-05 22:08:29 +0000 (Fri, 05 Dec 2008)
Log Message:
-----------
code cleanup
Modified Paths:
--------------
branches/rewrite/pywikibot/catlib.py
branches/rewrite/pywikibot/page.py
Modified: branches/rewrite/pywikibot/catlib.py
===================================================================
--- branches/rewrite/pywikibot/catlib.py 2008-12-05 16:07:22 UTC (rev 6132)
+++ branches/rewrite/pywikibot/catlib.py 2008-12-05 22:08:29 UTC (rev 6133)
@@ -13,11 +13,10 @@
#
__version__ = '$Id: $'
-import pywikibot
-import pywikibot.textlib
from pywikibot import Category
+
def change_category(article, oldCat, newCat, comment=None, sortKey=None,
inPlace=True):
return article.change_category(oldCat, newCat, comment, sortKey, inPlace)
Modified: branches/rewrite/pywikibot/page.py
===================================================================
--- branches/rewrite/pywikibot/page.py 2008-12-05 16:07:22 UTC (rev 6132)
+++ branches/rewrite/pywikibot/page.py 2008-12-05 22:08:29 UTC (rev 6133)
@@ -35,8 +35,10 @@
to the Site object.
"""
- def __init__(self, source, title=u"", ns=0, insite=None,
- defaultNamespace=None):
+
+ @deprecate_arg("insite", None)
+ @deprecate_arg("defaultNamespace", None)
+ def __init__(self, source, title=u"", ns=0):
"""Instantiate a Page object.
Three calling formats are supported:
@@ -65,16 +67,8 @@
@param ns: namespace number; required if source is a Site, ignored
otherwise
@type ns: int
- @param insite: DEPRECATED (use Link instead)
- @param defaultNamespace: DEPRECATED (use Link instead)
"""
- if insite is not None:
- logger.debug(
- "The 'insite' option in Page constructor is
deprecated.")
- if defaultNamespace is not None:
- logger.debug(
- "The 'defaultNamespace' option in Page constructor is
deprecated.")
if isinstance(source, pywikibot.site.BaseSite):
self._site = source
if ns not in source.namespaces():
@@ -144,6 +138,7 @@
return self._ns
@deprecate_arg("decode", None)
+ @deprecate_arg("savetitle", "asUrl")
def title(self, underscore=False, savetitle=False, withNamespace=True,
withSection=True, asUrl=False, asLink=False,
allowInterwiki=True, forceInterwiki=False, textlink=False,
@@ -151,8 +146,6 @@
"""Return the title of this Page, as a Unicode string.
@param underscore: if true, replace all ' ' characters with '_'
- @param savetitle: if true, try to quote all non-ASCII characters.
- (DEPRECATED: use asURL instead)
@param withNamespace: if false, omit the namespace prefix
@param withSection: if false, omit the section
@param asUrl: if true, quote title as if in an URL
@@ -174,10 +167,7 @@
title = title.split(u'#', 1)[0]
if underscore or asUrl:
title = title.replace(u' ', u'_')
- if savetitle:
- logger.debug(
- u"Page.title(savetitle=...) is deprecated.")
- if savetitle or asUrl:
+ if asUrl:
encodedTitle = title.encode(self.site().encoding())
title = urllib.quote(encodedTitle)
if asLink:
@@ -724,20 +714,14 @@
"""
return self.site().pagelanglinks(self)
+ @deprecate_arg("followRedirects", None)
+ @deprecate_arg("loose", None)
def imagelinks(self, followRedirects=None, loose=None):
"""Iterate ImagePage objects for images displayed on this Page.
- @param followRedirects: DEPRECATED and ignored
- @param loose: DEPRECATED and ignored
@return: a generator that yields ImagePage objects.
"""
- if followRedirects is not None:
- logger.debug(
- u"Page.imagelinks(followRedirects) option is deprecated.")
- if loose is not None:
- logger.debug(
- u"Page.imagelinks(loose) option is deprecated.")
return self.site().pageimages(self)
def templates(self):
@@ -780,19 +764,14 @@
positional))
return result
- def categories(self, nofollow_redirects=None, withSortKey=False):
+ @deprecate_arg("nofollow_redirects", None)
+ def categories(self, withSortKey=False):
"""Iterate categories that the article is in.
- @param nofollow_redirects: DEPRECATED and ignored
@param withSortKey: if True, include the sort key in each Category.
@return: a generator that yields Category objects.
"""
- # follow_redirects makes no sense here because category membership
- # doesn't follow redirects
- if nofollow_redirects is not None:
- logger.debug(
- u"Page.categories(nofollow_redirects) option is deprecated.")
return self.site().pagecategories(self, withSortKey=withSortKey)
def extlinks(self):
@@ -873,24 +852,21 @@
users = set([edit[2] for edit in edits])
return users
+ @deprecate_arg("throttle", None)
def move(self, newtitle, reason=None, movetalkpage=True, sysop=False,
- throttle=None, deleteAndMove=False, safe=True):
+ deleteAndMove=False, safe=True):
"""Move this page to a new title.
@param newtitle: The new page title.
@param reason: The edit summary for the move.
@param movetalkpage: If true, move this page's talk page (if it exists)
@param sysop: Try to move using sysop account, if available
- @param throttle: DEPRECATED
@param deleteAndMove: if move succeeds, delete the old page
(usually requires sysop privileges, depending on wiki settings)
@param safe: If false, attempt to delete existing page at newtitle
(if there is one) and then move this page to that title
"""
- if throttle is not None:
- logger.debug(
- u"Page.move: throttle option is deprecated.")
if reason is None:
logger.info(u'Moving %s to [[%s]].'
% (self.title(asLink=True), newtitle))
@@ -901,6 +877,7 @@
movetalk=movetalkpage,
noredirect=deleteAndMove)
+ @deprecate_arg("throttle", None)
def delete(self, reason=None, prompt=True, throttle=None, mark=False):
"""Deletes the page from the wiki. Requires administrator status.
@@ -910,9 +887,6 @@
speedy-deletion request on the page instead.
"""
- if throttle is not None:
- logger.debug(
- u"Page.delete: throttle option is deprecated.")
if reason is None:
logger.info(u'Deleting %s.' % (self.title(asLink=True)))
reason = pywikibot.input(u'Please enter a reason for the deletion:')
@@ -967,7 +941,8 @@
self._deletedRevs[timestamp][4] = undelete
self._deletedRevsModified = True
- def undelete(self, comment=None, throttle=None):
+ @deprecate_arg("throttle", None)
+ def undelete(self, comment=None):
"""Undelete revisions based on the markers set by previous calls.
If no calls have been made since loadDeletedRevisions(), everything
@@ -985,12 +960,8 @@
pg.undelete('This will restore only selected revisions.')
@param comment: The undeletion edit summary.
- @param throttle: DEPRECATED
"""
- if throttle is not None:
- logger.debug(
- u"Page.undelete: throttle option is deprecated.")
if comment is None:
logger.info(u'Preparing to undelete %s.'
% (self.title(asLink=True)))
@@ -998,8 +969,9 @@
u'Please enter a reason for the undeletion:')
return self.site().undelete(self, comment)
+ @deprecate_arg("throttle", None)
def protect(self, edit='sysop', move='sysop', unprotect=False,
- reason=None, prompt=True, throttle=None):
+ reason=None, prompt=True):
"""(Un)protect a wiki page. Requires administrator status.
Valid protection levels (in MediaWiki 1.12) are '' (equivalent to
@@ -1011,12 +983,8 @@
all protection levels to '')
@param reason: Edit summary.
@param prompt: If true, ask user for confirmation.
- @param throttle: DEPRECATED
"""
- if throttle is not None:
- logger.debug(
- u"Page.protect: throttle option is deprecated.")
if reason is None:
if unprotect:
un = u'un'
@@ -1294,38 +1262,30 @@
class Category(Page):
"""A page in the Category: namespace"""
- def __init__(self, source, title=u"", insite=None, sortKey=None):
- """All parameters are the same as for Page() constructor, except:
+ @deprecate_arg("sortKey", None)
+ def __init__(self, source, title=u"", insite=None):
+ """All parameters are the same as for Page() constructor.
- @param sortKey: DEPRECATED (use .aslink() method instead)
-
"""
- if sortKey is not None:
- logger.debug(
- "The 'sortKey' option in Category constructor is
deprecated.")
Page.__init__(self, source, title, 14)
if self.namespace() != 14:
raise ValueError(u"'%s' is not in the category namespace!"
% title)
- def aslink(self, sortKey=u'', forceInterwiki=None, textlink=None,
- noInterwiki=None):
+ @deprecate_arg("forceInterwiki", None)
+ @deprecate_arg("textlink", None)
+ @deprecate_arg("noInterwiki", None)
+ def aslink(self, sortKey=u''):
"""Return a link to place a page in this Category.
Use this only to generate a "true" category link, not for interwikis
or text links to category pages.
- Parameters are deprecated and preserved for backwards-compatibility,
- except:
-
@param sortKey: The sort key for the article to be placed in this
Category; if omitted, default sort key is used.
@type sortKey: (optional) unicode
"""
- if forceInterwiki is not None \
- or textlink is not None or noInterwiki is not None:
- logger.debug("All arguments to Category.aslink() are deprecated.")
if sortKey:
titleWithSortKey = '%s|%s' % (self.title(withSection=False),
self.sortKey)