)]}'
{"nova/objects/network.py":[{"author":{"_account_id":5511,"name":"Nikola Dipanov","email":"ndipanov@redhat.com","username":"ndipanov"},"change_message_id":"edc1579141d5b973bc9533058bb5151fc8d134aa","unresolved":false,"context_lines":[{"line_number":53,"context_line":"        }"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"    @staticmethod"},{"line_number":56,"context_line":"    def _convert_silly_ipv6_netmask(netmask):"},{"line_number":57,"context_line":"        \"\"\"Handle netmask_v6 possibilities from the database."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        Historically, this was stored as just an integral CIDR prefix,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FR70%3D","line":56,"updated":"2014-01-15 15:20:15.000000000","message":"s/silly/legacy/ ?\n\nWhat may seem amusing to the person writing the code, is usually less so to the reader of the code, especially if they have to deal with extra mental strain to map this to what it really means.\n\nIn other words: Nikola hates humor!","commit_id":"ccfd965206d4a1ff2214f41799489039f3007e51"},{"author":{"_account_id":5511,"name":"Nikola Dipanov","email":"ndipanov@redhat.com","username":"ndipanov"},"change_message_id":"edc1579141d5b973bc9533058bb5151fc8d134aa","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    @staticmethod"},{"line_number":76,"context_line":"    def _from_db_object(context, network, db_network):"},{"line_number":77,"context_line":"        for field in network.fields:"},{"line_number":78,"context_line":"            db_value \u003d db_network[field]"},{"line_number":79,"context_line":"            if field is \u0027netmask_v6\u0027 and db_value is not None:"},{"line_number":80,"context_line":"                db_value \u003d network._convert_silly_ipv6_netmask(db_value)"},{"line_number":81,"context_line":"            network[field] \u003d db_value"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FR6U%3D","line":78,"updated":"2014-01-15 15:20:15.000000000","message":"I guess this could be done without the intermediate db_value assignment, but not a big deal.","commit_id":"ccfd965206d4a1ff2214f41799489039f3007e51"},{"author":{"_account_id":5511,"name":"Nikola Dipanov","email":"ndipanov@redhat.com","username":"ndipanov"},"change_message_id":"edc1579141d5b973bc9533058bb5151fc8d134aa","unresolved":false,"context_lines":[{"line_number":125,"context_line":"        self._from_db_object(context, self, db_network)"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"    @obj_base.remotable"},{"line_number":128,"context_line":"    def delete(self, context):"},{"line_number":129,"context_line":"        db.network_delete_safe(context, self.id)"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"    @obj_base.remotable"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FR58%3D","line":128,"updated":"2014-01-15 15:20:15.000000000","message":"Usually we call it \u0027destroy\u0027 in other objects - it\u0027s nice to be consistent.","commit_id":"ccfd965206d4a1ff2214f41799489039f3007e51"},{"author":{"_account_id":1030,"name":"Chris Behrens","email":"cbehrens@codestud.com","username":"cbehrens"},"change_message_id":"ad781b1170bebc2d836f9e6364684ddb61348ab5","unresolved":false,"context_lines":[{"line_number":112,"context_line":"        changes \u003d super(Network, self).obj_get_changes()"},{"line_number":113,"context_line":"        for key, value in changes.items():"},{"line_number":114,"context_line":"            if isinstance(value, netaddr.IPAddress):"},{"line_number":115,"context_line":"                changes[key] \u003d str(value)"},{"line_number":116,"context_line":"        return changes"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    @obj_base.remotable"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2B%2F1s%3D","line":115,"updated":"2014-01-19 18:38:18.000000000","message":"Hm, why?  Seems like the values of changes should be the same data type as specified in the object.  If caller needs something else, they should convert.  IMO.","commit_id":"6529e41ea61ab53af9c9154aac299da7730aaa73"},{"author":{"_account_id":1030,"name":"Chris Behrens","email":"cbehrens@codestud.com","username":"cbehrens"},"change_message_id":"ad781b1170bebc2d836f9e6364684ddb61348ab5","unresolved":false,"context_lines":[{"line_number":126,"context_line":""},{"line_number":127,"context_line":"    @obj_base.remotable"},{"line_number":128,"context_line":"    def destroy(self, context):"},{"line_number":129,"context_line":"        db.network_delete_safe(context, self.id)"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"    @obj_base.remotable"},{"line_number":132,"context_line":"    def save(self, context):"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2B%2F1k%3D","line":129,"updated":"2014-01-19 18:38:18.000000000","message":"self[\u0027deleted\u0027] \u003d True and reset it?  (should network_delete_safe() also return the latest version of the row so we can update everything?)","commit_id":"6529e41ea61ab53af9c9154aac299da7730aaa73"}]}
