Go modules have a v2+ problem
In the go ecosystem, packages are imported per file. Go is designed for large systems to evolve over time. You need to be able to refer to v1 and v2 at the same time.Thus the "/v2" requirement.Yes, it is different. Stop complaining, do it, and it just works. Here is the tutorial.1. Modify go.mod package path to include the "/v2" element.
2. Commit.
3. Tag as "v2.0.0"
4. Push tag.I'm not seeing what is too confusing about releasing.To consume, on packages that you want it, import the new package. Done.Being able to import multiple versions without conflict has been extremely helpful when I've needed new features in one version, but didn't want to update (at the same time time) all the other places.I really don't get why people don't like it, other then it is different then what they expect elsewhere.