TWiki DEVELOP Branch
The DEVELOP branch has been discontinued
, it is replaced by the svn trunk
NOTE: Below content is no longer relevant
- All code development is done in
twiki/trunk/core of the TWiki SVN repository
- All plugin development is done in the
- Access the
twiki/trunk at http://svn.twiki.org/svn/twiki/trunk
- All major and minor releases are tagged and branched off the truk
- After each major or minor release a TWikiRelease##x## branch is created from which patch releases are tagged. Very urgent bugfixes for core and default plugins are merged from the trunk to Release branch.
- The DEVELOP and TWikiRelease04x00 branches are discontinued and blocked for further checkins
- Report bugs using create new Bug report - DEVELOP Bug system
- TWiki's Subversion requires all changes to be logged against Items in the Bugs system above. see SubversionReadme
TWiki DEVELOP Branch
The DEVELOP branch is focused on taking TWiki into the future. To do this we require a strong focus on TestCases
and Documentation, and the strength to ignore the possibility of breaking something (unless TestCases
/UnitTests are provided). We cannot continue to avoid making radical changes for fear of possibly breaking legacy code. We must focus on dealing more effectivly with legacy TestCases
, while moving forward towards a faster, more deterministic, lighter TWikiCore
to check out the DevelopBranch
or see a live demo
from the current branch.
As code and ideas mature, they will be moved into the MAIN TWiki branch (preferably by people who maintain legacy TWiki Applications). In the process we should be able to provide conversion tools for any radically changed syntax or semantics.
Because there will be some diversion between the functionality of MAIN and DEVELOP, it is important to realise that the Documentation on twiki.org is for the MAIN codebase, while that in DEVELOP will need to be elsewhere.
I would prefer to use SVN
for everything, Tests, Documentation and Code, as that will improve the repeatibility and maintenence of the solution, but this is a long term goal, requiring a number of system configuration changes, and the writing of a SVN
In the short term, we should move aggressively in the direction of moving documentation and testcases into subversion, and using a scripted install to maintain the developer environment using these topics. This is relatively trivial to do.
I propose we:
- move a copy of the Cairo release files into DEVELOP SVN (without ,v) - DONE
- move the TestCases into a TestCases Web in DEVELOP SVN - DONE
- at the end of every SvnUpdate (every 5 minutes) run "perl test/runtest.pl %outputDir%" from the DEVELOP directory (results will be put in http://develop.twiki.org/users/develop/pub/TestOutput/runtest.html) - DONE
- run GenDocs - e.g. shows smellyiness - CodevDocumentationProject style
- every 12 hours, "perl tools/builddistros.pl %outputDir%" will be run, with output files expected in http://develop.twiki.org/users/develop/pub/BuildDistros/index.html - DONE
- remove the copies of CPAN from SVN, and replace them with a script that can be run from builddistros.pl (with roll back to a previous version if tests fail?)
Constant work for all DEVELOP'ers
- Developers on DEVELOP use this setup, allowing them to edit and commit DEVELOP topics, code and tests from that CheckOut
- work to validate and simplify that docco (while writing TestCases and UnitTests for those feature)
- continue to allow the re-development of existing features, and the addition of new ones, with a focus to implementing a small tight, generic TWikiCore, while moving lesser used, or customisable, or legacy, or contentious features into Plugins
- provide migration tools for TestCases from Legacy TWikiApplications
- pursue Web based configuration tools (preferably as a TWikiApplication based on Plugins)
- pursue Web deployment of TWikiApplications with dependancies
- develop a spell checker that fixes Sven's bad grammar and spelling
Want to take part in development?
Go to HowCanIContribute
and check out HowDoesTheDEVELOPBranchWork
to ask for SVN
access; give a short introduction of yourself.