Versioning is a crtiical part of delivering software to users. With bazel, you can derive per-build values and inject them anywhere in your build process.
bzlmod makes bazel extremely appealing and isn’t hard to grasp for anyone already familiar with go modules. My frustration with make for complex builds led me to bazel.