wagn/wagn — pull request #173 by xithan (2014-05-17 12:05:50+00:00)
Title: the wagn/decko asset pipeline (first step)

### introduces Machine and MachineInput cards

Machine and MachineInput are modules intended to be included in card sets.

a machine card
- collects all items cards of all levels in a pointer card +*machine input (if the machine card is not a pointer the input card contains just the machine card itself)
- creates a file with the content of all input cards (if a input card is a machine input card the method machine_input is used to get its content otherwise the raw view)
- saves the file in a file card +*machine output

a machine input card
- provides input especially formatted for machine cards (e.g. a scss card provides compressed css)
- when changed it runs all machines that uses this input card, i.e. it updates the corresponding "+*machine output" files

Example from scss.rb (which is both machine and manchine input card):

include Machine
include MachineInput

store_machine_output :filetype => "css"

machine_input do
compressed_css format._render_raw
end

TODO: fix old style migrations (they use machine input and output cards before they are defined)