Repository navigation
getSpecifierForModuleSymbol failing in 5.5 rcΒ #58819
Description
π Search Terms
getSpecifierForModuleSymbol, Debug Failure, False expression,
π Version & Regression Information
- This is a crash
- This changed between versions 5.5 beta and 5.5 rc
β― Playground Link
https://github.com/Agoric/agoric-sdk/actions/runs/9440222557/job/25999288161?pr=9476
π» Code
My only repro is half-way through the build of a large repo, so I don't think I can isolate it to a code snippet.
Agoric/agoric-sdk#9476 changed the typescript from,
- typescript@^5.5.0-beta
- version "5.5.0-dev.20240426"
- resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.0-dev.20240426.tgz#e9ba7d0b3cdaa54021faca61d1bc399e4766c93b"
- integrity sha512-96cu+y3DrjSNhNSgB3t3nRiesCwBVjZpbjJ6DcQoCgt0crXXPrOMmJQH/E8TZ41U4JzaULD+cB1Z2owh5HANew==
+ typescript@^5.5.1-rc:
+ version "5.5.1-rc"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.1-rc.tgz#4be420f1ecb5e66c52a7cb11444f06f02294c977"
+ integrity sha512-7cbqBhh2QH0RaI7AD0ElJ2Ww/iRdW1w2wH/S2dv6EbdNQQlv39fx+V5VOepxLgfUvRkU5D5pxzgPuvHSAQOdpQ==A CI job builds each package topologically.
π Actual behavior
The job started failing with:
Error: Debug Failure. False expression.
at first (/home/runner/work/agoric-sdk/agoric-sdk/node_modules/typescript/lib/tsc.js:605:9)
at getSpecifierForModuleSymbol (/home/runner/work/agoric-sdk/agoric-sdk/node_modules/typescript/lib/tsc.js:50904:21)
at rewriteModuleSpecifier (/home/runner/work/agoric-sdk/agoric-sdk/node_modules/typescript/lib/tsc.js:51977:22)
at visitExistingNodeTreeSymbolsWorker (/home/runner/work/agoric-sdk/agoric-sdk/node_modules/typescript/lib/tsc.js:51827:58)
at visitExistingNodeTreeSymbols (/home/runner/work/agoric-sdk/agoric-sdk/node_modules/typescript/lib/tsc.js:51535:24)
at visitArrayWorker (/home/runner/work/agoric-sdk/agoric-sdk/node_modules/typescript/lib/tsc.js:87695:49)
at visitNodes2 (/home/runner/work/agoric-sdk/agoric-sdk/node_modules/typescript/lib/tsc.js:87666:19)
at tryVisitTypeReference (/home/runner/work/agoric-sdk/agoric-sdk/node_modules/typescript/lib/tsc.js:51672:33)
at visitExistingNodeTreeSymbolsWorker (/home/runner/work/agoric-sdk/agoric-sdk/node_modules/typescript/lib/tsc.js:51811:26)
at visitExistingNodeTreeSymbols (/home/runner/work/agoric-sdk/agoric-sdk/node_modules/typescript/lib/tsc.js:51535:24)
In the debugger I see that it happens while looking for escapedName: 'globalThis' in the context of this file.
π Expected behavior
Continues to build like the beta and past releases.
Additional information about the issue
Our repo makes use of a hack to make types available both ambiently and by explicit imports.
https://github.com/Agoric/agoric-sdk/blob/e7b0cebd17f093793e93f4f236921cb4a3f595b8/packages/internal/exported.d.ts#L17-L29
The motivation for this is in transitioning from ambient types to define exportable types and retain backwards compatibility with consumers expecting ambients.
Activity
andrewbranch commentedon Jun 13, 2024
Turadg Aleahmad (@turadg) are you able to reproduce this locally? Iβm hitting something else first when I try. Hereβs what Iβve got:
turadg commentedon Jun 13, 2024
Andrew Branch (@andrewbranch) a
yarn buildmakes the bundles.I just slimmed Agoric/agoric-sdk#9476 to one commit adopting TS 5.5 rc1 then rebased on master. Here's my local repro,
ends with,