Skip to content

Commit 9b09593

Browse files
committed
simplify the try file to not use functions
1 parent 5a6bb9e commit 9b09593

1 file changed

Lines changed: 76 additions & 48 deletions

File tree

files/.try.mjs

Lines changed: 76 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -3,61 +3,89 @@ export default scenarios();
33
function scenarios() {
44
return {
55
scenarios: [
6-
compatEmberScenario('ember-lts-5.8', '~5.4.0'),
7-
compatEmberScenario('ember-lts-5.12', '~5.12.0'),
8-
emberScenario('~6.4.0'),
9-
emberScenario('latest'),
10-
emberScenario('beta'),
11-
emberScenario('alpha'),
12-
],
13-
};
14-
}
15-
16-
function emberScenario(tag) {
17-
return {
18-
name: `ember-${tag}`,
19-
npm: {
20-
devDependencies: {
21-
'ember-source': `npm:ember-source@${tag}`,
6+
{
7+
name: 'ember-lts-5.8',
8+
npm: {
9+
devDependencies: {
10+
'ember-source': '~5.8.0',
11+
...compatDeps,
12+
},
13+
},
14+
env: {
15+
ENABLE_COMPAT_BUILD: true,
16+
},
17+
files: compatFiles,
18+
},
19+
{
20+
name: 'ember-lts-5.12',
21+
npm: {
22+
devDependencies: {
23+
'ember-source': '~5.12.0',
24+
...compatDeps
25+
},
26+
},
27+
env: {
28+
ENABLE_COMPAT_BUILD: true,
29+
},
30+
files: compatFiles,
31+
},
32+
{
33+
name: `ember-lts-6.4`,
34+
npm: {
35+
devDependencies: {
36+
'ember-source': `npm:ember-source@~6.4.0`,
37+
},
38+
},
39+
},
40+
{
41+
name: `ember-latest`,
42+
npm: {
43+
devDependencies: {
44+
'ember-source': `npm:ember-source@latest`,
45+
},
46+
},
2247
},
23-
},
48+
{
49+
name: `ember-beta`,
50+
npm: {
51+
devDependencies: {
52+
'ember-source': `npm:ember-source@beta`,
53+
},
54+
},
55+
},
56+
{
57+
name: `ember-alpha`,
58+
npm: {
59+
devDependencies: {
60+
'ember-source': `npm:ember-source@alpha`,
61+
},
62+
},
63+
},
64+
],
2465
};
2566
}
2667

27-
function emberCliBuildJS() {
28-
return `const EmberApp = require('ember-cli/lib/broccoli/ember-app');
68+
// When building your addon for older Ember versions you need to have the required files
69+
const compatFiles = {
70+
'ember-cli-build.js': `const EmberApp = require('ember-cli/lib/broccoli/ember-app');
2971
const { compatBuild } = require('@embroider/compat');
3072
module.exports = async function (defaults) {
3173
const { buildOnce } = await import('@embroider/vite');
3274
let app = new EmberApp(defaults);
3375
return compatBuild(app, buildOnce);
34-
};`;
35-
}
76+
};`,
77+
'config/optional-features.json': JSON.stringify({
78+
'application-template-wrapper': false,
79+
'default-async-observers': true,
80+
'jquery-integration': false,
81+
'template-only-glimmer-components': true,
82+
'no-implicit-route-model': true,
83+
}),
84+
};
3685

37-
function compatEmberScenario(name, emberVersion) {
38-
return {
39-
name,
40-
npm: {
41-
devDependencies: {
42-
'ember-source': emberVersion,
43-
'@embroider/compat': '^4.0.3',
44-
'ember-cli': '^5.12.0',
45-
'ember-auto-import': '^2.10.0',
46-
'@ember/optional-features': '^2.2.0',
47-
},
48-
},
49-
env: {
50-
ENABLE_COMPAT_BUILD: true,
51-
},
52-
files: {
53-
'ember-cli-build.js': emberCliBuildJS(),
54-
'config/optional-features.json': JSON.stringify({
55-
'application-template-wrapper': false,
56-
'default-async-observers': true,
57-
'jquery-integration': false,
58-
'template-only-glimmer-components': true,
59-
'no-implicit-route-model': true,
60-
}),
61-
},
62-
};
63-
}
86+
const compatDeps = {
87+
'@embroider/compat': '^4.0.3',
88+
'ember-cli': '^5.12.0',
89+
'ember-auto-import': '^2.10.0',
90+
'@ember/optional-features': '^2.2.0',
91+
};

0 commit comments

Comments
 (0)