[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: go -buildmode=shared for packages



Hi Michael, thanks for the reply!

On Mon Jul 28, 2025 at 4:30 AM CEST, Michael Hudson-Doyle wrote:
I think the main reason is that there is simply no concept of ABI compatibility in Go. Even your hypothetical "minimal security fix" is quite likely to break ABI in the Go sense, in my (old) experience.

Yeah, that makes sense, and I'm sadly aware of it. Still, this would not exclude others benefits of shared objects, like disk space savings, right?

Also, it should be possible to make changes to the non exported stuff of a go file without risks of breaking ABI, right? In other words, if I change the implementation of a function without touching at all structs, things would still work right?

Having to effectively transition all go packages to a new compiler version doesn't seem a *huge* issue to me, as we have similar issues today, just hidden behind static linking.

Speaking as the person who implemented most of -buildmode=shared, I really should have worked on that end of things first :(

It's never too late! And thank you for that work, really :)


Reply to: