This is one of those topics on which everyone has and opinion and no two 
people will agree 100%. I will say that "Go by your gut" is probably bad 
general advice. It works well for folks that have a lot of experience, and 
have done significant reading and research on the topic. But "going with 
your gut" in general is exactly how we have ended up where we are, with so 
many example of bad versioning.  

The go compatibility guarantee is definitely worth a look: 
https://golang.org/doc/go1compat. I also found that this talk by Rich Hickey 
<https://www.youtube.com/watch?v=oyLBGkS5ICk> was a good conceptual 
explanation of breaking changes, and definitely worth watching. (This video 
was linked in https://research.swtch.com/vgo-import by Russ Cox, and is not 
directly about Go.)

Having packages that maintain good backward compatibility seem more common 
in Go than many other languages. They are critical to a thriving Go 
ecosystem. So let's all do the extra work.

On Friday, March 9, 2018 at 8:56:16 AM UTC-5, Maxim Ivanov wrote:
>
> In  the light of recent vgo discussion, I was thinking about what would be 
> major change or and what wouldn't. 
>
> Wanted to ask  Goers, in the new better post vgo world, if you changed 
> exported function argument from *int* to *float*, would you  release your 
> package as v2?
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to