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
