[No QA] Fix GitHub action builds with TypeScript 6#89061
Conversation
Patch ncc's bundled ts-loader so gh-actions-build can preserve the explicit rootDir required by TypeScript 6. Made-with: Cursor
📲 Install BuildsAndroid
|
Patch ncc's wrapper so GitHub Action bundles continue to emit only index.js even when dependencies contain dynamic imports. Made-with: Cursor
Keep the upstream TypeScript 6 rootDir fix separate from the App-specific single-file action bundle behavior. Made-with: Cursor
|
One of the upstream patches was merged already, just waiting for it to be published. Edit: ncc publishing is broken. I can remove the patch when they get a new version published. |
|
@sobitneupane Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
Reviewer Checklist
Screenshots/VideosAndroid: NativeAndroid: mWeb ChromeiOS: NativeiOS: mWeb SafariMacOS: Chrome / SafariMacOS: Desktop |
|
🚧 @AndrewGable has triggered a test Expensify/App build. You can view the workflow run here. |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🚀 Deployed to staging by https://github.com/AndrewGable in version: 9.3.65-0 🚀
Bundle Size Analysis (Sentry): |
|
🚀 Deployed to production by https://github.com/mountiny in version: 9.3.65-6 🚀
|
Explanation of Change
Patches
@vercel/nccsonpm run gh-actions-buildworks with TypeScript 6 while preserving this repo's single-file GitHub Action bundle behavior.This PR adds:
.github/tsconfig.jsonrootDir.patch-packagepatch for ncc's bundledts-loaderwrapper so it preservesrootDirinstead of passingrootDir: undefined. This corresponds to the upstream ncc PR: feat: support TypeScript 6 transpile builds vercel/ncc#1316patch-packagepatch that forces ncc to merge async chunks back intoindex.js. We need them to be single files so they'll work as GitHub Actions.Fixed Issues
$ #89067
PROPOSAL: N/A
Tests
npm install --ignore-scripts --no-save @vercel/[email protected]scripts/applyPatches.sh@vercel/[email protected]patches apply without errors or warningsnpm run gh-actions-buildcheckAndroidStatusandgetAndroidRolloutPercentagedo not emit numbered chunk files such as522.index.jsOffline tests
n/a
QA Steps
None.
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectioncanBeMissingparam foruseOnyxtoggleReportand notonIconClick)src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari
MacOS: Desktop