)]}'
{"id":"openstack%2Fpython-swiftclient~176945","triplet_id":"openstack%2Fpython-swiftclient~master~If2e41d9a592c3ad02818e9c6f0959fd4b73cd0e0","project":"openstack/python-swiftclient","branch":"master","topic":"bug/1431866","hashtags":[],"change_id":"If2e41d9a592c3ad02818e9c6f0959fd4b73cd0e0","subject":"Always decode command-line arguments as UTF-8","status":"MERGED","created":"2015-04-23 19:19:55.000000000","updated":"2015-07-16 11:27:33.000000000","submitted":"2015-07-16 11:27:31.000000000","submitter":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"total_comment_count":4,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"fce1e36bbb44bb61f50a098061675375e1783da1","_number":176945,"virtual_id_number":176945,"owner":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"value":2,"date":"2015-07-16 11:27:31.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},{"value":0,"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},{"value":0,"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"value":0,"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"all":[{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":2,"date":"2015-07-15 01:30:48.000000000","_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},{"value":0,"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},{"value":2,"date":"2015-07-16 10:23:43.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"value":0,"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"all":[{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},{"value":0,"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},{"value":1,"date":"2015-07-16 10:23:43.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"value":0,"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2015-04-29 14:24:19.000000000","updated_by":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"reviewer":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"state":"REVIEWER"},{"updated":"2015-07-15 01:30:48.000000000","updated_by":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"reviewer":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"state":"REVIEWER"},{"updated":"2015-07-16 10:23:43.000000000","updated_by":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"reviewer":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"state":"REVIEWER"},{"updated":"2015-07-16 11:27:31.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"}],"messages":[{"id":"f896e2f49bafa1c440f1a71fc639ead13be4baf6","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2015-04-23 19:19:55.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"15fa9ee0f0f748fb70389d7a6f5b3ad4d5427704","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-04-23 20:08:57.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-swiftclient-python26 http://logs.openstack.org/45/176945/1/check/gate-python-swiftclient-python26/8a73767/ : SUCCESS in 1m 01s\n- gate-python-swiftclient-pep8 http://logs.openstack.org/45/176945/1/check/gate-python-swiftclient-pep8/447a8d8/ : SUCCESS in 48s\n- gate-python-swiftclient-docs http://docs-draft.openstack.org/45/176945/1/check/gate-python-swiftclient-docs/eed0693//doc/build/html/ : SUCCESS in 56s\n- gate-python-swiftclient-python27 http://logs.openstack.org/45/176945/1/check/gate-python-swiftclient-python27/a57214f/ : SUCCESS in 1m 00s\n- gate-python-swiftclient-python34 http://logs.openstack.org/45/176945/1/check/gate-python-swiftclient-python34/04eb644/ : SUCCESS in 4m 10s\n- gate-python-swiftclient-pypy http://logs.openstack.org/45/176945/1/check/gate-python-swiftclient-pypy/cf7b59e/ : SUCCESS in 2m 03s\n- gate-tempest-dsvm-neutron-src-python-swiftclient http://logs.openstack.org/45/176945/1/check/gate-tempest-dsvm-neutron-src-python-swiftclient/f677ac6/ : SUCCESS in 48m 55s\n- check-swift-dsvm-functional http://logs.openstack.org/45/176945/1/check/check-swift-dsvm-functional/f6e9d4e/ : SUCCESS in 20m 36s\n- check-swiftclient-dsvm-functional http://logs.openstack.org/45/176945/1/check/check-swiftclient-dsvm-functional/bd2df27/ : SUCCESS in 15m 40s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"21439d074955f02de3af9532314bfd0e23a9f215","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2015-04-24 22:48:55.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"7cae992b779af9debb7915ea740c43dc11777f99","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-04-24 23:39:00.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-swiftclient-python26 http://logs.openstack.org/45/176945/2/check/gate-python-swiftclient-python26/feee108/ : SUCCESS in 55s\n- gate-python-swiftclient-pep8 http://logs.openstack.org/45/176945/2/check/gate-python-swiftclient-pep8/30cce00/ : SUCCESS in 37s\n- gate-python-swiftclient-docs http://docs-draft.openstack.org/45/176945/2/check/gate-python-swiftclient-docs/825d000//doc/build/html/ : SUCCESS in 43s\n- gate-python-swiftclient-python27 http://logs.openstack.org/45/176945/2/check/gate-python-swiftclient-python27/7b373d0/ : SUCCESS in 57s\n- gate-python-swiftclient-python34 http://logs.openstack.org/45/176945/2/check/gate-python-swiftclient-python34/75525a9/ : SUCCESS in 2m 48s\n- gate-python-swiftclient-pypy http://logs.openstack.org/45/176945/2/check/gate-python-swiftclient-pypy/ebb138e/ : SUCCESS in 1m 36s\n- gate-tempest-dsvm-neutron-src-python-swiftclient http://logs.openstack.org/45/176945/2/check/gate-tempest-dsvm-neutron-src-python-swiftclient/7ceabb3/ : SUCCESS in 49m 58s\n- check-swift-dsvm-functional http://logs.openstack.org/45/176945/2/check/check-swift-dsvm-functional/dbb6805/ : SUCCESS in 19m 35s\n- check-swiftclient-dsvm-functional http://logs.openstack.org/45/176945/2/check/check-swiftclient-dsvm-functional/2c87060/ : SUCCESS in 16m 55s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"3e07c91a52cc267710d4843c360cb7d1e5c67c15","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2015-04-27 07:41:53.000000000","message":"Patch Set 2: Code-Review+1\n\nCode looks good to me, and tests verify the changed behavior.\n\nHowever I can\u0027t reproduce the bug - it works with and without the patch; but most likely this is due to some differences in the terminal settings. Thus adding only a +1 for now.","accounts_in_message":[],"_revision_number":2},{"id":"9e68c45a432d7ba198cc4d1cd597aa26f6c29322","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2015-04-27 16:05:23.000000000","message":"Patch Set 2:\n\nThis is only an issue under Python 2, and only when performing a handful of actions: deleting large objects with unicode segment names, deleting whole containers containing one or more objects with unicode names, and deleting whole accounts containing containers or objects with unicode names. I\u0027d be happy to better call that out in the commit message.\n\nThe trouble is that our format strings were bytes objects under Python 2, but the names received under those circumstances came from account/container listings, and so were unicode. Since the default string encoding on Python 2 is ascii [1], we\u0027d see the UnicodeEncodeError reported in the linked bug.\n\nYou can change that default encoding, but environment variables don\u0027t seem to be the way. Looks like you\u0027d want to check for a sitecustomization module that calls sys.setdefaultencoding [2].\n\n[1] Per https://docs.python.org/2/library/codecs.html#codecs.encode\n[2] See https://docs.python.org/2/library/sys.html#sys.setdefaultencoding and https://docs.python.org/2/library/site.html","accounts_in_message":[],"_revision_number":2},{"id":"445fab31ec2e2a69e1e0440f685215b609b8da53","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2015-04-28 14:45:56.000000000","message":"Patch Set 2:\n\n@Tim thanks for this.\n\nI can reproduce the bug, and this does seem to fix, but I am unsure about the use of decode(\u0027utf-8\u0027) - does that not assume that the bytestrings are utf-8 encoded, which they are in my locale, but could they have other encodings that won\u0027t decode using utf-8? (I confess to being a bit hazy on unicode/locales, so just posing the question!)\n\nI managed to fix the reported bug (and pass your modified test with py27 and py33) with what seems a simpler change on the surface [1] and avoiding the decode() - the root problem being the use of \u0027\u0027.format which seems to want to coerce all its parameters to string, whereas \u0027%s%s\u0027 % (x,y) seems happy to coerce to unicode when x or y are unicode.\n\nThoughts?\n\n[1] http://paste.openstack.org/show/210290/","accounts_in_message":[],"_revision_number":2},{"id":"10974bd60291207fc95e0e0bc9c5a31fea86f2af","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2015-04-29 01:46:41.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"680e606292532dfcfc3566d374ff2f7c5bdbc665","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2015-04-29 01:55:14.000000000","message":"Patch Set 3:\n\nThat was insufficient (I\u0027d get UnicodeDecodeErrors when deleting DLOs, but only if both the container and object had unicode chars), but the investigation led me to find that the bytes in need of decoding came from the Swift server. As such, my understanding is that we *can* assume it was UTF-8-encoded.\n\nI moved the decoding to the relevant caller in service.py. At that point, both `\u0027...\u0027 % (...)` and `u\u0027...\u0027.format(...)` work (as well as `u\u0027...\u0027 % (...)`). I don\u0027t really care whether % or .format is used, but I think we should be explicit about emitting unicode objects.\n\nAs an aside, all of this is with my terminal still using UTF-8. If I switch it to use ISO8859-1, I can\u0027t upload and listings result in UTF-8-reinterpretted-as-ISO8859-1. This isn\u0027t desirable, but it\u0027s outside of the scope of this change.","accounts_in_message":[],"_revision_number":3},{"id":"288727e5d71ad5fe2977fe8fdb07232cd9643cec","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-04-29 02:53:09.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-swiftclient-python26 http://logs.openstack.org/45/176945/3/check/gate-python-swiftclient-python26/a22e435/ : SUCCESS in 1m 17s\n- gate-python-swiftclient-pep8 http://logs.openstack.org/45/176945/3/check/gate-python-swiftclient-pep8/5d836fd/ : SUCCESS in 53s\n- gate-python-swiftclient-docs http://docs-draft.openstack.org/45/176945/3/check/gate-python-swiftclient-docs/68bff6f//doc/build/html/ : SUCCESS in 56s\n- gate-python-swiftclient-python27 http://logs.openstack.org/45/176945/3/check/gate-python-swiftclient-python27/a6a174d/ : SUCCESS in 1m 37s\n- gate-python-swiftclient-python34 http://logs.openstack.org/45/176945/3/check/gate-python-swiftclient-python34/92349f0/ : SUCCESS in 3m 56s\n- gate-python-swiftclient-pypy http://logs.openstack.org/45/176945/3/check/gate-python-swiftclient-pypy/628a5d8/ : SUCCESS in 2m 01s\n- gate-tempest-dsvm-neutron-src-python-swiftclient http://logs.openstack.org/45/176945/3/check/gate-tempest-dsvm-neutron-src-python-swiftclient/bbbaf4d/ : SUCCESS in 1h 05m 26s\n- check-swift-dsvm-functional http://logs.openstack.org/45/176945/3/check/check-swift-dsvm-functional/7b30f0b/ : SUCCESS in 22m 44s\n- check-swiftclient-dsvm-functional http://logs.openstack.org/45/176945/3/check/check-swiftclient-dsvm-functional/3958a1f/ : SUCCESS in 20m 50s (non-voting)","accounts_in_message":[],"_revision_number":3},{"id":"c926d8e3abda91e8aea192e8412433634e819bcf","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2015-04-29 14:24:19.000000000","message":"Patch Set 3: Code-Review-1\n\n(1 comment)\n\n@Tim sorry but I still see an error with original bug scenario - now it is a UnicodeDecodeError rather than EncodeError [1]\n\nAs far as I can tell the container name passed from command line is passed back to the output formatter - in this case it is a byte string. You are right that the segment container comes from swift but that is not the container name causing the failure.\n\nOn master, the container name is joined with a unicode object name (from swift), and the attempt to coerce the object name to bytes in order to join with the container raises the encode error.\n\nWith your change, the u\u0027{0}{1}\u0027.format() attempts to coerce the container name to unicode which causes the decode error.\n\nYou\u0027re right that the segment container name comes from swift but thats not the container name being printed here.\n\nI wrote a test [1] to tease out these two cases ie fails on master and on your patch, with encode and decode errors respectively. The test passes bytes to command line and returns a unicode object name, and reproduces what I see with manual testing.\n\nUsing \u0027%s%s\u0027 % (x,y) does seem to help (I don\u0027t understand why!) - but I cannot claim to have studied all the scenarios - but hopefully that test will help.\n\n[1] http://paste.openstack.org/show/212165/\n[2] https://gist.github.com/alistairncoles/9ef865bc8cc2188c8b3b","accounts_in_message":[],"_revision_number":3},{"id":"83ed321f85f79153ffbe6c31ab63aff8f4d91f72","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2015-05-01 16:06:14.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"c4480f5e012c29a090669bccaa3e30c4bc76c646","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-05-01 17:12:36.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-swiftclient-python26 http://logs.openstack.org/45/176945/4/check/gate-python-swiftclient-python26/77c526a/ : SUCCESS in 51s\n- gate-python-swiftclient-pep8 http://logs.openstack.org/45/176945/4/check/gate-python-swiftclient-pep8/7a71992/ : SUCCESS in 40s\n- gate-python-swiftclient-docs http://docs-draft.openstack.org/45/176945/4/check/gate-python-swiftclient-docs/01b246d//doc/build/html/ : SUCCESS in 54s\n- gate-python-swiftclient-python27 http://logs.openstack.org/45/176945/4/check/gate-python-swiftclient-python27/e1ec8f3/ : SUCCESS in 53s\n- gate-python-swiftclient-python34 http://logs.openstack.org/45/176945/4/check/gate-python-swiftclient-python34/794ce65/ : SUCCESS in 3m 29s\n- gate-python-swiftclient-pypy http://logs.openstack.org/45/176945/4/check/gate-python-swiftclient-pypy/38ab6eb/ : SUCCESS in 1m 24s\n- gate-tempest-dsvm-neutron-src-python-swiftclient http://logs.openstack.org/45/176945/4/check/gate-tempest-dsvm-neutron-src-python-swiftclient/f57e608/ : SUCCESS in 1h 00m 41s\n- check-swift-dsvm-functional http://logs.openstack.org/45/176945/4/check/check-swift-dsvm-functional/6a3d2a8/ : SUCCESS in 23m 07s\n- check-swiftclient-dsvm-functional http://logs.openstack.org/45/176945/4/check/check-swiftclient-dsvm-functional/1412ec1/ : SUCCESS in 20m 05s (non-voting)","accounts_in_message":[],"_revision_number":4},{"id":"b55d60b8b5a823af1b58f713a10332b43a74bdae","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2015-05-14 19:19:10.000000000","message":"Patch Set 4: Code-Review-1\n\n(3 comments)\n\nI\u0027m sorry, but I don\u0027t like where this is going. IMHO only, bu the only sane way do py3 is to create a safe corrall that\u0027s unicode only. This implies a safety perimeter that\u0027s not \"ragged\" with little bit of .decode scattered here and there.\n\nIn other words, if we determine that headers must be force-converted to unicode, that policy must have a blanket effect and enacted as soon as the response is parsed.\n\nAlso, please don\u0027t leave those TODOs all over. If you don\u0027t see an easy way to fix the problem, then either discuss a solution or declare it nonfixable. We cannot afford leaving TODOs for an unspecified person in the future, not in this project (I do that in my personal Github repos). That in particular includes the command line arguments - the time to determine how to address that is now.","accounts_in_message":[],"_revision_number":4},{"id":"2c36eb18f4d17c8dfd32940a1fa359bfc5f0dfa7","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2015-05-18 23:02:54.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"f898291fe54a4382480eba8994d69e4620e1cd74","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-05-18 23:53:06.000000000","message":"Patch Set 5: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-swiftclient-python26 http://logs.openstack.org/45/176945/5/check/gate-python-swiftclient-python26/95dea5b/ : SUCCESS in 56s\n- gate-python-swiftclient-pep8 http://logs.openstack.org/45/176945/5/check/gate-python-swiftclient-pep8/46b5943/ : SUCCESS in 49s\n- gate-python-swiftclient-docs http://docs-draft.openstack.org/45/176945/5/check/gate-python-swiftclient-docs/b435c44//doc/build/html/ : SUCCESS in 58s\n- gate-python-swiftclient-python27 http://logs.openstack.org/45/176945/5/check/gate-python-swiftclient-python27/704a0ed/ : SUCCESS in 46s\n- gate-python-swiftclient-python34 http://logs.openstack.org/45/176945/5/check/gate-python-swiftclient-python34/6d5fc9f/ : SUCCESS in 1m 39s\n- gate-python-swiftclient-pypy http://logs.openstack.org/45/176945/5/check/gate-python-swiftclient-pypy/728c189/ : SUCCESS in 1m 21s (non-voting)\n- gate-tempest-dsvm-neutron-src-python-swiftclient http://logs.openstack.org/45/176945/5/check/gate-tempest-dsvm-neutron-src-python-swiftclient/e239576/ : SUCCESS in 50m 03s\n- check-swift-dsvm-functional http://logs.openstack.org/45/176945/5/check/check-swift-dsvm-functional/005c53e/ : SUCCESS in 15m 06s\n- check-swiftclient-dsvm-functional http://logs.openstack.org/45/176945/5/check/check-swiftclient-dsvm-functional/4302914/ : SUCCESS in 16m 22s","accounts_in_message":[],"_revision_number":5},{"id":"ee75c71c773d9176df2915fade1a01eae4ad89c5","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2015-05-19 01:11:51.000000000","message":"Patch Set 5: Workflow-1\n\nStill working on tests. Well, really, the trouble is I need two other changes (fixing the printer-testing in c/184146 and making decoding headers) to make them meaningful. Will rebase with an added dependency once one of them lands, but I still need to write tests for the second one.","accounts_in_message":[],"_revision_number":5},{"id":"20143138be7a77bba751c8d4c975e1de8b33ea3a","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2015-05-19 06:47:09.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"f968d5b9b80f88cf6a3db03572ed6453fcffa239","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2015-05-19 06:59:39.000000000","message":"Patch Set 6:\n\nNever mind! I was thinking of the DLO issue (which *will* be addressed in the hinted-at later patch); these tests make sense with just the printer-test fixes.\n\n@Pete, you\u0027re right, having a unicode-only zone is the proper way to do this. Created 184147 and 184148 to get us closer on other fronts; there\u0027ll be one more on the way which should address the headers issue in service.py. And yeah, if we can enforce unicode, it\u0027s silly not to use unicode_literals.","accounts_in_message":[],"_revision_number":6},{"id":"76f3f59299e86203dc0c1fb42171d719bc181141","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-05-19 07:41:47.000000000","message":"Patch Set 6: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-swiftclient-python26 http://logs.openstack.org/45/176945/6/check/gate-python-swiftclient-python26/46195fe/ : SUCCESS in 53s\n- gate-python-swiftclient-pep8 http://logs.openstack.org/45/176945/6/check/gate-python-swiftclient-pep8/c3e8ab5/ : SUCCESS in 57s\n- gate-python-swiftclient-docs http://docs-draft.openstack.org/45/176945/6/check/gate-python-swiftclient-docs/a17f4be//doc/build/html/ : SUCCESS in 57s\n- gate-python-swiftclient-python27 http://logs.openstack.org/45/176945/6/check/gate-python-swiftclient-python27/dbabb53/ : SUCCESS in 56s\n- gate-python-swiftclient-python34 http://logs.openstack.org/45/176945/6/check/gate-python-swiftclient-python34/ca11cb5/ : SUCCESS in 1m 41s\n- gate-python-swiftclient-pypy http://logs.openstack.org/45/176945/6/check/gate-python-swiftclient-pypy/ef419dc/ : SUCCESS in 1m 08s (non-voting)\n- gate-tempest-dsvm-neutron-src-python-swiftclient http://logs.openstack.org/45/176945/6/check/gate-tempest-dsvm-neutron-src-python-swiftclient/013f911/ : SUCCESS in 52m 24s\n- check-swift-dsvm-functional http://logs.openstack.org/45/176945/6/check/check-swift-dsvm-functional/4ec72ee/ : SUCCESS in 18m 46s\n- check-swiftclient-dsvm-functional http://logs.openstack.org/45/176945/6/check/check-swiftclient-dsvm-functional/52cb178/ : SUCCESS in 15m 49s","accounts_in_message":[],"_revision_number":6},{"id":"c750a98189fba9081e2c43269dd5ccf606b30ad2","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-07-07 22:27:34.000000000","message":"Patch Set 6: Verified-1\n\nMerge Failed.\n\nThis change was unable to be automatically merged with the current state of the repository. Please rebase your change and upload a new patchset.","accounts_in_message":[],"_revision_number":6},{"id":"6c3da139e81b2519937107aa69abfc529da76d63","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2015-07-07 22:40:25.000000000","message":"Uploaded patch set 7.","accounts_in_message":[],"_revision_number":7},{"id":"73f6c46e5c27fdb489649e452f8c01265590f08a","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-07-07 23:36:34.000000000","message":"Patch Set 7: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-swiftclient-python26 http://logs.openstack.org/45/176945/7/check/gate-python-swiftclient-python26/138bd55/ : SUCCESS in 55s\n- gate-python-swiftclient-pep8 http://logs.openstack.org/45/176945/7/check/gate-python-swiftclient-pep8/0f941e6/ : SUCCESS in 46s\n- gate-python-swiftclient-docs http://docs-draft.openstack.org/45/176945/7/check/gate-python-swiftclient-docs/b05cc49//doc/build/html/ : SUCCESS in 1m 00s\n- gate-python-swiftclient-python27 http://logs.openstack.org/45/176945/7/check/gate-python-swiftclient-python27/57a66ad/ : SUCCESS in 59s\n- gate-python-swiftclient-python34 http://logs.openstack.org/45/176945/7/check/gate-python-swiftclient-python34/ef98f95/ : SUCCESS in 1m 38s\n- gate-python-swiftclient-pypy http://logs.openstack.org/45/176945/7/check/gate-python-swiftclient-pypy/9f4c9d9/ : SUCCESS in 1m 36s (non-voting)\n- gate-tempest-dsvm-neutron-src-python-swiftclient http://logs.openstack.org/45/176945/7/check/gate-tempest-dsvm-neutron-src-python-swiftclient/0eeb1ed/ : SUCCESS in 56m 02s\n- check-swift-dsvm-functional http://logs.openstack.org/45/176945/7/check/check-swift-dsvm-functional/defa318/ : SUCCESS in 26m 12s\n- check-swiftclient-dsvm-functional http://logs.openstack.org/45/176945/7/check/check-swiftclient-dsvm-functional/b756b96/ : SUCCESS in 28m 35s","accounts_in_message":[],"_revision_number":7},{"id":"64866c65e525cc3b568d75fb3a32b25f44213f97","author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"date":"2015-07-15 01:30:48.000000000","message":"Patch Set 7: Code-Review+2\n\nVery fine.","accounts_in_message":[],"_revision_number":7},{"id":"b47d3256bbe585e112dc0cde450b250f3609a389","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2015-07-16 10:23:43.000000000","message":"Patch Set 7: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":7},{"id":"3084fe81a878767df029d1ebff6b18f2e90b1166","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-07-16 10:25:41.000000000","message":"Patch Set 7: -Verified\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":7},{"id":"dde3f53c25b3dcf3fd9a51ddf22c7a377495cd8b","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-07-16 11:27:31.000000000","message":"Patch Set 7: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- gate-python-swiftclient-python26 http://logs.openstack.org/45/176945/7/gate/gate-python-swiftclient-python26/bc64261/ : SUCCESS in 59s\n- gate-python-swiftclient-docs http://docs-draft.openstack.org/45/176945/7/gate/gate-python-swiftclient-docs/3f2936f//doc/build/html/ : SUCCESS in 56s\n- gate-python-swiftclient-pep8 http://logs.openstack.org/45/176945/7/gate/gate-python-swiftclient-pep8/8239db2/ : SUCCESS in 50s\n- gate-python-swiftclient-python27 http://logs.openstack.org/45/176945/7/gate/gate-python-swiftclient-python27/bf11b19/ : SUCCESS in 1m 01s\n- gate-python-swiftclient-python34 http://logs.openstack.org/45/176945/7/gate/gate-python-swiftclient-python34/090b6b6/ : SUCCESS in 2m 12s\n- gate-python-swiftclient-pypy http://logs.openstack.org/45/176945/7/gate/gate-python-swiftclient-pypy/8f8a61c/ : SUCCESS in 1m 34s (non-voting)\n- gate-tempest-dsvm-neutron-src-python-swiftclient http://logs.openstack.org/45/176945/7/gate/gate-tempest-dsvm-neutron-src-python-swiftclient/67ec8ba/ : SUCCESS in 1h 00m 20s\n- gate-swift-dsvm-functional http://logs.openstack.org/45/176945/7/gate/gate-swift-dsvm-functional/d2cfebe/ : SUCCESS in 33m 11s\n- gate-swiftclient-dsvm-functional http://logs.openstack.org/45/176945/7/gate/gate-swiftclient-dsvm-functional/3d9f666/ : SUCCESS in 26m 17s","accounts_in_message":[],"_revision_number":7},{"id":"6a023f59c5a2de3208faa39b05f68e4a41ccc22b","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-07-16 11:27:33.000000000","message":"Change has been successfully merged into the git repository.","accounts_in_message":[],"_revision_number":7}],"current_revision_number":7,"current_revision":"bb252130ac2f332110172b8e2094dc629c8a896b","revisions":{"61fb0f1c21c99aea9a962f66049e0a5bed55b6ba":{"kind":"REWORK","_number":1,"created":"2015-04-23 19:19:55.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/45/176945/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-swiftclient","ref":"refs/changes/45/176945/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/1"}}},"commit":{"parents":[{"commit":"3105cdc4f815788dc6939e6e2866342d01866773","subject":"Merge \"Include unsupported url scheme with ClientException\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/3105cdc4f815788dc6939e6e2866342d01866773"}]}],"author":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-04-09 21:55:07.000000000","tz":-420},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-04-09 23:27:50.000000000","tz":-420},"subject":"Stop throwing UnicodeEncodeErrors when deleting","message":"Stop throwing UnicodeEncodeErrors when deleting\n\nChange-Id: If2e41d9a592c3ad02818e9c6f0959fd4b73cd0e0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/61fb0f1c21c99aea9a962f66049e0a5bed55b6ba"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/61fb0f1c21c99aea9a962f66049e0a5bed55b6ba"}]},"branch":"refs/heads/master"},"a8b3d751f5c61fc5fcb47f5e3a5847923a225ac4":{"kind":"NO_CODE_CHANGE","_number":2,"created":"2015-04-24 22:48:55.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/45/176945/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-swiftclient","ref":"refs/changes/45/176945/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/2"}}},"commit":{"parents":[{"commit":"3105cdc4f815788dc6939e6e2866342d01866773","subject":"Merge \"Include unsupported url scheme with ClientException\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/3105cdc4f815788dc6939e6e2866342d01866773"}]}],"author":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-04-09 21:55:07.000000000","tz":-420},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-04-23 23:20:30.000000000","tz":-420},"subject":"Stop throwing UnicodeEncodeErrors when deleting","message":"Stop throwing UnicodeEncodeErrors when deleting\n\nCloses-Bug: #1431866\nChange-Id: If2e41d9a592c3ad02818e9c6f0959fd4b73cd0e0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/a8b3d751f5c61fc5fcb47f5e3a5847923a225ac4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/a8b3d751f5c61fc5fcb47f5e3a5847923a225ac4"}]},"branch":"refs/heads/master"},"1c1de6856ab6df228a6acd1102e6b2f814cfef62":{"kind":"REWORK","_number":3,"created":"2015-04-29 01:46:41.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/45/176945/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-swiftclient","ref":"refs/changes/45/176945/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/3"}}},"commit":{"parents":[{"commit":"3105cdc4f815788dc6939e6e2866342d01866773","subject":"Merge \"Include unsupported url scheme with ClientException\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/3105cdc4f815788dc6939e6e2866342d01866773"}]}],"author":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-04-09 21:55:07.000000000","tz":-420},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-04-29 01:43:48.000000000","tz":-420},"subject":"Stop throwing UnicodeEncodeErrors when deleting","message":"Stop throwing UnicodeEncodeErrors when deleting\n\nCloses-Bug: #1431866\nChange-Id: If2e41d9a592c3ad02818e9c6f0959fd4b73cd0e0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/1c1de6856ab6df228a6acd1102e6b2f814cfef62"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/1c1de6856ab6df228a6acd1102e6b2f814cfef62"}]},"branch":"refs/heads/master"},"c22ec51546eaa1d341fca60ecfb92dd6819ae11a":{"kind":"REWORK","_number":4,"created":"2015-05-01 16:06:14.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/45/176945/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-swiftclient","ref":"refs/changes/45/176945/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/4"}}},"commit":{"parents":[{"commit":"3105cdc4f815788dc6939e6e2866342d01866773","subject":"Merge \"Include unsupported url scheme with ClientException\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/3105cdc4f815788dc6939e6e2866342d01866773"}]}],"author":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-04-09 21:55:07.000000000","tz":-420},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-05-01 00:29:32.000000000","tz":-420},"subject":"Always decode command-line arguments as UTF-8","message":"Always decode command-line arguments as UTF-8\n\nThere was always an implicit assumption that they were UTF-8 before, and\nby converting them to unicode objects we can consistently use unicode\nwhen outputing messages.\n\nAlso noted an explicit assumption that the message output stream should\nbe UTF-8 encoded.\n\nCloses-Bug: #1431866\nChange-Id: If2e41d9a592c3ad02818e9c6f0959fd4b73cd0e0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/c22ec51546eaa1d341fca60ecfb92dd6819ae11a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/c22ec51546eaa1d341fca60ecfb92dd6819ae11a"}]},"branch":"refs/heads/master"},"d146d9572cda1d7f14c7ba20264a8a11e4f85b8d":{"kind":"REWORK","_number":5,"created":"2015-05-18 23:02:54.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/45/176945/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-swiftclient","ref":"refs/changes/45/176945/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/5"}}},"commit":{"parents":[{"commit":"1aebb7ccc59808446ce4cc3cec879475a2770bc0","subject":"Merge \"Use a socket timeout in get_auth\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/1aebb7ccc59808446ce4cc3cec879475a2770bc0"}]}],"author":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-05-18 17:14:09.000000000","tz":-420},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-05-18 23:02:31.000000000","tz":-420},"subject":"Always decode command-line arguments as UTF-8","message":"Always decode command-line arguments as UTF-8\n\nThere was always an implicit assumption that they were UTF-8 before, and\nby converting them to unicode we close another hole allowing raw bytes\nto appear in user-facing messages.\n\nCloses-Bug: #1431866\nChange-Id: If2e41d9a592c3ad02818e9c6f0959fd4b73cd0e0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/d146d9572cda1d7f14c7ba20264a8a11e4f85b8d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/d146d9572cda1d7f14c7ba20264a8a11e4f85b8d"}]},"branch":"refs/heads/master"},"2bd22d428bdfdbf2b3ea6cca11d6e542997784d6":{"kind":"REWORK","_number":6,"created":"2015-05-19 06:47:09.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/45/176945/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-swiftclient","ref":"refs/changes/45/176945/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/6"}}},"commit":{"parents":[{"commit":"bc39a19addaf2fd88120f744e5d396105c47b645","subject":"Properly test raw writes in Python 3","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/bc39a19addaf2fd88120f744e5d396105c47b645"}]}],"author":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-05-18 17:14:09.000000000","tz":-420},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-05-19 03:49:47.000000000","tz":-420},"subject":"Always decode command-line arguments as UTF-8","message":"Always decode command-line arguments as UTF-8\n\nThere was always an implicit assumption that they were UTF-8 before, and\nby converting them to unicode we close another hole allowing raw bytes\nto appear in user-facing messages.\n\nCloses-Bug: #1431866\nChange-Id: If2e41d9a592c3ad02818e9c6f0959fd4b73cd0e0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/2bd22d428bdfdbf2b3ea6cca11d6e542997784d6"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/2bd22d428bdfdbf2b3ea6cca11d6e542997784d6"}]},"branch":"refs/heads/master"},"bb252130ac2f332110172b8e2094dc629c8a896b":{"kind":"REWORK","_number":7,"created":"2015-07-07 22:40:25.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/45/176945/7","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-swiftclient","ref":"refs/changes/45/176945/7","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-swiftclient refs/changes/45/176945/7"}}},"commit":{"parents":[{"commit":"cf0b6c03df5b014e8c21ffcb0fe92f58e11c7ae3","subject":"Properly test raw writes in Python 3","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/cf0b6c03df5b014e8c21ffcb0fe92f58e11c7ae3"}]}],"author":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-05-18 17:14:09.000000000","tz":-420},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2015-07-07 22:39:55.000000000","tz":-420},"subject":"Always decode command-line arguments as UTF-8","message":"Always decode command-line arguments as UTF-8\n\nThere was always an implicit assumption that they were UTF-8 before, and\nby converting them to unicode we close another hole allowing raw bytes\nto appear in user-facing messages.\n\nCloses-Bug: #1431866\nChange-Id: If2e41d9a592c3ad02818e9c6f0959fd4b73cd0e0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/bb252130ac2f332110172b8e2094dc629c8a896b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-swiftclient/commit/bb252130ac2f332110172b8e2094dc629c8a896b"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
