[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