*** annegent_ has joined #openstack-api | 00:07 | |
*** annegentle_ has quit IRC | 00:08 | |
*** annegent_ has quit IRC | 00:23 | |
*** Apoorva has quit IRC | 00:35 | |
*** Apoorva has joined #openstack-api | 01:35 | |
*** Apoorva has quit IRC | 01:40 | |
*** annegentle_ has joined #openstack-api | 01:43 | |
*** jxstanford has quit IRC | 02:01 | |
*** annegentle_ has quit IRC | 02:09 | |
*** jxstanford has joined #openstack-api | 02:51 | |
*** Apoorva has joined #openstack-api | 02:53 | |
*** annegentle_ has joined #openstack-api | 03:30 | |
*** jxstanford has quit IRC | 03:49 | |
*** annegentle_ has quit IRC | 03:57 | |
*** jxstanford has joined #openstack-api | 04:07 | |
*** jxstanford has quit IRC | 04:25 | |
*** Apoorva has quit IRC | 04:51 | |
*** briancurtin has quit IRC | 04:58 | |
*** ameade has quit IRC | 04:59 | |
*** briancurtin has joined #openstack-api | 04:59 | |
*** ameade has joined #openstack-api | 05:01 | |
*** ameade has quit IRC | 05:36 | |
*** briancurtin has quit IRC | 05:36 | |
*** ameade has joined #openstack-api | 05:40 | |
*** briancurtin has joined #openstack-api | 05:44 | |
*** e0ne has joined #openstack-api | 06:13 | |
*** alexus is now known as alex_xu | 06:14 | |
*** e0ne has quit IRC | 06:17 | |
*** e0ne has joined #openstack-api | 06:21 | |
*** e0ne has quit IRC | 06:29 | |
*** e0ne has joined #openstack-api | 06:33 | |
*** e0ne has quit IRC | 06:56 | |
*** e0ne has joined #openstack-api | 07:00 | |
*** e0ne has quit IRC | 07:22 | |
*** e0ne has joined #openstack-api | 07:26 | |
*** e0ne has quit IRC | 07:29 | |
*** e0ne has joined #openstack-api | 07:29 | |
*** e0ne has quit IRC | 07:30 | |
*** ameade has quit IRC | 07:31 | |
*** ameade has joined #openstack-api | 07:48 | |
*** lucasagomes has joined #openstack-api | 08:03 | |
*** fzdarsky has joined #openstack-api | 08:28 | |
*** fzdarsky_ has joined #openstack-api | 08:46 | |
*** fzdarsky has quit IRC | 08:49 | |
*** e0ne has joined #openstack-api | 08:55 | |
*** alex_klimov has joined #openstack-api | 09:53 | |
*** alex_klimov has quit IRC | 10:32 | |
*** alex_klimov has joined #openstack-api | 10:32 | |
*** cdent has joined #openstack-api | 11:02 | |
*** ig0r_ has joined #openstack-api | 11:08 | |
*** lucasagomes is now known as lucas-hungry | 11:17 | |
*** woodster_ has joined #openstack-api | 12:01 | |
*** ig0r_ has quit IRC | 12:05 | |
*** lucas-hungry is now known as lucasagomes | 12:11 | |
*** annegentle_ has joined #openstack-api | 13:08 | |
*** jxstanford has joined #openstack-api | 13:14 | |
*** jxstanford has quit IRC | 13:16 | |
*** annegentle_ has quit IRC | 13:16 | |
*** annegentle_ has joined #openstack-api | 13:17 | |
*** terrylhowe has joined #openstack-api | 13:17 | |
*** annegentle_ has quit IRC | 13:30 | |
*** annegentl_ has joined #openstack-api | 13:30 | |
*** alex_klimov has quit IRC | 13:32 | |
*** annegentl_ has quit IRC | 13:48 | |
*** annegentl_ has joined #openstack-api | 14:11 | |
*** alex_klimov has joined #openstack-api | 14:15 | |
*** sigmavirus24_awa is now known as sigmavirus24 | 14:16 | |
*** sc68cal_ has joined #openstack-api | 14:36 | |
*** sc68cal has quit IRC | 14:37 | |
*** sc68cal_ is now known as sc68cal | 14:37 | |
*** kfox1111_ has joined #openstack-api | 14:39 | |
*** sdague_ has joined #openstack-api | 14:40 | |
*** krotscheck_ has joined #openstack-api | 14:41 | |
*** krotscheck has quit IRC | 14:42 | |
*** sdague has quit IRC | 14:42 | |
*** kfox1111 has quit IRC | 14:42 | |
*** sdague_ is now known as sdague | 14:42 | |
*** krotscheck_ is now known as krotscheck | 14:42 | |
*** terrylhowe has left #openstack-api | 14:56 | |
*** jxstanford has joined #openstack-api | 16:08 | |
*** vishwanathj has joined #openstack-api | 16:12 | |
*** alex_klimov has quit IRC | 16:15 | |
*** notmars has joined #openstack-api | 16:17 | |
*** e0ne has quit IRC | 16:18 | |
*** Apoorva has joined #openstack-api | 16:23 | |
*** salv-orlando has joined #openstack-api | 16:26 | |
*** annegentl_ has quit IRC | 16:40 | |
*** notmars has quit IRC | 16:48 | |
*** e0ne has joined #openstack-api | 17:15 | |
*** openstackgerrit has quit IRC | 17:16 | |
*** openstackgerrit has joined #openstack-api | 17:17 | |
*** lucasagomes is now known as lucas-dinner | 17:21 | |
*** annegentl_ has joined #openstack-api | 17:44 | |
*** annegentl_ has quit IRC | 17:56 | |
*** annegentl_ has joined #openstack-api | 17:56 | |
*** lucas-dinner has quit IRC | 18:52 | |
*** lucas-dinner has joined #openstack-api | 19:04 | |
*** jxstanford has quit IRC | 19:06 | |
*** salv-orlando has quit IRC | 19:38 | |
*** jxstanford has joined #openstack-api | 19:56 | |
*** salv-orlando has joined #openstack-api | 20:06 | |
elmiko | hey all, i'm reviewing a spec in sahara and we are talking about using PUT for an update. i gathered from previous conversations that doing a PUT with a partial resource can be controversial, but in cases where most of the fields are read-only it could be acceptable. is this accurate? | 20:15 |
---|---|---|
cdent | elmiko: generally speaking, yeah, PUT is supposed to be a representation of the full resource | 20:17 |
cdent | but it sounds like you have a sort of asymmetric representation | 20:17 |
cdent | where what you GET is much different from what it makes sense to PUT | 20:17 |
elmiko | yea totally | 20:18 |
cdent | I think it has become fairly common to PUT the entre collection of writable stuff | 20:18 |
elmiko | our GET is crazy, filled with info that the user won't be able to change | 20:18 |
elmiko | and we are now opening up the possibility to update 1 field | 20:18 |
cdent | that would seem weird | 20:18 |
cdent | (to me) | 20:18 |
cdent | why not do a PATCH? | 20:18 |
ryansb | patch++ | 20:19 |
elmiko | that might make sense | 20:23 |
elmiko | hmm | 20:24 |
elmiko | i didn't want to descend down the PATCH rabbit hole | 20:24 |
cdent | elmiko: you don't have to use a PATCH language to patch, it's okay to send a partial representation and just be done with it | 20:25 |
elmiko | interesting, this seems like a philosophical point though, no? | 20:26 |
sigmavirus24 | elmiko: how do you mean? | 20:27 |
elmiko | not trying to be pedantic, i just read a blog post admonishing people for using patch like that | 20:27 |
elmiko | isn't patch literally supposed to be like a diff-ish patch that you send | 20:27 |
cdent | elmiko: reference? | 20:27 |
elmiko | instructing the server how to change the resource, but not the actual updated resource | 20:27 |
cdent | _some_ people think that but I think that's crazy | 20:27 |
cdent | incredibly limiting | 20:27 |
elmiko | right, that's why i said philosophical point ;) | 20:27 |
cdent | it will just make people use PUT incorrectly | 20:28 |
cdent | I guess it depends a lot on representations | 20:28 |
sigmavirus24 | == cdent | 20:28 |
cdent | sigmavirus24: ? | 20:29 |
sigmavirus24 | I've seen patches where you send {"field_to_update": "updated_value"} | 20:29 |
sigmavirus24 | that seems very limiting and will push people to use PUT incorrectly | 20:29 |
ryansb | sigmavirus24: yeah, the only time that falls flat is list/set ops | 20:29 |
sigmavirus24 | ryansb: sure | 20:29 |
sigmavirus24 | I'm saying, in some cases, it works. And from the bits I've seen elmiko talk about, it sounds like it'll work in this case | 20:30 |
ryansb | anyways, I'd rather you do the diff-style PATCH than do partial PUTs | 20:30 |
elmiko | interesting | 20:30 |
ryansb | that is, of course, just my opinion | 20:30 |
elmiko | yea, i don't have a strong opinion on this, just trying to collate a bunch of other folks thoughts | 20:31 |
elmiko | i mean, PATCH with partial resource seems ok to me. but this post i read went on about how that "bad wrong(TM)" | 20:31 |
elmiko | well, i shouldn't have quoted | 20:31 |
sigmavirus24 | elmiko: link? | 20:32 |
* cdent releases a new gabbi | 20:32 | |
sigmavirus24 | no don't do that | 20:32 |
sigmavirus24 | =P | 20:32 |
elmiko | http://williamdurand.fr/2014/02/14/please-do-not-patch-like-an-idiot/ | 20:33 |
sigmavirus24 | Link alone is enough for me to want to disregard this | 20:33 |
sigmavirus24 | =P | 20:33 |
elmiko | haha, i knew you would love it! | 20:33 |
ryansb | lol | 20:33 |
elmiko | sigmavirus24: given your penchant for RFCs i thought you would love the verbal pedantry | 20:34 |
sigmavirus24 | So | 20:34 |
ryansb | cdent: got release notes for that? | 20:34 |
sigmavirus24 | The other core dev on requests just authored a draft | 20:34 |
sigmavirus24 | And I feel obligated to read it | 20:34 |
sigmavirus24 | (Using HTTP/2 for p2p) | 20:35 |
cdent | ryansb: release notes on gabbi? nothing more than the changelog in the pypi package. something more formal is probably a good idea now that it is >1.0 | 20:36 |
ryansb | cdent: no worries, I just https://github.com/cdent/gabbi/compare/1.1.1...1.1.2 instead | 20:36 |
* cdent totally forgot he'd been tagging the repo | 20:37 | |
ryansb | you sorta have to if you use pbr | 20:37 |
cdent | I'm not sure of the terminology, but I guess I "pre-version" which is the way to make sure that pbr doesn't behave in that utterly insane way that it does | 20:38 |
ryansb | Oh, that works too | 20:38 |
elmiko | ryansb: so, given your update to the put guidelines, i'm guessing you are cool with allowing partial resource updates through PATCH? | 20:39 |
cdent | I do the tagging via makefile targets which drive the release process | 20:39 |
cdent | I wanted pbr for the easy handing of stuff in setup.cfg but not for the release automation | 20:39 |
cdent | ryansb: are you using gabbi, or just tracking it for fun and profit? | 20:40 |
ryansb | Yes, I'm totally cool with partial PATCH | 20:43 |
ryansb | as long as you don't need set/list operations | 20:44 |
elmiko | hmm | 20:44 |
ryansb | cdent: tracking & playing with for personal projects | 20:44 |
ryansb | I have a couple pyramid apps that I've done the basic gabbi-hello-world type tests on | 20:44 |
ryansb | hoping to cover them all the way, when I have time. | 20:45 |
elmiko | i'm just trying to figure out the best way to advise on this review. i mean we have an obscenely long record with mostly read-only attributes and we want to update 1 thing. | 20:45 |
elmiko | think i'll mention both styles | 20:45 |
ryansb | for that case, patch is (imo) totally the way to go. How you implement patch is up for other debate | 20:46 |
sigmavirus24 | == ryansb | 20:46 |
*** salv-orlando has quit IRC | 20:47 | |
elmiko | yea, gonna note that in my comments | 20:48 |
*** fzdarsky_ has quit IRC | 20:55 | |
elmiko | ryansb: so, on a PATCH to a resource that may involve an async action, we send back a 202, but what body with that? | 21:01 |
elmiko | maybe send back the resource in its current state, assuming no errors? | 21:02 |
elmiko | ryansb, cdent, if you guys have time i would definitely appreciate your thoughts on https://review.openstack.org/#/c/198264 | 21:07 |
cdent | I've marked it to look at it tomorrow morning, I'm sort of out of brain now | 21:08 |
*** fzdarsky has joined #openstack-api | 21:08 | |
*** salv-orlando has joined #openstack-api | 21:09 | |
elmiko | cdent: totally understandable, and thanks =) | 21:11 |
elmiko | it's like what, 10pm there? | 21:11 |
* cdent nods | 21:15 | |
elmiko | definitely time for a pint ;) | 21:19 |
elmiko | way past actually | 21:19 |
*** fzdarsky_ has joined #openstack-api | 21:21 | |
ryansb | elmiko: also marked for tomorrow, gotta head out | 21:22 |
elmiko | ryansb: thanks! | 21:22 |
cdent | elmiko: instead of a pint I got some cake | 21:25 |
cdent | and with my cake I'm going to retire to reading vague drivel on the interwebs | 21:26 |
cdent | g'night | 21:26 |
*** cdent has quit IRC | 21:26 | |
*** lucas-dinner has quit IRC | 21:34 | |
*** e0ne has quit IRC | 21:48 | |
*** e0ne has joined #openstack-api | 21:48 | |
*** fzdarsky has quit IRC | 21:53 | |
*** fzdarsky_ has quit IRC | 21:53 | |
*** sigmavirus24 is now known as sigmavirus24_awa | 21:58 | |
*** e0ne has quit IRC | 22:25 | |
*** sigmavirus24_awa is now known as sigmavirus24 | 23:12 | |
*** bitblt has joined #openstack-api | 23:20 | |
*** jxstanford has quit IRC | 23:37 | |
*** gmann_ has quit IRC | 23:43 | |
*** gmann has joined #openstack-api | 23:50 | |
*** sigmavirus24 is now known as sigmavirus24_awa | 23:58 |
Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!