-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
If this commit is causing any problems and you can't figure out what's wrong, please contact me and I'll have a look. Changing the behavior of the generator factory required touching every bot that used it, and I'm not familiar enough with some of the bots that I had to edit that I'm confidently I did it entirely right.
Oh yeah, and the upcoming -namespace parsing in GeneratorFactory is going to be really nifty, and should add a lot of functionality to bots that don't have a namespace filter already.
cydeweys@svn.wikimedia.org wrote:
Revision: 6270 Author: cydeweys Date: 2009-01-19 15:50:18 +0000 (Mon, 19 Jan 2009)
Log Message:
Changing the GeneratorFactory so that instead of handleArg() being called once and returning a generator, it is called many times to accumulate a list of pages to work on, and then, at the end, the combined page generator is explicitly asked for. This makes the GeneratorFactory a lot more useful for a wide variety of use cases.
Also, GeneratorFactory now understands the -page parameter, so some duplicate code was removed from bots that handled this individually.
Not in this commit, but coming soon, will be the handling of -namespace in the GeneratorFactory. This will remove quite a bit of duplicate code from individual bots and will make most bots more flexible.
Modified Paths:
trunk/pywikipedia/add_text.py trunk/pywikipedia/basic.py trunk/pywikipedia/blockpageschecker.py trunk/pywikipedia/category.py trunk/pywikipedia/commonscat.py trunk/pywikipedia/copyright.py trunk/pywikipedia/cosmetic_changes.py trunk/pywikipedia/fixing_redirects.py trunk/pywikipedia/imagecopy.py trunk/pywikipedia/imagerecat.py trunk/pywikipedia/imageuncat.py trunk/pywikipedia/inline_images.py trunk/pywikipedia/interwiki.py trunk/pywikipedia/isbn.py trunk/pywikipedia/lonelypages.py trunk/pywikipedia/movepages.py trunk/pywikipedia/noreferences.py trunk/pywikipedia/pagegenerators.py trunk/pywikipedia/piper.py trunk/pywikipedia/reflinks.py trunk/pywikipedia/replace.py trunk/pywikipedia/selflink.py trunk/pywikipedia/table2wiki.py trunk/pywikipedia/template.py trunk/pywikipedia/weblinkchecker.py