]> source.dussan.org Git - jquery.git/commitdiff
Restore optIn behavior for builds
authorTimmy Willison <timmywillisn@gmail.com>
Mon, 9 Sep 2013 02:26:05 +0000 (22:26 -0400)
committerTimmy Willison <timmywillisn@gmail.com>
Mon, 9 Sep 2013 02:26:05 +0000 (22:26 -0400)
build/tasks/build.js

index ffc1243ba3e7b829a419cb82e76ba70dca945596..9f4f429ea9215ca3193913a0291e2031c4979dce 100644 (file)
@@ -23,6 +23,7 @@ module.exports = function( grunt ) {
                                startFile: "src/intro.js",
                                endFile: "src/outro.js"
                        },
+                       rawText: {},
                        onBuildWrite: convert
                };
 
@@ -75,6 +76,7 @@ module.exports = function( grunt ) {
                var flag, index,
                        done = this.async(),
                        flags = this.flags,
+                       optIn = flags[ "*" ],
                        name = this.data.dest,
                        minimum = this.data.minimum,
                        removeWith = this.data.removeWith,
@@ -168,18 +170,15 @@ module.exports = function( grunt ) {
                //  *:*:-css           all except css and dependents (explicit > implicit)
                //  *:*:-css:+effects  same (excludes effects because explicit include is trumped by explicit exclude of dependency)
                //  *:+effects         none except effects and its dependencies (explicit include trumps implicit exclude of dependency)
+               delete flags[ "*" ];
                for ( flag in flags ) {
-                       if ( flag !== "*" ) {
-                               excluder( flag );
-                       }
+                       excluder( flag );
                }
 
                // Handle Sizzle exclusion
                // Replace with selector-native
                if ( (index = excluded.indexOf( "sizzle" )) > -1 ) {
-                       config.rawText = {
-                               selector: "define(['./selector-native']);"
-                       };
+                       config.rawText.selector = "define(['./selector-native']);";
                        excluded.splice( index, 1 );
                }
 
@@ -213,6 +212,12 @@ module.exports = function( grunt ) {
                        grunt.file.write( name, compiled );
                };
 
+               // Turn off opt-in if necessary
+               if ( !optIn ) {
+                       // Overwrite the default inclusions with the explicit ones provided
+                       config.rawText.jquery = "define([" + (included.length ? included.join(",") : "") + "]);";
+               }
+
                // Trace dependencies and concatenate files
                requirejs.optimize( config, function( response ) {
                        grunt.verbose.writeln( response );