)]}'
{"rally/cli/commands/task.py":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"ce17d240e501b68d70f4b6e991f330a93b5534e8","unresolved":false,"context_lines":[{"line_number":482,"context_line":"                    \"load_duration\": x[\"data\"][\"load_duration\"],"},{"line_number":483,"context_line":"                    \"full_duration\": x[\"data\"][\"full_duration\"],"},{"line_number":484,"context_line":"                    \"created_at\": x.get(\"created_at\").strftime("},{"line_number":485,"context_line":"                        \"%Y-%d-%m %H:%M:%S\")}"},{"line_number":486,"context_line":"                   for x in task.get_results()]"},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"        print(json.dumps(results, sort_keys\u003dFalse, indent\u003d4))"}],"source_content_type":"text/x-python","patch_set":8,"id":"bff0334d_dbdab215","line":485,"range":{"start_line":485,"start_character":33,"end_line":485,"end_character":34},"updated":"2017-04-07 10:25:14.000000000","message":"do not touch cli :)","commit_id":"852af8f7f9cb0944a6d038e414e4ca8e537ca53f"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"a1eac5fadaf6ff43402e99f716a4ccf6ac3c61d3","unresolved":false,"context_lines":[{"line_number":482,"context_line":"                    \"load_duration\": x[\"data\"][\"load_duration\"],"},{"line_number":483,"context_line":"                    \"full_duration\": x[\"data\"][\"full_duration\"],"},{"line_number":484,"context_line":"                    \"created_at\": x.get(\"created_at\").strftime("},{"line_number":485,"context_line":"                        \"%Y-%d-%m %H:%M:%S\")}"},{"line_number":486,"context_line":"                   for x in task.get_results()]"},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"        print(json.dumps(results, sort_keys\u003dFalse, indent\u003d4))"}],"source_content_type":"text/x-python","patch_set":8,"id":"bff0334d_fabb2d6f","line":485,"range":{"start_line":485,"start_character":33,"end_line":485,"end_character":34},"in_reply_to":"bff0334d_dbdab215","updated":"2017-04-07 12:09:09.000000000","message":"Done","commit_id":"852af8f7f9cb0944a6d038e414e4ca8e537ca53f"}],"rally/common/objects/task.py":[{"author":{"_account_id":13404,"name":"Alberto Planas","email":"aplanas@gmail.com","username":"aplanas"},"change_message_id":"b5ece980256aaaec8aa5066be669a6fd53ad855f","unresolved":false,"context_lines":[{"line_number":477,"context_line":"                        max_duration \u003d duration"},{"line_number":478,"context_line":""},{"line_number":479,"context_line":"            for k in \"created_at\", \"updated_at\":"},{"line_number":480,"context_line":"                scenario[k] \u003d scenario[k].strftime(\"%Y-%d-%mT%H:%M:%S\")"},{"line_number":481,"context_line":""},{"line_number":482,"context_line":"            durations_stat \u003d charts.MainStatsTable("},{"line_number":483,"context_line":"                {\"iterations_count\": len(scenario[\"data\"][\"raw\"]),"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a3905b3_7a406908","line":480,"updated":"2017-01-25 09:25:39.000000000","message":"ERROR: test_trends (test_cli_task.TaskTestCase)\n\nfails with:\nERROR rally AttributeError: \u0027NoneType\u0027 object has no attribute \u0027strftime\u0027","commit_id":"ae16809bf02753b6ea97f25275910f153b5bd7e5"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"dbd0d860a614937534059ab9b3ee601113b3b7db","unresolved":false,"context_lines":[{"line_number":395,"context_line":"        return db.task_result_get_all_by_uuid(self.task[\"uuid\"])"},{"line_number":396,"context_line":""},{"line_number":397,"context_line":"    @classmethod"},{"line_number":398,"context_line":"    def extend_results(cls, results, serializable\u003dFalse):"},{"line_number":399,"context_line":"        \"\"\"Modify and extend results with aggregated data."},{"line_number":400,"context_line":""},{"line_number":401,"context_line":"        This is a workaround method that tries to adapt task results"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a430d35_32d3dd05","line":398,"range":{"start_line":398,"start_character":37,"end_line":398,"end_character":55},"updated":"2017-02-08 01:54:53.000000000","message":"I think we could remove this param:)\nAnd change these code:\n            if serializable:\n                scenario[\"iterations\"] \u003d list(iterations)\n            else:\n                scenario[\"iterations\"] \u003d iter(iterations)","commit_id":"b043628a13d418021cc8c5b30faaa8bad50d80d3"},{"author":{"_account_id":12395,"name":"Roman Vasylets","email":"pomeo92@gmail.com","username":"rvasilets"},"change_message_id":"fdafd8e17f33d7efde34c9077f6435ee23907f8e","unresolved":false,"context_lines":[{"line_number":494,"context_line":""},{"line_number":495,"context_line":"            for k in \"created_at\", \"updated_at\":"},{"line_number":496,"context_line":"                if scenario[k]:"},{"line_number":497,"context_line":"                    scenario[k] \u003d scenario[k].strftime(\"%Y-%d-%mT%H:%M:%S\")"},{"line_number":498,"context_line":""},{"line_number":499,"context_line":"            durations_stat \u003d charts.MainStatsTable("},{"line_number":500,"context_line":"                {\"iterations_count\": len(scenario[\"data\"][\"raw\"]),"}],"source_content_type":"text/x-python","patch_set":4,"id":"da36d5c6_9ff0e2ca","line":497,"updated":"2017-02-26 20:22:01.000000000","message":"http://logs.openstack.org/37/424937/4/check/gate-rally-dsvm-cli/d6bd5dc/console.html#_2017-02-22_08_16_42_504332\n\nhere is an actual error https://github.com/openstack/rally/blob/master/rally/task/processing/plot.py#L204-L205\n\nscenario[k] should be always datetime, due to code","commit_id":"c6c8010b7c1cc4046363badcb543ba435fa5fc55"},{"author":{"_account_id":12395,"name":"Roman Vasylets","email":"pomeo92@gmail.com","username":"rvasilets"},"change_message_id":"dc1c3255b9d4bdacee2b950009532abf4c0d2713","unresolved":false,"context_lines":[{"line_number":494,"context_line":""},{"line_number":495,"context_line":"            for k in \"created_at\", \"updated_at\":"},{"line_number":496,"context_line":"                if scenario[k]:"},{"line_number":497,"context_line":"                    scenario[k] \u003d scenario[k].strftime(\"%Y-%d-%mT%H:%M:%S\")"},{"line_number":498,"context_line":""},{"line_number":499,"context_line":"            durations_stat \u003d charts.MainStatsTable("},{"line_number":500,"context_line":"                {\"iterations_count\": len(scenario[\"data\"][\"raw\"]),"}],"source_content_type":"text/x-python","patch_set":4,"id":"da36d5c6_d0dfa9d3","line":497,"in_reply_to":"da36d5c6_9ff0e2ca","updated":"2017-02-26 20:25:28.000000000","message":"So we should check here whether it str or datetime and find all occurrences where \"created_at\", \"updated_at\" explicitly set to None","commit_id":"c6c8010b7c1cc4046363badcb543ba435fa5fc55"},{"author":{"_account_id":10475,"name":"Alexander Maretskiy","email":"amaretskiy@mirantis.com","username":"maretskiy"},"change_message_id":"d504fbdd4c9e8c6674bc2abd648ed5ed17ec1503","unresolved":false,"context_lines":[{"line_number":494,"context_line":"                        max_duration \u003d duration"},{"line_number":495,"context_line":""},{"line_number":496,"context_line":"            for k in \"created_at\", \"updated_at\":"},{"line_number":497,"context_line":"                if scenario[k] and isinstance(scenario[k], dt.datetime):"},{"line_number":498,"context_line":"                    scenario[k] \u003d scenario[k].strftime(\"%Y-%d-%mT%H:%M:%S\")"},{"line_number":499,"context_line":""},{"line_number":500,"context_line":"            durations_stat \u003d charts.MainStatsTable("}],"source_content_type":"text/x-python","patch_set":5,"id":"ba2be162_0e084127","line":497,"updated":"2017-03-06 10:35:38.000000000","message":"this relies on a fact that values exist come and their type is datetime, otherwise \"created_at\", \"updated_at\" will not be set.\n\nAdding `else raise...\u0027 may guarantee that proper values will be  always set","commit_id":"0dc9bf36f3c98bbcc37744d1e49f138d71a8c958"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"ca1dfe8c7eab7a9f540c2cfa96068d46b6ce42e0","unresolved":false,"context_lines":[{"line_number":527,"context_line":""},{"line_number":528,"context_line":"            for k in \"created_at\", \"updated_at\":"},{"line_number":529,"context_line":"                if scenario[k] and isinstance(scenario[k], dt.datetime):"},{"line_number":530,"context_line":"                    scenario[k] \u003d scenario[k].strftime(\"%Y-%d-%mT%H:%M:%S\")"},{"line_number":531,"context_line":""},{"line_number":532,"context_line":"            durations_stat \u003d charts.MainStatsTable("},{"line_number":533,"context_line":"                {\"iterations_count\": len(scenario[\"data\"][\"raw\"]),"}],"source_content_type":"text/x-python","patch_set":7,"id":"bff0334d_5a271566","line":530,"range":{"start_line":530,"start_character":63,"end_line":530,"end_character":65},"updated":"2017-04-05 15:01:08.000000000","message":"please do not change it.","commit_id":"fa7301069969db8053a533d6010d204d58dff931"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"53647ce07d9f5c73fffed5b3f91b3b94685391f1","unresolved":false,"context_lines":[{"line_number":527,"context_line":""},{"line_number":528,"context_line":"            for k in \"created_at\", \"updated_at\":"},{"line_number":529,"context_line":"                if scenario[k] and isinstance(scenario[k], dt.datetime):"},{"line_number":530,"context_line":"                    scenario[k] \u003d scenario[k].strftime(\"%Y-%d-%mT%H:%M:%S\")"},{"line_number":531,"context_line":""},{"line_number":532,"context_line":"            durations_stat \u003d charts.MainStatsTable("},{"line_number":533,"context_line":"                {\"iterations_count\": len(scenario[\"data\"][\"raw\"]),"}],"source_content_type":"text/x-python","patch_set":7,"id":"bff0334d_8524040f","line":530,"range":{"start_line":530,"start_character":63,"end_line":530,"end_character":65},"in_reply_to":"bff0334d_236d3798","updated":"2017-04-06 06:52:09.000000000","message":"yes","commit_id":"fa7301069969db8053a533d6010d204d58dff931"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"912bf0cf2e657904a10ede11d7e25f4a45889f7a","unresolved":false,"context_lines":[{"line_number":527,"context_line":""},{"line_number":528,"context_line":"            for k in \"created_at\", \"updated_at\":"},{"line_number":529,"context_line":"                if scenario[k] and isinstance(scenario[k], dt.datetime):"},{"line_number":530,"context_line":"                    scenario[k] \u003d scenario[k].strftime(\"%Y-%d-%mT%H:%M:%S\")"},{"line_number":531,"context_line":""},{"line_number":532,"context_line":"            durations_stat \u003d charts.MainStatsTable("},{"line_number":533,"context_line":"                {\"iterations_count\": len(scenario[\"data\"][\"raw\"]),"}],"source_content_type":"text/x-python","patch_set":7,"id":"bff0334d_236d3798","line":530,"range":{"start_line":530,"start_character":63,"end_line":530,"end_character":65},"in_reply_to":"bff0334d_5a271566","updated":"2017-04-06 02:03:27.000000000","message":"Thanks for your comment. So should I change \u0027%Y-%d-%mT%H:%M:%S\u0027 to \"%Y-%d-%m %H:%M:%S\" ?","commit_id":"fa7301069969db8053a533d6010d204d58dff931"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"dc9c5087ab2bcfec328ae90afd9335024794a434","unresolved":false,"context_lines":[{"line_number":527,"context_line":""},{"line_number":528,"context_line":"            for k in \"created_at\", \"updated_at\":"},{"line_number":529,"context_line":"                if scenario[k] and isinstance(scenario[k], dt.datetime):"},{"line_number":530,"context_line":"                    scenario[k] \u003d scenario[k].strftime(\"%Y-%d-%mT%H:%M:%S\")"},{"line_number":531,"context_line":""},{"line_number":532,"context_line":"            durations_stat \u003d charts.MainStatsTable("},{"line_number":533,"context_line":"                {\"iterations_count\": len(scenario[\"data\"][\"raw\"]),"}],"source_content_type":"text/x-python","patch_set":7,"id":"bff0334d_8ebbdc70","line":530,"range":{"start_line":530,"start_character":63,"end_line":530,"end_character":65},"in_reply_to":"bff0334d_8524040f","updated":"2017-04-07 01:33:32.000000000","message":"Done","commit_id":"fa7301069969db8053a533d6010d204d58dff931"}],"tests/unit/common/objects/test_task.py":[{"author":{"_account_id":13340,"name":"Konstantin Baikov","email":"konstantin.baikov@gmail.com","username":"kbaikov"},"change_message_id":"ffdb0deaf2892b6dadace7349c1bf1d4a1669914","unresolved":false,"context_lines":[{"line_number":209,"context_line":"        self.assertEqual(list(results[0][\"iterations\"]), iterations)"},{"line_number":210,"context_line":"        results[0][\"iterations\"] \u003d \"foo_iterations\""},{"line_number":211,"context_line":"        expected[0][\"created_at\"] \u003d now.strftime(\"%Y-%d-%mT%H:%M:%S\")"},{"line_number":212,"context_line":"        expected[0][\"updated_at\"] \u003d now.strftime(\"%Y-%d-%mT%H:%M:%S\")"},{"line_number":213,"context_line":"        self.assertEqual(results, expected)"},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"        # serializable is False"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba2be162_177a1788","line":212,"range":{"start_line":212,"start_character":50,"end_line":212,"end_character":58},"updated":"2017-03-06 09:16:29.000000000","message":"Are you sure about the date format?\nShouldn\u0027t it be %Y-%m-%d.... ?","commit_id":"0dc9bf36f3c98bbcc37744d1e49f138d71a8c958"}]}
