On 04/07/2015 11:35 PM, Michael Davies wrote:
On Tue, Apr 7, 2015 at 10:32 PM, Dmitry Tantsur <[email protected]
<mailto:[email protected]>> wrote:

    I'm seeking for advice on what to do with microversions in discoverd.
    Basically I have the following options:

    1. Do nothing. Get whatever behavior I can get from installed Ironic and
    Ironic client. Though unlikely, may get broken by future changes.

    2. Demand version = 1.6. Looks like it keeps compatibility with old clients
    and servers, not sure what downsides are here.

    What are we going to recommend now as upstream?


I agree with Jim R's suggestion - it's really up to the consumer as to what they
want to do.  Having said that...

I think that any consumer wants to use the latest version of the API that it can
support.

And so since we're not planning on making any breaking API changes[1], I think
any consumer wants to:

a) have a concept of the latest API version that it has been coded for
b) then, in negotiation with the server, choose a version that suffices:
b1) negotiated_version = min(your code's max version, max Ironic server 
version) and
b2) negotiated_version > your code's supported version
b3) negotiated_version > Ironic API's minimum version

Is that statement about "not planning on making any breaking API changes" an intention or a guarantee?

The reason I ask is that doc/source/devref/api_microversions.rst contains an explicit mention of making breaking changes: "So breaking changes can be added to the API without breaking users who don't specifically ask for it."

Chris

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: [email protected]?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to