Documentation: Developer's Guide
see also:Help:Index
Contents
PART 4: Developer's Guide - Development, Bug Tracking, Roadmap, Known Issues, (Feature Requests)
Overview
The MediaWiki software is developed on Sourceforge [1] via CVS, and is available under the GNU General Public License.
The code now running on Wikipedia is the "Phase III" code, now known as MediaWiki, by Lee Daniel Crocker, Brion Vibber and others. The code is available via CVS (module phase3) or as a tarball of the latest stable version.
Obtaining Code
See [2]
The code can be obtained via anonymous CVS from the Sourceforge Wikipedia project at http://wikipedia.sourceforge.net (browse CVS online).
To get the newest version do:
From a (Unix) Command line:
~> cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/wikipedia login (Logging in to anonymous@cvs.wikipedia.sourceforge.net) CVS password: <ENTER> ~> cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/wikipedia checkout phase3
For the windows cvs client:
~> cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/wikipedia checkout phase3
You can also get a stable version (18. November 2003) from http://prdownloads.sourceforge.net/wikipedia/mediawiki-20031118.tar.gz?download
CVS (at Sourceforge)
See [3].
CVS (Concurrent Versions System) is a tool used by many software developers to manage changes within their source code tree. CVS provides the means to store not only the current version of a piece of source code, but a record of all changes (and who made those changes) that have occurred to that source code. Use of CVS is particularly common on projects with multiple developers, since CVS ensures changes made by one developer are not accidentally removed when another developer posts their changes to the source tree.
Information about accessing this CVS repository may be found in our document titled, "Basic Introduction to CVS and SourceForge.net (SF.net) Project CVS Services", [4].
In order to access a CVS repository, you must install a special piece of software called a CVS client; CVS clients are available for most any operating system. Information about CVS client software may be found in our document titled, "Basic Introduction to CVS and SourceForge.net (SF.net) Project CVS Services", [5].
Anonymous CVS Access
This project's SourceForge.net CVS repository can be checked out through anonymous (pserver) CVS with the following instruction set. The module you wish to check out must be specified as the modulename. When prompted for a password for anonymous, simply press the Enter key. To determine the names of the modules created by this project, you may examine their CVS repository via the provided web-based CVS repository viewer, [6].
~> cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/wikipedia login ~> cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/wikipedia co modulename
Information about accessing this CVS repository may be found in our document titled, "Basic Introduction to CVS and SourceForge.net (SF.net) Project CVS Services", [7].
Updates from within the module's directory do not need the -d parameter.
NOTE: UNIX file and directory names are case sensitive. The path to the project CVSROOT must be specified using lowercase characters (i.e. /cvsroot/wikipedia)
Developer CVS Access via SSH
Only project developers can access the CVS tree via this method. A SSH client must be installed on your client machine. Substitute modulename and developername with the proper values. Enter your site password when prompted.
A significant amount of information about project CVS services may be found in our "Introduction to Project CVS Services", [8]. Developers new to CVS should read our "Basic Introduction to CVS and SourceForge.net (SF.net) Project CVS Services", [9].
Developers may also make use of shared SSH keys for authentication.
~> export CVS_RSH=ssh ~> cvs -z3 -d:ext:developername@cvs.sourceforge.net:/cvsroot/wikipedia co modulename
NOTE: UNIX file and directory names are case sensitive. The path to the project CVSROOT must be specified using lowercase characters (i.e. /cvsroot/wikipedia)
Database schema
You may find the following links useful.
- Experimental new database schema 22:55, 24 Jul 2003
- Proposed Database Schema Changes 18:19, 23 Dec 2003
- en:Wikipedia:Database queries
- nl:Wikipedia:SQL opdrachten
- Database layout
- Documentation: Developer's Guide
Known Issues
Tracking with MediaZilla (Bugzilla)
Bugs, issues, and feature requests are tracked and prioritised at MediaZilla.
Tasks
(unused and/or obsolete)
See [12]
-
Wikipedia bugs - find the bugs at http://wikipedia.sourceforge.net/fpw/wiki.phtml?, [13] -
Source code - Tasks involving source code organization, [14].
Where to go from here
- If you...