====== PunBB 1.3 extension development ====== ===== General ===== //TODO: Describe the steps to create the extension.// ===== PunBB team extension development life cycle ===== - Create the wiki article for the extension and write the general idea and the specification there. * The page url must be ''%%http://punbb.informer.com/wiki/punbb13:%%'', e.g. http://punbb.informer.com/wiki/punbb13:pun_pm. * You may also start the discussion in [[http://punbb.informer.com/forums/forum/65/13-extensions-talk/|Forums]] to ask users to add their feature requests to the specification. - Add the ticket to the [[http://punbb.informer.com/trac/|Trac]] (or just start a text file, if you have no [[http://en.wikipedia.org/wiki/Trac|Trac]]). List the main tasks to complete the extension. - //To be invented: // Create the automatic test (e.g. using [[pun_admin_simpletest]]) for all the features in your task-list. - Code them all! Follow your task-list and strike out done. * Commit your changes to the [[http://punbb.informer.com/svn/|SVN]] separately: one feature or one bug fix is one commit. Do not commit multiple changes simultaneously. * BTW: Use [[http://en.wikipedia.org/wiki/Subversion_(software)|SVN]] or other [[http://en.wikipedia.org/wiki/Version_control_system|VCS]]. (I personally prefer [[http://en.wikipedia.org/wiki/Bazaar_(software)|Bazaar]].) - Add the documentation to the wiki article. * Extension usage. * Extension customization and integration. - Publish extension in the [[http://punbb.informer.com/extensions/|extension repository]] //(as soon as it passed all the automatic tests)//. * Third-party developers may propose their extensions to be reviewed and published in the [[http://punbb.informer.com/extensions/|repository]]. - Release the extension in [[http://punbb.informer.com/forums/forum/65/13-extensions-talk/|Forums]].