Skip to content

Commit

Permalink
ember-cli-update and dropping ember's older than 2.12
Browse files Browse the repository at this point in the history
Mostly because I don't want to deal with bower anymore in the test suite.
  • Loading branch information
ef4 committed Feb 20, 2018
1 parent f06b39c commit 2bbee83
Show file tree
Hide file tree
Showing 15 changed files with 378 additions and 846 deletions.
9 changes: 0 additions & 9 deletions .eslintrc.js
Expand Up @@ -51,15 +51,6 @@ module.exports = {
rules: Object.assign({}, require('eslint-plugin-node').configs.recommended.rules, {
// add your custom rules and overrides for node files here
})
},

// test files
{
files: ['tests/**/*.js'],
excludedFiles: ['tests/dummy/**/*.js'],
env: {
embertest: true
}
}
]
};
3 changes: 1 addition & 2 deletions .travis.yml
Expand Up @@ -22,10 +22,9 @@ env:
matrix:
# we recommend new addons test the current and previous LTS
# as well as latest stable release (bonus points to beta/canary)
- EMBER_TRY_SCENARIO=ember-lts-2.4
- EMBER_TRY_SCENARIO=ember-lts-2.8
- EMBER_TRY_SCENARIO=ember-lts-2.12
- EMBER_TRY_SCENARIO=ember-lts-2.16
- EMBER_TRY_SCENARIO=ember-lts-2.18
- EMBER_TRY_SCENARIO=ember-release
- EMBER_TRY_SCENARIO=ember-beta
- EMBER_TRY_SCENARIO=ember-canary
Expand Down
18 changes: 10 additions & 8 deletions addon/ember-internals.js
Expand Up @@ -7,15 +7,17 @@
*/
import { get } from '@ember/object';

import { guidFor } from '@ember/object/internals';


// These things are swapped out at build time based on the Ember
// version.
export {
componentNodes
} from './ember-internals/version-specific';
import Ember from 'ember';
const { getViewBounds } = Ember.ViewUtils;

export function componentNodes(view) {
let bounds = getViewBounds(view);
return {
firstNode: bounds.firstNode,
lastNode: bounds.lastNode
};
}

