[openstack-dev] [nova] Future of the Nova API

Dan Smith dms at danplanet.com
Wed Feb 26 14:38:57 UTC 2014


> We may need to differentiate between breaking the API and breaking
> corner-case behavior.

Totally agreed.

> In one case you force everyone in the ecosystem to
> adapt (the libraries, the end user code). In the other you only
> (potentially) affect those that were not following the API correctly.

The problem is that the API spec is too loose right now, which is
definitely a problem. However, I think I'd much rather tighten things
down and deal with the potential fallout of someone's client breaking
and saying "oh, I thought 'red' was a valid uuid" than whole rewrites.

> We could make a V3 that doesn't break the API, only breaks behavior in
> error cases due to its stronger input validation. A V3 that shouldn't
> break code that was following the API, nor require heavy library
> changes. It's still a major API bump because behavior may change and
> some end users will be screwed in the process, but damage is more
> limited, so V2 could go away after a shorter deprecation period.

What's the difference between saying "/v2 will return a 404 after K" and
saying "If your client doesn't declare support for revision 2 of these
calls" we'll return a 405, 406, 410, etc? Actually, 412 seems to be
exactly this case.

--Dan



More information about the OpenStack-dev mailing list