)]}'
{"cloudkitty/storage/__init__.py":[{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"0aaeee8cc0b61bb68d1b51b75699a725117249a6","unresolved":false,"context_lines":[{"line_number":141,"context_line":"        usage_end \u003d self.usage_end.get(tenant_id)"},{"line_number":142,"context_line":"        if usage_end is not None and usage_start \u003e\u003d usage_end:"},{"line_number":143,"context_line":"            self.commit(tenant_id)"},{"line_number":144,"context_line":"            # self.usage_start.pop(tenant_id)"},{"line_number":145,"context_line":"        if self.usage_start.get(tenant_id) is None:"},{"line_number":146,"context_line":"            self._update_start(usage_start, tenant_id)"},{"line_number":147,"context_line":"            self._update_end(usage_start + self._period, tenant_id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"da85f559_410547c0","line":144,"updated":"2015-11-08 23:50:49.000000000","message":"why not remove it?","commit_id":"ffdf5b22b1abcdad50dfb0ae24a56c173c63aeee"},{"author":{"_account_id":15917,"name":"Aaron-DH","email":"344677472@qq.com","username":"aaron"},"change_message_id":"5ea9463bce28e0210ef60b368a6198323930b127","unresolved":false,"context_lines":[{"line_number":141,"context_line":"        usage_end \u003d self.usage_end.get(tenant_id)"},{"line_number":142,"context_line":"        if usage_end is not None and usage_start \u003e\u003d usage_end:"},{"line_number":143,"context_line":"            self.commit(tenant_id)"},{"line_number":144,"context_line":"            # self.usage_start.pop(tenant_id)"},{"line_number":145,"context_line":"        if self.usage_start.get(tenant_id) is None:"},{"line_number":146,"context_line":"            self._update_start(usage_start, tenant_id)"},{"line_number":147,"context_line":"            self._update_end(usage_start + self._period, tenant_id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"da85f559_bcdd3a72","line":144,"in_reply_to":"da85f559_410547c0","updated":"2015-11-09 01:09:13.000000000","message":"hi gongysh, thanks for your review.\n\nusage_start has been removed after _post_commit, so don\u0027t need to pop it in _check_commit.","commit_id":"ffdf5b22b1abcdad50dfb0ae24a56c173c63aeee"},{"author":{"_account_id":7042,"name":"Stéphane Albert","email":"sheeprine@nullplace.com","username":"sheeprine"},"change_message_id":"6c0c9c113e537c1377d9b50ac600c4edde151264","unresolved":false,"context_lines":[{"line_number":147,"context_line":"        usage_end \u003d self.usage_end.get(tenant_id)"},{"line_number":148,"context_line":"        if usage_end is not None and usage_start \u003e\u003d usage_end:"},{"line_number":149,"context_line":"            self.commit(tenant_id)"},{"line_number":150,"context_line":"            self.usage_start.pop(tenant_id)"},{"line_number":151,"context_line":"        if self.usage_start.get(tenant_id) is None:"},{"line_number":152,"context_line":"            self._update_start(usage_start, tenant_id)"},{"line_number":153,"context_line":"            self._update_end(usage_start + self._period, tenant_id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"da85f559_b432ea0e","side":"PARENT","line":150,"updated":"2015-11-10 10:34:38.000000000","message":"The pop of the tenant_id from the usage_start list is here to trigger recalculation of start and end periods.","commit_id":"f2400e7be91ca915892872f6092c2c7719549ea8"},{"author":{"_account_id":15917,"name":"Aaron-DH","email":"344677472@qq.com","username":"aaron"},"change_message_id":"6652f75d12f1d9034c2c579cd783dadbc6930401","unresolved":false,"context_lines":[{"line_number":147,"context_line":"        usage_end \u003d self.usage_end.get(tenant_id)"},{"line_number":148,"context_line":"        if usage_end is not None and usage_start \u003e\u003d usage_end:"},{"line_number":149,"context_line":"            self.commit(tenant_id)"},{"line_number":150,"context_line":"            self.usage_start.pop(tenant_id)"},{"line_number":151,"context_line":"        if self.usage_start.get(tenant_id) is None:"},{"line_number":152,"context_line":"            self._update_start(usage_start, tenant_id)"},{"line_number":153,"context_line":"            self._update_end(usage_start + self._period, tenant_id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"da85f559_af14a79f","side":"PARENT","line":150,"in_reply_to":"da85f559_b432ea0e","updated":"2015-11-11 02:00:43.000000000","message":"hi, steplane albert, thanks for reivew.\ni think this pop is just used to remove from the usage_start after commit.","commit_id":"f2400e7be91ca915892872f6092c2c7719549ea8"},{"author":{"_account_id":7042,"name":"Stéphane Albert","email":"sheeprine@nullplace.com","username":"sheeprine"},"change_message_id":"6c0c9c113e537c1377d9b50ac600c4edde151264","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        if usage_end is not None and usage_start \u003e\u003d usage_end:"},{"line_number":149,"context_line":"            self.commit(tenant_id)"},{"line_number":150,"context_line":"            self.usage_start.pop(tenant_id)"},{"line_number":151,"context_line":"        if self.usage_start.get(tenant_id) is None:"},{"line_number":152,"context_line":"            self._update_start(usage_start, tenant_id)"},{"line_number":153,"context_line":"            self._update_end(usage_start + self._period, tenant_id)"},{"line_number":154,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"da85f559_3ffb33c3","side":"PARENT","line":151,"updated":"2015-11-10 10:34:38.000000000","message":"This part of code is then useless.","commit_id":"f2400e7be91ca915892872f6092c2c7719549ea8"},{"author":{"_account_id":15917,"name":"Aaron-DH","email":"344677472@qq.com","username":"aaron"},"change_message_id":"6652f75d12f1d9034c2c579cd783dadbc6930401","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        if usage_end is not None and usage_start \u003e\u003d usage_end:"},{"line_number":149,"context_line":"            self.commit(tenant_id)"},{"line_number":150,"context_line":"            self.usage_start.pop(tenant_id)"},{"line_number":151,"context_line":"        if self.usage_start.get(tenant_id) is None:"},{"line_number":152,"context_line":"            self._update_start(usage_start, tenant_id)"},{"line_number":153,"context_line":"            self._update_end(usage_start + self._period, tenant_id)"},{"line_number":154,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"da85f559_cf380bf2","side":"PARENT","line":151,"in_reply_to":"da85f559_3ffb33c3","updated":"2015-11-11 02:00:43.000000000","message":"i think it\u0027s necessary to update the usage_start and end.\nit\u0027s useful when commit.","commit_id":"f2400e7be91ca915892872f6092c2c7719549ea8"}],"cloudkitty/storage/sqlalchemy/__init__.py":[{"author":{"_account_id":7042,"name":"Stéphane Albert","email":"sheeprine@nullplace.com","username":"sheeprine"},"change_message_id":"6c0c9c113e537c1377d9b50ac600c4edde151264","unresolved":false,"context_lines":[{"line_number":151,"context_line":"        unit \u003d vol_dict[\u0027unit\u0027]"},{"line_number":152,"context_line":"        rating_dict \u003d frame[\u0027rating\u0027]"},{"line_number":153,"context_line":"        rate \u003d rating_dict[\u0027price\u0027]"},{"line_number":154,"context_line":"        desc \u003d json.dumps(frame[\u0027desc\u0027])"},{"line_number":155,"context_line":"        self.add_time_frame(self.usage_start_dt.get(tenant_id),"},{"line_number":156,"context_line":"                            self.usage_end_dt.get(tenant_id),"},{"line_number":157,"context_line":"                            tenant_id,"}],"source_content_type":"text/x-python","patch_set":4,"id":"da85f559_7fb53bec","side":"PARENT","line":154,"updated":"2015-11-10 10:34:38.000000000","message":"You remove the caching of datetime to calculate them when you add the dataframe. (Caching is now useless but was usefull in older versions)","commit_id":"f2400e7be91ca915892872f6092c2c7719549ea8"}]}
