[Kimchi-devel] [Proposal] Introducing the version in REST API URI for kimchi/ginger plugins

Aline Manera alinefm at linux.vnet.ibm.com
Thu Aug 6 19:38:02 UTC 2015



On 06/08/2015 16:36, Aline Manera wrote:
>
>
> On 06/08/2015 16:21, Harshal Patil wrote:
>> Typical use case... I write a fancy bindings for wok RESTful APIs 
>> say, in Haskell (because yeah! ;-) ). For the given endpoint (let's 
>> say /abc) there is a JSON response you get for the GET method. 
>> Everything is working fine until wok developers figure out that with 
>> the changing needs may be the JSON sent as a response by /abc GET 
>> might need to change. At this point if our RESTful API supports 
>> versioning poor Haskell loving engineers can still be sure that 
>> their bindings will work properly while giving the flexibility to wok 
>> developers to change the product with changing requirements.
>
> With version or not, if users want to update to the newer Kimchi/wok 
> version they will need to update their application to use the new API 
> otherwise they will keep back on old version.
>
> All that because we don't  (and will not!) maintain old versions - as 
> I said before.
>
> I understand the scenario but it only makes sense while taking track 
> on different versions simultaneously - which is not our case.
> If you need to do that for other matters, you suggest to maintain one 
> branch per version and keep tracking on which patch to apply on each 
> branch.

s/you suggest to/I suggest you to/ =)

>
>
>>     ----- Original message -----
>>     From: Aline Manera <alinefm at linux.vnet.ibm.com>
>>     Sent by: kimchi-devel-bounces at ovirt.org
>>     To: Chandra Shehkhar Reddy Potula <chandra at linux.vnet.ibm.com>,
>>     kimchi-devel at ovirt.org
>>     Cc:
>>     Subject: Re: [Kimchi-devel] [Proposal] Introducing the version in
>>     REST API URI for kimchi/ginger plugins
>>     Date: Fri, Aug 7, 2015 12:03 AM
>>
>>
>>     On 06/08/2015 07:41, Chandra Shehkhar Reddy Potula wrote:
>>>     Hi Aline,
>>>
>>>     No need to mention explicitly, but this is very useful in case
>>>     where end users are exploiting functionality via REST API
>>>     directly and not UI way.
>>
>>     I suppose end users know which version he/she is using, right? =)
>>>
>>>     Regards
>>>     Chandra
>>>     On 08/06/2015 01:52 PM, Chandra Shehkhar Reddy Potula wrote:
>>>>     Hi Aline,
>>>>
>>>>     Versioning helps you iterate faster and prevents invalid
>>>>     requests from hitting updated endpoints. It also helps smooth
>>>>     transitions over any major API version as you can continue to
>>>>     offer old API versions for a period of time. Definitely
>>>>     supporting the old version of API period of time while offering
>>>>     new functionality with newer version always give benefits and
>>>>     extra time for end user to adjust to new one.
>>>>
>>>>     I see lot of products in the market are adapting versioning
>>>>     (see below link)
>>>>     http://www.lexicalscope.com/blog/2012/03/12/how-are-rest-apis-versioned/
>>>>
>>>>     I do understand the concern of maintaining the version of the
>>>>     API endpoints , below are some of the links from Openstack,
>>>>     which talks about it.
>>>>     http://developer.openstack.org/api-ref.html
>>>>     https://wiki.openstack.org/wiki/VersionDiscovery
>>>>
>>>>     Hope it make senses to you.
>>>>
>>>>     Regards
>>>>     Chandra
>>>>     On 08/06/2015 12:04 AM, Aline Manera wrote:
>>>>>
>>>>>     Hi Chandra,
>>>>>
>>>>>     I don't see any benefit in adding the version in the URL.
>>>>>     Instead of that, it scares me on how we will maintain it.
>>>>>
>>>>>     Once we move to wok and Kimchi as plugin, all the APIs will be
>>>>>     automatically updated so everything will be in the same page.
>>>>>
>>>>>     Regards,
>>>>>     Aline Manera
>>>>>     On 17/07/2015 09:47, Chandra Sr Potula wrote:
>>>>>>
>>>>>>     Hi Kimchi/Ginger Devel-Team,
>>>>>>
>>>>>>     Thank you for creating WOK branch to separate the kimchi
>>>>>>     plugin from the base frame work. It is a great idea.
>>>>>>
>>>>>>     Along with the separation of kimchi plugin looks like there
>>>>>>     is a transformation of REST API URIs as well. So thinking in
>>>>>>     those lines will it be good idea even to introduce version to
>>>>>>     the REST API URIs ?
>>>>>>
>>>>>>     Let me take one REST API URI to convey clear on what I am
>>>>>>     talking about.
>>>>>>
>>>>>>     To retrieve the host repository information, current URI is:
>>>>>>      "/plugins/kimchi/host/repositories".
>>>>>>
>>>>>>     *Recommendation*:
>>>>>>     New host repository URI can look like :
>>>>>>     *"**/plugins/kimchi/v<version>/host/repositories" , *so that
>>>>>>     it is easy to maintain REST API future enhancements at the
>>>>>>     same time do not brake some body who is using the existing URI.
>>>>>>
>>>>>>     Note* Adding version in the  URI above is just an example and
>>>>>>     we could place the version in the URI best possible way.
>>>>>>
>>>>>>     Thanks and Regards,
>>>>>>     *Chandra Shekhar Reddy Potula*
>>>>>>     Staff System Software Engineer
>>>>>>     IBM Systems & Technology Group, Systems Software Development
>>>>>>     System z Firmware Development
>>>>>>
>>>>>>     ------------------------------------------------------------------------
>>>>>>     *Phone:* 91-080-4066-0786 | *Mobile:* 91-973-1122-221
>>>>>>     *E-mail:*_chandra.shekhar at in.ibm.com_
>>>>>>     <mailto:chandra.shekhar at in.ibm.com> 	
>>>>>>     IBM
>>>>>>
>>>>>>     ORR, Manyatha MD3 1F B247
>>>>>>     Bengaluru, Karnataka 560045
>>>>>>     India
>>>>>>
>>>>>>     _______________________________________________
>>>>>>     Kimchi-devel mailing list
>>>>>>     Kimchi-devel at ovirt.org <mailto:Kimchi-devel at ovirt.org>
>>>>>>     http://lists.ovirt.org/mailman/listinfo/kimchi-devel
>>>>>
>>>>>     _______________________________________________
>>>>>     Kimchi-devel mailing list
>>>>>     Kimchi-devel at ovirt.org <mailto:Kimchi-devel at ovirt.org>
>>>>>     http://lists.ovirt.org/mailman/listinfo/kimchi-devel
>>>>
>>>>     _______________________________________________
>>>>     Kimchi-devel mailing list
>>>>     Kimchi-devel at ovirt.org <mailto:Kimchi-devel at ovirt.org>
>>>>     http://lists.ovirt.org/mailman/listinfo/kimchi-devel
>>     _______________________________________________
>>     Kimchi-devel mailing list
>>     Kimchi-devel at ovirt.org
>>     http://lists.ovirt.org/mailman/listinfo/kimchi-devel
>>
>>
>
>
>
> _______________________________________________
> Kimchi-devel mailing list
> Kimchi-devel at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/kimchi-devel

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/kimchi-devel/attachments/20150806/2cc76c05/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/gif
Size: 360 bytes
Desc: not available
URL: <http://lists.ovirt.org/pipermail/kimchi-devel/attachments/20150806/2cc76c05/attachment.gif>


More information about the Kimchi-devel mailing list