{"_id":"ubs","_rev":"45-7d94f9600cd93ab36497a62a585c20ed","name":"ubs","description":"Unified Build System","dist-tags":{"latest":"0.7.1"},"versions":{"0.2.0":{"name":"ubs","version":"0.2.0","description":"Unified Build System","main":"./lib/ubs","scripts":{"build":"coffee -o lib -c src","test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"b5cd22ed87845b7604dbc4819e266390f3f8437d","_id":"ubs@0.2.0","_shasum":"ae86daaab9c75baba28709ffde4d2e3caa5113d9","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"ae86daaab9c75baba28709ffde4d2e3caa5113d9","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.2.0.tgz","integrity":"sha512-o4QVHw8lw7qwMlVewXqZ3sfRHM43CyS8xJ6ylsjFuYvfmKpoTSDGpk2cWRMTELaZiLYr/7SW8/BhGmDH8/6BIg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE0JXHgR5/7P84Sktp5Ul8+qK32gZrriClipoTLhOGzkAiAOmS4PLkLeRLeZOOpl3Qlu81f1cS79i3yFEL8yZ1HIow=="}]}},"0.2.1":{"name":"ubs","version":"0.2.1","description":"Unified Build System","main":"./lib/ubs","scripts":{"build":"coffee -o lib -c src","test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","coffee-script":"^1.8.0","mocha-sprinkles":"^2.0.1"},"dependencies":{"js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"b5cd22ed87845b7604dbc4819e266390f3f8437d","_id":"ubs@0.2.1","_shasum":"4ca4cd4f4a99f35a9db120df00e33d1242aec163","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"4ca4cd4f4a99f35a9db120df00e33d1242aec163","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.2.1.tgz","integrity":"sha512-RvUg0YRMk/7DSELPpVmGTQa3RXRXDF2f25bgL/xXcigOV0SIdDZq5rYAJ0ZzAdVqxbRhhc+vfaP/xf5JetzkAw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCOz0yyS7GA2Jj1ehZuzTrC+oeDbM37PvRX26oM1ouWfAIhALmJGqNdsdqP9Z/ovIbL0DAYRksOF97dljfYP/PLu0hL"}]}},"0.2.2":{"name":"ubs","version":"0.2.2","description":"Unified Build System","main":"./lib/ubs","scripts":{"build":"coffee -o lib -c src","test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"b5cd22ed87845b7604dbc4819e266390f3f8437d","_id":"ubs@0.2.2","_shasum":"34fae10832aad3f817887961d657456d8db199ba","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"34fae10832aad3f817887961d657456d8db199ba","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.2.2.tgz","integrity":"sha512-Wzrmf6Ex/osU61szAe39qjsg1lHV0MOOBilBRFy+gNI8VUK6YT2Kbjzkqp0jvMf02PQ8dJs5Qb1kicKoRLY85A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCe6zwhSvvIjh69zNW+BYwOi1pgiTK2s8+99kZg6SLMpgIhAK/oOnuL85KlXSTweylEPTufSgBnsWy/p8gmMlHwWKoF"}]}},"0.2.3":{"name":"ubs","version":"0.2.3","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"78a3e7a8d8271bead3d53ab0ef2526e457ba7b9e","_id":"ubs@0.2.3","_shasum":"f882d8f799544f8db9fc3db72f5c3210ae9af13f","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"f882d8f799544f8db9fc3db72f5c3210ae9af13f","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.2.3.tgz","integrity":"sha512-11IlZcE/JbT7LLSRjf/DkL1847DjY254Djz/qXX+cDLiiXbgIV2RkJNsHzChtAnlo7L+kTov7y2+3nbZmpi7Og==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC2SbAGhVQ+lJU+Flc2n/iE/wHbAUHzMl7gx7qhDL3aTAiEA7aY8234hoTaExAqXbcK8ruPiNZrt5EjQoBK8hBRs1Dc="}]}},"0.2.4":{"name":"ubs","version":"0.2.4","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"78a3e7a8d8271bead3d53ab0ef2526e457ba7b9e","_id":"ubs@0.2.4","_shasum":"d67de131f6a474e33e7d72e731432e71b7a2e4c6","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"d67de131f6a474e33e7d72e731432e71b7a2e4c6","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.2.4.tgz","integrity":"sha512-XXpRSAhZxInRf+3z7SW7lyLN3pkB1PBkfIkfYqqj5vpqTkKN3mvgSeQEwXexF1M6CZAF4jSLdigcu1u4g0NO2w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIESjaIgd2PL7+E/kcxsGVsZIFmC4pcbWjKF9cXKMt8blAiEA3ZYG/oF5PtMikVw8p1Kq87EvK/Yhh51cH6HQ6eb1z2o="}]}},"0.2.5":{"name":"ubs","version":"0.2.5","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"78a3e7a8d8271bead3d53ab0ef2526e457ba7b9e","_id":"ubs@0.2.5","_shasum":"72f1b717255de7722162004d4a683a965147c5e4","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"72f1b717255de7722162004d4a683a965147c5e4","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.2.5.tgz","integrity":"sha512-oN6vYdcBHU7iNUth9OGJ0SjfhvfCOnDBUDgO2V7RUpcQNfandI9V0vHnSctVVg5EAkgy/RcsbKoUTFadK5OYCQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCPRxqrzKf+AsSrmSdQmDvP1v8gPYJVAyN6C450giWdewIgOgmxnBqrav3r7RJfdECqMMZK5glnBscCttaLy3t75HE="}]}},"0.2.5-0":{"name":"ubs","version":"0.2.5-0","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"d84609a1a309336682721a433b882d80d14c710c","_id":"ubs@0.2.5-0","_shasum":"b171abd3cd552553eeab253eba241923934d7858","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"b171abd3cd552553eeab253eba241923934d7858","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.2.5-0.tgz","integrity":"sha512-Q3UgXCpjwD99pw1kuPGgfyyMajWTvfErdi9TlawoJx4SEC17FbSPCmc0EM8Av0/+0lCHXseN5NqCHncu/a8sIg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID+J4pEfHCOS2B8puLeSvggpYtKUIoTelou4MOR0mdYMAiEA7aeUtUvnW4BhxufyTHQKbW+lbbWyY3UiSs5/4fveyyE="}]}},"0.2.6":{"name":"ubs","version":"0.2.6","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"78e480d1460344c3db295e05f7208088c9b9aa5e","_id":"ubs@0.2.6","_shasum":"038e58f74fccbfb14083dde73b471d89ea92ac0d","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"038e58f74fccbfb14083dde73b471d89ea92ac0d","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.2.6.tgz","integrity":"sha512-XnRTxlBBAHq3OO4DHAJEnH8wahZOmbaS95avrxVCSUV+DwjQexdgWOQL6F3bxdVMuCkyhNbhpGovj8Zxbp5H8Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDpn06pvVdbQqxdXPIZ+EfSWf34QTY+EBaanh1RGertbAIhAOUYo7nRtMmXolG1H0twFh/P1PNJtP6+nHlIIEacR3mL"}]}},"0.2.7":{"name":"ubs","version":"0.2.7","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"00bc808613dfde4d9790da9557a433d0242712a4","_id":"ubs@0.2.7","_shasum":"f22ecd572d0b29e858bb0d030f7092b167f19b3c","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"f22ecd572d0b29e858bb0d030f7092b167f19b3c","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.2.7.tgz","integrity":"sha512-8ZTTzk7h5IPO+w3E2lXRPfKA3bI5sJP/UhOXpO+gjJD845EAObjGVrhR5ppEd1pbxxwhjaFcViV/qgrLnVVl7Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEXLiS1wdQjt8UWoM0wnQuWAxVPU3egfZyDAERdllClmAiEA3sPHMcBDOVS4w2zBGDoysjgMojxI1DvPSFJcWnTk+PQ="}]}},"0.2.8":{"name":"ubs","version":"0.2.8","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"140a40c996e2252b851f53133fdf273dd5d4f119","_id":"ubs@0.2.8","_shasum":"17b261fe8ed4bae27a13c57b43aa4c924e66ca10","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"17b261fe8ed4bae27a13c57b43aa4c924e66ca10","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.2.8.tgz","integrity":"sha512-vRkesi2zPm1//AD0DFpfBC4rUqEs4102nL/ivaqD2FJ3nl8GcuRRTCEFvBT9vg7lFPRKboouPS4/HFWzFJWycA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCfh5zRRbYmqwpOEdlzozu0M95D9ianLNpXRx9tbpET9AIgTJU0b3PsZ6cfJJZsozGgeqQsQIKzVGCoWDzwsYvENnQ="}]}},"0.2.9":{"name":"ubs","version":"0.2.9","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"eba2d22d83b5eb62b535da6f9da6aca46ca1ea09","_id":"ubs@0.2.9","_shasum":"dcf319775a574e9be1f7e9c0607335f2a2c008ed","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"dcf319775a574e9be1f7e9c0607335f2a2c008ed","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.2.9.tgz","integrity":"sha512-AiSlyHqGklmBSO62sio705w1ygJlMQIpLfsNWK2wkdSM19/sWvJWInXWRcpU/T+M4dHNmCTg1xWRc8KgAZ3bJQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDxxMZFZu9KWkovWaf1kGiSZXdzOFh1ka0o82OwLk7UzAIhAK+8J3cUi/8net6IO2ddedzx9zYT8ybMFzWQsWQ1iori"}]}},"0.3.0":{"name":"ubs","version":"0.3.0","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"1e9a89b27c7012ead9d3d1f924a093f070e563e4","_id":"ubs@0.3.0","_shasum":"4983a306be383d72a4815e9ee09d645fa1bbc146","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"4983a306be383d72a4815e9ee09d645fa1bbc146","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.3.0.tgz","integrity":"sha512-Hh6QbMAOs33P7g1W+rCnW7ep5D0azwCWXMNZLXtxlOY+HyzOsWPAMGLlJVYngvCn7GkubLPRsqhlFt6RNt+Pog==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCsTYpzXWXbQEJRALO64qU6ZZ5lRT1XGXID53g3UC6iQwIhANgvaH+FUhTfizQnY4FlnxWjmJG0A5QqKBBS/evzDFQG"}]}},"0.3.1":{"name":"ubs","version":"0.3.1","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"6aa3dc884d3f6a837bdf738803d31bdc4bba06a9","_id":"ubs@0.3.1","_shasum":"6a38be25200597cdf3724f4cb0b08afb3277dc98","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"6a38be25200597cdf3724f4cb0b08afb3277dc98","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.3.1.tgz","integrity":"sha512-zYutJIP22YErsuNjIfw1i13qbpqLG7SNrLpiZOdEeqwGjvZs2tC4aORDWrXdxbDnAYUu3Z7giSy0aOfdhcK5tg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG/7ukMLY1BrsMldI2N3Xtwruvaq4zyVgni0MqJEBFc0AiB8dcVsaqTvcpS2iqUMXhHoM4XwVO3j9Ty1TsaTAZN9pw=="}]}},"0.4.0":{"name":"ubs","version":"0.4.0","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","system","coffee","server","tool","make","scaffold","async","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"licenses":[{"type":"Apache License 2.0","url":"https://github.com/oorabona/ubs/blob/master/LICENSE"}],"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"d6923382ac689d5cceab27a6516a6654e263b441","_id":"ubs@0.4.0","_shasum":"8931bdf537fc78b018f3b75a996201d9d84e0ea0","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"8931bdf537fc78b018f3b75a996201d9d84e0ea0","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.4.0.tgz","integrity":"sha512-pllSKF+OHtCXstHprEzdQPtEUEU4iT/QxU+bKhbvM4O/dhJlf0T1WVIHmVV997aNlslaG5KLn171u3gUatX2xQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC18zvzFanT7qW7/I2ADL2qwrhpjOSFhR5V6XotphrbaAiAgUsH17it41J5hRQwm07lqrRzE5v2gu3+fAdsNBtkvSw=="}]}},"0.4.1":{"name":"ubs","version":"0.4.1","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test","prepublish":"coffee -b -c -o lib/ src/ && cp src/plugins/*.yaml lib/plugins/"},"repository":{"type":"git","url":"git+https://github.com/oorabona/ubs.git"},"keywords":["build","javascript","unified","system","coffee","server","tool","make","scaffold","async","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","request":"^2.65.0","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"de5cc9762a8029481b56ec3734442e68f3561419","_id":"ubs@0.4.1","_shasum":"2de0606cc3a173a53526d6af50fd07d78e4d7530","_from":".","_npmVersion":"3.3.8","_nodeVersion":"0.10.37","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"2de0606cc3a173a53526d6af50fd07d78e4d7530","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.4.1.tgz","integrity":"sha512-3NgqY+VO3lnLk/V11s8bg73TQXF5TSJuLnO/REqd1X467cftN0SvnAMvT9Xzg8aoIO/kp+Rrw05xTB+FZwrs3w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDdILFIgaCOs9E1X2VT8Y5yCncFBiCpCklDM/QmLmJIhAiAad0EYklOG/ufDcdYC0vj9jebjlf6TBRhISuicSQprdg=="}]}},"0.4.2":{"name":"ubs","version":"0.4.2","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test","prepublish":"coffee -b -c -o lib/ src/ && cp src/plugins/*.yaml lib/plugins/"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","javascript","unified","system","coffee","server","tool","make","scaffold","async","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","request":"^2.65.0","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"3e8a5ffc1c5b997b749b800a9593107931a78d08","_id":"ubs@0.4.2","_shasum":"c2d79a3e8e375b58709fd974c8da706187540a89","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"c2d79a3e8e375b58709fd974c8da706187540a89","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.4.2.tgz","integrity":"sha512-llzl0rzJ3QGb+vKzLM45QbKqrJtdAJnTzPRLBDfmF9LWVj5zbHZoISzvc5w7EO6qMl/Bx8XcfpW03HB5PFdkyg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBhee9EOyV0cVBHKkJM+tc2CNIeafGq+DxQNVJXcMJA3AiEA1dEybvEh6mI/1ZG+aJAaDBu4193CYKQY13w9K6iLzyg="}]}},"0.5.0":{"name":"ubs","version":"0.5.0","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test","prepublish":"coffee -b -c -o lib/ src/ && cp src/plugins/*.yaml lib/plugins/"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","javascript","unified","system","coffee","server","tool","make","scaffold","async","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","request":"^2.65.0","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2","underscore":"^1.7.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"d548e7e4bb60ce6fa08d1ddd1183bf9fd1d61ef7","_id":"ubs@0.5.0","_shasum":"afeaecefcdb8ec0e193df70614e44efd4f7468c4","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"afeaecefcdb8ec0e193df70614e44efd4f7468c4","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.5.0.tgz","integrity":"sha512-YsLlwHoENEBEF9mLs03R+rH0OzONt4jXDz8OiYpmxwS1LxJz9IAEy44X9uNfZjR+PXHLJXBn7hTbsM0WDfuTbw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHRBk5BYMN9Rekg+hLiTUTP2tW+cH6EMwjh0SfpjtWX4AiEAhrTR+l7NyXExM3AlZPWUqX1B8YOk7jong8ofKZ2i9Lg="}]}},"0.6.0":{"name":"ubs","version":"0.6.0","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test","prepublish":"coffee -b -c -o lib/ src/ && cp src/plugins/*.yaml lib/plugins/"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","javascript","unified","system","coffee","server","tool","make","scaffold","async","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","request":"^2.65.0","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"ed0986d72ef19f66a024a98d6208287b9076c2e7","_id":"ubs@0.6.0","_shasum":"8d4434601f7ad0b105dad41b06a21c7ea6347e44","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"8d4434601f7ad0b105dad41b06a21c7ea6347e44","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.6.0.tgz","integrity":"sha512-BWI0SuLw6ArzcyTXJXdnCwMDAba3kDQaKv0QIRZf6Kjn/wc+CZ003nPX10z5n2tC/Zyx/7u5lMXuZFB5y+QJgg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFvw2Kz+BwD9dKBpf0aR/76mi10t/Z2IkJFFyl/4bOJeAiEAtwNhJP0ganwxdX2Shj5VaNm7qCqUeesu+tlx5Q4iu0U="}]}},"0.6.1":{"name":"ubs","version":"0.6.1","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test","prepublish":"coffee -b -c -o lib/ src/ && cp src/plugins/*.yaml lib/plugins/"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","javascript","unified","system","coffee","server","tool","make","scaffold","async","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"^0.3.1","mocha":"^2.0.1","mocha-sprinkles":"^2.0.1"},"dependencies":{"coffee-script":"^1.8.0","js-yaml":"^3.2.3","nopt":"^3.0.1","q":"^1.1.2","request":"^2.65.0","sandbox-runner":"^0.1.1","shelljs":"^0.3.0","sprintf":"^0.1.5","strftime":"^0.8.2"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"ccd45ef1838f53101d5be931c248546d10306e5e","_id":"ubs@0.6.1","_shasum":"1446cee4e04bef4b49f6e2ee061f24b009b96a61","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"1446cee4e04bef4b49f6e2ee061f24b009b96a61","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.6.1.tgz","integrity":"sha512-vCAs+eNsVBlvFT++3lSy22VtTee9e8lZNidpX6I4VKoysaF5QVxYgPes4/X9SUpC9XRmqal6uTkxB5V15xZ4nw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZYsuFLkSPCUhIIQTQEbEjqWdrd2t8jOhS/ZXu4NYtqwIhAPgQXNlH36Sq/MmuS+FlD+9eBf9TLBqzdZOjveMrrT+n"}]}},"0.6.2":{"name":"ubs","version":"0.6.2","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test","prepublish":"coffee -b -c -o lib/ src/ && cp src/plugins/*.yaml lib/plugins/"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","javascript","unified","system","coffee","server","tool","make","scaffold","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"coffee-script":"latest","expect.js":"latest","mocha":"latest","mocha-sprinkles":"latest"},"dependencies":{"js-yaml":"latest","nopt":"latest","q":"latest","request":"latest","sandbox-runner":"latest","shelljs":"latest","sprintf":"latest"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"8946d028db0b75410fdb7e0cbbd01ff0f5fa3ce0","_id":"ubs@0.6.2","_shasum":"a2bc03ba56fd6c3b946f26ca85831336c9d0f4d4","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"a2bc03ba56fd6c3b946f26ca85831336c9d0f4d4","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.6.2.tgz","integrity":"sha512-32UerznP4ys8lK/I7n8W44ca/z96ROsdo+wM95frdufDuCi2H9d1yApTPALydwDHUxgRgCIXfdaL5J52WezCKg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2nkEagclTeD3mNx4AUtbG03hAUXq43DYLohmrwqQpGQIgYQ1Zs30y7feG0KsaiSYbtn3NIHBHu2mmXp2ycvmzkDo="}]}},"0.6.3":{"name":"ubs","version":"0.6.3","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test","prepublish":"coffee -b -c -o lib/ src/ && cp src/plugins/*.yaml lib/plugins/"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","javascript","unified","system","coffee","server","tool","make","scaffold","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"coffee-script":"^1.7.0","expect.js":"latest","mocha":"latest","mocha-sprinkles":"latest"},"dependencies":{"js-yaml":"latest","nopt":"latest","q":"latest","request":"latest","sandbox-runner":"latest","shelljs":"latest","sprintf":"latest"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"cbb0dfb6ba280b99a84113231e38e974eecccf53","_id":"ubs@0.6.3","_shasum":"9fd32fc870aa0b72a1949343f3b35d88dcb2b5be","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"9fd32fc870aa0b72a1949343f3b35d88dcb2b5be","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.6.3.tgz","integrity":"sha512-dK3OzGHgDGUOnEtKxp19idPB/tuLI4TX61tBQuATmiv7hJvfVi5yV4jVZCR8OaImAE+J9SIzxqYir5RffgzgKw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDT4W41qA4texAFrkKmpDDzgC3ZR3C4NpTjl+XG3eTbpwIhAKjSq670tLYpeVb1dhG/NRutr/D3nDA7nL+zm9IPLUDy"}]}},"0.6.5":{"name":"ubs","version":"0.6.5","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test","prepublish":"coffee -b -c -o lib/ src/ && cp src/plugins/*.yaml lib/plugins/"},"repository":{"type":"git","url":"https://github.com/oorabona/ubs"},"keywords":["build","javascript","unified","system","coffee","tool","make","scaffold","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"coffee-script":"^1.7.0","expect.js":"latest","mocha":"latest","mocha-sprinkles":"latest"},"dependencies":{"js-yaml":"latest","nopt":"latest","q":"latest","request":"latest","sandbox-runner":"latest","shelljs":"^0.5.3","sprintf":"latest"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"ec9eafcfd323e671b542cdbbe518ed97b2e50292","_id":"ubs@0.6.5","_shasum":"868721c68211a07f76b69da09fbe162998639d85","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"868721c68211a07f76b69da09fbe162998639d85","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.6.5.tgz","integrity":"sha512-4jlkhAE1aqfwWTMad8MsVyTfDq0eDoHhg8lWfuvLIP8MyFG+2hiI6ITIK1aWzvRlJAOyGKvgIPKICYh7s0ckHQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDoAKe10Evq4dSZ1ktKB8dnkzy7g2BOgxix58GRHOUbdQIgHOiApMkAo1DvB20q8BbfcMwkRxES1lXIeS613nW0Xak="}]}},"0.6.6":{"name":"ubs","version":"0.6.6","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test","prepublish":"coffee -b -c -o lib/ src/ && cp src/plugins/*.yaml lib/plugins/"},"repository":{"type":"git","url":"git+https://github.com/oorabona/ubs.git"},"keywords":["build","javascript","unified","system","coffee","tool","make","scaffold","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"latest","mocha":"latest","mocha-sprinkles":"latest"},"dependencies":{"coffee-script":"^1.7.0","js-yaml":"latest","nopt":"latest","q":"latest","request":"latest","sandbox-runner":"latest","shelljs":"^0.5.3","sprintf":"latest"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"299330d63072a2b5a42e45a6ccc75801e3b55769","_id":"ubs@0.6.6","_shasum":"4aa97e063cc004384c823f1cc56309502fb45c84","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.1.1","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"4aa97e063cc004384c823f1cc56309502fb45c84","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.6.6.tgz","integrity":"sha512-Hzssx4bvzDxvpSEQXZ3fyLPRTwn/kRbeqUyG6pgEnXAYLKI/Gsmug9qDaKeAMstLGMUh/H7SawPKF28F0sFjug==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCw2bQ+u+xg8CuPPhbnlrQQFOqT18B0wcs3G8Ie0Nz8rgIhAOy52IIwlOJSJmBn6SCbxVZ+j9gT4F/lstLzk32VnUnp"}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/ubs-0.6.6.tgz_1465608556691_0.31914148572832346"}},"0.6.7":{"name":"ubs","version":"0.6.7","description":"Unified Build System","main":"./lib/ubs","scripts":{"test":"./bin/ubs test","prepublish":"coffee -b -c -o lib/ src/ && cp src/plugins/*.yaml lib/plugins/"},"repository":{"type":"git","url":"git+https://github.com/oorabona/ubs.git"},"keywords":["build","javascript","unified","system","coffee","tool","make","scaffold","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"latest","mocha":"latest","mocha-sprinkles":"latest"},"dependencies":{"coffee-script":"^1.7.0","js-yaml":"latest","nopt":"latest","q":"latest","request":"latest","sandbox-runner":"latest","shelljs":"latest","sprintf":"latest"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"f253384d0a04c28398e592b2bfd3a7fa0eb9d2d2","_id":"ubs@0.6.7","_shasum":"fa559cd82be104b3e81bcef1b4974626d5218ba9","_from":".","_npmVersion":"3.9.3","_nodeVersion":"6.2.1","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"fa559cd82be104b3e81bcef1b4974626d5218ba9","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.6.7.tgz","integrity":"sha512-gd49dDRTePNlKz2V7kKJgEq37Mm9c49NTsGjRF3jL7FuDvLxgSniVOPQODaO9YY0r3ksvnTZRBp5BTGN6wreSA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH/RXOrh+jSbJgRJPvrzesWiOvLGR1cKqvh1Bf/Hcm9tAiEA1ucawXGvY+DaI9gbmXFNJdrXYHyPfggU55m8sm029s0="}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/ubs-0.6.7.tgz_1466248377198_0.004185804165899754"}},"0.6.8":{"name":"ubs","version":"0.6.8","description":"Unified Build System","main":"./lib/ubs","scripts":{"prepublish":"coffee -b -c -o lib/ src/ && ./bin/ubs install_plugins"},"repository":{"type":"git","url":"git+https://github.com/oorabona/ubs.git"},"keywords":["build","javascript","unified","system","coffee","tool","make","scaffold","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"latest","mocha":"latest","mocha-sprinkles":"latest"},"dependencies":{"coffee-script":"^1.7.0","js-yaml":"latest","nopt":"latest","q":"latest","request":"latest","sandbox-runner":"latest","shelljs":"latest","sprintf":"latest"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"8bc4fe4304f4fee285fba6882ee388763d40a43b","_id":"ubs@0.6.8","_shasum":"6d813335240cb57ea4235845a2fd8c87120c548c","_from":".","_npmVersion":"3.9.3","_nodeVersion":"6.2.1","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"6d813335240cb57ea4235845a2fd8c87120c548c","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.6.8.tgz","integrity":"sha512-KUrccdIh76COfb6KpOczQAyGLGT1IGHHIL8xCaSOgeg/LX05lpTl8CxKOTF8IAH5VRjP2z7IsSvVJ86a8PCLqQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEia/IS7Y1dBewEJn5TOMtTm35fGNxyIyXgQG+Y+Dcp/AiEA2YPEQ5PbJuFerNzFejfAmvT8+kzlS+xwGvui9yS+Aik="}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/ubs-0.6.8.tgz_1466358341817_0.6290439194999635"}},"0.7.0":{"name":"ubs","version":"0.7.0","description":"Unified Build System","main":"./lib/ubs","scripts":{"prepublish":"coffee -b -c -o lib/ src/"},"repository":{"type":"git","url":"git+https://github.com/oorabona/ubs.git"},"keywords":["build","javascript","unified","system","coffee","tool","make","scaffold","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"latest","mocha":"latest","mocha-sprinkles":"latest"},"dependencies":{"coffee-script":"^1.7.0","js-yaml":"latest","nopt":"latest","q":"latest","request":"latest","sandbox-runner":"latest","shelljs":"latest","sprintf":"latest","ubs-plugins":"^1.0.0"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"8d2a65885d7c809fe624bb01eb6456e59f950122","_id":"ubs@0.7.0","_shasum":"53da929e5803b1549d6004a39a5db1a64108d7ca","_from":".","_npmVersion":"3.9.3","_nodeVersion":"6.2.1","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"53da929e5803b1549d6004a39a5db1a64108d7ca","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.7.0.tgz","integrity":"sha512-lh/i6MyMOlBXyX5+g8jjhvPWrgTZCOA69Y+jQLXMXZwAcNFoiCdM0IePW8TKcl81rGCYeWlBHAle+c9FbH8HJQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDs9xAvdO9ysmY1wdud07QTzVN3IqecUFmnWAdfS71PqgIhAKZnmW+KdLstBndNPbfqiF6ETsUoaFVg7AyMVRWEWDrw"}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/ubs-0.7.0.tgz_1466464386033_0.6847794542554766"}},"0.7.1":{"name":"ubs","version":"0.7.1","description":"Unified Build System","main":"./lib/ubs","scripts":{"prepublish":"coffee -b -c -o lib/ src/"},"repository":{"type":"git","url":"git+https://github.com/oorabona/ubs.git"},"keywords":["build","javascript","unified","system","coffee","tool","make","scaffold","task","cli","yaml","plugin"],"author":{"name":"Olivier ORABONA"},"license":"MIT","bugs":{"url":"https://github.com/oorabona/ubs/issues"},"homepage":"https://github.com/oorabona/ubs","devDependencies":{"expect.js":"latest","mocha":"latest","mocha-sprinkles":"latest"},"dependencies":{"coffee-script":"^1.7.0","js-yaml":"latest","nopt":"latest","q":"latest","request":"latest","sandbox-runner":"latest","shelljs":"latest","sprintf":"latest","ubs-plugins":"latest"},"files":["build.yml","lib","bin/ubs","test"],"bin":{"ubs":"./bin/ubs"},"preferGlobal":"true","engines":{"node":">=0.10.1"},"gitHead":"f168c49b60e67faba36ff5ffc9c89d6338c3ba49","_id":"ubs@0.7.1","_shasum":"1065d5324c48d6af7e3d21cab502f35ccbfb5914","_from":".","_npmVersion":"3.9.3","_nodeVersion":"6.2.1","_npmUser":{"name":"oorabona","email":"olivier.orabona@gmail.com"},"maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"dist":{"shasum":"1065d5324c48d6af7e3d21cab502f35ccbfb5914","tarball":"https://registry.npmjs.org/ubs/-/ubs-0.7.1.tgz","integrity":"sha512-fDBcw7HTV/GeVTx73ilgOHJVuwRr8GvkjYT6BB3jmEpFlSoqnBPYU9cuk0ENAgCRCIsEz0vAX7i/LfWUFV5++g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQClue6Zn4FqYi8+EiFuvXGdtUZNPaXymEjzIi2VvQdFfQIgQFibjbqViNbK8Got9maXyExG3lFScN/kvkc8zvNsEKA="}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/ubs-0.7.1.tgz_1466465267347_0.05238340701907873"}}},"readme":"# Unified Build System\n\n[![NPM Version](https://img.shields.io/npm/v/ubs.svg)](https://npmjs.org/package/ubs)\n[![NPM Downloads](https://img.shields.io/npm/dm/ubs.svg)](https://npmjs.org/package/ubs)\n[![Build Status](https://travis-ci.org/oorabona/ubs.png)](https://travis-ci.org/oorabona/ubs)\n[![Dependency Status](https://david-dm.org/oorabona/ubs.svg)](https://david-dm.org/oorabona/ubs)\n[![devDependency Status](https://david-dm.org/oorabona/ubs/dev-status.svg)](https://david-dm.org/oorabona/ubs#info=devDependencies)\n\n> 'Write as little code as you can'\n\nThis package is another Javascript builder like [Grunt](http://gruntjs.com), [Cake](http://www.coffeescript.org) or [Gulp](http://gulpjs.com) but with YAML like [Travis CI](http://travis-ci.org) `.travis.yml` containing (enhanced) single line `Makefile`-like instructions.\n\nAlso, it was intended to be as simple as possible to call from `npm run` so that you can map `npm` script names to `ubs` counterparts. Hence the _Unified_.\n\n## How it works\n\nThere are three kind of items you can find:\n- __init__: load plugins, holds global config etc.\n- __settings__: contains variables (which can be overridden) used by plugins, or your build process, at runtime.\n- __tasks__: a target like `install`, `test` and all others...\n\nYou need a `build.yml` in your __current working directory__ and that's it.\n\n```shell\n$ ubs\n```\n\nBy default, __ubs__ will look for a target named 'install'.\nBut you can select your targets:\n\n```shell\n$ ubs clean test\n```\n\nTargets will be run in sequence and depending tasks will be automatically added.\n\nYou can change `settings` from the commandline. E.g.:\n\n```shell\n$ ubs test mocha.display='html'\n```\n\nWill change the display output when calling `mocha`, see `mocha` plugin for details.\n\nYou can use _dot notation_ to select a setting and this works for arrays too. E.g:\n\n```shell\n$ ubs clean.path[1]=foo clean\n```\n\nWill change the second element of the `clean` plugin `path` array of items to clean.\n\nLastly, you can use environment variable `UBS_OPTS` to pass arguments prior to command line arguments.\nI.e:\n\n```shell\n$ UBS_OPTS=\"-v clean.path[1]=bar\" ubs clean.path[1]=foo clean\n```\n\nWill be expanded as:\n\n```shell\n$ ubs -v clean.path[1]=bar clean.path[1]=foo clean\n```\n\nThe final value for `clean.path[1]` will be `foo` not `bar`.\nPrecedence works like the following (from highest to lowest priority):\n- command line\n- environment variable UBS_OPTS\n- build.yml\n- plugin defaults\n- core defaults (if they exist)\n\nFor a complete list of available commands, use `ubs --help`.\n\n> ##Note:\n> At the moment _watch_ is not implemented, see [TODO](#TODO)\n\n## The build.yml\n\nThe build file is all [YAML](http://yaml.org) and follows a pattern close to Makefile.\n\nIt first may contain an `init` part, defining global context.\nE.g. this is where you load [plugins](#plugins).\n\n```yaml\n# The init part is run first. It looks for plugins to load (in order, but order\n# in this example does not really matter).\ninit:\n  plugins:\n    - mocha\n    - packagejson\n    - clean\n    - grab\n```\n\nIn this example, we load all four default plugins so far.\n\nThen, the `settings` section where all you can set/override default values coming from default values used in plugins.\nIn the following example, `mocha` plugin stores/retrieves its own settings from under `mocha` and `clean` plugin has also its own attribute object.\n\n```yaml\n# It is the place to set plugins variables. Plugins can add extra key=value\n# settings, as for Mocha where 'bin' and 'useCoffee'. Mocha options are modified\n# accordingly. The special 'env' can be overridden to add new environment variables.\n# We tell 'clean' package to not remove 'lib' globally but only the core build.\n# This allows plugins to remain intact for next build.\nsettings:\n  clean:\n    path: ['lib/*.js']\n    distclean: ['node_modules']\n  srcPath: 'src'\n  libPath: 'lib'\n  mocha:\n    useCoffee: true\n```\n\nA special kind of setting, __exec__, is used to change behavior of all exec commands.\n\n```yaml\nsettings:\n  exec:\n    win32:\n      shellCmd: 'cmd'\n      shellArgs: \"/c 'start' '\"Unified Build System -- install\"'\"\n    env:\n      CPPFLAGS: \"-fPIC\"\n      CFLAGS: \"-O3\"\n```\n\n> By default, on Windows __shellCmd__ is `cmd.exe` and __shellArgs__ `/c`.\nOtherwise, it's `/bin/sh` and `-c` respectively.\n\nAnd all the rest are targets. By default `ubs` looks for `install`.\n\n```yaml\nprebuild:\n  - npm update\n# You can call shell commands as well. In the build task, %name% and %version% are\n# variables from settings above. They are replaced in place before running command.\nbuild:\n  - echo Building %name version %version ...\n  - '%coffee% -o %libPath% -c %srcPath%/*.coffee'\n# Sometimes you rely on other tasks, so that is the way you call them.\n# Here mocha-test is a rule created by the 'mocha' plugin\ntest:\n  - task: install\n  - task: mocha-test\n# Splitted install and install_plugins because building UBS requires these plugins\n# to be installed first hand. This build.yml needs them in their expected places.\ninstall:\n  - task: install_plugins\n  - task: build\ninstall_plugins:\n  - echo Moving plugins to lib/plugins folder\n  - mkdir -p %libPath%/plugins\n  - cp -f %srcPath%/plugins/* %libPath%/plugins/\n  - echo Installation complete, you can 'cd %libPath%'\n```\n\nEach sequence can either be a command to `exec`ute, this is the default, or an action, like calling a new `task`.\n\n> An empty line (with only a dash and nothing else) ends processing the current target.\n\n### Variable substitution\n\nVariables are defined in the `settings` section of the build file.\nYou can reference them everywhere in your scripts.\n\nFor instance:\n\n```yaml\nsettings:\n  nodes:\n    ips:\n      - '1.2.3.4:5'\n      - '6.7.8.9:10'\ntest:\n  - |-\n    echo %nodes.ips%\n    echo %nodes.ips:q%\n    echo %nodes.ips:dq:cm%\n  - log: Done!\n```\n\nOutputs:\n\n```sh\n1.2.3.4:5 6.7.8.9:10\n'1.2.3.4:5' '6.7.8.9:10'\n\"1.2.3.4:5\", \"6.7.8.9:10\"\nDone!\n```\n\nSo a variable name must be enclosed in `%variable:enclosing:separator%`, where:\n- variable: The variable name in JSON notation (i.e.: it accepts dots and indices)\n- enclosing: after resolution, enclose value (or each value in case of `Array`) with:\n  * `q`: quotes\n  * `dq`: double quotes\n- separator: after resolution and in case of `Array`, use this separator between values:\n  * `cm`: comma separated values\n  * `cln`: colon separated values\n  * `sc`: semi colon separated values\n\n> Note that, if a variable is undefined, invoking it will return the string `undefined`\n\n### Shell commands\n\nBy default all shell commands are run with these parameters for your host platform.\n\n```yaml\nsettings:\n  exec:\n    win32:\n      shellCmd: 'cmd.exe'\n      shellArgs: '/c'\n    linux:\n      shellCmd: '/bin/sh'\n      shellArgs: '-c'\n    darwin:\n      shellCmd: '/bin/sh'\n      shellArgs: '-c'\n    freebsd:\n      shellCmd: '/bin/sh'\n      shellArgs: '-c'\n    sunos:\n      shellCmd: '/bin/sh'\n      shellArgs: '-c'\n```\n\n> Note that `platform`, `shellCmd` and `shellArgs` are `%variables%`\n\nYou might want to tweak them, here is how you do:\n\n```shell\n$ ubs test exec.linux.shellArgs=\"-c -x\"\n```\n\nOr in `build.yml`:\n\n```yaml\nsettings:\n  exec:\n    win32:\n      shellArgs:\n        - /c\n        - start\n    linux:\n      shellArgs:\n        - -c\n        - -x\n```\n\nAlso, some shell commands are hooked up and handled directly by [shelljs](https://github.com/arturadib/shelljs):\n\n- `cat`\n- `cd`\n- `chmod`\n- `cp`\n- `dirs`\n- `exit`\n- `grep`\n- `ls`\n- `mkdir`\n- `mv`\n- `popd`\n- `pushd`\n- `pwd`\n- `rm`\n- `sed`\n- `test`\n\nThis has the advantage of having the same behavior on different platforms (e.g: linux and win32).\n\nSometimes you need to perform a platform specific task.\nFor that, you can prefix your call with `[platform-name]` to `exec`.\n\nIf you want the negative form, you can prefix with a `.`:\n\n```yaml\ntask:\n  - darwin: echo You are running on an Apple machine.\n  - .win32: echo Not running on Windows.\n```\n\n> Think of 'not' for 'dot'.\n\n### Actions\n\nAlong with `task`, you can also use one of the following builtin actions:\n\n```yaml\n- log: notice level %version%\n- log:\n  debug: debug level\n```\n\n```yaml\n- echo $WTF\n- env: WTF=still works!\n- echo $WTF\n```\n\n## Calling different build sequences\n\nSometimes you might want to conditionally run a part of a build. To do so you can spawn `ubs` again.\n\nThat would be a typical use case:\n\n```yaml\nsettings:\n  exec:\n    env:\n      TEST: \"bad\"\ntest:\n  - echo Test is $TEST\n  # If you want to conditionally call another build you may have\n  # to enclose within quotes..\n  # Also, %ubs% variable is automagically set for you!\n  - '[ \"$TEST\" = \"bad\" ] && %ubs% -b path/to/build.yml test2'\n  # The spawned process can also back propagate environment variables\n  - echo Expecting test to be $TEST\ntest2:\n  - env: TEST=\"working!\"\n```\n\nFirst line is plain shell scripting (will be prefixed by `sh -c`). If and only if `$TEST` is equal to `bad` shall we change to `working`. And we do that by spawning ourselves. Most shells set `$_` to refer the executable name you entered in the shell, but if not the case you may use a setting (here `bin`) to make sure the correct command is run.\n\n## Plugins\n\nYou can extend `ubs` functionalities with plugins, and call them with arguments.\nFor instance, if you want to retrieve a file from elsewhere (using [request](https://github.com/request/request)).\n\n```yaml\ninit:\n  plugins:\n    - \"grab\"\nsettings:\n  fileUrl: https://github.com/oorabona/ubs/archive/master.zip\n  grabTmpDir: 'download/'\ntest:\n  - echo Retrieving %fileUrl%\n  - grab: \"%fileUrl% %grabTmpDir%\"\n  - rm %target%\n  - grab:\n      remoteUrl: '%fileUrl%'\n      localTarget: '%targetDir%'\n```\n\nWhich will download the file and store it in `grabTmpDir` .\n\n>Everything in the `build.yml` is holy, so plugins will never alter your settings. On the contrary, they are meant to provide default _workable_ functionality but if needed, everything can be overridden.\nThis also means that if a rule exists in your `build.yml` file that also exists in a plugin, your version will take over the default from plugin.\n\n```yaml\ninit:\n  plugins:\n    - clean\nclean:\n  - echo FUBAR!\n```\n\nIn the above example, overriding `clean` target will short circuit plugins' definition of `clean` target, and therefore you will see the holy _FUBAR!_ message _instead_ of having your project a bit cleaned up.\n\nBasically a plugin can be either a `.coffee` file, a `.js` file or a `.yaml` file.\n\nEach plugin can define these parameters:\n\nType | Use | Return type | If a function, signature\n-----|-----|-------------|-------------------------\nsettings | All your settings belong to here | `String` or `Object` | `settings(currentSettings) {}`\nrules | All tasks/targets to be added to the build file | `String` or `Object` | `rules(settings) {}`\nactions | Add functionality with new prefixes for tasks definitions (steps) | `Promise` | `actions(logging, config, helpers) {}`\n\nThe plugin architecture accepts both `String` and `Object` in return for\nboth `settings` and `rules`.\n\nIf an `Object` is returned it will be merged as-is.\n\nIf a `String` is returned it will be parsed as YAML before merge.\n\n> A single plugin can combine any of the three parameters.\n> These parameters can be defined either _statically_ or you can scope them as functions.\n> __Actions can only be defined as functions !!__ (see below)\n\n### YAML example\n\nFor instance, take this cleaning example. This is what is actually written in the code to achieve this task.\n\n```yaml\n# Adds these new settings and rules\n\nsettings:\n  clean:\n    path: ['lib']\n    distclean: ['node_modules']\nclean:\n  - exec: rm -rf %clean.path%\ndistclean:\n  - task: clean\n  - exec: rm -rf %clean.distclean%\n```\n\nNice, isn't it ?\n\n> Plugins __should__ create their own _attribute_ object so that we keep everything clean.\n> Top level attributes can then be freely used at your convenience.\n\n### CoffeeScript example\n\n```coffee\n@settings =\n  mocha:\n    bin: './node_modules/.bin/mocha'\n    options: ['--colors']\n    display: 'spec'\n    useCoffee: off\n    grep: null\n\n@rules = (settings) ->\n  if settings.mocha.useCoffee is on\n    settings.mocha.options.push \"--compilers coffee:coffee-script/register\"\n  \"\"\"\n  mocha-test:\n  - exec: #{settings.mocha.bin} -R #{settings.mocha.display} #{settings.mocha.options.join(' ')}\n  \"\"\"\n```\n\nThe rule `mocha-test` is semantically equivalent to:\n\n```yaml\n- %mocha.bin% -R %mocha.display% %mocha.options%\n```\n\nBut by writing a script, we ease the process of conditions. This is a simple example but with either  `Coffeescript` or `Javascript` you will be able to have better control over what will be run. Including `require` other modules. Plugins are run within a [sandbox-runner](https://github.com/timnew/sandbox-runner).\n\n> Due to the sandbox nature of the plugin, these parameters (`settings`, `rules`, `actions`) must be set within the `this` context.\n\nAfter parsing, `settings` and `rules` will be evaluated either as a function or as a Plain Old Object.\n\n> __NOTE:__ `rules` will be evaluated right after merging settings so if your plugin\nrelies on some configuration option another plugin defines, you have to make sure you\nordered plugins loading correctly ! (see `init`)\n\n### Require example\n\nThis is an example on how you can set _static_ settings. Static should be understood as _invariable to other settings_.\n\n```coffee\nfs = require 'fs'\npackagejson = JSON.parse fs.readFileSync 'package.json'\n\n@settings =\n  name: packagejson.name\n  version: packagejson.version\n  license: packagejson.license or packagejson.licenses\n```\n\nAs you can see, you can do pretty much anything you want to customize your own build with external tools and libraries.\n\n### Using actions\n\nActions are set like `settings` or `rules` but have slight differences.\n\nAn example to start with:\n\n```coffee\n@actions = (logging, config, helpers) ->\n  grab: (command, settings) ->\n    # Do stuff (see src/plugins/ubs-grab.coffee)\n```\n\nWhen plugin is loaded, if `actions` exists, it must be a function. This function will be called by the plugin manager with two parameters:\n- logging: internal __Logging__ instance\n- config: internal __Config__ instance\n- helpers: internal __Utils__ instance\n\nYou may have more than one `action` defined by a plugin but you cannot redefine an existing action (like `exec` for example).\n\nEach action take two parameters, the `command` is the full line from the build file, with `%...%`, and the `settings`.\nTo process automatically these templates, you need to call from __inside__ your action:\n\n```coffee\ncommand = helpers.parseCommand command, settings\n```\n\n> `parseCommand` accepts string command and array command. It will return its\nresults using the same type.\n\nIf you need special care about how you handle tokenization everytime plugin command is parsed, e.g. variable can be an array, or some exotic type, then a callback is provided.\n\n```coffee\ncommand = helpers.parseCommand command, settings, (settingValue) ->\n  if 'array' is Utils.toType settingValue\n    settingValue.join ' '\n  else settingValue\n```\n\nThis callback can also be used to validate further and `throw Error` if needed.\n\n> `actions` function must return an object. That object will extend existing [Dispatch](https://github.com/oorabona/ubs/tree/master/src/dispatch.coffee) object.\n\n> Actions will be run within the __Dispatch__ context and therefore must comply with the existing [Q Promises](https://github.com/kriskowal/q). So each defined action must return a promise and that promise must be either `resolved` or `rejected`.\n\n## Bugs\n\nDon't see any at the moment :wink: !\n\nFeel free to open a new issue if you find any. Suggestions and PR are always welcome !\n\n## TODO\n\n* Add --watch option\n* Add --report option\n* More and more tests...\n","maintainers":[{"name":"oorabona","email":"olivier.orabona@gmail.com"}],"time":{"modified":"2022-06-28T02:44:25.307Z","created":"2014-12-15T22:05:05.210Z","0.2.0":"2014-12-15T22:05:05.210Z","0.2.1":"2014-12-15T23:02:45.777Z","0.2.2":"2014-12-15T23:17:14.411Z","0.2.3":"2014-12-15T23:29:27.499Z","0.2.4":"2014-12-15T23:47:42.645Z","0.2.5":"2014-12-15T23:49:35.767Z","0.2.5-0":"2014-12-16T03:09:18.951Z","0.2.6":"2014-12-17T07:42:19.964Z","0.2.7":"2014-12-17T08:09:27.087Z","0.2.8":"2014-12-17T11:35:43.549Z","0.2.9":"2014-12-20T00:20:11.289Z","0.3.0":"2014-12-20T18:23:21.126Z","0.3.1":"2014-12-21T02:23:04.869Z","0.4.0":"2014-12-22T02:42:39.583Z","0.4.1":"2015-10-25T17:32:18.781Z","0.4.2":"2015-10-29T03:13:34.869Z","0.5.0":"2015-10-30T01:50:10.298Z","0.6.0":"2015-10-31T16:30:39.146Z","0.6.1":"2015-10-31T17:19:46.613Z","0.6.2":"2015-11-02T11:21:19.595Z","0.6.3":"2015-11-04T01:19:15.405Z","0.6.5":"2015-11-28T18:01:43.095Z","0.6.6":"2016-06-11T01:29:19.409Z","0.6.7":"2016-06-18T11:12:58.473Z","0.6.8":"2016-06-19T17:45:43.073Z","0.7.0":"2016-06-20T23:13:07.388Z","0.7.1":"2016-06-20T23:27:48.825Z"},"homepage":"https://github.com/oorabona/ubs","keywords":["build","javascript","unified","system","coffee","tool","make","scaffold","task","cli","yaml","plugin"],"repository":{"type":"git","url":"git+https://github.com/oorabona/ubs.git"},"author":{"name":"Olivier ORABONA"},"bugs":{"url":"https://github.com/oorabona/ubs/issues"},"readmeFilename":"README.md","users":{"oorabona":true,"omyvinegar":true},"license":"MIT"}