Skip to content

Commit 4d74274

Browse files
authored
Merge pull request #1946 from embroider-build/app-not-addon
remove the ember-addon keyword from rewritten app
2 parents 05796e6 + 0ee4e30 commit 4d74274

10 files changed

+16
-15
lines changed

package.json

+1-2
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,7 @@
3434
"browserslist": "^4.14.0",
3535
"graceful-fs": "^4.0.0",
3636
"@types/eslint": "^8.37.0",
37-
"babel-plugin-module-resolver@5.0.1": "5.0.0",
38-
"@embroider/shared-internals": "workspace:*"
37+
"babel-plugin-module-resolver@5.0.1": "5.0.0"
3938
},
4039
"patchedDependencies": {
4140
"ember-source@5.8.0": "patches/ember-source@5.8.0.patch"

packages/compat/src/compat-app-builder.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -499,7 +499,7 @@ export class CompatAppBuilder {
499499
pkgLayers.push(fastbootConfig.packageJSON);
500500
}
501501
// but our own new v2 app metadata takes precedence over both
502-
pkgLayers.push({ keywords: ['ember-addon'], 'ember-addon': meta });
502+
pkgLayers.push({ 'ember-addon': meta });
503503
return combinePackageJSON(...pkgLayers);
504504
}
505505

packages/compat/src/standalone-addon-build.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ export function convertLegacyAddons(compatApp: CompatApp) {
1616

1717
let appPackage = compatApp.appPackage();
1818

19-
let violations = validatePeerDependencies(appPackage).filter(({ dep }) => dep.isEmberPackage() && !dep.isV2Ember());
19+
let violations = validatePeerDependencies(appPackage).filter(({ dep }) => dep.isEmberAddon() && !dep.isV2Ember());
2020
if (violations.length > 0) {
2121
if (process.env.I_HAVE_BAD_PEER_DEPS_AND_WANT_A_BROKEN_BUILD) {
2222
console.warn(
@@ -116,7 +116,7 @@ function findV1Addons(pkg: Package, seen: Set<Package> = new Set(), output: Set<
116116
continue;
117117
}
118118
seen.add(dep);
119-
if (dep.isEmberPackage()) {
119+
if (dep.isEmberAddon()) {
120120
if (!dep.isV2Addon()) {
121121
output.add(dep);
122122
}

packages/core/src/module-resolver.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1163,7 +1163,7 @@ export class Resolver {
11631163
if (logicalPackage.meta['auto-upgraded'] && !logicalPackage.hasDependency('ember-auto-import')) {
11641164
try {
11651165
let dep = this.packageCache.resolve(packageName, logicalPackage);
1166-
if (!dep.isEmberPackage()) {
1166+
if (!dep.isEmberAddon()) {
11671167
// classic ember addons can only import non-ember dependencies if they
11681168
// have ember-auto-import.
11691169
return this.external('v1 package without auto-import', request, specifier);

packages/macros/src/babel/macros-babel-plugin.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,7 @@ export default function main(context: typeof Babel): unknown {
228228
state.opts.hideRequires &&
229229
path.node.name === 'require' &&
230230
!path.scope.hasBinding('require') &&
231-
state.owningPackage().isEmberPackage()
231+
state.owningPackage().isEmberAddon()
232232
) {
233233
// Our importSync macro has been compiled to `require`. But we want to
234234
// distinguish that from any pre-existing, user-written `require` in an

packages/shared-internals/src/babel-filter.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ export default function babelFilter(skipBabel: { package: string; semverRange?:
1212
if (owner) {
1313
for (let { package: pkg, semverRange } of skipBabel) {
1414
if (owner.name === pkg && (semverRange == null || semver.satisfies(owner.version, semverRange))) {
15-
if (owner.isEmberPackage()) {
15+
if (owner.isEmberAddon()) {
1616
throw new Error(
1717
`You can't use skipBabel to disable transpilation of Ember addons, it only works for non-Ember third-party packages`
1818
);

packages/shared-internals/src/dep-validation.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ export function validatePeerDependencies(appPackage: Package): PeerDepViolation[
5454
for (let ancestor of ancestors.slice().reverse()) {
5555
if (ancestor.hasDependency(dep.name)) {
5656
let ancestorsDep = ancestor.dependencies.find(d => d.name === dep.name)!;
57-
if (ancestorsDep !== dep && dep.isEmberPackage()) {
57+
if (ancestorsDep !== dep && dep.isEmberAddon()) {
5858
violations.push({ pkg, dep, ancestors, ancestor, ancestorsDep });
5959
}
6060
continue;

packages/shared-internals/src/package.ts

+5-2
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ export default class Package {
5252
}
5353
}
5454

55-
isEmberPackage(): boolean {
55+
isEmberAddon(): boolean {
5656
let keywords = this.packageJSON.keywords;
5757
return Boolean(keywords && (keywords as string[]).includes('ember-addon'));
5858
}
@@ -71,7 +71,10 @@ export default class Package {
7171
}
7272

7373
isV2Ember(): this is V2Package {
74-
return this.isEmberPackage() && get(this.packageJSON, 'ember-addon.version') === 2;
74+
return (
75+
get(this.packageJSON, 'ember-addon.version') === 2 &&
76+
(get(this.packageJSON, 'ember-addon.type') === 'app' || this.isEmberAddon())
77+
);
7578
}
7679

7780
isV2App(): this is V2AppPackage {

packages/shared-internals/src/rewritten-package-cache.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -228,8 +228,8 @@ class WrappedPackage implements PackageTheGoodParts {
228228
return this.plainPkg.meta;
229229
}
230230

231-
isEmberPackage() {
232-
return this.plainPkg.isEmberPackage();
231+
isEmberAddon() {
232+
return this.plainPkg.isEmberAddon();
233233
}
234234

235235
isEngine() {

pnpm-lock.yaml

+1-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)