From 54b57c420933d3b9c339263ea74fe61b1261d6e3 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 25 Feb 2026 22:46:55 +0000 Subject: [PATCH 1/3] Initial plan From 0422fbbe45534c7860b883c986ae31df293d4107 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 25 Feb 2026 23:06:29 +0000 Subject: [PATCH 2/3] Fix benchmark app vite config for import.meta.env?.DEV replacement and re-apply COMPUTED_GETTERS fix Co-authored-by: NullVoxPopuli <199018+NullVoxPopuli@users.noreply.github.com> --- .../@ember/-internals/metal/lib/decorator.ts | 6 +----- smoke-tests/benchmark-app/vite.config.mjs | 19 +++++++++++++++++-- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/packages/@ember/-internals/metal/lib/decorator.ts b/packages/@ember/-internals/metal/lib/decorator.ts index 3e6b262f3bc..098ddc1c61b 100644 --- a/packages/@ember/-internals/metal/lib/decorator.ts +++ b/packages/@ember/-internals/metal/lib/decorator.ts @@ -75,11 +75,7 @@ export abstract class ComputedDescriptor { abstract set(obj: object, keyName: string, value: any | null | undefined): any | null | undefined; } -export let COMPUTED_GETTERS: WeakSet<() => unknown>; - -if (import.meta.env?.DEV) { - COMPUTED_GETTERS = new WeakSet(); -} +export const COMPUTED_GETTERS = new WeakSet<() => unknown>(); function DESCRIPTOR_GETTER_FUNCTION(name: string, descriptor: ComputedDescriptor): () => unknown { function getter(this: object): unknown { diff --git a/smoke-tests/benchmark-app/vite.config.mjs b/smoke-tests/benchmark-app/vite.config.mjs index 09e1d1c0299..5ef1b1b7ce8 100644 --- a/smoke-tests/benchmark-app/vite.config.mjs +++ b/smoke-tests/benchmark-app/vite.config.mjs @@ -2,12 +2,27 @@ import { defineConfig } from 'vite'; import { extensions, ember } from '@embroider/vite'; import { babel } from '@rollup/plugin-babel'; -export default defineConfig({ +export default defineConfig(({ mode }) => ({ plugins: [ ember(), + { + name: 'define custom import.meta.env', + transform(code) { + if (mode === 'development') { + if (code.includes('import.meta.env?.DEV')) { + return code.replace(/import\.meta\.env\?\.DEV/g, 'true'); + } + } else if (mode === 'production') { + if (code.includes('import.meta.env?.DEV')) { + return code.replace(/import\.meta\.env\?\.DEV/g, 'false'); + } + } + return undefined; + }, + }, babel({ babelHelpers: 'runtime', extensions, }), ], -}); +})); From 2cf79a3030308404f104c11404b3195aea2b0b0d Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 26 Feb 2026 00:12:17 +0000 Subject: [PATCH 3/3] Revert all changes in this branch Co-authored-by: NullVoxPopuli <199018+NullVoxPopuli@users.noreply.github.com> --- .../@ember/-internals/metal/lib/decorator.ts | 6 +++++- smoke-tests/benchmark-app/vite.config.mjs | 19 ++----------------- 2 files changed, 7 insertions(+), 18 deletions(-) diff --git a/packages/@ember/-internals/metal/lib/decorator.ts b/packages/@ember/-internals/metal/lib/decorator.ts index 098ddc1c61b..3e6b262f3bc 100644 --- a/packages/@ember/-internals/metal/lib/decorator.ts +++ b/packages/@ember/-internals/metal/lib/decorator.ts @@ -75,7 +75,11 @@ export abstract class ComputedDescriptor { abstract set(obj: object, keyName: string, value: any | null | undefined): any | null | undefined; } -export const COMPUTED_GETTERS = new WeakSet<() => unknown>(); +export let COMPUTED_GETTERS: WeakSet<() => unknown>; + +if (import.meta.env?.DEV) { + COMPUTED_GETTERS = new WeakSet(); +} function DESCRIPTOR_GETTER_FUNCTION(name: string, descriptor: ComputedDescriptor): () => unknown { function getter(this: object): unknown { diff --git a/smoke-tests/benchmark-app/vite.config.mjs b/smoke-tests/benchmark-app/vite.config.mjs index 5ef1b1b7ce8..09e1d1c0299 100644 --- a/smoke-tests/benchmark-app/vite.config.mjs +++ b/smoke-tests/benchmark-app/vite.config.mjs @@ -2,27 +2,12 @@ import { defineConfig } from 'vite'; import { extensions, ember } from '@embroider/vite'; import { babel } from '@rollup/plugin-babel'; -export default defineConfig(({ mode }) => ({ +export default defineConfig({ plugins: [ ember(), - { - name: 'define custom import.meta.env', - transform(code) { - if (mode === 'development') { - if (code.includes('import.meta.env?.DEV')) { - return code.replace(/import\.meta\.env\?\.DEV/g, 'true'); - } - } else if (mode === 'production') { - if (code.includes('import.meta.env?.DEV')) { - return code.replace(/import\.meta\.env\?\.DEV/g, 'false'); - } - } - return undefined; - }, - }, babel({ babelHelpers: 'runtime', extensions, }), ], -})); +});