TODO list
Truss — like any project — always presents a path for improvement. This is a dynamically generated list of TODO items, each with context.
# #### Invoke hook `trussDoxSourceList`.
sourceFiles = _.flatten pkgman.invokeFlat 'trussDoxSourceList'
TODO: Worth to generalize this?
positive = sourceFiles.filter (f) -> f.charCodeAt(0) isnt '!'.charCodeAt(0)
negative = sourceFiles.filter (f) -> f.charCodeAt(0) is '!'.charCodeAt(0)
negative = negative.map (f) -> f.substr 1
the above found in packages/truss-dox/dynamic/index.coffee:25
lineStream
processorsPromise = sourceStreamsPromise.then (streams) ->
TODO: This should be dynamic/hook-based
SourcesToMarkdown = require './processor/sources/to-markdown'
DoxPageTodos = require './processor/page/todos'
the above found in packages/truss-dox/dynamic/index.coffee:47
promises = for hook in hooks
do (hook) -> new Promise (resolve, reject) ->
TODO: Dynamic hook locations.
fs.readFile "packages/truss-dox/docs/hook/#{
hook
}.md", (error, output) ->
the above found in packages/truss-dox/dynamic/processor/page/hooks.coffee:34
_ = require 'lodash'
DoxPage = require '.'
TODO: I think this should be done centrally, using an interface on each processor
module.exports = class DoxPageMkdocs extends DoxPage
# Build the source hierarchy.
the above found in packages/truss-dox/dynamic/processor/page/mkdocs.coffee:11
output: ->
outputs = for todo in @todos()
TODO: Dynamic...
highlight = if @stream.file.match /\.(?:lit)?coffee$/
'coffeescript'
else if @stream.file.match /\.js$/
the above found in packages/truss-dox/dynamic/processor/page/todos.coffee:46
# Resolve the module name.
_resolveModuleName = (name, parentFilename) ->
TODO: NODE_PATH
implementation.
# Strip `/index` from the end, if necessary.
checkModuleName = (name) ->
return name if _requires[name]?
the above found in packages/truss-frontend/client/require.coffee:7