Currently, we have one master wiki (FrontPage) for the system pages in MoinMoin. If we want to branch MoinMoin 1.x in order to maintain it, we want to supply further documentation updates for it.
Because having a MoinMaster wiki for help pages as soon as possible in the 1.y dev process is important in order to maximize the benefit of peer review, we should install such a possibility as soon as we switch to 1.y development.
But how to maintain two wiki branches? There are several possibilities ...
Staging Possibilities
Two wikis
We clone MoinMaster and sync them manually.
Neat parsers generate different content on different revisions
Think of a page consisting of such patterns:
Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Feature 1. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. {{{#!feature >1.y Feature 2. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. }}``} {{{#!feature =1.x Feature 1. broken. Ham. Ham. Ham. Ham. Ham. }}``}
Advantages:
- The reader gets a page which is quite simple and streamlined
- If you want to know the history of an API etc., just look into the raw text.
Disadvantages:
- Markup gets more complex
Using a config item etc. we could control the parser in order to filter certain revisions (standard values: just show current revision (in releases), show all revisions with some neat borders around them (on MoinMaster)).
Text annotations
Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Feature 1. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Feature 2. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. Ham. [[feature(1.y)]]
Either with or without a macro which adds a nice standard text (wikipedia uses this pattern a lot).
Advantages:
- Dropping and adding of semantics is easily modelled.
Disadvantages:
- If you change semantics, this can clutter the page and complicate it (for the reader).
Discussion
- won't work for MoinI18n/* pages (could be solved by having MoinI18n1x/* MoinI18n1y/* etc.)
won't work for InstallDocs + stuff included from there if there are major changes
- new system pages of 1.y would get into underlay updates of 1.x
- similar problem for removed pages
no code yet http://johannes.sipsolutions.net/patches/moin/all/2008-04-22-21%3a01/002-version-parser.patch