ConfigGen Roadmap

Mar 9, 2011 at 7:32 PM
Edited Mar 10, 2011 at 6:36 PM

I thought I'd post my thoughts on the roadmap for ConfigGen, as I currently see it. Of course, this is subject to change so please feel free to comment, criticise or otherwise discuss.

The items aren't in any particular order:

  • Refactor - the code-base is messy in places, especially the parts that grew organically rather than being planned, or being developed test-first. Planned refactors include:
    • Move to an IoC container - the constructor injection is beginning to get a little unwieldy, and since I plan to grow the code-base further, I ought to knuckle down and do this.
    • General refactoring, but especially around settings loading and actual file generation (e.g. OutputWriterController public interface is a mess).
  • Move template related preferences (such as --pretty-print and --pretty-print-line-length) to the template itself, perhaps as a leading section <cg:TemplatePreferences></cg:TemplatePreferences>, above the main template itself. IMPLEMENTED IN v0.2.5.5
  • Move settings related preferences (such as --value-empty-string and --value-null) to the settings spreadsheet itself, perhaps as a separate "SettingsPreferences" worksheet.
  • Create an ApplyWhen element to function in a similar way to the applyWhen attribute, but with the following additional features:
    • When a section is not included because the applyWhen condition is not met, have the choice to either remove the section, or just comment it out.
    • Support <cg:ApplyWhen><cg:ElseWhen><cg:Else> type conditional.
  • Support xml based settings file, and provide VS2010 editing to allow settings editing from within the IDE.