]> source.dussan.org Git - jquery-ui.git/commitdiff
Build: Fixing the sizer script to handle this many files
authorCorey Frang <gnarf@gnarf.net>
Mon, 17 Oct 2011 20:32:01 +0000 (15:32 -0500)
committerCorey Frang <gnarf@gnarf.net>
Mon, 17 Oct 2011 20:32:37 +0000 (15:32 -0500)
(cherry picked from commit f6c12849f1018f928c933ce63e4aceea6290a191)

build/build/sizer.js

index 3c3e4c42806260bd9d857e4c0f2ae5e531680117..a4afb44af608cf87a7f179fbb3766917e5b510df 100644 (file)
@@ -2,7 +2,8 @@ var fs = require( "fs" ),
        stdin = process.openStdin(),
        rsize = /(\d+).*?(jquery\S+)/g,
        oldsizes = {},
-       sizes = {};
+       sizes = {},
+       input = "";
 
 try {
        oldsizes = JSON.parse( fs.readFileSync(  __dirname + "/.sizecache.json", "utf8" ) );
@@ -10,26 +11,27 @@ try {
        oldsizes = {};
 };
 
+function lpad( str, len, chr ) {
+       return ( Array(len+1).join( chr || " ") + str ).substr( -len );
+}
+
 stdin.on( "data" , function( chunk ) {
+       input += chunk;
+});
+stdin.on( "end", function() {
        var match;
 
-       while ( match = rsize.exec( chunk ) ) {
+       while ( match = rsize.exec( input ) ) {
                sizes[ match[2] ] = parseInt( match[1], 10 );
        }
-});
-
-function lpad( str, len, chr ) {
-       return ( Array(len+1).join( chr || " ") + str ).substr( -len );
-}
 
-stdin.on( "end", function() {
        fs.writeFileSync( __dirname + "/.sizecache.json", JSON.stringify( sizes, true ), "utf8" );
        for ( var key in sizes ) {
                var diff = oldsizes[ key ] && ( sizes[ key ] - oldsizes[ key ] );
                if ( diff > 0 ) {
                        diff = "+" + diff;
                }
-               console.log( "%s %s %s", lpad( sizes[ key ], 8 ), lpad( diff ? "(" + diff + ")" : "(-)", 8 ), key );
+               console.log( "%s %s %s", lpad( sizes[ key ], 8 ), lpad( oldsizes[key] ? "(" + diff + ")" : "(-)", 8 ), key );
        }
        process.exit();
 });
\ No newline at end of file