= Developer information = == How to write a plug-in or extension == There is plenty of [http://base.thep.lu.se/chrome/site/latest/html/developer/index.html information for the developer] available on the BASE web site. This document together with studies of how others have written plug-ins is what is available. The [http://base.thep.lu.se/wiki/MailingLists BASE mailing lists] are also useful sources for plug-in writers; search them for information and/or post new questions. == How to name my plug-in == In order to make sure that unique names are used we use the convention to add domain information to the name. Some examples: * [wiki:net.sf.basedb.examplecode net.sf.basedb.examplecode] * [wiki:se.lu.thep.affymetrix se.lu.thep.affymetrix] == How to document my plug-in == The minimum amount of documentation should be installation information, instruction for setting up a configuraion if needed, and contact information. To convince users to use the plug-in describe your fancy algorithm and, if applicalble, add citation information. Also, send us information on which file we should link to in the [PluginDownload plug-in list]. == New to subversion == We have put together a short introduction to subversion usage [http://www.thep.lu.se/~jari/documents/subversion_guidelines/index.html html] or [http://www.thep.lu.se/~jari/documents/subversion_guidelines/subversion_guidelines.pdf pdf] with some rules on svn usage. Please read the document, and set up a proper configuration file for subversion (see item 2.1.5 and Appendix F in the notes). == Package release tags == All plug-ins share a common subversion repository. Each project has been assigned a location in this repository, for example {{{/plugins/base2/net.sf.basedb.affymetrix}}}. This is the root directory of the project. Inside each project you can find the /trunk, /tags and /branches folder. The main development should take place in the /trunk. Released versions should be tagged in the /tags directory. Tags are created using the following subversion command: {{{ svn copy http://baseplugins.thep.lu.se/svn/path/to/project/trunk \ http://baseplugins.thep.lu.se/svn/path/to/project/tags/0.1 \ -m "Tagging release 0.1 of the project." }}} Branches can be treated correspondingly. == robots.txt == The web page indexing robots are killing the web server since the robots index '''every''' revision of the source. There is a RobotsTxt file with information to well behaved robots. The contents of RobotsTxt is the same traditional robots.txt, and the [http://trac-hacks.org/wiki/RobotsTxtPlugin RobotsTxtPlugin] plug-in will serve a http://baseplugins.thep.lu.se/robots.txt to the robots.