Earlier  
Posted Nick Remark
#openstack-sdks - 2018-12-13
16:43:25 cdent dtantsur: also I'm pleased to see you sticking to your guns with -1 the DELETE thing. I think it is important to get it not just right but agreed on and you raise some good points.
16:43:25 dtantsur cdent: the one where a URI points to a resource. with microversions a URL can mean anything (or nothing at all) depending on a header
16:43:36 dtantsur :)
16:43:56 dtantsur e.g. I cannot say /v1/portgroups/<UUID> is a representation of a portgroup <UUID>
16:44:11 dtantsur because it's only the case if microversion>=1.<something>
16:44:59 elmiko edleafe: heh, xml actually /solving/ problems... XD
16:45:03 dtantsur this defeats e.g. the "Location" header to a degree, since "Location" is meaningless without a microversion to use it with
16:45:28 dtantsur edleafe: I guess from the pure RESTful point of view we had to put them in the URL somewhere.. I know that it has other problems :)
16:46:24 cdent dtantsur: yeah, I feel really bad about URIs that exist in microversion N+1 but not N. It's dirty.
16:46:59 edleafe I believe that the original practice of using /v1-type URLs was because the original OpenStack devs always did it that way, and so continued the practice. It was never debated
16:47:03 cdent their existence has allowed us to get away with some things that we would have considered much more strongly if they didn't
16:47:14 cdent until placement, yo
16:47:38 edleafe cdent: that's why I really hate the term "microversion". It's anything but micro
16:47:51 cdent really-hugeo-version
16:47:59 edleafe megaversion
16:48:06 edleafe or, you know, "version"
16:48:06 dtantsur if we were less hipster, we would just use "API version"
16:48:11 dtantsur ha!
16:48:47 elmiko cdent: lol
16:48:56 edleafe the only difference with microversions is that we simultaneously support many, many possible versions
16:49:49 elmiko i like "really-hugeo-version", it has a nice ring to it. would make debates much more lively
16:50:20 elmiko but, i am a fan of absurdism
16:51:31 dtantsur then we also have to be creative with numbers themselves
16:52:28 elmiko ooh, nice
16:53:01 edleafe we should use random integers for our versions.
16:53:28 dtantsur what about multiplying 3.14 by 1.X where X is a number of changed strings in the patch introducing the microversion?
16:53:57 edleafe dtantsur: too much work
16:54:20 edleafe We could just follow git's lead and make the version a hash of the codebase
16:55:02 elmiko edleafe: haha, <3 random integers
16:55:05 dtantsur nice! it will add a pleasant task of figuring out how to put a hash in the file being hashed
16:55:31 dtantsur or we could get boring and use the current date and time
16:55:31 elmiko i love it, we can have a new middle to handle to upgrade that all projects must follow to become compliant with the new randoversions
16:55:38 elmiko *middleware
16:55:53 edleafe dtantsur: no problem. Internally you do a 'git checkout {hash}' and then run the request through that
16:56:01 elmiko hahaha
16:56:17 edleafe simple!
16:56:49 elmiko really randoversioning is an upgrade, because it helps project maintainers know who is _really_ following the project
16:57:40 elmiko "i'm using the latest, version 3831923", "ah ah, didn't you know the latest is actually 92359841?!?"
16:57:49 elmiko busted!
16:58:43 edleafe So not only could we replace 'latest' with 'HEAD', we now have access to 'HEAD^', 'HEAD^^', etc
16:58:46 dtantsur folks, you keep forgetting that in year 2018 we *must* be mobile-friendly
16:58:58 dtantsur so I recommend we start using smiles in versions
16:59:15 dtantsur * smileys
16:59:44 edleafe Better yet: animojis!
17:00:11 elmiko haha, perfect
17:00:12 edleafe https://emojipedia-us.s3.amazonaws.com/content/2017/09/21/animoji-poo-emojipedia.gif
17:00:33 elmiko dtantsur: micromoji-versioning?
17:00:42 edleafe I guess our office hour is up.
17:00:46 elmiko ah well
17:00:48 dtantsur right!
17:01:01 elmiko have a good weekend y'all =)
17:01:07 dtantsur see you in January :)
17:01:11 dtantsur happy holidays
17:01:13 elmiko enjoy dtantsur !
17:01:17 edleafe elmiko: mobile devices are getting bigger, so let's not use 'micro'
17:01:24 elmiko edleafe: good point
17:01:28 edleafe See ya, dtantsur! Enjoy your time off!
17:03:07 edleafe cdent: So are you on board with replacing versions with git hashes?
17:04:23 cdent only if we do the git checkout bit internally, and only from a remote repo
17:05:52 edleafe If we put versions in the URI, we could have GET /v91b735fddedbeb9d1cc241dadc753ff2f3b86a4b/foo/bar
17:06:18 edleafe Users would love that!
17:06:42 cdent that looks suspiciously similar to user/project/tenant/whatever it was in URIs
17:06:46 cdent which was an equally bad idea
17:07:58 elmiko i'm gonna grab some lunch, catch you gents later o/
21:07:05 openstackgerrit Thomas Bechtold proposed openstack/openstacksdk master: Drop self.conn from base.TestCase https://review.openstack.org/625115
23:08:13 kmalloc mordred: the SDK issue, are you seeing that on master or on pip isntalled?
23:08:20 kmalloc mordred: because i can't duplicate it on the current release
23:08:53 kmalloc mordred: the discovery bit
23:09:21 kmalloc mordred: i just tried with vexxhost:
23:09:57 kmalloc https://www.irccloud.com/pastebin/EHIjvSgI/
23:10:12 kmalloc mordred: using pretty much your code:
23:10:28 kmalloc https://www.irccloud.com/pastebin/7mR8Gonv/
23:10:49 kmalloc mordred: i omitted the auth request.
23:11:01 kmalloc maybe you're hitting the unversioned URL?
23:11:46 kmalloc nope, also not seeing that there.
23:12:40 Shrews kmalloc: you gotta enable the cache part
23:13:08 kmalloc Shrews: bah.
23:13:09 Shrews kmalloc: steps to reproduce are here: https://storyboard.openstack.org/#!/story/2004605
23:13:32 Shrews kmalloc: unless there is a different issue you are talking about :)
23:13:38 kmalloc no different thing
23:13:42 Shrews oh, sorry
23:13:45 kmalloc Shrews: i was looking at the duplicate discovery bit first
23:13:51 kmalloc Shrews: and i can't duplicate that.
23:13:59 kmalloc since that one might be something wrong in KSA.
23:14:02 Shrews kmalloc: i am no help there
23:14:15 kmalloc yeah, will need mordred to weigh in on duplication, it just isn't happening for me.
23:14:26 kmalloc on to the dogpile thing.
23:18:16 ianw kmalloc: yeah, i'm taking a look at it too ... wow it's hairy
23:19:26 ianw the change is https://gerrit.sqlalchemy.org/#/c/sqlalchemy/dogpile.cache/+/996/4/dogpile/cache/region.py
23:20:49 ianw i can sort of replicate it. i think in the unit tests, somehow it's getting eaten
23:20:56 ianw but if you put more failures in there, you see it
23:22:53 kmalloc Shrews: on another unrelated note
23:23:02 kmalloc https://usercontent.irccloud-cdn.com/file/ylihsQes/battlestation
23:23:20 kmalloc Shrews: ^ hehehe 3x portrait mode monitors = win for code!
23:24:33 kmalloc ianw: yeah it's weird.
23:25:18 Shrews kmalloc: sick
23:33:30 kmalloc Shrews: i'm not able to duplicate that issue
23:33:36 kmalloc with dogpile 0.7.0 or 0.7.1
23:33:46 kmalloc i must have something broken in my clouds.yaml
23:34:22 kmalloc ooh wait.

Earlier   Later