diff --git a/bower.json b/bower.json index 5c9ae17c6..fbbc43c03 100644 --- a/bower.json +++ b/bower.json @@ -1,17 +1,6 @@ { - "name": "system.js", - "version": "0.12.1", - "main": "dist/system.js", - "dependencies": { - "es6-module-loader": "~0.12.0", - "traceur-runtime": "~0.0.82" - }, + "name": "systemjs", "devDependencies": { "qunit": "~1.12.0" - }, - "ignore": [ - "test", - "Makefile", - "package.json" - ] + } } diff --git a/lib/extension-es6.js b/lib/extension-es6.js index d739e98c2..8e1dacd10 100644 --- a/lib/extension-es6.js +++ b/lib/extension-es6.js @@ -5,26 +5,26 @@ function es6(loader) { loader._extensions.push(es6); - var parser, parserName, parserModule, parserRuntimeModule, parserRuntimeGlobal; + var transpiler, transpilerName, transpilerModule, transpilerRuntimeModule, transpilerRuntimeGlobal; var isBrowser = typeof window != 'undefined'; - function setParser(name) { - parser = name; - parserName = this.parser == '6to5' ? 'to5' : parser; - parserModule = '@' + parser; - parserRuntimeModule = '@' + parser + '-runtime'; - parserRuntimeGlobal = (parserName == 'to5' ? parserName : '$' + parserName) + 'Runtime'; + function setTranspiler(name) { + transpiler = name; + transpilerName = this.transpiler == '6to5' ? 'to5' : transpiler; + transpilerModule = '@' + transpiler; + transpilerRuntimeModule = '@' + transpiler + '-runtime'; + transpilerRuntimeGlobal = (transpilerName == 'to5' ? transpilerName : '$' + transpilerName) + 'Runtime'; - // auto-detection of paths to loader parser files + // auto-detection of paths to loader transpiler files if (typeof $__curScript != 'undefined') { - if (!loader.paths[parserModule]) - loader.paths[parserModule] = $__curScript.getAttribute('data-' + loader.parser + '-src') + if (!loader.paths[transpilerModule]) + loader.paths[transpilerModule] = $__curScript.getAttribute('data-' + loader.transpiler + '-src') || ($__curScript.src ? $__curScript.src.substr(0, $__curScript.src.lastIndexOf('/') + 1) : loader.baseURL + (loader.baseURL.lastIndexOf('/') == loader.baseURL.length - 1 ? '' : '/') - ) + loader.parser + '.js'; - if (!loader.paths[parserRuntimeModule]) - loader.paths[parserRuntimeModule] = $__curScript.getAttribute('data-' + loader.parser + '-runtime-src') || loader.paths[parserModule].replace(/\.js$/, '-runtime.js'); + ) + loader.transpiler + '.js'; + if (!loader.paths[transpilerRuntimeModule]) + loader.paths[transpilerRuntimeModule] = $__curScript.getAttribute('data-' + loader.transpiler + '-runtime-src') || loader.paths[transpilerModule].replace(/\.js$/, '-runtime.js'); } } @@ -33,31 +33,30 @@ function es6(loader) { var loaderTranslate = loader.translate; loader.translate = function(load) { - // update parser info if necessary - if (this.parser !== parser) - setParser(this.parser); + // update transpiler info if necessary + if (this.transpiler !== transpiler) + setTranspiler(this.transpiler); var loader = this; - if (load.name == parserModule || load.name == parserRuntimeModule) + if (load.name == transpilerModule || load.name == transpilerRuntimeModule) return loaderTranslate.call(loader, load); // detect ES6 else if (load.metadata.format == 'es6' || !load.metadata.format && load.source.match(es6RegEx)) { load.metadata.format = 'es6'; - // dynamically load parser for ES6 if necessary - if (isBrowser && !loader.global[parserName]) { - return loader['import'](parserModule).then(function() { + // dynamically load transpiler for ES6 if necessary + if (isBrowser && !loader.global[transpilerName]) + return loader['import'](transpilerModule).then(function() { return loaderTranslate.call(loader, load); }); - } } - // dynamically load parser runtime if necessary - if (isBrowser && !loader.global[parserRuntimeGlobal] && load.source.indexOf(parserRuntimeGlobal) != -1) { + // dynamically load transpiler runtime if necessary + if (isBrowser && !loader.global[transpilerRuntimeGlobal] && load.source.indexOf(transpilerRuntimeGlobal) != -1) { var System = $__global.System; - return loader['import'](parserRuntimeModule).then(function() { + return loader['import'](transpilerRuntimeModule).then(function() { // traceur runtme annihilates System global $__global.System = System; return loaderTranslate.call(loader, load); @@ -67,11 +66,11 @@ function es6(loader) { return loaderTranslate.call(loader, load); } - // always load parser as a global + // always load transpiler as a global var loaderInstantiate = loader.instantiate; loader.instantiate = function(load) { var loader = this; - if (isBrowser && (load.name == parserModule || load.name == parserRuntimeModule)) { + if (isBrowser && (load.name == transpilerModule || load.name == transpilerRuntimeModule)) { loader.__exec(load); return { deps: [], diff --git a/package.json b/package.json index daa4d5adb..62c059305 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "systemjs", - "version": "0.12.1", + "version": "0.12.0", "description": "System loader extension for flexible AMD & CommonJS support", "main": "dist/system.src.js", "repository": { @@ -10,10 +10,10 @@ "author": "Guy Bedford", "license": "MIT", "dependencies": { - "es6-module-loader": "~0.12.0" + "es6-module-loader": "~0.13.0" }, "devDependencies": { - "6to5": "^3.0.0", + "6to5-core": "~3.3.2", "qunit": "^0.6.2", "uglify-js": "~2.4.13" }, diff --git a/test/test-6to5.html b/test/test-6to5.html index df586a936..7aa329145 100644 --- a/test/test-6to5.html +++ b/test/test-6to5.html @@ -15,9 +15,9 @@

- + diff --git a/test/test.js b/test/test.js index 4eaf008bd..95677ce77 100644 --- a/test/test.js +++ b/test/test.js @@ -654,14 +654,14 @@ asyncTest('Relative dyanamic loading', function() { asyncTest('ES6 Circular', function() { System['import']('tests/es6-circular1').then(function(m) { ok(m.q == 3, 'Binding not allocated'); - if (System.parser != '6to5') ok(m.r == 3, 'Binding not updated'); + if (System.transpiler != '6to5') ok(m.r == 3, 'Binding not updated'); start(); }, err); }); asyncTest('AMD & CJS circular, ES6 Circular', function() { System['import']('tests/all-circular1').then(function(m) { - if (System.parser != '6to5') ok(m.q == 4); + if (System.transpiler != '6to5') ok(m.q == 4); ok(m.o.checkObj() == 'changed'); start(); }, err);