← Back to team overview

openstack team mailing list archive

Re: OpenStack API Versioning Conventions

 

On 10/11/2011 09:02 PM, Mark Nottingham wrote:
Linear versioning is of very limited use.
If OpenStack wants to keep a clear definition of what the OpenStack CORE is, then this needs to evolve linearly (austin, bexar, cactus, diablo, essex, etc...). I think you could make an argument that this should be left to deployers, but for now I think it's accepted that the dev model that produces the OpenStack core should release an unbranched tree. You could compare the ecosystem around linux to that of java. The linux model allows RedHat and Ubuntu to ship patched up versions of the kernel that never actually correspond exactly to a formal kernel version. Java, on the other hand simply has a bunch of independent JVM makers that have to pass a test suite to call themselves java, but are otherwise independent linearly advancing codebases.

Extensions are great, and you could, in theory, make everything an extension. I certainly think lots of stuff should be supplied in a pluggable way, but making everything be an extension seems over the top.


References