Skip to content

Handle missing absolutePaths for ember-source v7+ - #793

Merged
NullVoxPopuli merged 1 commit into
ember-cli:masterfrom
NullVoxPopuli-ai-agent:handle-missing-absolutePaths
Mar 29, 2026
Merged

Handle missing absolutePaths for ember-source v7+#793
NullVoxPopuli merged 1 commit into
ember-cli:masterfrom
NullVoxPopuli-ai-agent:handle-missing-absolutePaths

Conversation

@NullVoxPopuli-ai-agent

@NullVoxPopuli-ai-agentNullVoxPopuli-ai-agent commented Mar 29, 2026

Copy link
Copy Markdown

Summary

ember-source v7 no longer exports absolutePaths from its addon entry point. This causes a crash in templateCompilerPath() when building classic apps with v7.

Fix: Check if absolutePaths exists before accessing it, and fall back to resolving the template compiler through the package exports map (require.resolve('ember-source/ember-template-compiler/index.js')).

Context: emberjs/ember.js#21240

Test plan

  • Existing tests pass
  • Works with ember-source v5/v6 (uses absolutePaths as before)
  • Works with ember-source v7 (uses require.resolve fallback)

🤖 Generated with Claude Code

Comment threadlib/ember-addon-main.js Outdated
ember-source v7 no longer exports `absolutePaths` from its addon entry
point. Fall back to resolving the template compiler through the package
exports map when `absolutePaths` is absent.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@NullVoxPopuli
NullVoxPopuli merged commit 08d780b into ember-cli:masterMar 29, 2026
14 checks passed
@github-actionsgithub-actionsBot mentioned this pull request Mar 29, 2026
NullVoxPopuli-ai-agent pushed a commit to NullVoxPopuli-ai-agent/ember.js that referenced this pull request Mar 29, 2026
…ider/compat
These patches were temporary shims for v7 compatibility. The upstream
PRs have landed:
- ember-cli-htmlbars: ember-cli/ember-cli-htmlbars#793
- ember-auto-import: embroider-build/ember-auto-import#708
- @embroider/compat: embroider-build/embroider#2695
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
NullVoxPopuli-ai-agent pushed a commit to NullVoxPopuli-ai-agent/ember.js that referenced this pull request Mar 29, 2026
…ider/compat
These patches were temporary shims for v7 compatibility. The upstream
PRs have landed:
- ember-cli-htmlbars: ember-cli/ember-cli-htmlbars#793
- ember-auto-import: embroider-build/ember-auto-import#708
- @embroider/compat: embroider-build/embroider#2695
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
NullVoxPopuli-ai-agent pushed a commit to NullVoxPopuli-ai-agent/ember.js that referenced this pull request Mar 29, 2026
…ider/compat
These patches were temporary shims for v7 compatibility. The upstream
PRs have landed:
- ember-cli-htmlbars: ember-cli/ember-cli-htmlbars#793
- ember-auto-import: embroider-build/ember-auto-import#708
- @embroider/compat: embroider-build/embroider#2695
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
NullVoxPopuli-ai-agent pushed a commit to NullVoxPopuli-ai-agent/ember.js that referenced this pull request Mar 29, 2026
…ider/compat
These patches were temporary shims for v7 compatibility. The upstream
PRs have landed:
- ember-cli-htmlbars: ember-cli/ember-cli-htmlbars#793
- ember-auto-import: embroider-build/ember-auto-import#708
- @embroider/compat: embroider-build/embroider#2695
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
NullVoxPopuli added a commit to emberjs/ember.js that referenced this pull request Mar 29, 2026
…ider/compat
These patches were temporary shims for v7 compatibility. The upstream
PRs have landed:
- ember-cli-htmlbars: ember-cli/ember-cli-htmlbars#793
- ember-auto-import: embroider-build/ember-auto-import#708
- @embroider/compat: embroider-build/embroider#2695
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
NullVoxPopuli added a commit to emberjs/ember.js that referenced this pull request Mar 29, 2026
Add pnpm patches for ember-cli and @embroider/compat paths fix
Patches ember-cli@6.11.0 (ember-cli/ember-cli#10971) and
@embroider/compat@4.1.16 (embroider-build/embroider#2695) to handle
ember-source no longer exporting `paths` in v7.
- ember-cli: guard `_initVendorFiles` against missing `paths`
- @embroider/compat: skip legacy vendor file creation when `paths` absent
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add ember-cli-htmlbars patch, fix sourcemap test
- Patch ember-cli-htmlbars@7.0.0 to handle missing absolutePaths in
v7 ember-source, falling back to the ESM template compiler path.
- Update sourcemap-test.js for v7's ESM-only dist structure
(dist/ember.debug.js no longer exists).
- Include template-compiler-test.js fix for ESM imports.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Fix ember-cli-htmlbars patch: use dist/dev/ path for v7
The v7 build outputs to dist/dev/packages/ and dist/prod/packages/,
not dist/packages/. The template compiler fallback path must use the
dev directory.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Patch ember-auto-import to handle missing absolutePaths
ember-auto-import also accesses emberSource.absolutePaths.templateCompiler
for babel template compilation config. Add the same fallback to the
dist/dev/ ESM template compiler path for v7.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Use require.resolve instead of hardcoded dist path in patches
Replace hardcoded `dist/dev/packages/ember-template-compiler/index.js`
with `require.resolve('ember-source/ember-template-compiler/index.js')`
which resolves through the package exports map, making the patches
resilient to dist layout changes.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove pnpm patches for ember-cli-htmlbars, ember-auto-import, @embroider/compat
These patches were temporary shims for v7 compatibility. The upstream
PRs have landed:
- ember-cli-htmlbars: ember-cli/ember-cli-htmlbars#793
- ember-auto-import: embroider-build/ember-auto-import#708
- @embroider/compat: embroider-build/embroider#2695
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
NullVoxPopuli added a commit to emberjs/ember.js that referenced this pull request Mar 29, 2026
Add pnpm patches for ember-cli and @embroider/compat paths fix
Patches ember-cli@6.11.0 (ember-cli/ember-cli#10971) and
@embroider/compat@4.1.16 (embroider-build/embroider#2695) to handle
ember-source no longer exporting `paths` in v7.
- ember-cli: guard `_initVendorFiles` against missing `paths`
- @embroider/compat: skip legacy vendor file creation when `paths` absent
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add ember-cli-htmlbars patch, fix sourcemap test
- Patch ember-cli-htmlbars@7.0.0 to handle missing absolutePaths in
v7 ember-source, falling back to the ESM template compiler path.
- Update sourcemap-test.js for v7's ESM-only dist structure
(dist/ember.debug.js no longer exists).
- Include template-compiler-test.js fix for ESM imports.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Fix ember-cli-htmlbars patch: use dist/dev/ path for v7
The v7 build outputs to dist/dev/packages/ and dist/prod/packages/,
not dist/packages/. The template compiler fallback path must use the
dev directory.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Patch ember-auto-import to handle missing absolutePaths
ember-auto-import also accesses emberSource.absolutePaths.templateCompiler
for babel template compilation config. Add the same fallback to the
dist/dev/ ESM template compiler path for v7.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Use require.resolve instead of hardcoded dist path in patches
Replace hardcoded `dist/dev/packages/ember-template-compiler/index.js`
with `require.resolve('ember-source/ember-template-compiler/index.js')`
which resolves through the package exports map, making the patches
resilient to dist layout changes.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove pnpm patches for ember-cli-htmlbars, ember-auto-import, @embroider/compat
These patches were temporary shims for v7 compatibility. The upstream
PRs have landed:
- ember-cli-htmlbars: ember-cli/ember-cli-htmlbars#793
- ember-auto-import: embroider-build/ember-auto-import#708
- @embroider/compat: embroider-build/embroider#2695
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Lockfile
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@NullVoxPopuli-ai-agent@NullVoxPopuli@kategengler@bertdeblock