First steps towards a feature which allows you to dynamically generate pages based on data in the site (e.g. a separate page listing each tag that has been used on a blog)...
First stab at actually generating pages listing all pages matching a tag... The only problem is that the created pages shouldn't be showing up in the other generated list pages...
First steps towards a much cleaner middleware powered architecture...
Added a markdown expanding middleware.
Removing haggerston object from template data provider
Changing templates to work with the new cleaner pages array / filtering process...
Moving the filters into a nicer location on disc
Waiting for the async task of the middleware to complete before rendering the pages...
Making the async task work as expected (the callback needs to send null as the error)
Grunt task options is now passed into middleware functions instead of the haggerston object
async.waterfall so that we can return the edit pages list (so you can add and remove pages easily in the middleware...
Clearer (?!) way of bypassing the waterfall issue...
Middleware doesn't need to be aware of the error path - cleaner API for middleware creators...
Haggerston task is now async, and render function calls done() when finished
Implemented a "generate" middleware which can generate a set of pages passing in a list of other pages matching a given field (e.g. to make tag or category list pages on a blog)
Making sure all properties are copied across to generated pages but that calculated properties aren't overridden...
Added json loading middleware to recusively merge referenced json files
Allowing middleware to be passed in to the grunt task and using our suite as default...
Merge branch 'feature/middleware'