export function keyForArray(keyPath) {
switch (keyPath) {
Expand Down
162 changes: 63 additions & 99 deletions config/ember-try.js
@@ -1,106 +1,70 @@
module.exports = {
scenarios: [
{
name: 'ember-lts-2.4',
bower: {
dependencies: {
'ember': 'components/ember#lts-2-4'
'use strict';

const getChannelURL = require('ember-source-channel-url');

module.exports = function() {
return Promise.all([
getChannelURL('release'),
getChannelURL('beta'),
getChannelURL('canary'),
]).then((urls) => {
return {
scenarios: [
{
name: 'ember-lts-2.12',
npm: {
devDependencies: {
'ember-source': '~2.12.0'
}
}
},
resolutions: {
'ember': 'lts-2-4'
}
},
npm: {
devDependencies: {
'ember-source': null
}
}
},
{
name: 'ember-lts-2.8',
bower: {
dependencies: {
'ember': 'components/ember#lts-2-8'
{
name: 'ember-lts-2.16',
npm: {
devDependencies: {
'ember-source': '~2.16.0'
}
}
},
resolutions: {
'ember': 'lts-2-8'
}
},
npm: {
devDependencies: {
'ember-source': null
}
}
},
{
name: 'ember-lts-2.12',
npm: {
devDependencies: {
'ember-source': '~2.12.0'
}
}
},
{
name: 'ember-lts-2.16',
npm: {
devDependencies: {
'ember-source': '~2.16.0'
}
}
},
{
name: 'ember-release',
bower: {
dependencies: {
'ember': 'components/ember#release'
{
name: 'ember-lts-2.18',
npm: {
devDependencies: {
'ember-source': '~2.18.0'
}
}
},
resolutions: {
'ember': 'release'
}
},
npm: {
devDependencies: {
'ember-source': null
}
}
},
{
name: 'ember-beta',
bower: {
dependencies: {
'ember': 'components/ember#beta'
{
name: 'ember-release',
npm: {
devDependencies: {
'ember-source': urls[0]
}
}
},
resolutions: {
'ember': 'beta'
}
},
npm: {
devDependencies: {
'ember-source': null
}
}
},
{
name: 'ember-canary',
bower: {
dependencies: {
'ember': 'components/ember#canary'
{
name: 'ember-beta',
npm: {
devDependencies: {
'ember-source': urls[1]
}
}
},
resolutions: {
'ember': 'canary'
}
},
npm: {
devDependencies: {
'ember-source': null
{
name: 'ember-canary',
npm: {
devDependencies: {
'ember-source': urls[2]
}
}
},
{
name: 'ember-default',
npm: {
devDependencies: {}
}
}
}
},
{
name: 'ember-default',
npm: {
devDependencies: {}
}
}
]
]
};
});
};
50 changes: 0 additions & 50 deletions index.js
@@ -1,9 +1,6 @@
'use strict';

var VersionChecker = require('ember-cli-version-checker');
var path = require('path');
var mergeTrees = require('broccoli-merge-trees');
var Funnel = require('broccoli-funnel');

module.exports = {
name: 'ember-animated',
Expand Down Expand Up @@ -39,53 +36,6 @@ module.exports = {
}
},

treeForAddon: function(tree) {
return this._super.treeForAddon.call(this, this._versionSpecificTree('addon', tree));
},

treeForAddonTemplates: function() {
var tree = this._super.treeForAddonTemplates.apply(this, arguments);
return this._versionSpecificTree('templates', tree);
},

_getEmberVersion: function() {
var emberVersionChecker = this.versionChecker.for('ember', 'bower');

if (emberVersionChecker.version) {
return emberVersionChecker;
}

return this.versionChecker.for('ember-source', 'npm');
},

_versionSpecificTree: function(which, tree) {
var emberVersion = this._getEmberVersion();

if ((emberVersion.gt('2.9.0-beta') && emberVersion.lt('2.9.0'))|| emberVersion.gt('2.10.0-alpha')) {
return this._withVersionSpecific(which, tree, '2.9');
} else if (!emberVersion.lt('2.4.0')) {
return this._withVersionSpecific(which, tree, '2.4');
} else {
throw new Error("This version of ember-animated supports Ember versions >= 2.4.0.");
}
},

_withVersionSpecific: function(which, tree, version) {
var versionSpecificPath = path.join(this.root, 'version-specific-' + version);
var destDir;
var include;
if (which === 'templates') {
destDir = 'version-specific';
include = ["*.hbs"];
} else {
destDir = 'ember-internals/version-specific';
}
var funneled = new Funnel(versionSpecificPath, {
include: include,
destDir: destDir
});
return mergeTrees([tree, funneled]);
},

included: function() {
this._super.apply(this, arguments);
Expand Down
10 changes: 5 additions & 5 deletions package.json
Expand Up @@ -18,8 +18,7 @@
"devDependencies": {
"broccoli-asset-rev": "^2.4.5",
"ember-animated-tools": "^0.1.1",
"ember-assign-polyfill": "^2.0.2",
"ember-cli": "~2.18.0",
"ember-cli": "~3.0.0",
"ember-cli-dependency-checker": "^2.0.0",
"ember-cli-eslint": "^4.2.1",
"ember-cli-htmlbars-inline-precompile": "^1.0.0",
Expand All @@ -33,8 +32,11 @@
"ember-export-application-global": "^2.0.0",
"ember-faker": "^1.2.1",
"ember-load-initializers": "^1.0.0",
"ember-maybe-import-regenerator": "^0.1.6",
"ember-resolver": "^4.0.0",
"ember-source": "~2.18.0",
"ember-source": "~3.0.0",
"ember-source-channel-url": "^1.0.1",
"ember-try": "^0.2.23",
"eslint": "~4.15.0",
"eslint-plugin-ember": "^5.0.0",
"eslint-plugin-node": "^5.2.1",
Expand All @@ -44,8 +46,6 @@
"ember-addon"
],
"dependencies": {
"broccoli-funnel": "^1.0.9",
"broccoli-merge-trees": "^1.1.5",
"ember-cli-babel": "^6.11.0",
"ember-cli-htmlbars": "^2.0.1",
"ember-cli-version-checker": "^1.1.7",
Expand Down
1 change: 1 addition & 0 deletions testem.js
Expand Up @@ -13,6 +13,7 @@ module.exports = {
args: [
// --no-sandbox is needed when running Chrome inside a container
process.env.TRAVIS ? '--no-sandbox' : null,

'--disable-gpu',
'--headless',
'--remote-debugging-port=0',
Expand Down
28 changes: 15 additions & 13 deletions tests/dummy/config/targets.js
@@ -1,16 +1,18 @@
var browsers;
'use strict';

if (process.env.EMBER_ENV === 'development') {
browsers = [
'last 1 Chrome versions'
];
} else {
browsers = [
'ie 9',
'last 1 Chrome versions',
'last 1 Firefox versions',
'last 1 Safari versions'
];
const browsers = [
'last 1 Chrome versions',
'last 1 Firefox versions',
'last 1 Safari versions'
];

const isCI = !!process.env.CI;
const isProduction = process.env.EMBER_ENV === 'production';

if (isCI || isProduction) {
browsers.push('ie 11');
}

module.exports = { browsers };
module.exports = {
browsers
};
Empty file added tests/helpers/.gitkeep
Empty file.
5 changes: 0 additions & 5 deletions tests/helpers/destroy-app.js

This file was deleted.

21 changes: 0 additions & 21 deletions tests/helpers/module-for-acceptance.js

This file was deleted.

0 comments on commit 2bbee83

Please sign in to comment.