Shifter - Blazingly Fast YUI Builder
The purpose of this project is to replace YUI's use of our old ant Builder.
We have out grown our old builder, so it was time to build a new one!
npm -g install shifter
$ shifter -h blazingly fast builds with firstname.lastname@example.org pass no arguments and shifter will build the module from the current directory -v/--version show version -h/--help show this stuff -m/--modules <module> limit the modules to build (array: -m foo -m bar) --lint [preferred|defaults|strict] (preferred is the default) lint mode: https://github.com/yui/yui-lint --strict add "use strict" to module wrapper --walk Walk the current directory and shift all builds. (cd yui3/src && shifter --walk) -m/--modules also supported here for filtering --watch Watch the current module and rebuild on file change (if meta file, a loader build will launch) --quiet to mute stdout from sub build
Shifter will parse your current
*.properties files and convert them into a
build.json file that
it can process. It only imports the relevant settings required to build the module.
It does not import module meta-data
Instead, Shifter parses the meta-data from the modules
meta/*.json files and uses that instead.
So you don't have to declare your meta-data in more than one place now.
Shifter can watch your module for changes and build for you. It will only watch files in the
./meta directories. If a file is changed, it will rebuild the current
module. If a meta file is changes,
Loader will also be built (requires latest code).
Shifter is designed to work side by side with our current builder (for now) so you don't have to
switch over to using it fully if it doesn't work properly for you. Just don't delete your
files until you are sure that Shifter builds your module properly. If it doesn't, file a ticket and
we'll get it fixed up ASAP.
Shifter will read a
build.json file if it exists, if one doesn't and it finds a
it will generate the
build.json from them. So if you have issues with the build, just delete the
file and have Shifter regenerate it after your issue is fixed.
Shifter is built using GearJS