Manual:Pywikibot/2.0

Pywikipediabot 2.0 aka "rewrite" was proposed in 2007, but has never been ready to replace the current "trunk" version. This is a list of things that we should do to get it ready.

Goals

 * Be ready to merge at the end of Summer 2013.
 * Provide a seamless transition for bot operators and writers.
 * Make it easier to make raw API calls.
 * Proper distinction between programs (give output and user interaction) and libraries

To be done

 * Many site methods not yet implemented.
 * All trunk scripts should be converted over.
 * Create a script called  to provide a compatibility layer.
 * Some programs need to be split into a program and library part (for example upload.py)
 * login.py has some weird quirks that need to be looked into
 * Kill api.update_page
 * Find a way to cache tokens between login sessions.

Ideas

 * Python3 compatibility!
 * As a general tip, all code committed now should try to be as Python3 compatible as possible. (Don't use {}.has_key, use 'key' in {}, etc)
 * Replace Page.templatesWithParams with a true parser, mwparserfromhell, by User:The Earwig