On Mon, Oct 2, 2017 at 12:37 PM Michael William Dodge <mdo...@pivotal.io>
wrote:

> From my days using Win32 APIs, I think fixing Foo() with FooEx() is an
> anti-pattern. But that's not to say that "version 37 fixes the parameters
> to Foo() and in no other way changes anything" is any better. I see the
> version as useful for determining the structure of the protocol, not the
> specifics of a message per se.
>

I was hoping someone would catch the Win32 reference there and exactly why
I said ignore the names. The point is that two messages that different in
content are in fact two distinct messages with very very very minor
exceptions.

One of the disadvantages of using versions is that it can lead to spaghetti
> code such as cascading if statements to handle different versions of any
> given message. I worry that having the client and server negotiate which
> messages they are going to use would also be a significant addition of
> complexity.
>

Look at our current code... If version 65, do this, if 72, do this, if 80
do that... It is a mess.

-Jake

Reply via email to