16:00:04 <etoews> #startmeeting api wg 16:00:07 <openstack> Meeting started Thu Jul 7 16:00:04 2016 UTC and is due to finish in 60 minutes. The chair is etoews. Information about MeetBot at http://wiki.debian.org/MeetBot. 16:00:08 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 16:00:10 <openstack> The meeting name has been set to 'api_wg' 16:00:21 <cdent> o/ 16:00:25 <rosmaita> o/ 16:00:29 <elmiko> heyo/ 16:00:31 <etoews> #chair elmiko cdent 16:00:32 <openstack> Current chairs: cdent elmiko etoews 16:00:39 <etoews> good day 16:01:51 <elmiko> definitely, although i think it's gonna rain here :/ 16:01:51 <etoews> #link https://wiki.openstack.org/wiki/Meetings/API-WG#Agenda 16:02:07 <etoews> #topic proposal for a new Glance schema for v2/schemas/member response 16:02:22 <etoews> #link https://bugs.launchpad.net/glance/+bug/1585917/comments/3 16:02:22 <openstack> Launchpad bug 1585917 in Glance "member-create will raise 500 error if member-id is greater than 255 characters" [Undecided,Confirmed] - Assigned to Abhishek Kekane (abhishek-kekane) 16:02:29 <etoews> #link http://developer.openstack.org/api-ref-image-v2.html#showImageMemberSchema 16:02:37 <etoews> take it away rosmaita 16:02:39 <rosmaita> so i don't type a bunch of json in here, take a look at this: https://etherpad.openstack.org/p/member-schema-situation 16:03:37 <rosmaita> problem is that the current schema describes the response, but not the request 16:03:40 <elmiko> ooph 16:04:02 <elmiko> is there a non-historical reason why so much information is passed through the path for creation? 16:04:54 <rosmaita> not sure, but the idea is a member is a resource on another resource 16:05:28 <elmiko> ah, ok. so the path info actually helps to locate the resource, is that accurate? 16:05:32 <rosmaita> it seemed like a good idea at the time 16:05:35 <rosmaita> yes 16:06:08 <elmiko> ok, thanks. yeah, i'm not casting any opinion about the usage, just trying to understand =) 16:06:30 <rosmaita> so the sketch on comment/3 on that bug linked above is an attempt to be backward compatable as far as request/response goes 16:06:51 <rosmaita> because another proposal is to accept *either* member: or member_id: on the request 16:07:01 <rosmaita> which we'd prefer to avoid 16:07:31 <rosmaita> elmiko: :) 16:07:40 <elmiko> is that bug based on the member_id being passed in the url, which then becomes too long? 16:08:15 <rosmaita> no, it's that in the member-detail response, it's identified as "member_id" 16:08:25 <rosmaita> but in the member-create request, it's identified as "member" 16:08:34 <elmiko> ahh, got it 16:08:36 <elmiko> thanks 16:08:39 <rosmaita> np 16:09:07 <rosmaita> i just wanted to float this idea and see what y'all think of that schema 16:09:15 <elmiko> seems like making the body accept schema a little looser is one way to solve this 16:10:20 <elmiko> would the team ever plan to deprecate one or the other? 16:10:27 <cdent> what would the negatives of accepting both be? 16:10:46 <rosmaita> just general ugliness 16:10:57 <rosmaita> not sure about deprecation 16:10:57 * cdent looks around 16:10:58 <cdent> :D 16:11:36 <rosmaita> the new schema would allow us to codify the current practice, wouldn't need to deprecate anything 16:12:21 <cdent> I think that's better than leaving it as it is 16:12:25 <elmiko> the schema looks fine to me, i don't have a strong feeling about the inclusion of both names. it seems to be solving a difficult issue, i'd be ok with it. 16:13:05 <rosmaita> i'm curious what you think of it as an approach where you have asymmetric request/response bodies 16:13:21 <rosmaita> or is it a bad practice to have asymmetric request/response bodies in the first place 16:13:34 <elmiko> well, my preference would be to quash the asymmetry, but that may not be an option here 16:13:39 <cdent> rosmaita: that's a religious question 16:13:45 <elmiko> exactly.. ;) 16:13:58 <cdent> orthodoxy would say it is bad 16:14:03 <rosmaita> cdent: i am a lapsed restafarian 16:14:11 <elmiko> lol 16:14:26 <cdent> most people are (I am) 16:15:09 <elmiko> given the state of things, i'm not sure there is a better solution. i mean, changing the values leads to the path of deprecation, which leads to madness.... \o/ 16:15:51 <elmiko> or, alternatively, creating some new endpoints for members. which sounds undesirable from my understanding 16:16:28 <rosmaita> elmiko: definitely undesirable from my perspective! 16:17:15 <rosmaita> quick technical question: i have everything marked readOnly in the response, even status 16:17:33 <rosmaita> which is *not* readonly in #/definitions/image-member-update-request 16:17:43 <rosmaita> not sure that's correct 16:18:08 <rosmaita> i was thinking, you cannot submit the #/definitions/image-member-detail-response as a request body 16:18:13 <elmiko> if it's the response, i wouldn't think it should matter 16:18:25 <rosmaita> ok, that's basically my question 16:19:32 <rosmaita> ok, this has been helpful ... don't know what way glance will go on this, but i wanted to get some early feedback on this option 16:19:37 <rosmaita> thank you! 16:19:38 * cdent needs to level up on json schema 16:20:01 <cdent> thank you rosmaita, it's nice having people come round for a visit 16:20:06 <elmiko> yeah, i'd have to check my jsonschema notes. that stuff is way too dense for me to remember it all ;P 16:20:17 <etoews> i'm heavily distracted here. please carry on without me. 16:20:19 <elmiko> cdent++ 16:22:04 <elmiko> #topic guidelines 16:22:20 <elmiko> #link https://review.openstack.org/#/q/status:open+project:openstack/api-wg,n,z 16:22:35 <cdent> I need to decide what to do about the details boolean example in the url guideline 16:22:38 <elmiko> that list has shrunk considerably 16:22:57 * elmiko looks 16:24:11 <elmiko> cdent: what does json permit for boolean values? 16:24:32 <cdent> true or false 16:24:39 <cdent> but that's not really the issue 16:24:53 <cdent> we don't want to cloud the example there by having something fuzzy 16:25:03 <elmiko> right, i was more curious about the possibility of relying on the json standard for the language used in the uri 16:25:06 <cdent> so I need a different way to say the right thing without needing an ambiguous answer 16:25:24 <cdent> I suppose that might be oka 16:26:05 <elmiko> i totally get the ambiguity issue, but i'm not sure i like the idea of using something like `?details` `?nodetails` 16:26:27 <elmiko> i mean, at least that is clearer i suppose 16:26:58 <elmiko> i dunno, maybe that is the best idea 16:27:34 <cdent> It doesn't need to be a stopper, but it seems people will read anything put there as normative (I could warn that it is not?) 16:28:13 <elmiko> yea, agreed 16:28:30 <cdent> ✔ 16:29:19 <elmiko> i guess the question is, do we advise using some sort of boolean values, or as Dolph suggests, do we recommend a well defined default with a param for switching it 16:30:08 <elmiko> gotta say, that his suggestion does seem to reduce ambiguitiy at the cost of no clear standard for boolean options 16:30:23 <elmiko> i mean, the parameter key will be whatever you choose basically 16:30:57 * cdent nods 16:32:29 <cdent> I'll meditate upon these things and make a new version. It doesn't feel like we're going to have a clear insight today. 16:33:19 <elmiko> ++ 16:34:02 <cdent> my ride (my sister) is departing soon, so I may need to bail out soon 16:34:13 <elmiko> ack 16:34:19 <elmiko> should we merge https://review.openstack.org/#/c/330687 ? 16:34:36 <cdent> yes 16:35:03 <elmiko> ok, done 16:35:11 <elmiko> got my review for this cycle in ;P 16:36:06 <elmiko> seems like we could merge this too https://review.openstack.org/#/c/330876 16:36:55 <cdent> yup, done 16:36:59 <elmiko> \o/ 16:38:00 <elmiko> should we work up a new version of the newsletter quickly? 16:38:54 <cdent> yeah, best you be the poster this time since I might disapper 16:39:24 <elmiko> ok, should be pretty easy. looks like not much new happening. although i'll note those 2 reviews we merged 16:41:22 <cdent> #link https://etherpad.openstack.org/p/api-wg-newsletter 16:41:27 <cdent> just for reference 16:41:37 <elmiko> is that preferred over the wiki copy? 16:42:27 <cdent> we've tended to edit that one for each new version 16:42:34 <cdent> since there's usually much of the same stuff 16:42:34 <elmiko> ok, cool 16:42:48 <cdent> edit each section, add an intro at the top, done 16:43:01 <cdent> I've removed the intro, but can't think of what to put there this time 16:43:03 <elmiko> should i add that stuff in the etherpad then? 16:43:11 <elmiko> i'll make something up ;) 16:44:34 <cdent> ✔ 16:46:45 <cdent> looks good 16:46:57 <elmiko> ok, added a little intro and removed old links. otherwise, i think you did the heavy lifting of adding the new links =) 16:47:02 <elmiko> cool, i'll ship it! 16:47:35 <elmiko> should we close up shop then? 16:47:45 <cdent> yeah, reckon so 16:47:56 <elmiko> k, take care =) 16:47:59 <elmiko> o/ 16:48:03 <elmiko> #endmeeting