Skip to content

Add static literal dynamic imports - #363

Merged
ctate merged 1 commit into
mainfrom
codex/static-dynamic-import
Sep 20, 2026
Merged

ctate merged 1 commit into
mainfrom
codex/static-dynamic-import

Conversation

@ctate

@ctate ctate commented Sep 20, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Compile literal import() expressions natively for TypeScript and ESM source modules plus supported Node builtins.
  • Add first-class nominal module namespace IR values with stable identity, live exports, promise transport, and C and LLVM backend support.
  • Preserve native microtask-delayed evaluation, guarded initialization, top-level await, cycles, and self-import behavior.
  • Support Object.keys for compiled source namespaces and regenerate the Node 24 compatibility ledger and limitation docs.

Explicit fences

  • Computed specifiers, import attributes, CommonJS namespace synthesis, and shipped JavaScript packages remain fenced or require the dynamic lane.
  • Object.values and Object.entries over module namespaces, plus Object.keys over builtin namespaces, remain explicit static diagnostics.

Validation

  • pnpm -r build
  • pnpm lint (0 errors; existing warnings only)
  • focused C and LLVM differential import coverage
  • full diagnostics and error suites
  • pnpm node-compat:check
  • cd docs && NEXT_DIST_DIR=.next-check pnpm check
  • pnpm test:ts7 (143 tests; 1,410 order entries)
  • pnpm test:sandbox (plain and sanitized Linux lanes passed across 16 sandboxes)

@vercel

vercel Bot commented Sep 20, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
scriptc Ready Ready Preview, v0 Sep 20, 2026 8:51pm UTC

@ctate
ctate merged commit 69977b9 into main Sep 20, 2026
20 checks passed

This branch was successfully deployed

1 active deployment
Preview 8874390b Deployed Sep 20, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant