)]}'
{"climate/exceptions.py":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"ef655c074c938ecf563f23b230315453e6b800c2","unresolved":false,"context_lines":[{"line_number":90,"context_line":"    msg_fmt \u003d _(\u0027Current task failed with timeout\u0027)"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"class InvalidDate(ClimateException):"},{"line_number":94,"context_line":"    msg_fmt \u003d _(\u0027%(date)s is an invalid date. Required format: %(format)s\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F9c5I%3D","line":93,"updated":"2014-02-06 20:22:21.000000000","message":"please move this class to climate.manager.exceptions as it\u0027s only raised from the manager side","commit_id":"b6c1cedf3812ebd1b760b479bdd4c31fbd86a238"},{"author":{"_account_id":9331,"name":"Pablo Andres Fuente","email":"pablo.andres.fuente@gmail.com","username":"pafuent"},"change_message_id":"c66316ade6a2a2bab3add3515a7beaa5466f34ca","unresolved":false,"context_lines":[{"line_number":90,"context_line":"    msg_fmt \u003d _(\u0027Current task failed with timeout\u0027)"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"class InvalidDate(ClimateException):"},{"line_number":94,"context_line":"    msg_fmt \u003d _(\u0027%(date)s is an invalid date. Required format: %(format)s\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F9coA%3D","line":93,"in_reply_to":"AAAAUH%2F9c5I%3D","updated":"2014-02-06 21:05:41.000000000","message":"Done","commit_id":"b6c1cedf3812ebd1b760b479bdd4c31fbd86a238"},{"author":{"_account_id":7535,"name":"Nikolay Starodubtsev","email":"starodubcevna@gmail.com","username":"Kezar"},"change_message_id":"20a0d37f302fd94061528f367245283ab6ca2c6f","unresolved":false,"context_lines":[{"line_number":75,"context_line":""},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"class WrongFormat(ClimateException):"},{"line_number":78,"context_line":"    msg_fmt \u003d _(\"Unexpectable object format\")"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"class ServiceClient(ClimateException):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F9Zd8%3D","line":78,"updated":"2014-02-07 07:04:06.000000000","message":"Better to do in separate patch. No need to mix it with the bug  you want to fix.","commit_id":"918c4bf8d479006b239cb81a50636a65ea05943d"},{"author":{"_account_id":9331,"name":"Pablo Andres Fuente","email":"pablo.andres.fuente@gmail.com","username":"pafuent"},"change_message_id":"6624789ff595cbdb8b79cf129d1a9390dff29258","unresolved":false,"context_lines":[{"line_number":75,"context_line":""},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"class WrongFormat(ClimateException):"},{"line_number":78,"context_line":"    msg_fmt \u003d _(\"Unexpectable object format\")"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"class ServiceClient(ClimateException):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F9Xag%3D","line":78,"in_reply_to":"AAAAUH%2F9YrM%3D","updated":"2014-02-07 14:19:29.000000000","message":"Done","commit_id":"918c4bf8d479006b239cb81a50636a65ea05943d"},{"author":{"_account_id":9331,"name":"Pablo Andres Fuente","email":"pablo.andres.fuente@gmail.com","username":"pafuent"},"change_message_id":"6624789ff595cbdb8b79cf129d1a9390dff29258","unresolved":false,"context_lines":[{"line_number":75,"context_line":""},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"class WrongFormat(ClimateException):"},{"line_number":78,"context_line":"    msg_fmt \u003d _(\"Unexpectable object format\")"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"class ServiceClient(ClimateException):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F9Xak%3D","line":78,"in_reply_to":"AAAAUH%2F9Zd8%3D","updated":"2014-02-07 14:19:29.000000000","message":"Done","commit_id":"918c4bf8d479006b239cb81a50636a65ea05943d"},{"author":{"_account_id":3012,"name":"Dina Belova","email":"dbelova@mirantis.com","username":"dbelova"},"change_message_id":"42e547531260147004a9a54d29c0cf47ff06e0fe","unresolved":false,"context_lines":[{"line_number":75,"context_line":""},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"class WrongFormat(ClimateException):"},{"line_number":78,"context_line":"    msg_fmt \u003d _(\"Unexpectable object format\")"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"class ServiceClient(ClimateException):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F9YrM%3D","line":78,"in_reply_to":"AAAAUH%2F9Zd8%3D","updated":"2014-02-07 09:35:02.000000000","message":"Yep, it\u0027s so.... Even if this change is really small, it\u0027s not about this bug.","commit_id":"918c4bf8d479006b239cb81a50636a65ea05943d"}],"climate/manager/service.py":[{"author":{"_account_id":3012,"name":"Dina Belova","email":"dbelova@mirantis.com","username":"dbelova"},"change_message_id":"3774598fb488967358c9bb1bec3e703d5172828d","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        try:"},{"line_number":149,"context_line":"            date \u003d datetime.datetime.strptime(date_string, date_format)"},{"line_number":150,"context_line":"        except ValueError:"},{"line_number":151,"context_line":"            raise common_ex.InvalidDate(date\u003ddate_string, format\u003ddate_format)"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"        return date"},{"line_number":154,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F9cs0%3D","line":151,"updated":"2014-02-06 20:51:16.000000000","message":"I prefer you\u0027ll rename \u0027format\u0027 kwarg to date_format, for instance (only because I don\u0027t like using built-in names for variables/args names)","commit_id":"b6c1cedf3812ebd1b760b479bdd4c31fbd86a238"},{"author":{"_account_id":3012,"name":"Dina Belova","email":"dbelova@mirantis.com","username":"dbelova"},"change_message_id":"48b7df7035b52758c3bf00293154793ff5f1b734","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        try:"},{"line_number":149,"context_line":"            date \u003d datetime.datetime.strptime(date_string, date_format)"},{"line_number":150,"context_line":"        except ValueError:"},{"line_number":151,"context_line":"            raise common_ex.InvalidDate(date\u003ddate_string, format\u003ddate_format)"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"        return date"},{"line_number":154,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F9cjU%3D","line":151,"in_reply_to":"AAAAUH%2F9clo%3D","updated":"2014-02-06 21:11:02.000000000","message":"Really? ;)\n\nhttps://review.openstack.org/#/c/71631/1..2/climate/manager/service.py","commit_id":"b6c1cedf3812ebd1b760b479bdd4c31fbd86a238"},{"author":{"_account_id":9331,"name":"Pablo Andres Fuente","email":"pablo.andres.fuente@gmail.com","username":"pafuent"},"change_message_id":"c66316ade6a2a2bab3add3515a7beaa5466f34ca","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        try:"},{"line_number":149,"context_line":"            date \u003d datetime.datetime.strptime(date_string, date_format)"},{"line_number":150,"context_line":"        except ValueError:"},{"line_number":151,"context_line":"            raise common_ex.InvalidDate(date\u003ddate_string, format\u003ddate_format)"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"        return date"},{"line_number":154,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F9clo%3D","line":151,"in_reply_to":"AAAAUH%2F9cs0%3D","updated":"2014-02-06 21:05:41.000000000","message":"Done","commit_id":"b6c1cedf3812ebd1b760b479bdd4c31fbd86a238"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"fab5467558b31d778b69e4f1e5b795b3ac57dc5c","unresolved":false,"context_lines":[{"line_number":44,"context_line":"CONF.register_opts(manager_opts, \u0027manager\u0027)"},{"line_number":45,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"LEASE_DATE_FORMAT \u003d \"%Y-%m-%d %H:%M\""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"class ManagerService(rpc_service.Service):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F9YMY%3D","line":47,"updated":"2014-02-07 10:42:43.000000000","message":"We need to check this carefully, but I think it\u0027s worth putting it as a CONF flagset as the strptime and sftrtime are now all reading this value.\n\nBtw, please use lowercase here if this becomes a cfg object","commit_id":"918c4bf8d479006b239cb81a50636a65ea05943d"},{"author":{"_account_id":3012,"name":"Dina Belova","email":"dbelova@mirantis.com","username":"dbelova"},"change_message_id":"8e0ccfc244fc711736b3ba38b53677a9b2d655a0","unresolved":false,"context_lines":[{"line_number":44,"context_line":"CONF.register_opts(manager_opts, \u0027manager\u0027)"},{"line_number":45,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"LEASE_DATE_FORMAT \u003d \"%Y-%m-%d %H:%M\""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"class ManagerService(rpc_service.Service):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F9YKY%3D","line":47,"in_reply_to":"AAAAUH%2F9YMY%3D","updated":"2014-02-07 10:45:49.000000000","message":"I also thought about config option, but frankly speaking I don\u0027t think it\u0027s worth doing that. Cause what we\u0027ll do with Climate client in this case? It send request in \"%Y-%m-%d %H:%M\" format.","commit_id":"918c4bf8d479006b239cb81a50636a65ea05943d"},{"author":{"_account_id":7535,"name":"Nikolay Starodubtsev","email":"starodubcevna@gmail.com","username":"Kezar"},"change_message_id":"20a0d37f302fd94061528f367245283ab6ca2c6f","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        try:"},{"line_number":149,"context_line":"            date \u003d datetime.datetime.strptime(date_string, date_format)"},{"line_number":150,"context_line":"        except ValueError:"},{"line_number":151,"context_line":"            raise exceptions.InvalidDate(date\u003ddate_string, format\u003ddate_format)"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"        return date"},{"line_number":154,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F9ZfI%3D","line":151,"updated":"2014-02-07 07:04:06.000000000","message":"Dina notice in previous patchset to change format\u003ddate_format to date_format\u003ddate_format","commit_id":"918c4bf8d479006b239cb81a50636a65ea05943d"},{"author":{"_account_id":9331,"name":"Pablo Andres Fuente","email":"pablo.andres.fuente@gmail.com","username":"pafuent"},"change_message_id":"6624789ff595cbdb8b79cf129d1a9390dff29258","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        try:"},{"line_number":149,"context_line":"            date \u003d datetime.datetime.strptime(date_string, date_format)"},{"line_number":150,"context_line":"        except ValueError:"},{"line_number":151,"context_line":"            raise exceptions.InvalidDate(date\u003ddate_string, format\u003ddate_format)"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"        return date"},{"line_number":154,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F9XZM%3D","line":151,"in_reply_to":"AAAAUH%2F9YrE%3D","updated":"2014-02-07 14:19:29.000000000","message":"My bad. I changed in the exception, but not here. Thanks for notice it.","commit_id":"918c4bf8d479006b239cb81a50636a65ea05943d"},{"author":{"_account_id":3012,"name":"Dina Belova","email":"dbelova@mirantis.com","username":"dbelova"},"change_message_id":"42e547531260147004a9a54d29c0cf47ff06e0fe","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        try:"},{"line_number":149,"context_line":"            date \u003d datetime.datetime.strptime(date_string, date_format)"},{"line_number":150,"context_line":"        except ValueError:"},{"line_number":151,"context_line":"            raise exceptions.InvalidDate(date\u003ddate_string, format\u003ddate_format)"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"        return date"},{"line_number":154,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F9YrE%3D","line":151,"in_reply_to":"AAAAUH%2F9ZfI%3D","updated":"2014-02-07 09:35:02.000000000","message":"Yep, it\u0027s :)","commit_id":"918c4bf8d479006b239cb81a50636a65ea05943d"}],"climate/tests/manager/test_service.py":[{"author":{"_account_id":7535,"name":"Nikolay Starodubtsev","email":"starodubcevna@gmail.com","username":"Kezar"},"change_message_id":"20a0d37f302fd94061528f367245283ab6ca2c6f","unresolved":false,"context_lines":[{"line_number":201,"context_line":"        self.assertRaises("},{"line_number":202,"context_line":"            manager_ex.InvalidDate, self.manager.create_lease, lease_values)"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"    def test_create_lease_start_date_in_past(self):"},{"line_number":205,"context_line":"        lease_values \u003d {"},{"line_number":206,"context_line":"            \u0027start_date\u0027:"},{"line_number":207,"context_line":"            datetime.datetime.strftime("}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F9ZdQ%3D","line":204,"updated":"2014-02-07 07:04:06.000000000","message":"Test looks fine, but it\u0027s better not to mix it with this bugfix. If you want to fix a lack of unit tests coverage it\u0027s better to create separate bug or smthg like this. Get it?","commit_id":"918c4bf8d479006b239cb81a50636a65ea05943d"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"fab5467558b31d778b69e4f1e5b795b3ac57dc5c","unresolved":false,"context_lines":[{"line_number":201,"context_line":"        self.assertRaises("},{"line_number":202,"context_line":"            manager_ex.InvalidDate, self.manager.create_lease, lease_values)"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"    def test_create_lease_start_date_in_past(self):"},{"line_number":205,"context_line":"        lease_values \u003d {"},{"line_number":206,"context_line":"            \u0027start_date\u0027:"},{"line_number":207,"context_line":"            datetime.datetime.strftime("}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F9YLs%3D","line":204,"in_reply_to":"AAAAUH%2F9Yq0%3D","updated":"2014-02-07 10:42:43.000000000","message":"Agree with Dina, this test is necessary as the patch creates a new method.","commit_id":"918c4bf8d479006b239cb81a50636a65ea05943d"},{"author":{"_account_id":3012,"name":"Dina Belova","email":"dbelova@mirantis.com","username":"dbelova"},"change_message_id":"42e547531260147004a9a54d29c0cf47ff06e0fe","unresolved":false,"context_lines":[{"line_number":201,"context_line":"        self.assertRaises("},{"line_number":202,"context_line":"            manager_ex.InvalidDate, self.manager.create_lease, lease_values)"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"    def test_create_lease_start_date_in_past(self):"},{"line_number":205,"context_line":"        lease_values \u003d {"},{"line_number":206,"context_line":"            \u0027start_date\u0027:"},{"line_number":207,"context_line":"            datetime.datetime.strftime("}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAUH%2F9Yq0%3D","line":204,"in_reply_to":"AAAAUH%2F9ZdQ%3D","updated":"2014-02-07 09:35:02.000000000","message":"Don\u0027t agree here. This test covers https://bugs.launchpad.net/climate/+bug/1252704 use case and check it - it\u0027s ok.","commit_id":"918c4bf8d479006b239cb81a50636a65ea05943d"}]}
