{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreie7lwipxord6dugazp5yz3zbdxylts3m2i5es46w2xlyead4nlhnq",
"uri": "at://did:plc:ivbknywyskln22er3nkssdhl/app.bsky.feed.post/3mhnwyf7zrbo2"
},
"path": "/t/stable-type-identifiers-a-missing-piece-for-crabi-and-export/24093#post_20",
"publishedAt": "2026-03-20T16:23:45.000Z",
"site": "https://internals.rust-lang.org",
"textContent": "Thank you for your perspective.\n\nI believe there are two approaches, and both lead to the same conclusion: crABI needs stable type identifiers, and TypeId needs to increase the size of its hash to 128 bits to be collision-resistant.\n\nThese aren’t two separate problems; they both address the same concept: ensuring clear identification across each compilation. Implementing them as two separate features would create two sources that are not truly contradictory regarding the same concept.\n\nThe question isn’t whether they should be related, but whether it makes sense for them not to be.",
"title": "Stable type identifiers: a missing piece for crABI and export"
}