Skip to content

NXT-20660: Fix error ts - #401

Merged
ion-andrusciac-lgp merged 3 commits into
feature/typescriptfrom
feature/NXT-20660
Oct 7, 2026
Merged

ion-andrusciac-lgp merged 3 commits into
feature/typescriptfrom
feature/NXT-20660

Conversation

@dan-ichim-lgp

@dan-ichim-lgp dan-ichim-lgp commented Sep 28, 2026 •

Copy link
Copy Markdown

Checklist

  • I have read and understand the contribution guide
  • A CHANGELOG entry is included
  • I have run automated testing and it is passed
  • Documentation was added or is not needed
  • This is an API breaking change

Issue Resolved / Feature Added

enact pack fails when the app depends on TypeScript 7. TypeScript 7 publishes only a version entry and does not expose the classic compiler API (createProgram). fork-ts-checker-webpack-plugin resolves typescript through pkg.main, that lookup throws MODULE_NOT_FOUND, and the pack command exits before the framework bundle is written.

The optional typescript peer dependency accepted only ^7.0.2, so an app that still depends on TypeScript 5.x did not satisfy it.

A failure inside the dynamic import('chalk') chain was also swallowed. enact.js logs the exception and still exits 0, so CI treated the pack as successful.

enact transpile left TypeScript and JSX sources in place, so the build output was not resolvable by consumers.

Resolution

enact pack now skips type checking when the installed typescript package has no createProgram, and prints a warning. Apps on TypeScript 5.x still run fork-ts-checker-webpack-plugin as before.

The optional typescript peer dependency is ^5.4.0 || ^7.0.2, so both TypeScript 5.x and TypeScript 7 are accepted.

Pack failures are returned through the promise chain and always exit with code 1, including when chalk has not loaded yet.

enact transpile emits .js from .ts, .tsx, and .jsx sources, copies .d.ts files as-is, and rewrites package.json main fields that point at those sources.

Additional Considerations

Links

NXT-20660

Comments

Enact-DCO-1.0-Signed-off-by: Dan Ichim (dan.ichim@lgepartner.com)

@dan-ichim-lgp dan-ichim-lgp self-assigned this Sep 28, 2026
@daniel-stoian-lgp

Copy link
Copy Markdown
Contributor

PR description says " Apps on TypeScript 5.x still run fork-ts-checker-webpack-plugin as before.", but in package.json, it still mentions "peerDependencies": {
"typescript": "^7.0.2"
}, . please chenge it

@daniel-stoian-lgp

Copy link
Copy Markdown
Contributor

please add changelog entries for your changes

@ion-andrusciac-lgp
ion-andrusciac-lgp merged commit 32003fc into feature/typescript Oct 7, 2026
2 checks passed
@ion-andrusciac-lgp
ion-andrusciac-lgp deleted the feature/NXT-20660 branch October 7, 2026 10:46
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.

3 participants