Skip to content

Commit d7b5557

Browse files
committed
Merge pull request #9827 from rwjblue/remove-handlebars-packages
Remove Handlebars packages from build pipeline.
2 parents 31667d0 + 0fd774a commit d7b5557

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+177
-564
lines changed

Brocfile.js

Lines changed: 4 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ if (process.env.DEFEATUREIFY === 'true') {
4343
disableDefeatureify = env === 'development';
4444
}
4545

46-
var generateTemplateCompiler = require('./lib/broccoli-ember-template-compiler-generator');
4746
var inlineTemplatePrecompiler = require('./lib/broccoli-ember-inline-template-precompiler');
4847

4948
/*
@@ -265,7 +264,6 @@ s3TestRunner = replace(s3TestRunner, {
265264
{ match: new RegExp('../ember', 'g'), replacement: './ember' },
266265
{ match: new RegExp('../qunit/qunit.css', 'g'), replacement: 'http://code.jquery.com/qunit/qunit-1.15.0.css' },
267266
{ match: new RegExp('../qunit/qunit.js', 'g'), replacement: 'http://code.jquery.com/qunit/qunit-1.15.0.js' },
268-
{ match: new RegExp('../handlebars/handlebars.js', 'g'), replacement: 'http://builds.handlebarsjs.com.s3.amazonaws.com/handlebars-v2.0.0.js' },
269267
{ match: new RegExp('../jquery/jquery.js', 'g'), replacement: 'http://code.jquery.com/jquery-1.11.1.js'}
270268
]
271269
});
@@ -287,12 +285,6 @@ var bowerFiles = [
287285
files: ['jquery.js'],
288286
srcDir: '/',
289287
destDir: '/jquery'
290-
}),
291-
292-
pickFiles('bower_components/handlebars', {
293-
files: ['handlebars.js'],
294-
srcDir: '/',
295-
destDir: '/handlebars'
296288
})
297289
];
298290

@@ -319,11 +311,6 @@ var iifeStop = writeFile('iife-stop', '})();');
319311
'ember-metal': {trees: null, vendorRequirements: ['backburner']}
320312
```
321313
*/
322-
var handlebarsConfig = {
323-
libPath: 'node_modules/handlebars/dist',
324-
mainFile: 'handlebars.amd.js'
325-
};
326-
327314
var vendoredPackages = {
328315
'loader': vendoredPackage('loader'),
329316
'rsvp': vendoredEs6Package('rsvp'),
@@ -337,16 +324,8 @@ var vendoredPackages = {
337324
'simple-html-tokenizer': htmlbarsPackage('simple-html-tokenizer'),
338325
'htmlbars-test-helpers': htmlbarsPackage('htmlbars-test-helpers', { singleFile: true } ),
339326
'htmlbars-util': htmlbarsPackage('htmlbars-util'),
340-
'handlebars': vendoredPackage('handlebars', handlebarsConfig)
341327
};
342328

343-
var emberHandlebarsCompiler = pickFiles('packages/ember-handlebars-compiler/lib', {
344-
files: ['main.js'],
345-
srcDir: '/',
346-
destDir: '/'
347-
});
348-
var templateCompilerTree = generateTemplateCompiler(emberHandlebarsCompiler, { srcFile: 'main.js'});
349-
350329
var packages = require('./lib/packages');
351330

352331
function es6Package(packageName) {
@@ -440,24 +419,11 @@ function es6Package(packageName) {
440419

441420
if (pkg.hasTemplates) {
442421
/*
443-
Add templateCompiler to libTree. This is done to ensure that the templates
444-
are precompiled with the local version of `ember-handlebars-compiler` (NOT
445-
the `npm` version), and includes any changes. Specifically, so that you
446-
can work on the template compiler and still have functional builds.
447-
*/
448-
libTree = mergeTrees([libTree, templateCompilerTree]);
449-
450-
/*
451-
Utilizing the templateCompiler to compile inline handlebars templates to
452-
handlebar template functions. This is done so that only Handlebars runtime
453-
is required instead of all of Handlebars.
422+
Utilizing the templateCompiler to compile inline templates to
423+
template functions. This is done so that HTMLBars compiler is
424+
not required for running Ember.
454425
*/
455426
libTree = inlineTemplatePrecompiler(libTree);
456-
457-
// Remove templateCompiler from libTree as it is no longer needed.
458-
libTree = removeFile(libTree, {
459-
srcFile: 'ember-template-compiler.js'
460-
});
461427
}
462428

463429
var testTree = pickFiles('packages/' + packageName + '/tests', {
@@ -786,7 +752,7 @@ var prodCompiledTests = concatES6(testTrees, {
786752
}
787753
});
788754

789-
var distTrees = [templateCompilerTree, compiledSource, compiledTests, testingCompiledSource, testConfig, bowerFiles];
755+
var distTrees = [compiledSource, compiledTests, testingCompiledSource, testConfig, bowerFiles];
790756

791757
// If you are not running in dev add Production and Minify build to distTrees.
792758
// This ensures development build speed is not affected by unnecessary

lib/broccoli-ember-inline-template-precompiler.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ EmberTemplatePrecompiler.prototype.extensions = ['hbs'];
1919
EmberTemplatePrecompiler.prototype.targetExtension = 'js';
2020

2121
EmberTemplatePrecompiler.prototype.processString = function(content, relativePath) {
22-
var handlebarsCompilerPath = path.join(this._srcDir, this.handlebarsCompilerPath);
23-
var handlebarsCompiler = require(path.resolve(handlebarsCompilerPath));
24-
2522
var template;
2623
if (relativePath.match(/handlebars/)) {
24+
var handlebarsCompilerPath = path.join(this._srcDir, this.handlebarsCompilerPath);
25+
var handlebarsCompiler = require(path.resolve(handlebarsCompilerPath));
26+
2727
template = 'import EmberHandlebars from "ember-handlebars-compiler";\n';
2828
template += "export default EmberHandlebars.template(" + handlebarsCompiler.precompile(content, false) + ");";
2929
} else if (relativePath.match(/htmlbars/)) {

lib/packages.js

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,9 @@ module.exports = {
77
'ember-views': {trees: null, requirements: ['ember-runtime', 'ember-metal-views']},
88
'ember-extension-support': {trees: null, requirements: ['ember-application']},
99
'ember-testing': {trees: null, requirements: ['ember-application', 'ember-routing'], developmentOnly: true},
10-
'ember-handlebars-compiler': {trees: null, requirements: ['ember-views']},
11-
'ember-handlebars': {trees: null, requirements: ['ember-views', 'ember-handlebars-compiler'], hasTemplates: true},
12-
'ember-htmlbars': {trees: null, vendorRequirements: ['handlebars', 'simple-html-tokenizer', 'htmlbars-util', 'htmlbars-compiler', 'htmlbars-syntax', 'htmlbars-test-helpers'], requirements: ['ember-metal-views'], hasTemplates: true},
10+
'ember-htmlbars': {trees: null, vendorRequirements: ['simple-html-tokenizer', 'htmlbars-util', 'htmlbars-compiler', 'htmlbars-syntax', 'htmlbars-test-helpers'], requirements: ['ember-metal-views'], hasTemplates: true},
1311
'ember-routing': {trees: null, vendorRequirements: ['router', 'route-recognizer'],
1412
requirements: ['ember-runtime', 'ember-views']},
15-
'ember-routing-handlebars': {trees: null, requirements: ['ember-routing', 'ember-handlebars']},
1613
'ember-routing-htmlbars': {trees: null, requirements: ['ember-routing', 'ember-htmlbars']},
1714
'ember-routing-views': {trees: null, requirements: ['ember-routing']},
1815
'ember-application': {trees: null, vendorRequirements: ['dag-map'], requirements: ['ember-routing']},

package.json

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,7 @@
4040
"express": "^4.5.0",
4141
"git-repo-version": "0.0.1",
4242
"glob": "~3.2.8",
43-
"handlebars": "^2.0",
44-
"htmlbars": "0.4.0",
45-
"ncp": "~0.5.1",
46-
"rimraf": "~2.2.8",
43+
"htmlbars": "0.4.1",
4744
"rsvp": "~3.0.6"
4845
}
4946
}

packages/ember-application/lib/system/application.js

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ import ContainerDebugAdapter from "ember-extension-support/container_debug_adapt
4141
import {
4242
K
4343
} from 'ember-metal/core';
44-
import EmberHandlebars from "ember-handlebars-compiler";
4544

4645
function props(obj) {
4746
var properties = [];
@@ -277,7 +276,6 @@ var Application = Namespace.extend(DeferredMixin, {
277276

278277
if (!librariesRegistered) {
279278
librariesRegistered = true;
280-
Ember.libraries.registerCoreLibrary('Handlebars' + (EmberHandlebars.compile ? '' : '-runtime'), EmberHandlebars.VERSION);
281279
Ember.libraries.registerCoreLibrary('jQuery', jQuery().jquery);
282280
}
283281

packages/ember-application/lib/system/resolver.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import {
1313
} from 'ember-runtime/system/string';
1414
import EmberObject from 'ember-runtime/system/object';
1515
import Namespace from 'ember-runtime/system/namespace';
16-
import EmberHandlebars from 'ember-handlebars';
16+
import helpers from 'ember-htmlbars/helpers';
1717

1818
export var Resolver = EmberObject.extend({
1919
/**
@@ -350,7 +350,7 @@ export default EmberObject.extend({
350350
@method resolveHelper
351351
*/
352352
resolveHelper: function(parsedName) {
353-
return this.resolveOther(parsedName) || EmberHandlebars.helpers[parsedName.fullNameWithoutType];
353+
return this.resolveOther(parsedName) || helpers[parsedName.fullNameWithoutType];
354354
},
355355
/**
356356
Look up the specified object (from parsedName) on the appropriate

packages/ember-application/tests/system/application_test.js

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,14 @@ import Router from "ember-routing/system/router";
88
import View from "ember-views/views/view";
99
import Controller from "ember-runtime/controllers/controller";
1010
import NoneLocation from "ember-routing/location/none_location";
11-
import EmberHandlebars from "ember-handlebars";
1211
import EmberObject from "ember-runtime/system/object";
1312
import jQuery from "ember-views/system/jquery";
13+
import compile from "ember-htmlbars/system/compile";
1414

1515
var trim = jQuery.trim;
1616

1717
var app, application, originalLookup, originalDebug;
1818

19-
var compile = EmberHandlebars.compile;
20-
21-
2219
QUnit.module("Ember.Application", {
2320
setup: function() {
2421
originalLookup = Ember.lookup;
@@ -229,10 +226,9 @@ test('enable log of libraries with an ENV var', function() {
229226
});
230227
});
231228

232-
equal(messages[1], "Ember : " + Ember.VERSION);
233-
equal(messages[2], "Handlebars : " + EmberHandlebars.VERSION);
234-
equal(messages[3], "jQuery : " + jQuery().jquery);
235-
equal(messages[4], "my-lib : " + "2.0.0a");
229+
equal(messages[1], "Ember : " + Ember.VERSION);
230+
equal(messages[2], "jQuery : " + jQuery().jquery);
231+
equal(messages[3], "my-lib : " + "2.0.0a");
236232

237233
Ember.libraries.deRegister("my-lib");
238234
Ember.LOG_VERSION = false;

packages/ember-application/tests/system/dependency_injection/default_resolver_test.js

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,11 @@ import run from "ember-metal/run_loop";
33
import Logger from "ember-metal/logger";
44
import Controller from "ember-runtime/controllers/controller";
55
import EmberObject from "ember-runtime/system/object";
6-
import EmberHandlebars from "ember-handlebars";
76
import Namespace from "ember-runtime/system/namespace";
87
import Application from "ember-application/system/application";
9-
10-
var compile, registerHelper;
11-
compile = EmberHandlebars.compile;
12-
registerHelper = function(name, fn) {
13-
EmberHandlebars.registerHelper(name, fn);
14-
};
8+
import {
9+
registerHelper
10+
} from "ember-htmlbars/helpers";
1511

1612
var locator, application, originalLookup, originalLoggerInfo;
1713

packages/ember-htmlbars/lib/compat.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import EmberHandlebars from "ember-handlebars";
1+
import Ember from "ember-metal/core";
22
import helpers from "ember-htmlbars/helpers";
33
import template from "ember-htmlbars/system/template";
44
import compile from "ember-htmlbars/system/compile";
@@ -12,7 +12,9 @@ import compatRegisterBoundHelper from "ember-htmlbars/compat/register-bound-help
1212
import compatPrecompile from "ember-htmlbars/compat/precompile";
1313
import makeViewHelper from "ember-htmlbars/system/make-view-helper";
1414

15+
var EmberHandlebars;
1516
if (Ember.FEATURES.isEnabled('ember-htmlbars')) {
17+
EmberHandlebars = Ember.Handlebars = { };
1618
EmberHandlebars.helpers = helpers;
1719
EmberHandlebars.helper = compatHandlebarsHelper;
1820
EmberHandlebars.registerHelper = compatRegisterHelper;

packages/ember-htmlbars/lib/helpers/collection.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@
44
*/
55

66
import Ember from "ember-metal/core"; // Ember.assert, Ember.deprecate
7-
import EmberHandlebars from "ember-handlebars-compiler";
8-
97
import { IS_BINDING } from "ember-metal/mixin";
108
import { fmt } from "ember-runtime/system/string";
119
import { get } from "ember-metal/property_get";
@@ -219,7 +217,7 @@ export function collectionHelper(params, hash, options, env) {
219217
}
220218

221219
var emptyViewClass;
222-
if (inverse && inverse !== EmberHandlebars.VM.noop) {
220+
if (inverse) {
223221
emptyViewClass = get(collectionPrototype, 'emptyViewClass');
224222
emptyViewClass = emptyViewClass.extend({
225223
template: inverse,

0 commit comments

Comments
 (0)