Currently we develop 4 independent... dependent extensions. Each extension should be designed to work as add one to the CreateWiki extension (as they are) but should explicitly be built on. We shouldn’t dupe extension code across multiple extensions or config variables.
This also will track using wg config more so any wiki farm could in theory use our extensions with little to no problems.
TODO list:
- CreateWiki: Make the extension directory look nice (includes, maintenance, sql, i18n directories etc.)
- CreateWiki: Alphabetise extension.json and document settings.
- CreateWiki: Drop pre-1.25 support.
- CreateWiki: clean up DBListGenerator.php and add support for modular config of wiki configuration (e.g. inactive, closed, settings etc.)
- CreateWiki: Make Private wikis modular.
- CreateWiki: Make closed wikis modular.
- CreateWiki: Handle subdomain only cases.
- CreateWiki: Make sending emails a modular config.
- CreateWiki: Make creation email less Miraheze specific.
- CreateWiki: Make custom domain a modular config.
- MirahezeMagic: Move RemoteWiki.php to CreateWiki (we use it too much for it to be an "us" thing anymore, makes all extensions unusable without our custom stuff forced on everyone else)
- MirahezeMagic: see if we can move any other stuff from this into any of the other extensions as appropriate.
- ManageWiki: Double check we employ modular config correctly for settings.
- ManageWiki: Use new modular configs for private and so on.
- WikiDiscover: Modularise the extension a bit more, it's all nice and neat but lacks more control.