2.8 KiB
2.8 KiB
TODO
Here will be kept all of the various todos for this project, organized by release.
0.4.2
Text
component for simply rendering Text objects. Can be used as such:
<Text path='/SomeText.md' />
<Text name='SomeText.md' />
<Text text={text} />
0.4.1
- Update groowt to 0.1.2.
Future
Add
- Plan out plugin system such that we can create custom providers of texts, data, etc.
- Add
Watchable
interface/trait back; an abstraction over FS watching and other sources (such as a database, etc.). - Explore
apply(Plugin)
in buildScripts.
Fix
v0.2.0
Add
- Write manual.
- Remove
lib
module. - Add a way for CLI to choose a build to do, or multiple builds, defaulting to 'default' if it exists.
- Still must work on 'default'-ing.
- Write lots of tests for buildscript dsl, etc.
- Explore
base
in buildScript dsl.- Get rid of
allBuilds
concept, and replace it with composable/concat-able builds. In the dsl we could have a notion ofabstractBuild
which can be 'extended' (i.e., on the left side of a concat operation) but not actually run (since it doesn't have a name). OutputDir
should be concat-able, such that the left is the base for the right.OutputDirFunctions.concat
should be concat-able as well, such that both areBiFunction<OutputDir, Build, OutputDir>
, and the output of the left is the input of the right.- Make the delegates as dumb as possible; no more
getResult
methods; make different classes/object handle concat'ing and getting results.
- Get rid of
- Provide a way to override
ssgBuilds
variables from the cli.
Fix
- Update CHANGELOG to reflect the gsp-dsl changes.
taskTypes
gone, use class name instead- introduction of
models
- Change most instances of
Closure<Void>
toClosure<?>
to help with IDE expectations. - Fix auto-imports in build script so we don't need to import things.
- Re-introduce input/output concept to tasks, if possible
Finished
v0.2.0
- Investigate imports, including static, in scripts
- Does not work; must use binding
- Get rid of
taskTypes
DSL, replace with static import of task types to scripts- Done via the binding directly
- Plan out
data
models DSL- Done via
models
dsl
- Done via
v0.1.0
- Add some kind of
outputs
map to dsl that can be used to retrieve various info about another output of the current build. For example:// while in a special page 'special.gsp' we could get the 'output' info for a text 'blog/post.md' def post = outputs['blog/post.md'] assert post instanceof Output // or something assert post.path == 'blog/post.md' assert post.targetPath = 'blog/post.html' // as well as some other information, perhaps such as the Type, extension, *etc.*