)]}'
{"horizon/forms/fields.py":[{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"6972ad3a61e7bf12e26469181c711e27bb9c06ed","unresolved":false,"context_lines":[{"line_number":622,"context_line":"    on client-side."},{"line_number":623,"context_line":"    \"\"\""},{"line_number":624,"context_line":""},{"line_number":625,"context_line":"    if six.PY3:"},{"line_number":626,"context_line":""},{"line_number":627,"context_line":"        @classmethod"},{"line_number":628,"context_line":"        def __prepare__(cls, name, bases):"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_b7078082","line":625,"updated":"2019-07-16 10:52:57.000000000","message":"Is there a reason to only do this for Py3? Would this hurt in Py2? I think it would just be ignored?","commit_id":"770744458e657bea669618988afb857333d717ff"},{"author":{"_account_id":8674,"name":"Yves-Gwenael Bourhis","email":"ygbourhis@gmail.com","username":"yves"},"change_message_id":"ef33f6f8d3fd18f675989515ed90a662d47a1bd6","unresolved":false,"context_lines":[{"line_number":622,"context_line":"    on client-side."},{"line_number":623,"context_line":"    \"\"\""},{"line_number":624,"context_line":""},{"line_number":625,"context_line":"    if six.PY3:"},{"line_number":626,"context_line":""},{"line_number":627,"context_line":"        @classmethod"},{"line_number":628,"context_line":"        def __prepare__(cls, name, bases):"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_858567d1","line":625,"in_reply_to":"7faddb67_b7078082","updated":"2019-07-16 15:29:35.000000000","message":"Done","commit_id":"770744458e657bea669618988afb857333d717ff"},{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"6972ad3a61e7bf12e26469181c711e27bb9c06ed","unresolved":false,"context_lines":[{"line_number":647,"context_line":"            # Required in python 3 to keep the form fields order."},{"line_number":648,"context_line":"            new_attrs \u003d collections.OrderedDict()"},{"line_number":649,"context_line":"        else:"},{"line_number":650,"context_line":"            new_attrs \u003d {}"},{"line_number":651,"context_line":"        for attr_name, attr in attrs.items():"},{"line_number":652,"context_line":"            new_attrs[attr_name] \u003d attr"},{"line_number":653,"context_line":"            if isinstance(attr, ExternalFileField):"}],"source_content_type":"text/x-python","patch_set":2,"id":"7faddb67_37fb9079","line":650,"updated":"2019-07-16 10:52:57.000000000","message":"Is this necessary for Py2? Can\u0027t we use OrderedDict both for Py2 and Py3?","commit_id":"770744458e657bea669618988afb857333d717ff"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"931589b275eb821172fb0a266c24a9c546dd0392","unresolved":false,"context_lines":[{"line_number":624,"context_line":""},{"line_number":625,"context_line":"    @classmethod"},{"line_number":626,"context_line":"    def __prepare__(cls, name, bases):"},{"line_number":627,"context_line":"        # Required in python 3 to keep the form fields order."},{"line_number":628,"context_line":"        # Without this method, the __new__(cls, name, bases, attrs) method"},{"line_number":629,"context_line":"        # receives a dict as attrs instead of OrderedDict."},{"line_number":630,"context_line":"        # This method will be ignored by Python 2."}],"source_content_type":"text/x-python","patch_set":3,"id":"7faddb67_49a88f8b","line":627,"range":{"start_line":627,"start_character":22,"end_line":627,"end_character":30},"updated":"2019-08-08 07:47:58.000000000","message":"note: precisely it was introduced in python 3.3. We now support only 3.5 or later, so this change looks good.","commit_id":"9c30ca9c13f59267c1045d9faaca1eac1259fd41"}]}
