Skip to content

Commit

Permalink
Merge branch 'master' into container
Browse files Browse the repository at this point in the history
  • Loading branch information
artemgurzhii authored Mar 15, 2017
2 parents 56957eb + 0e41fbc commit d0d7420
Show file tree
Hide file tree
Showing 212 changed files with 1,763 additions and 1,166 deletions.
34 changes: 0 additions & 34 deletions .npmignore

This file was deleted.

49 changes: 39 additions & 10 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,51 @@
# Ember Changelog

### 2.11.0-beta.4 (December 14, 2016)
### 2.12.0 (March 14, 2017)

- [#14685](https://github.com/emberjs/ember.js/pull/14685) [BUGFIX] Fix `this.$()` returning `undefined` in `willDestroyElement`.
- [#14717](https://github.com/emberjs/ember.js/pull/14717) [BUGFIX] Fix an issue with block params named `attrs`.
- [#15000](https://github.com/emberjs/ember.js/pull/15000) / [#15002](https://github.com/emberjs/ember.js/pull/15002) / [#15006](https://github.com/emberjs/ember.js/pull/15006) / [#15008](https://github.com/emberjs/ember.js/pull/15008) / [#15009](https://github.com/emberjs/ember.js/pull/15009) / [#15011](https://github.com/emberjs/ember.js/pull/15011) [PERF] Assorted performance improvements for modern browsers.
- [#14872](https://github.com/emberjs/ember.js/pull/14872) / [#14871](https://github.com/emberjs/ember.js/pull/14871) / [#14883](https://github.com/emberjs/ember.js/pull/14883) [PERF] Simplify action event handlertemplate compilation).
- [#14360](https://github.com/emberjs/ember.js/pull/14360) [FEATURE factory-for] Implement `factoryFor`.
- [#14751](https://github.com/emberjs/ember.js/pull/14751) [DEPRECATION] Deprecate `Ember.K`.
- [#14756](https://github.com/emberjs/ember.js/pull/14756) [PERF] Disable costly `eventManager` support when unused.
- [#14794](https://github.com/emberjs/ember.js/pull/14794) [BUGFIX] Fix query param stickiness between models in ember-engines.
- [#14851](https://github.com/emberjs/ember.js/pull/14851) [PERF] only `LOG_VIEW_LOOKUPS` in debug
- [#14829](https://github.com/emberjs/ember.js/pull/14829) [PERF] only `logLibraryVersions` in debug mode
- [#14852](https://github.com/emberjs/ember.js/pull/14852) [PERF] only `LOG_TRANSITIONS` and `LOG_TRANSITIONS_INTERNAL` in debug
- [#14854](https://github.com/emberjs/ember.js/pull/14854) [PERF] only `LOG_ACTIVE_GENERATION` and `LOG_RESOLVER` in debug

### 2.11.0-beta.3 (December 7, 2016)
### 2.11.3 (March 8, 2017)

- [#14671](https://github.com/emberjs/ember.js/pull/14671) [BUGFIX] Fix an issue with the `list` attribute in `<input>` elements.
- [#14681](https://github.com/emberjs/ember.js/pull/14681) [BUGFIX] Fix an issue with computed properties when using aliases as dependent keys.
- [#14682](https://github.com/emberjs/ember.js/pull/14682) [BUGFIX] Ensure closure actions do not trigger unnecessary re-renders.
- [#14987](https://github.com/emberjs/ember.js/pull/14987) [BUGFIX] Fix a memory leak when components are destroyed.
- [#14986](https://github.com/emberjs/ember.js/pull/14986) [BUGFIX] Fix a memory leak in RSVP.js.
- [#14985](https://github.com/emberjs/ember.js/pull/14985) [BUGFIX] Fix a bug that added babel helpers to the global scope.
- [#14898](https://github.com/emberjs/ember.js/pull/14898) [BUGFIX] Fix an issue where errors in tests sometimes do not cause a failure.
- [#14707](https://github.com/emberjs/ember.js/pull/14707) [BUGFIX] Improve deprecation message for unsafe `style` attribute bindings.

### 2.11.0-beta.2 (November 29, 2016)
### 2.11.2 (February 19, 2017)

- [#14658](https://github.com/emberjs/ember.js/pull/14658) [BUGFIX] Make the ember-source build work.
- [#14937](https://github.com/emberjs/ember.js/pull/14937) [BUGFIX] Fix issue preventing `ember generate *` from creating test files as appropriate.

### 2.11.1 (February 16, 2017)

- [#14762](https://github.com/emberjs/ember.js/pull/14762) [BUGFIX] Make ember-template-compiler handle {{input}} helpers with sub-expression "type"
- [#14791](https://github.com/emberjs/ember.js/pull/14791) [BUGFIX] exempt routes that share a controller from duplicate assertion
- [#14860](https://github.com/emberjs/ember.js/pull/14860) [BUGFIX] Add back `mainContext` to loader #14859 (fixes issue with non ember-cli template compilation).
- [#14878](https://github.com/emberjs/ember.js/pull/14878) [DOC] Fix yuidoc package paths to ensure RSVP is properly included in API documentation.
- [#14910](https://github.com/emberjs/ember.js/pull/14910) [BUGFIX] Include blueprints in NPM release, to ensure `ember-source` blueprints are used over `ember-cli-legacy-blueprints`.
- [e94799c](https://github.com/emberjs/ember.js/commit/e94799c54cd464f5ba3642dec83f0000a52eb3b6) [BUGFIX] Update to `[email protected]` to prevent errors for duplicate route name definitions in `Router.map`.

### 2.11.0-beta.1 (November 28, 2016)

### 2.11.0 (January 23, 2017)

- [#14762](https://github.com/emberjs/ember.js/pull/14762) [BUGFIX] Ensure subexpressions can be used for `{{input}}`'s `type`.
- [#14723](https://github.com/emberjs/ember.js/pull/14723) [BUGFIX] Improved backtracking re-render assertion message.
- [#14750](https://github.com/emberjs/ember.js/pull/14750) [BUGFIX] Add assertion when a component's `tagName` is a computed property.
- [#14685](https://github.com/emberjs/ember.js/pull/14685) [BUGFIX] Fix `this.$()` returning `undefined` in `willDestroyElement`.
- [#14717](https://github.com/emberjs/ember.js/pull/14717) [BUGFIX] Fix an issue with block params named `attrs`.
- [#14671](https://github.com/emberjs/ember.js/pull/14671) [BUGFIX] Fix an issue with the `list` attribute in `<input>` elements.
- [#14681](https://github.com/emberjs/ember.js/pull/14681) [BUGFIX] Fix an issue with computed properties when using aliases as dependent keys.
- [#14682](https://github.com/emberjs/ember.js/pull/14682) [BUGFIX] Ensure closure actions do not trigger unnecessary re-renders.
- [#14658](https://github.com/emberjs/ember.js/pull/14658) [BUGFIX] Make the ember-source build work.
- [#14389](https://github.com/emberjs/ember.js/pull/14389) [BUGFIX] Move `classNames` and `classNameBindings` properties into the component's prototype.
- [#14389](https://github.com/emberjs/ember.js/pull/14389) [BUGFIX] Disallow mutation of shared concatenatedProperties, such as `classNames` and `classNameBindings`.
- [#14441](https://github.com/emberjs/ember.js/pull/14441) [DEPRECATION] Deprecate remaining usage of the `{{render}}` helper.
Expand Down
7 changes: 3 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ and the issue will be closed
can be reopened at a later time if needed, e.g. becomes actionable again.
* If possible, issues will be labeled to indicate the status or priority.
For example, labels may have a prefix for `Status: X`, or `Priority: X`.
Statuses may include: `In Progress`, `On Hold`. Priorities may include:
Statuses may include: `In Progress`, `On Hold`. Priorities may include:
`High` or `Low`.

## Requesting a Feature
Expand Down Expand Up @@ -103,11 +103,10 @@ clone the latest ember.js directory from github
cd to the cloned ember.js directory
- cd ember.js

ensure Node.js, yarn, and bower are installed
ensure Node.js and yarn are installed

follow these commands to build ember.js
- yarn install
- bower install
- yarn run build
```

Expand Down Expand Up @@ -163,7 +162,7 @@ We love pull requests. Here's a quick guide:
1. Fork the repo.

2. Run the tests. We only take pull requests with passing tests, and it's great
to know that you have a clean slate: `yarn install && bower install && yarn test`.
to know that you have a clean slate: `yarn install && yarn test`.
(To see tests in the browser, run `yarn start` and open `http://localhost:4200/tests/index.html`.)

3. Add a test for your change. Only refactoring and documentation changes
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { describe, it, beforeEach, afterEach } from 'mocha';
import { expect } from 'chai';
import startApp from '<%= dasherizedPackageName %>/helpers/start-app';
<% if (destroyAppExists) { %>import destroyApp from '<%= dasherizedPackageName %>/helpers/destroy-app';<% } else { %>import Ember from 'ember';<% } %>
import startApp from '<%= dasherizedPackageName %>/tests/helpers/start-app';
<% if (destroyAppExists) { %>import destroyApp from '<%= dasherizedPackageName %>/tests/helpers/destroy-app';<% } else { %>import Ember from 'ember';<% } %>

describe('<%= friendlyTestName %>', function() {
let application;
Expand Down
2 changes: 1 addition & 1 deletion blueprints/component-test/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ module.exports = useTestFrameworkDetector({
var friendlyTestDescription = testInfo.description(options.entity.name, 'Integration', 'Component');

if (options.pod && options.path !== 'components' && options.path !== '') {
componentPathName = [options.path, dasherizedModuleName].join('/');
componentPathName = [options.path, dasherizedModuleName].filter(Boolean).join('/');
}

if (options.testType === 'unit') {
Expand Down
6 changes: 3 additions & 3 deletions blueprints/helper-test/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ module.exports = useTestFrameworkDetector({
{
name: 'test-type',
type: ['integration', 'unit'],
default: 'unit',
default: 'integration',
aliases: [
{ 'i': 'integration' },
{ 'u': 'unit' },
Expand All @@ -25,13 +25,13 @@ module.exports = useTestFrameworkDetector({
fileMapTokens: function() {
return {
__testType__: function(options) {
return options.locals.testType || 'unit';
return options.locals.testType || 'integration';
}
};
},

locals: function(options) {
var testType = options.testType || 'unit';
var testType = options.testType || 'integration';
var testName = testType === 'integration' ? 'Integration' : 'Unit';
var friendlyTestName = testInfo.name(options.entity.name, testName, 'Helper');

Expand Down
17 changes: 10 additions & 7 deletions ember-cli-build.js
Original file line number Diff line number Diff line change
Expand Up @@ -207,8 +207,8 @@ function babelConfigFor(environment) {

plugins.push(applyFeatureFlags({
imports: [
{ module: 'ember-metal/features' },
{ module: 'ember-metal', name: 'isFeatureEnabled' },
{ module: 'ember-debug/features' },
{ module: 'ember-debug', name: 'isFeatureEnabled' },
],
features: features
}));
Expand All @@ -217,8 +217,8 @@ function babelConfigFor(environment) {
if (isProduction) {
includeDevHelpers = false;
plugins.push(filterImports({
'ember-metal/debug': ['assert', 'debug', 'deprecate', 'info', 'runInDebug', 'warn', 'debugSeal', 'debugFreeze'],
'ember-metal': ['assert', 'debug', 'deprecate', 'info', 'runInDebug', 'warn', 'debugSeal', 'debugFreeze']
'ember-debug/deprecate': ['deprecate'],
'ember-debug': ['assert', 'debug', 'deprecate', 'info', 'runInDebug', 'warn', 'debugSeal', 'debugFreeze']
}));
}

Expand Down Expand Up @@ -274,13 +274,16 @@ function qunit() {
}

function handlebarsFix() {
var HANDLEBARS_UTIL = /\/utils.js$/;
var HANDLEBARS_PARSER = /\/parser.js$/;
return {
load: function(id) {
if (HANDLEBARS_UTIL.test(id)) {
if (HANDLEBARS_PARSER.test(id)) {
var code = fs.readFileSync(id, 'utf8');
return {
code: code.replace(/export var isFunction/, 'export { isFunction }'),
code: code
.replace('exports.__esModule = true;', '')
.replace('exports[\'default\'] = handlebars;', 'export default handlebars;'),

map: { mappings: null }
};
}
Expand Down
4 changes: 2 additions & 2 deletions features.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@
"ember-improved-instrumentation": null,
"ember-metal-weakmap": null,
"ember-glimmer-allow-backtracking-rerender": null,
"ember-testing-resume-test": null,
"ember-testing-resume-test": true,
"ember-factory-for": true,
"ember-no-double-extend": true,
"ember-routing-router-service": null,
"ember-unique-location-history-state": null
"ember-unique-location-history-state": true
}
}
36 changes: 21 additions & 15 deletions index.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
/* eslint-env node */
'use strict';

var fs = require('fs');
var path = require('path');
var resolve = require('resolve');

Expand Down Expand Up @@ -33,7 +35,8 @@ module.exports = {
absolutePaths: absolutePaths,

treeForVendor: function() {
var stew = require('broccoli-stew');
var Funnel = require('broccoli-funnel');
var MergeTrees = require('broccoli-merge-trees');

var jqueryPath;
try {
Expand All @@ -42,26 +45,29 @@ module.exports = {
jqueryPath = path.dirname(require.resolve('jquery/package.json'));
}

var jquery = stew.find(jqueryPath + '/dist', {
var jquery = new Funnel(jqueryPath + '/dist', {
destDir: 'ember/jquery',
files: [ 'jquery.js' ]
});

var ember = stew.find(__dirname + '/dist', {
var emberFiles = [
'ember-runtime.js',
'ember-template-compiler.js',
'ember-testing.js',
'ember.debug.js',
'ember.min.js',
'ember.prod.js'
].filter(function(file) {
var fullPath = path.join(__dirname, 'dist', file);

return fs.existsSync(fullPath);
});

var ember = new Funnel(__dirname + '/dist', {
destDir: 'ember',
files: [
'ember-runtime.js',
'ember-template-compiler.js',
'ember-testing.js',
'ember.debug.js',
'ember.min.js',
'ember.prod.js'
]
files: emberFiles
});

return stew.find([
ember,
jquery
]);
return new MergeTrees([ember, jquery]);
}
};
2 changes: 1 addition & 1 deletion lib/packages.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ module.exports = function(features) {
'ember-utils': { trees: null, requirements: [] },
'ember-console': { trees: null, requirements: [], skipTests: true },
'ember-metal': { trees: null, requirements: ['ember-environment', 'ember-utils'], vendorRequirements: ['backburner'] },
'ember-debug': { trees: null, requirements: ['ember-metal'], testing: true },
'ember-debug': { trees: null, requirements: [] },
'ember-runtime': { trees: null, vendorRequirements: ['rsvp'], requirements: ['container', 'ember-environment', 'ember-console', 'ember-metal'] },
'ember-views': { trees: null, requirements: ['ember-runtime'] },
'ember-extension-support': { trees: null, requirements: ['ember-application'] },
Expand Down
25 changes: 25 additions & 0 deletions node-tests/blueprints/component-test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
'use strict';

var fs = require('fs');

var blueprintHelpers = require('ember-cli-blueprint-test-helpers/helpers');
var setupTestHooks = blueprintHelpers.setupTestHooks;
var emberNew = blueprintHelpers.emberNew;
Expand Down Expand Up @@ -728,6 +730,29 @@ describe('Acceptance: ember generate component', function() {
}));
});

describe('usePods: true', function() {
it('component-test x-foo', function() {
var args = ['component-test', 'x-foo'];

return emberNew()
.then(() => {
fs.writeFileSync('.ember-cli', `{
"disableAnalytics": false,
"usePods": true
}`);
})
.then(() => emberGenerateDestroy(args, _file => {
expect(_file('tests/integration/components/x-foo/component-test.js'))
.to.contain("import { moduleForComponent, test } from 'ember-qunit';")
.to.contain("import hbs from 'htmlbars-inline-precompile';")
.to.contain("moduleForComponent('x-foo'")
.to.contain("integration: true")
.to.contain("{{x-foo}}")
.to.contain("{{#x-foo}}");
}));
});
})

it('component-test x-foo --unit', function() {
var args = ['component-test', 'x-foo', '--unit'];

Expand Down
Loading

0 comments on commit d0d7420

Please sign in to comment.