From 72e61925179aac67df234c46b94fcac829142897 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Scott=20Gonz=C3=A1lez?= Date: Tue, 10 Jun 2014 15:32:25 -0400 Subject: [PATCH] Build: Move all external libraries to external directory Closes gh-1593 Conflicts: Gruntfile.js test/index.html --- .jscsrc | 2 +- .jshintignore | 3 +- Gruntfile.js | 26 ++++++++-------- build/ensure-sizzle.js | 2 +- build/tasks/build.js | 2 +- external/qunit/MIT-LICENSE.txt | 21 +++++++++++++ {test/libs => external}/qunit/qunit.css | 0 {test/libs => external}/qunit/qunit.js | 0 {test/libs => external/requirejs}/require.js | 0 external/sinon/LICENSE.txt | 27 +++++++++++++++++ {test/libs => external}/sinon/fake_timers.js | 0 {src => external}/sizzle/dist/sizzle.js | 0 {src => external}/sizzle/dist/sizzle.min.js | 0 {src => external}/sizzle/dist/sizzle.min.map | 0 test/index.html | 10 +++---- test/jquery.js | 2 +- test/libs/sinon/timers_ie.js | 31 -------------------- 17 files changed, 71 insertions(+), 55 deletions(-) create mode 100644 external/qunit/MIT-LICENSE.txt rename {test/libs => external}/qunit/qunit.css (100%) rename {test/libs => external}/qunit/qunit.js (100%) rename {test/libs => external/requirejs}/require.js (100%) create mode 100644 external/sinon/LICENSE.txt rename {test/libs => external}/sinon/fake_timers.js (100%) rename {src => external}/sizzle/dist/sizzle.js (100%) rename {src => external}/sizzle/dist/sizzle.min.js (100%) rename {src => external}/sizzle/dist/sizzle.min.map (100%) delete mode 100644 test/libs/sinon/timers_ie.js diff --git a/.jscsrc b/.jscsrc index 27f14e6e0..fa91a9d9e 100644 --- a/.jscsrc +++ b/.jscsrc @@ -1,5 +1,5 @@ { "preset": "jquery", - "excludeFiles": [ "src/intro.js", "src/outro.js", "src/sizzle/**/*" ] + "excludeFiles": [ "external", "src/intro.js", "src/outro.js" ] } diff --git a/.jshintignore b/.jshintignore index 71bddb82c..19f1b9c52 100644 --- a/.jshintignore +++ b/.jshintignore @@ -1,7 +1,6 @@ +external src/intro.js src/outro.js -src/sizzle/**/* -test/libs/**/* test/data/jquery-1.9.1.js test/data/badcall.js test/data/badjson.js diff --git a/Gruntfile.js b/Gruntfile.js index 0b62b84d1..ee92e6fee 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -45,23 +45,23 @@ module.exports = function( grunt ) { } }, bowercopy: { - options: { - clean: true - }, - src: { - files: { - "src/sizzle/dist": "sizzle/dist" - } - }, - tests: { + all: { options: { - destPrefix: "test/libs" + clean: true, + destPrefix: "external" }, files: { - "qunit": "qunit/qunit", - "require.js": "requirejs/require.js", + "sizzle/dist": "sizzle/dist", + + "qunit/qunit.js": "qunit/qunit/qunit.js", + "qunit/qunit.css": "qunit/qunit/qunit.css", + "qunit/MIT-LICENSE.txt": "qunit/MIT-LICENSE.txt", + + "requirejs/require.js": "requirejs/require.js", + "sinon/fake_timers.js": "sinon/lib/sinon/util/fake_timers.js", - "sinon/timers_ie.js": "sinon/lib/sinon/util/timers_ie.js" + "sinon/timers_ie.js": "sinon/lib/sinon/util/timers_ie.js", + "sinon/LICENSE.txt": "sinon/LICENSE" } } }, diff --git a/build/ensure-sizzle.js b/build/ensure-sizzle.js index 01a128efb..3686e697c 100644 --- a/build/ensure-sizzle.js +++ b/build/ensure-sizzle.js @@ -1,6 +1,6 @@ var fs = require( "fs" ), bower = require( "grunt-bowercopy/node_modules/bower" ), - sizzleLoc = __dirname + "/../src/sizzle/dist/sizzle.js", + sizzleLoc = __dirname + "/../external/sizzle/dist/sizzle.js", rversion = /Engine v(\d+\.\d+\.\d+(?:-\w+)?)/; /** diff --git a/build/tasks/build.js b/build/tasks/build.js index 4d5176657..02c6597e3 100644 --- a/build/tasks/build.js +++ b/build/tasks/build.js @@ -26,7 +26,7 @@ module.exports = function( grunt ) { endFile: "src/outro.js" }, paths: { - sizzle: "sizzle/dist/sizzle" + sizzle: "../external/sizzle/dist/sizzle" }, rawText: {}, onBuildWrite: convert diff --git a/external/qunit/MIT-LICENSE.txt b/external/qunit/MIT-LICENSE.txt new file mode 100644 index 000000000..957f26d3e --- /dev/null +++ b/external/qunit/MIT-LICENSE.txt @@ -0,0 +1,21 @@ +Copyright 2013 jQuery Foundation and other contributors +http://jquery.com/ + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/test/libs/qunit/qunit.css b/external/qunit/qunit.css similarity index 100% rename from test/libs/qunit/qunit.css rename to external/qunit/qunit.css diff --git a/test/libs/qunit/qunit.js b/external/qunit/qunit.js similarity index 100% rename from test/libs/qunit/qunit.js rename to external/qunit/qunit.js diff --git a/test/libs/require.js b/external/requirejs/require.js similarity index 100% rename from test/libs/require.js rename to external/requirejs/require.js diff --git a/external/sinon/LICENSE.txt b/external/sinon/LICENSE.txt new file mode 100644 index 000000000..892a26a66 --- /dev/null +++ b/external/sinon/LICENSE.txt @@ -0,0 +1,27 @@ +(The BSD License) + +Copyright (c) 2010-2013, Christian Johansen, christian@cjohansen.no +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of Christian Johansen nor the names of his contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/test/libs/sinon/fake_timers.js b/external/sinon/fake_timers.js similarity index 100% rename from test/libs/sinon/fake_timers.js rename to external/sinon/fake_timers.js diff --git a/src/sizzle/dist/sizzle.js b/external/sizzle/dist/sizzle.js similarity index 100% rename from src/sizzle/dist/sizzle.js rename to external/sizzle/dist/sizzle.js diff --git a/src/sizzle/dist/sizzle.min.js b/external/sizzle/dist/sizzle.min.js similarity index 100% rename from src/sizzle/dist/sizzle.min.js rename to external/sizzle/dist/sizzle.min.js diff --git a/src/sizzle/dist/sizzle.min.map b/external/sizzle/dist/sizzle.min.map similarity index 100% rename from src/sizzle/dist/sizzle.min.map rename to external/sizzle/dist/sizzle.min.map diff --git a/test/index.html b/test/index.html index bfadff7f8..d6386cbad 100644 --- a/test/index.html +++ b/test/index.html @@ -4,7 +4,7 @@ jQuery Test Suite - + @@ -14,10 +14,10 @@ --> - - - - + + + + diff --git a/test/jquery.js b/test/jquery.js index 6d75d804f..2c1f15d6a 100644 --- a/test/jquery.js +++ b/test/jquery.js @@ -32,7 +32,7 @@ require.config({ baseUrl: path, paths: { - sizzle: "src/sizzle/dist/sizzle" + sizzle: "external/sizzle/dist/sizzle" } }); src = "src/jquery"; diff --git a/test/libs/sinon/timers_ie.js b/test/libs/sinon/timers_ie.js deleted file mode 100644 index fe8f399c6..000000000 --- a/test/libs/sinon/timers_ie.js +++ /dev/null @@ -1,31 +0,0 @@ -/*global sinon, setTimeout, setInterval, clearTimeout, clearInterval, Date*/ -/** - * Helps IE run the fake timers. By defining global functions, IE allows - * them to be overwritten at a later point. If these are not defined like - * this, overwriting them will result in anything from an exception to browser - * crash. - * - * If you don't require fake timers to work in IE, don't include this file. - * - * @author Christian Johansen (christian@cjohansen.no) - * @license BSD - * - * Copyright (c) 2010-2013 Christian Johansen - */ -function setTimeout() {} -function clearTimeout() {} -function setImmediate() {} -function clearImmediate() {} -function setInterval() {} -function clearInterval() {} -function Date() {} - -// Reassign the original functions. Now their writable attribute -// should be true. Hackish, I know, but it works. -setTimeout = sinon.timers.setTimeout; -clearTimeout = sinon.timers.clearTimeout; -setImmediate = sinon.timers.setImmediate; -clearImmediate = sinon.timers.clearImmediate; -setInterval = sinon.timers.setInterval; -clearInterval = sinon.timers.clearInterval; -Date = sinon.timers.Date; -- 2.39.5