From 77a88211e083e1df6e569b513701c16c08c3e21d Mon Sep 17 00:00:00 2001 From: NullVoxPopuli <199018+NullVoxPopuli@users.noreply.github.com> Date: Tue, 30 Jul 2024 09:25:04 -0400 Subject: [PATCH 1/2] Remove require usage in favor of @embroider/macros --- .../test-helpers/-internal/build-registry.ts | 28 +++++++++++++------ 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/addon/addon-test-support/@ember/test-helpers/-internal/build-registry.ts b/addon/addon-test-support/@ember/test-helpers/-internal/build-registry.ts index 64065f8b4..c8488f8d9 100644 --- a/addon/addon-test-support/@ember/test-helpers/-internal/build-registry.ts +++ b/addon/addon-test-support/@ember/test-helpers/-internal/build-registry.ts @@ -2,6 +2,11 @@ import type { Resolver } from '@ember/owner'; import ApplicationInstance from '@ember/application/instance'; import Application from '@ember/application'; import EmberObject from '@ember/object'; +import { + macroCondition, + importSync, + dependencySatisfies, +} from '@embroider/macros'; import require, { has } from 'require'; import Ember from 'ember'; @@ -147,14 +152,21 @@ export default function buildRegistry(resolver: Resolver) { exposeRegistryMethodsWithoutDeprecations(container); - if (has('ember-data/setup-container')) { - // ember-data is a proper ember-cli addon since 2.3; if no 'import - // 'ember-data'' is present somewhere in the tests, there is also no `DS` - // available on the globalContext and hence ember-data wouldn't be setup - // correctly for the tests; that's why we import and call setupContainer - // here; also see https://github.com/emberjs/data/issues/4071 for context - let setupContainer = require('ember-data/setup-container')['default']; - setupContainer(owner); + // ember-data is a proper ember-cli addon since 2.3; if no 'import + // 'ember-data'' is present somewhere in the tests, there is also no `DS` + // available on the globalContext and hence ember-data wouldn't be setup + // correctly for the tests; that's why we import and call setupContainer + // here; also see https://github.com/emberjs/data/issues/4071 for context + if (macroCondition(dependencySatisfies('ember-data', '>= 2.3'))) { + // Additionally, this file is deprecated with no replacement for + // removal in ember-data v6.0 + // See: ember-data/dist/setup-container + if (macroCondition(dependencySatisfies('ember-data', '< 6.0'))) { + let { default: setupContainer } = importSync( + 'ember-data/setup-container' + ) as any; + setupContainer(owner); + } } return { From f1d0de45c89ca9e561e618a530a83072acf040a5 Mon Sep 17 00:00:00 2001 From: NullVoxPopuli <199018+NullVoxPopuli@users.noreply.github.com> Date: Mon, 19 Aug 2024 16:11:06 -0400 Subject: [PATCH 2/2] Drop support for ember-data/setup-container --- .../test-helpers/-internal/build-registry.ts | 23 ------------------- 1 file changed, 23 deletions(-) diff --git a/addon/addon-test-support/@ember/test-helpers/-internal/build-registry.ts b/addon/addon-test-support/@ember/test-helpers/-internal/build-registry.ts index c8488f8d9..c8e9c276d 100644 --- a/addon/addon-test-support/@ember/test-helpers/-internal/build-registry.ts +++ b/addon/addon-test-support/@ember/test-helpers/-internal/build-registry.ts @@ -2,13 +2,7 @@ import type { Resolver } from '@ember/owner'; import ApplicationInstance from '@ember/application/instance'; import Application from '@ember/application'; import EmberObject from '@ember/object'; -import { - macroCondition, - importSync, - dependencySatisfies, -} from '@embroider/macros'; -import require, { has } from 'require'; import Ember from 'ember'; import type { FullName } from '@ember/owner'; @@ -152,23 +146,6 @@ export default function buildRegistry(resolver: Resolver) { exposeRegistryMethodsWithoutDeprecations(container); - // ember-data is a proper ember-cli addon since 2.3; if no 'import - // 'ember-data'' is present somewhere in the tests, there is also no `DS` - // available on the globalContext and hence ember-data wouldn't be setup - // correctly for the tests; that's why we import and call setupContainer - // here; also see https://github.com/emberjs/data/issues/4071 for context - if (macroCondition(dependencySatisfies('ember-data', '>= 2.3'))) { - // Additionally, this file is deprecated with no replacement for - // removal in ember-data v6.0 - // See: ember-data/dist/setup-container - if (macroCondition(dependencySatisfies('ember-data', '< 6.0'))) { - let { default: setupContainer } = importSync( - 'ember-data/setup-container' - ) as any; - setupContainer(owner); - } - } - return { registry, container,