I just emerged go-1.24.0. Up to now, the go build log always asked for @golang-rebuild, and @golang-rebuild re-emerged sys-libs/libcap, but for 1.24.0, there was no such log message, and @golang-rebuild is also no longer recognized. My other go ebuild (doggo) was rebuilt automatically together with go, but sys-libs/libcap definitely contains go executables and was *not* rebuilt. Is rebuilding no longer necessary, or should it have been rebuilt automatically?
libcap depends on go with dev-lang/go in BDEPEND but with no :=. While the := in BDEPEND thing is IMHO somewhat dubious, I agree it should be there for consistency.
The @golang-rebuild set is provided by dev-lang/go. It appears this set got dropped in dev-lang/go-1.24.0. Adding a slot operator to BDEPEND is not necessary for this set to function properly.
Is the golang-rebuild set still needed? I see when I upgrade/downgrade go that rebuilds are automatically triggered. Thanks, William
Looking this over, the rebuilds are triggered by the BDEPEND including the slot operator. I don't have an issue with adding back the @golang-rebuild set, but we should also make sure we check all dependencies on dev-lang/go in the tree to make sure they are correct. operator in bdepend.
I wasn't aware that Portage did slot operator rebuilds based on BDEPEND. Sam's comment makes more sense now. Agreed, someone needs to audit the gentoo repo and add the missing slot operators.
I think we should make sure all ebuilds that use go are inheriting go-module since the eclass sets the proper BDEPEND by default. If ebuilds can't inherit the go-module eclass we should try to figure out why. Thanks, William