1. 8
  1.  

  2. 2

    (Why start at version v1.20.0? To provide clarity. We do not anticipate APIv1 to ever reach v1.20.0, so the version number alone should be enough to unambiguously differentiate between APIv1 and APIv2.)

    This is an uh, questionable interpretation of SemVer…

    1. 1

      Does the Go project use semver?

      1. 1

        Normally I’m pretty pragmatic, but this bugs me a lot. Yes, google.golang.org/protobuf/v2 is longer, but it also signals to new users that this isn’t just the existing v1 code moved to a new import path. IMO, they should have:

        • Put the old v1 library at google.golang.org/protobuf in addition to it’s current github.com/golang/protobuf path.
        • Put the new one at google.golang.org/protobuf/v2.

        It also feels weird that Google gets a special subdomain on the golang.org domain. I know they wrote the language, but isn’t it supposed to be open source and owned by the community?

        1. 4

          isn’t it supposed to be open source and owned by the community?

          No, not at all. (And open source doesn’t imply any community involvement.)

      2. 2

        To me, this blog post is a master class in real-world software engineering. It’s thoughtful, pragmatic and respectful to both old and new users.

        1. 1

          Hmmm. Didn’t say anything about differences in performance…