)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":15967,"name":"vikas choudhary","email":"choudharyvikas16@gmail.com","username":"vikaschoudhary16"},"change_message_id":"1f6b1153c99076cb8854918d90e68f8bc3c6702c","unresolved":false,"context_lines":[{"line_number":12,"context_line":"create a kubernetes baymodel without explicitly specifying a"},{"line_number":13,"context_line":"network driver. (The same goes for docker swarm and mesos baymodels,"},{"line_number":14,"context_line":"that is, baymodel create should allow the user not to specify"},{"line_number":15,"context_line":"a network-driver, but this is the current behavior)."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"When no network-driver is selected for baymodel create for a"},{"line_number":18,"context_line":"given COE, Magnum should choose the default network driver for that"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7a2fa921_5a1d1c72","line":15,"updated":"2015-10-06 05:00:55.000000000","message":"\"is the\" \u003d\u003e \"is not the\"","commit_id":"f61086657604583346a6ab18ded90976fe365582"},{"author":{"_account_id":6695,"name":"Dane LeBlanc","email":"leblancd@cisco.com","username":"leblancd"},"change_message_id":"bf007a76b58484ec9e78ce319d6f38f050e6962b","unresolved":false,"context_lines":[{"line_number":12,"context_line":"create a kubernetes baymodel without explicitly specifying a"},{"line_number":13,"context_line":"network driver. (The same goes for docker swarm and mesos baymodels,"},{"line_number":14,"context_line":"that is, baymodel create should allow the user not to specify"},{"line_number":15,"context_line":"a network-driver, but this is the current behavior)."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"When no network-driver is selected for baymodel create for a"},{"line_number":18,"context_line":"given COE, Magnum should choose the default network driver for that"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7a2fa921_b0a0b3a0","line":15,"in_reply_to":"7a2fa921_5a1d1c72","updated":"2015-10-07 21:18:01.000000000","message":"I meant that this is the current (correct) behavior for swarm\nand mesos, that is, the API already allows the user to leave out\nthe network-driver for creation of swarm or mesos baymodels.\nWhat I do need to add to the comment is that there\u0027s a secondary\nproblem with swarm and mesos baymodels that the patch set\nis fixing: with swarm or mesos baymodel create, there is\n_no_ validation on network-driver. So the user could use\n\u0027some_bogus_driver\u0027 or even \u0027flannel\u0027 (not yet supported) for\nswarm and mesos baymodel create, and no error will be\ngenerated. I\u0027ll clarify this in the commit message.","commit_id":"f61086657604583346a6ab18ded90976fe365582"},{"author":{"_account_id":17120,"name":"Manjeet Singh Bhatia","email":"manjeet.s.bhatia@intel.com","username":"manjeets"},"change_message_id":"6b0b4b93728e6b4dfc0e0ae723f167fec9bc4ab5","unresolved":false,"context_lines":[{"line_number":27,"context_line":"test_baymodel.py should cover this change."},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"Change-Id: I0735f79354bc9fdb141e7a559517268e8ab648ec"},{"line_number":30,"context_line":"Closes-Bug: 1501077"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"7a2fa921_b775a932","line":30,"updated":"2015-10-09 15:02:21.000000000","message":"consider adding # next time Closes-Bug: #1501077","commit_id":"24f37c8dd4b170f5a6b950bd93defa2b0d82240d"}],"magnum/api/controllers/v1/baymodel.py":[{"author":{"_account_id":8143,"name":"Egor Guz","email":"egor.guz@gmail.com","username":"eghobo"},"change_message_id":"b1bf8ae0476b7a9eb9545c23231f0953b6db05f5","unresolved":false,"context_lines":[{"line_number":220,"context_line":"    # to not specify a network-driver (in which case the default network"},{"line_number":221,"context_line":"    # driver for that COE will be used)."},{"line_number":222,"context_line":"    _allowed_network_driver_types \u003d {"},{"line_number":223,"context_line":"        \u0027kubernetes\u0027: [\u0027flannel\u0027, None],"},{"line_number":224,"context_line":"        \u0027swarm\u0027: [None],"},{"line_number":225,"context_line":"        \u0027mesos\u0027: [None],"},{"line_number":226,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a1a9d01_b425345d","line":223,"updated":"2015-10-03 03:47:27.000000000","message":"@Dane: Kub is not going to work without driver (in theory it can but we need to change bridge configs and relay at external routing).","commit_id":"3ac4b38dfe026f1ae88ec8db31d134b30827ec5f"},{"author":{"_account_id":8143,"name":"Egor Guz","email":"egor.guz@gmail.com","username":"eghobo"},"change_message_id":"40f3d60197b4c7bb079535033924f507b7a4012a","unresolved":false,"context_lines":[{"line_number":220,"context_line":"    # to not specify a network-driver (in which case the default network"},{"line_number":221,"context_line":"    # driver for that COE will be used)."},{"line_number":222,"context_line":"    _allowed_network_driver_types \u003d {"},{"line_number":223,"context_line":"        \u0027kubernetes\u0027: [\u0027flannel\u0027, None],"},{"line_number":224,"context_line":"        \u0027swarm\u0027: [None],"},{"line_number":225,"context_line":"        \u0027mesos\u0027: [None],"},{"line_number":226,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a1a9d01_5abe3a00","line":223,"in_reply_to":"9a1a9d01_4553c439","updated":"2015-10-03 20:53:23.000000000","message":"@Jay, you are orrect. Real question here do we want to allow user to create not usable Kub cluster (he can fix it by installing their own network backend)? And just keep in mind Swarm and Mesos are usable even without network driver.","commit_id":"3ac4b38dfe026f1ae88ec8db31d134b30827ec5f"},{"author":{"_account_id":7049,"name":"Kai Qiang Wu(Kennan)","email":"wkq5325@gmail.com","username":"Kennan"},"change_message_id":"55409075c5a82a6a8689613fc6913d9307cee892","unresolved":false,"context_lines":[{"line_number":220,"context_line":"    # to not specify a network-driver (in which case the default network"},{"line_number":221,"context_line":"    # driver for that COE will be used)."},{"line_number":222,"context_line":"    _allowed_network_driver_types \u003d {"},{"line_number":223,"context_line":"        \u0027kubernetes\u0027: [\u0027flannel\u0027, None],"},{"line_number":224,"context_line":"        \u0027swarm\u0027: [None],"},{"line_number":225,"context_line":"        \u0027mesos\u0027: [None],"},{"line_number":226,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a1a9d01_738b2969","line":223,"in_reply_to":"9a1a9d01_502ffba0","updated":"2015-10-04 07:21:45.000000000","message":"+1 Egor and I prefer 2) k8s needs network-driver specified","commit_id":"3ac4b38dfe026f1ae88ec8db31d134b30827ec5f"},{"author":{"_account_id":7494,"name":"Guangya Liu","email":"gyliu513@gmail.com","username":"JayLau"},"change_message_id":"b365d01b17ad5e7590bdc93c314ba9cb2634ed92","unresolved":false,"context_lines":[{"line_number":220,"context_line":"    # to not specify a network-driver (in which case the default network"},{"line_number":221,"context_line":"    # driver for that COE will be used)."},{"line_number":222,"context_line":"    _allowed_network_driver_types \u003d {"},{"line_number":223,"context_line":"        \u0027kubernetes\u0027: [\u0027flannel\u0027, None],"},{"line_number":224,"context_line":"        \u0027swarm\u0027: [None],"},{"line_number":225,"context_line":"        \u0027mesos\u0027: [None],"},{"line_number":226,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a1a9d01_502ffba0","line":223,"in_reply_to":"9a1a9d01_5abe3a00","updated":"2015-10-04 06:30:42.000000000","message":"Thanks @Egor, Yes, its a question for k8s, seems we have two ways to handle this issue:\n1) Add a document to tell customer how to configure\n2) Remove the None network driver for k8s.\n\nSeems 2) is more simple and this depends on @Dane to make the final decision ;-)","commit_id":"3ac4b38dfe026f1ae88ec8db31d134b30827ec5f"},{"author":{"_account_id":6695,"name":"Dane LeBlanc","email":"leblancd@cisco.com","username":"leblancd"},"change_message_id":"bfba1673f2b488174a233e60a4a9f28c77e36dcb","unresolved":false,"context_lines":[{"line_number":220,"context_line":"    # to not specify a network-driver (in which case the default network"},{"line_number":221,"context_line":"    # driver for that COE will be used)."},{"line_number":222,"context_line":"    _allowed_network_driver_types \u003d {"},{"line_number":223,"context_line":"        \u0027kubernetes\u0027: [\u0027flannel\u0027, None],"},{"line_number":224,"context_line":"        \u0027swarm\u0027: [None],"},{"line_number":225,"context_line":"        \u0027mesos\u0027: [None],"},{"line_number":226,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a2fa921_76acd0ed","line":223,"in_reply_to":"9a1a9d01_738b2969","updated":"2015-10-05 14:02:51.000000000","message":"@Egor, @Jay, the intent of this change is to allow the user\nto leave out the selection of network-driver when they create\na baymodel, in which case Magnum should use the default\nnetwork driver for the chosen COE (as opposed to using\nno network driver). In other words, it\u0027s a default case, not a\n\"None\" case. The user isn\u0027t typing in \"None\" on the command\nline (note that None is not in quotes in the above dictionary), instead he/she is leaving out the selection altogether. I\u0027ll try\nto reword the preceding comment for clarity, e.g. to say an\nentry of None \"in this dictionary\" allows the user to leave out\nthe selection of network driver.","commit_id":"3ac4b38dfe026f1ae88ec8db31d134b30827ec5f"},{"author":{"_account_id":7494,"name":"Guangya Liu","email":"gyliu513@gmail.com","username":"JayLau"},"change_message_id":"68f4a4bcf13c860418f15d1fc1920b0c7ac852e1","unresolved":false,"context_lines":[{"line_number":220,"context_line":"    # to not specify a network-driver (in which case the default network"},{"line_number":221,"context_line":"    # driver for that COE will be used)."},{"line_number":222,"context_line":"    _allowed_network_driver_types \u003d {"},{"line_number":223,"context_line":"        \u0027kubernetes\u0027: [\u0027flannel\u0027, None],"},{"line_number":224,"context_line":"        \u0027swarm\u0027: [None],"},{"line_number":225,"context_line":"        \u0027mesos\u0027: [None],"},{"line_number":226,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a1a9d01_4553c439","line":223,"in_reply_to":"9a1a9d01_b425345d","updated":"2015-10-03 11:42:44.000000000","message":"@Egor, I did install k8s without flannel but configure the network with GRE tunnel which is similar with flannel. I think that the current fix should work, comments? Thanks.","commit_id":"3ac4b38dfe026f1ae88ec8db31d134b30827ec5f"},{"author":{"_account_id":11650,"name":"Tom Cammann","email":"tom.cammann@hpe.com","username":"cammann"},"change_message_id":"b7dc51562f73ddcb66ae44a8a84915ee03002f2d","unresolved":false,"context_lines":[{"line_number":216,"context_line":"        \u0027detail\u0027: [\u0027GET\u0027],"},{"line_number":217,"context_line":"    }"},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"    # Allowed network driver types per COE. An entry of None in this"},{"line_number":220,"context_line":"    # dictionary allows the user to leave out the selection of"},{"line_number":221,"context_line":"    # network-driver, in which case the default network driver for"},{"line_number":222,"context_line":"    # the chosen COE will be used."}],"source_content_type":"text/x-python","patch_set":5,"id":"7a2fa921_5a5f5972","line":219,"updated":"2015-10-06 07:03:40.000000000","message":"I would like to see these supported driver types come from the config, it will be useful for a cloud operator to specify what network drivers to use in their cloud. I would suggest using a DictOpt, but open to more suggestions.","commit_id":"f61086657604583346a6ab18ded90976fe365582"},{"author":{"_account_id":6695,"name":"Dane LeBlanc","email":"leblancd@cisco.com","username":"leblancd"},"change_message_id":"bf007a76b58484ec9e78ce319d6f38f050e6962b","unresolved":false,"context_lines":[{"line_number":216,"context_line":"        \u0027detail\u0027: [\u0027GET\u0027],"},{"line_number":217,"context_line":"    }"},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"    # Allowed network driver types per COE. An entry of None in this"},{"line_number":220,"context_line":"    # dictionary allows the user to leave out the selection of"},{"line_number":221,"context_line":"    # network-driver, in which case the default network driver for"},{"line_number":222,"context_line":"    # the chosen COE will be used."}],"source_content_type":"text/x-python","patch_set":5,"id":"7a2fa921_eb271c10","line":219,"in_reply_to":"7a2fa921_5a5f5972","updated":"2015-10-07 21:18:01.000000000","message":"@Tom: This is an interesting suggestion, but it raises some\nquestions, maybe you can help:\n(1) DictOpt doesn\u0027t appear to support values that are lists.\n    When the user sets the config for a DictOpt, the format\n    uses comma-separated key-value pairs, e.g.:\n        foo \u003d k1:v1,k2:v2\n    The commas delineate the key-value pairs, and I don\u0027t think\n    there\u0027s any way to escape these. For allowed network\n    drivers, we would like the cloud operator to set\n    something like this:\nallowed_network_drivers \u003d kubernetes:flannel,default,\n                          swarm:default,\n                          mesos:default\n    but unfortunately the comma between \"flannel\" and\n    \"default\" syntactically starts a new key-value pair\n    definition. We might have to use separate configurations\n    for each COE (each having its own list), e.g.:\nkubernetes_nework_drivers \u003d flannel, default\nswarm_network_drivers \u003d default\nmesos_network_drivers \u003d default\n    I\u0027m open to help/suggestions on this.\n(2) How does the cloud operator configure a given COE\n    to make it allowable for the end user to leave out the\n    selection of network-driver when creating a baymodel?\n    Do we need a special, reserved word for this, e.g.\n    \"default\" or \"unspecified\", so that the config could look\n    like this:\nallowed_network_drivers \u003d kubernetes:flannel,default,\n                          swarm:default,\n                          mesos:default\n    Or do we require that every COE must have a default\n    network-driver, so that the end user always has the\n    option of leaving out the network-driver for baymodel\n    create?","commit_id":"f61086657604583346a6ab18ded90976fe365582"},{"author":{"_account_id":6836,"name":"Daneyon Hansen","email":"danehans@cisco.com","username":"danehans"},"change_message_id":"8482d0140e96cb41240ef4ffa9b48f1f9869668b","unresolved":false,"context_lines":[{"line_number":216,"context_line":"        \u0027detail\u0027: [\u0027GET\u0027],"},{"line_number":217,"context_line":"    }"},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"    # Allowed network driver types per COE. An entry of None in this"},{"line_number":220,"context_line":"    # dictionary allows the user to leave out the selection of"},{"line_number":221,"context_line":"    # network-driver, in which case the default network driver for"},{"line_number":222,"context_line":"    # the chosen COE will be used."}],"source_content_type":"text/x-python","patch_set":5,"id":"7a2fa921_8d8cb580","line":219,"in_reply_to":"7a2fa921_5a5f5972","updated":"2015-10-06 20:07:28.000000000","message":"I asked Dane to follow the implementation of coe. Do you feel the coe type should be set in the config also?","commit_id":"f61086657604583346a6ab18ded90976fe365582"},{"author":{"_account_id":8143,"name":"Egor Guz","email":"egor.guz@gmail.com","username":"eghobo"},"change_message_id":"8b1eadc14518958eb693f8a75644db49b9febcfe","unresolved":false,"context_lines":[{"line_number":220,"context_line":"    # dictionary allows the user to leave out the selection of"},{"line_number":221,"context_line":"    # network-driver, in which case the default network driver for"},{"line_number":222,"context_line":"    # the chosen COE will be used."},{"line_number":223,"context_line":"    _allowed_network_driver_types \u003d {"},{"line_number":224,"context_line":"        \u0027kubernetes\u0027: [\u0027flannel\u0027, None],"},{"line_number":225,"context_line":"        \u0027swarm\u0027: [None],"},{"line_number":226,"context_line":"        \u0027mesos\u0027: [None],"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a2fa921_ba547054","line":223,"updated":"2015-10-06 04:45:58.000000000","message":"@Dane: thx for the clarification. But I don\u0027t see logic which should insert default driver, have I missed it?","commit_id":"f61086657604583346a6ab18ded90976fe365582"},{"author":{"_account_id":6695,"name":"Dane LeBlanc","email":"leblancd@cisco.com","username":"leblancd"},"change_message_id":"bf007a76b58484ec9e78ce319d6f38f050e6962b","unresolved":false,"context_lines":[{"line_number":220,"context_line":"    # dictionary allows the user to leave out the selection of"},{"line_number":221,"context_line":"    # network-driver, in which case the default network driver for"},{"line_number":222,"context_line":"    # the chosen COE will be used."},{"line_number":223,"context_line":"    _allowed_network_driver_types \u003d {"},{"line_number":224,"context_line":"        \u0027kubernetes\u0027: [\u0027flannel\u0027, None],"},{"line_number":225,"context_line":"        \u0027swarm\u0027: [None],"},{"line_number":226,"context_line":"        \u0027mesos\u0027: [None],"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a2fa921_8bcb081e","line":223,"in_reply_to":"7a2fa921_ba547054","updated":"2015-10-07 21:18:01.000000000","message":"@Egor: As Vikas pointed out, this is explained in the commit message.","commit_id":"f61086657604583346a6ab18ded90976fe365582"},{"author":{"_account_id":15967,"name":"vikas choudhary","email":"choudharyvikas16@gmail.com","username":"vikaschoudhary16"},"change_message_id":"c85f2576550c0dcb975e668ae106974d0d48cfe5","unresolved":false,"context_lines":[{"line_number":220,"context_line":"    # dictionary allows the user to leave out the selection of"},{"line_number":221,"context_line":"    # network-driver, in which case the default network driver for"},{"line_number":222,"context_line":"    # the chosen COE will be used."},{"line_number":223,"context_line":"    _allowed_network_driver_types \u003d {"},{"line_number":224,"context_line":"        \u0027kubernetes\u0027: [\u0027flannel\u0027, None],"},{"line_number":225,"context_line":"        \u0027swarm\u0027: [None],"},{"line_number":226,"context_line":"        \u0027mesos\u0027: [None],"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a2fa921_fe994e6f","line":223,"in_reply_to":"7a2fa921_ba547054","updated":"2015-10-06 23:22:20.000000000","message":"@Egor: You are correct Egor about not seeing default driver insertion logic. Actually this patch is intended just to remove driver validation. Commit message is addressing this point.","commit_id":"f61086657604583346a6ab18ded90976fe365582"},{"author":{"_account_id":6836,"name":"Daneyon Hansen","email":"danehans@cisco.com","username":"danehans"},"change_message_id":"8482d0140e96cb41240ef4ffa9b48f1f9869668b","unresolved":false,"context_lines":[{"line_number":224,"context_line":"        \u0027kubernetes\u0027: [\u0027flannel\u0027, None],"},{"line_number":225,"context_line":"        \u0027swarm\u0027: [None],"},{"line_number":226,"context_line":"        \u0027mesos\u0027: [None],"},{"line_number":227,"context_line":"    }"},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"    def _get_baymodels_collection(self, marker, limit,"},{"line_number":230,"context_line":"                                  sort_key, sort_dir, expand\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a2fa921_0d2425ad","line":227,"updated":"2015-10-06 20:07:28.000000000","message":"Can you add flannel as an option for swarm and mesos? The swarm patch should be ready in the next few days.","commit_id":"f61086657604583346a6ab18ded90976fe365582"},{"author":{"_account_id":8143,"name":"Egor Guz","email":"egor.guz@gmail.com","username":"eghobo"},"change_message_id":"40247ac2e44094beea2b48f3ca635fc7df109396","unresolved":false,"context_lines":[{"line_number":224,"context_line":"        \u0027kubernetes\u0027: [\u0027flannel\u0027, None],"},{"line_number":225,"context_line":"        \u0027swarm\u0027: [None],"},{"line_number":226,"context_line":"        \u0027mesos\u0027: [None],"},{"line_number":227,"context_line":"    }"},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"    def _get_baymodels_collection(self, marker, limit,"},{"line_number":230,"context_line":"                                  sort_key, sort_dir, expand\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a2fa921_48bd2867","line":227,"in_reply_to":"7a2fa921_0d2425ad","updated":"2015-10-06 22:16:54.000000000","message":"@Daneyon: -1, lets add options when they are actually ready ;)","commit_id":"f61086657604583346a6ab18ded90976fe365582"},{"author":{"_account_id":15967,"name":"vikas choudhary","email":"choudharyvikas16@gmail.com","username":"vikaschoudhary16"},"change_message_id":"c85f2576550c0dcb975e668ae106974d0d48cfe5","unresolved":false,"context_lines":[{"line_number":224,"context_line":"        \u0027kubernetes\u0027: [\u0027flannel\u0027, None],"},{"line_number":225,"context_line":"        \u0027swarm\u0027: [None],"},{"line_number":226,"context_line":"        \u0027mesos\u0027: [None],"},{"line_number":227,"context_line":"    }"},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"    def _get_baymodels_collection(self, marker, limit,"},{"line_number":230,"context_line":"                                  sort_key, sort_dir, expand\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a2fa921_5e2ac27f","line":227,"in_reply_to":"7a2fa921_48bd2867","updated":"2015-10-06 23:22:20.000000000","message":"@Egor: +1","commit_id":"f61086657604583346a6ab18ded90976fe365582"}],"magnum/api/validation.py":[{"author":{"_account_id":7049,"name":"Kai Qiang Wu(Kennan)","email":"wkq5325@gmail.com","username":"Kennan"},"change_message_id":"55409075c5a82a6a8689613fc6913d9307cee892","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    return wrapper"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"def enforce_network_driver_types(network_driver_types):"},{"line_number":43,"context_line":"    @decorator.decorator"},{"line_number":44,"context_line":"    def wrapper(func, *args, **kwargs):"},{"line_number":45,"context_line":"        obj \u003d args[1]"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a1a9d01_b391c19c","line":42,"updated":"2015-10-04 07:21:45.000000000","message":"I did not think it is good change for parameter here, as it is only allow dict. you should either change to dict parameter, or rename it to make easy to understand it is dict type. like network_driver_dict_types","commit_id":"3ac4b38dfe026f1ae88ec8db31d134b30827ec5f"},{"author":{"_account_id":6695,"name":"Dane LeBlanc","email":"leblancd@cisco.com","username":"leblancd"},"change_message_id":"bfba1673f2b488174a233e60a4a9f28c77e36dcb","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    return wrapper"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"def enforce_network_driver_types(network_driver_types):"},{"line_number":43,"context_line":"    @decorator.decorator"},{"line_number":44,"context_line":"    def wrapper(func, *args, **kwargs):"},{"line_number":45,"context_line":"        obj \u003d args[1]"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a2fa921_56f994c7","line":42,"in_reply_to":"9a1a9d01_b391c19c","updated":"2015-10-05 14:02:51.000000000","message":"Yes, very good suggestion. Will fix.","commit_id":"3ac4b38dfe026f1ae88ec8db31d134b30827ec5f"}]}
