Proposal Details

See https://github.com/golang/go/issues/53757#issuecomment-2980378567 , #53757 can delay the propagation of panics arbitrarily far into the future, making mistakes that used to be promptly discovered latent.

We can panic during Group.add to preserve the original behavior(fast panic when with not call Wait). However, this means that we are in Group.Go propagate panic. This is API change ,so I submit this proposal.

I can send CL implement this proposal.

open-ended question: Is propagate runtime.Goexit through Go? Propagate the first panic or all panics? A subtle difference from the previous fast panic, where the previous panic had to be recovered within the function, now it can be recovered outside of the function. Is this acceptable?

Comment From: qiulaidongfeng

To clarify, https://go.dev/cl/682335 It can alleviate this problem #53757 (comment) ,but not solve it.

Comment From: gabyhelp

Related Issues

(Emoji vote if this was helpful or unhelpful; more detailed feedback welcome in this discussion.)